Customizing Component-Based Architectures by Contract

  • Orlando Loques
  • Alexandre Sztajnberg
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3083)


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ansaloni, S.: An Architectural Pattern to Describe and Implement Qos Contracts, Masters Dissertation, Instituto de Computao, UFF (May 2003)Google Scholar
  2. 2.
    Beugnard, A., Jzquel, J.-M., Plouzeau, N., Watkins, D.: Making Components Con-tract Aware. IEEE Computer 32(7) (July 1999)Google Scholar
  3. 3.
    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)Google Scholar
  4. 4.
    Buschman, F., et al.: Pattern-Oriented Software Architecture - a System of Patterns (POSA1). John Willey and sons, Chichester (1996) ISBN 0-471-95869-7Google Scholar
  5. 5.
    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)Google Scholar
  6. 6.
    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)Google Scholar
  7. 7.
    Frolund, S., e Koistinen, J.: Quality-of-Service Specifications in Distributed Object Systems. Distributed Systems Engineering (5), 179–202 (1998)Google Scholar
  8. 8.
    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)Google Scholar
  9. 9.
    Kon, F., et al.: The Case for Adaptive Middleware. Communications of the ACM 45(6), 33–38 (2002)CrossRefGoogle Scholar
  10. 10.
    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)CrossRefGoogle Scholar
  11. 11.
    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)Google Scholar
  12. 12.
    Open H323, Quicknet Technologies (2004),
  13. 13.
    Sztajnberg, A., Loques, O.: Bringing QoS to the Architectural Level. In: ECOOP 2000 Workshop on QoS on Distributed Object Systems, Cannes France (June 2000)Google Scholar
  14. 14.
    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)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Orlando Loques
    • 1
  • Alexandre Sztajnberg
    • 2
  1. 1.Instituto de ComputaçãoUniversidade Federal Fluminense (UFF)Niterói
  2. 2.Instituto de Matemática e EstatísticaUniversidade do Estado do Rio de Janeiro (UERJ)Rio de Janeiro

Personalised recommendations