Enforcing Architecture and Deployment Constraints of Distributed Component-Based Software

  • Chouki Tibermacine
  • Didier Hoareau
  • Reda Kadri
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4422)


In the component-based software development process, the formalisation of architectural choices makes possible to explicit quality attributes. When dealing with the deployment of such component-based software in dynamic networks, in which disconnections or machine failures can occur, preserving architectural choices becomes difficult to ensure, as current architecture-centric languages and their support mainly focus on steps prior to the deployment one. We present in this paper a family of languages that formalise not only architectural choices but deployment aspects as well, both as constraints. Then, we show how all of these constraints are reified in order to manage the deployment of a component-based software in this context of a dynamic hosting platform. The proposed solution defines an automatic deployment that ensures permanently, at run time, the preservation of architecture and deployment choices, and thus their corresponding quality attributes.


Constraint Satisfaction Problem Location Constraint Input Flow Architectural Style Architecture Description 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.-B.: An Open Component Model and Its Support in Java. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 7–22. Springer, Heidelberg (2004)Google Scholar
  2. 2.
    Dearle, A., Kirby, G.N.C., McCarthy, A.J.: A framework for constraint-based deployment and autonomic management of distributed applications. In: Proceedings of ICAC’04, pp. 300–301 (2004)Google Scholar
  3. 3.
    Garlan, D., Allen, R., Ockerbloom, J.: Exploiting style in architectural design environments. In: Proceedings of FSE’94, New Orleans, Louisiana, USA, pp. 175–188 (1994)Google Scholar
  4. 4.
    Garlan, D., Monroe, R.T., Wile, D.: Acme: Architectural description of component-based systems. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of Component-Based Systems, pp. 47–68. Cambridge University Press, Cambridge (2000)Google Scholar
  5. 5.
    Georgiadis, I., Magee, J., Kramer, J.: Self-organising software architectures for distributed systems. In: Proceedings of WOSS’02, Charleston, South Carolina, USA, pp. 33–38 (2002)Google Scholar
  6. 6.
    Hoareau, D., Mahéo, Y.: Constraint-Based Deployment of Distributed Components in a Dynamic Network. In: Grass, W., Sick, B., Waldschmidt, K. (eds.) ARCS 2006. LNCS, vol. 3894, pp. 450–464. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  7. 7.
    Mahéo, Y., Guidec, F., Courtrai, L.: A Java Middleware Platform for Resource-Aware Distributed Applications. In: Proceedings of ISPDC’03, Ljubljana, Slovenia, October 2003, pp. 96–103. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  8. 8.
    Medvidovic, N., Taylor, N.R.: A classification and comparison framework for software architecture description languages. IEEE TSE 26(1), 70–93 (2000)Google Scholar
  9. 9.
    Mikic-Rakic, M., Medvidovíc, N.: Architecture-Level Support for Software Component Deployment in Resource Constrained Environments. In: Bishop, J.M. (ed.) CD 2002. LNCS, vol. 2370, pp. 31–46. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  10. 10.
    OMG. Corba components, v3.0, adpoted specification, document formal/2002-06-65 (June 2002), Object Management Group Web Site:
  11. 11.
    OMG. Uml 2.0 ocl final adopted specification, document ptc/03-10-14 (2003), Object Management Group Web Site:
  12. 12.
    Prolog IV: constraints inside, 1996. Prolog IV reference manual, 1996Google Scholar
  13. 13.
    Roshandel, R., Schmerl, B., Medvidovic, N., Garlan, D., Zhang, D.: Understanding tradeoffs among different architectural modeling approaches. In: Proceedings of WICSA’04, June 2004, pp. 47–56 (2004)Google Scholar
  14. 14.
    Schmerl, B., Garlan, D.: Exploiting architectural design knowledge to support self-repairing systems. In: Proceedings of SEKE’02, Ischia, Italy, pp. 241–248 (2002)Google Scholar
  15. 15.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  16. 16.
    Tibermacine, C., Fleurquin, R., Sadou, S.: Preserving architectural choices throughout the component-based software development process. In: Proceedings of WICSA’05, Pittsburgh, Pennsylvania, USA (November 2005)Google Scholar
  17. 17.
    Tibermacine, C., Fleurquin, R., Sadou, S.: Simplifying transformations of architectural constraints. In: Proceedings of SAC’06, Dijon, France (April 2006)Google Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Chouki Tibermacine
    • 1
  • Didier Hoareau
    • 1
  • Reda Kadri
    • 1
    • 2
  1. 1.VALORIA, University of South Brittany, VannesFrance
  2. 2.Alkante, Cesson SévignéFrance

Personalised recommendations