Abstract
This paper presents an approach to describe, deploy and manage component-based applications having dynamic functional and non-functional requirements. The approach is centered on architectural descriptions and associated high-level contracts. The latter allow the non-functional requirements to be described separately at design time, and during the running time are used to guide architecture customizations required to enforce these requirements. This helps to achieve separation of concerns, facilitating the reuse of modules that implement the application in other systems. The infrastructure required to manage the contracts follows an architectural pattern, which can be directly mapped to specific components included in a supporting reflective middleware. This feature allows designers to write a contract and to follow a standard recipe to insert the extra code required to its enforcement in the supporting middleware.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ansaloni, S.: An Architectural Pattern to Describe and Implement Qos Contracts, Masters Dissertation, Instituto de Computao, UFF (May 2003)
Beugnard, A., Jzquel, J.-M., Plouzeau, N., Watkins, D.: Making Components Con-tract Aware. IEEE Computer 32(7) (July 1999)
Braga, C., e Sztajnberg, A.: Towards a Rewriting Semantics to a Software Architec-ture Description Language. In: 6th Workshop on Formal Methods, Campina Grande, Brasil (October 2003)
Buschman, F., et al.: Pattern-Oriented Software Architecture - a System of Patterns (POSA1). John Willey and sons, Chichester (1996) ISBN 0-471-95869-7
Curty, R.: A Methodology to Describe and Implement Contracts for Services with Differentiated Quality in Distributed Architectures, Masters Dissertation, Insti- tuto de Computao, UFF (2002)
Curty, R., Ansaloni, S., Loques, O.G., e Sztajnberg, A.: Deploying Non-Functional Aspects by Contract. In: Endler, M., Schmidt, D.C. (eds.) Middleware 2003. LNCS, vol. 2672, pp. 90–94. Springer, Heidelberg (2003)
Frolund, S., e Koistinen, J.: Quality-of-Service Specifications in Distributed Object Systems. Distributed Systems Engineering (5), 179–202 (1998)
Garlan, D., Schmerl, B.R., Chang, J.: Using Gauges for Architecture-Based Monitoring and Adaptation. In: Working Conference on Complex and Dynamic Systems Architecture (December 2001)
Kon, F., et al.: The Case for Adaptive Middleware. Communications of the ACM 45(6), 33–38 (2002)
Loques, O., Sztajnberg, A., Leite, J., Lobosco, M.: On the Integration of Con-figuration and Meta-Level Programming Approaches. In: Cazzola, W., Stroud, R.J., Tisato, F. (eds.) Reflection and Software Engineering. LNCS, vol. 1826, pp. 189–210. Springer, Heidelberg (2000)
Loyall, J.P., Rubel, P., Atighetchi, M., Schantz, R., Zinky, J.: Emerging Patterns in Adaptive, Distributed Real-Time, Embedded Middleware. In: 9th Conference on Pat-tern Language of Programs, Monticello, Il. (September 2002)
Open H323, Quicknet Technologies (2004), http://www.OpenH323.org
Sztajnberg, A., Loques, O.: Bringing QoS to the Architectural Level. In: ECOOP 2000 Workshop on QoS on Distributed Object Systems, Cannes France (June 2000)
Wolski, R., Spring, N.T., Hayes, J.: The Network Weather Service: A Dis-tributed Resource Performance Forecasting Service for Metacomputing. Future Gen-eration Computer Systems 15(5-6), 757–768 (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Loques, O., Sztajnberg, A. (2004). Customizing Component-Based Architectures by Contract. In: Emmerich, W., Wolf, A.L. (eds) Component Deployment. CD 2004. Lecture Notes in Computer Science, vol 3083. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24848-4_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-24848-4_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22059-6
Online ISBN: 978-3-540-24848-4
eBook Packages: Springer Book Archive