An ADL-Approach to Specifying and Analyzing Centralized-Mode Architectural Connection

  • Guoxin Su
  • Mingsheng Ying
  • Chengqi Zhang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6285)


A rigorous paradigm coordinating components is important in the design stage of large-scale software engineering. In this paper we propose a new Architecture Description Language, called ACDL, to represent the centralized-mode architectural connection in which all components are linked by a single connector. Following one usual approach to architectural description, in which component types and components are distinguished, and connectors integrate behaviors of components by specifying their coordination protocols, ACDL describes connectors in such a way that connectors are insensitive to the numbers of attached same-type components. Based on ACDL, we develop analytic techniques to facilitate the system checking of temporal properties of an architecture. In particular, our method shows to what extent one can add, delete and replace components without making the whole system lose desired temporal properties, and improves the system checking in several ways, for example enhancing the use of previous checking results to deal with new checking problems.


Temporal Property Software Architecture Object Constraint Language Component Type Label Transition System 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Garlan, D., Shaw, M.: An introduction to software architecture. Technical report, Pittsburgh, PA, USA (1994)Google Scholar
  2. 2.
    Sifakis, J.: A framework for component-based construction. In: Proceedings of the 3rd IEEE International Conference on Software Engineering and Formal Methods (2005)Google Scholar
  3. 3.
    Medvidovic, N., Taylor, R.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)CrossRefGoogle Scholar
  4. 4.
    Allen, R., Garlan, D.: A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)CrossRefGoogle Scholar
  5. 5.
    Oquendo, F.: π-ADL: an architecture description language based on the higher-order typed π-calculus for specifying dynamic and mobile software architectures. ACM SIGSOFT Software Engineering Notes 29(3), 1–14 (2004)CrossRefGoogle Scholar
  6. 6.
    Tivoli, M., Inverardi, P.: Failure-free coordinators synthesis for component-based architectures. Science of Compututer Programming 71(3), 181–212 (2008)CrossRefzbMATHGoogle Scholar
  7. 7.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes. Information and Computation 100(1), 1–77 (1992)CrossRefzbMATHGoogle Scholar
  8. 8.
    Bernardo, M., Ciancarini, P., Donatiello, L.: Architecting families of software systems with process algebras. ACM Transactions on Software Engineering and Methodology 11(4), 386–426 (2002)CrossRefGoogle Scholar
  9. 9.
    Inverardi, P., Wolf, A.L., Yankelevich, D.: Static checking of system behaviors using derived component assumptions. ACM Transactions on Software Engineering and Methodology 9(3), 239–272 (2000)CrossRefGoogle Scholar
  10. 10.
    Aldini, A., Bernardo, M.: On the usability of process algebra: An architectural view. Theoretical Computer Science 335(2-3), 281–329 (2005)CrossRefzbMATHGoogle Scholar
  11. 11.
    Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying distributed software architectures. In: Proceedings of the 5th European Software Engineering Conference, pp. 137–153 (1995)Google Scholar
  12. 12.
    Mateescu, R., Oquendo, F.: π-AAL: an architecture analysis language for formally specifying and verifying structural and behavioural properties of software architectures. ACM SIGSOFT Software Engineering Notes 31(2), 1–19 (2006)CrossRefGoogle Scholar
  13. 13.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, NJ (1996)zbMATHGoogle Scholar
  14. 14.
    Spitznagel, B., Garlan, D.: A compositional formalization of connector wrappers. In: Proceedings of the 25th International Conference on Software Engineering (2003)Google Scholar
  15. 15.
    Giesecke, S.: Taxonomy of architectural style usage. In: Proceedings of the 2006 Conference on Pattern Languages of Programs (2006)Google Scholar
  16. 16.
    Sangiorgi, D., Walker, D.: π-calculus: A Theory of Mobile Processes. Cambridge University Press, NY (2001)zbMATHGoogle Scholar
  17. 17.
    Booch, G., Rumbaugh, J., Jacobson, I.: Unified Modeling Language User Guide, 2nd edn. Addison-Wesley Professional, Reading (2005)Google Scholar
  18. 18.
    Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley, Boston (2003)Google Scholar
  19. 19.
    Medvidovic, N., Rosenblum, D.S., Redmiles, D.F., Robbins, J.E.: Modeling software architectures in the unified modeling language. ACM Transaction on Software Engineering Methodology 11(1), 2–57 (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Guoxin Su
    • 1
  • Mingsheng Ying
    • 1
    • 2
  • Chengqi Zhang
    • 1
  1. 1.Centre for Quantum Computation and Intelligent Systems, Faculty of Engineering and Information TechnologyUniversity of TechnologySydneyAustralia
  2. 2.State Key Laboratory of Intelligent Technology and Systems, Department of Computer Science and TechnologyTsinghua UniversityBeijingChina

Personalised recommendations