Abstract
Architectures depict design principles: paradigms that can be understood by all, allow thinking on a higher plane and avoiding low-level mistakes. They provide means for ensuring correctness by construction by enforcing global properties characterizing the coordination between components. An architecture can be considered as an operator A that, applied to a set of components \({\mathcal{B}}\), builds a composite component \({A(\mathcal{B})}\) meeting a characteristic property \({\Phi}\). Architecture composability is a basic and common problem faced by system designers. In this paper, we propose a formal and general framework for architecture composability based on an associative, commutative and idempotent architecture composition operator \({\oplus}\). The main result is that if two architectures A 1 and A 2 enforce respectively safety properties \({\Phi_{1}}\) and \({\Phi_{2}}\), the architecture \({A_{1} \oplus A_{2}}\) enforces the property \({\Phi_{1} \land \Phi_{2}}\), that is both properties are preserved by architecture composition. We also establish preservation of liveness properties by architecture composition. The presented results are illustrated by a running example and a case study.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Attie PC, Bensalem S, Bozga M, Jaber M, Sifakis J, Zaraket FA (2013) An abstract framework for deadlock prevention in BIP. In: FMOODS/FORTE, pp 161–177
Attie P, Baranov E, Bliudze S, Jaber M, Sifakis J (2014) A general framework for architecture composability. In: Giannakopoulou D, Salaün G (eds) 12th international conference on software engineering and formal methods (SEFM 2014), LNCS, vol 8702. Springer International Publishing, Switzerland, pp 128–143
Attie PC, Baranov E, Bliudze S, Jaber M, Sifakis J (2014) A general framework for architecture composability. Technical Report EPFL-REPORT-196536, EPFL IC IIF RiSD. http://infoscience.epfl.ch/record/196536
Abadi M, Leslie L (1993) Composing specifications. ACM Trans Program Lang Syst 15(1): 73–132
Arbab F (2004) Reo: a channel-based coordination model for component composition. Math Struct Comput Sci 14(3): 329–366
Basu A, Bensalem S, Bozga M, Combaz J, Jaber M, Nguyen T-H, Sifakis J (2011) Rigorous component-based system design using the BIP framework. Softw IEEE 28(3): 41–48
Bernardo M, Ciancarini P, Donatiello L (2000) On the formalization of architectural types with process algebras. In: SIGSOFT FSE, pp 140–148
Balasubramanian K, Gokhale AS, Karsai G, Sztipanovits J, Neema S (2006) Developing applications using model-driven design environments. IEEE Comput 39(2): 33–40
Bruni R, Lanese I, Montanari U (2006) A basic algebra of stateless connectors. Theor Comput Sci 366(1): 98–120
Bliudze S, Sifakis J (2007) The algebra of connectors—structuring interaction in BIP. In: Proceedings of the EMSOFT’07, Salzburg. ACM SigBED, pp 11–20
Bliudze S, Sifakis J (2010) Causal semantics for the algebra of connectors. Formal Methods Syst Des 36(2): 167–194
Bliudze S, Sifakis J (2011) Synthesizing glue operators from glue constraints for the construction of component-based systems. In: Sven A, Ethan J (eds) Software composition, vol 6708. LNCSSpringer, Berlin/Heidelberg, pp 51–67
Balarin F, Watanabe Y, Hsieh H, Lavagno L, Passerone C, Sangiovanni-Vincentelli A (2003) Metropolis: an integrated electronic system design environment. IEEE Comput 36(4): 45–52
Calder M, Kolberg M, Magill EH, Reiff-Marganiec S (2003) Feature interaction: a critical review and considered forecast. Comput Netw 41(1): 115–141
D’Souza D, Gopinathan M (2008) Conflict-tolerant features. In: CAV, LNCS, vol 5123. Springer, pp 227–239
Decker G, Puhlmann F, Weske M (2006) Formalizing service interactions. In: Business process management, pp 414–419
Eker J, Janneck JW, Lee EA, Liu J, Liu X, Ludvig J, Neuendorffer S, Sachs S, Xiong Y (2003) Taming heterogeneity: the ptolemy approach. Proc IEEE 91(1): 127–144
Francez N, Forman IR (1996) Interacting processes: a multiparty approach to coordinated distributed programming. ACM Press/Addison-Wesley Publishing Co., New York
Fiadeiro JL (2004) Categories for Software Engineering. Springer-Verlag
Hay JD, Atlee JM (2000) Composing features and resolving interactions. SIGSOFT Softw Eng Notes 25(6): 110–119
Hoare CAR (1985) Communicating sequential processes. Prentice Hall International Series in Computer Science. Prentice Hall
Liskov B, Guttag J (2000) Program development in java. Addison Wesley
Li Z, Jin Y, Han J (2006) A runtime monitoring and validation framework for web service interactions. In: ASWEC, pp 70–79
Liu I, Reineke J, Lee EA (2010) A PRET architecture supporting concurrent programs with composable timing properties. In: Signals, systems and computers (ASILOMAR), 2010 Conference record of the forty fourth asilomar conference, pp 2111–2115
Milner R (1989) Communication and concurrency. Prentice Hall International Series in Computer Science, Prentice Hall
Plath M, Ryan M (2001) Feature integration using a feature construct. Sci Comput Programm 41(1): 53–84
Ray A, Cleaveland R (2003) Architectural interaction diagrams: AIDs for system modeling. In: ICSE’03: Proceedings of the 25th international conference on software engineering, Washington, DC. IEEE Computer Society, pp 396–406
Spitznagel B, Garlan D (2003) A compositional formalization of connector wrappers. In: ICSE. IEEE Computer Society, pp 374–384
Sifakis J (2012) Rigorous system design. Found Trends Electron Des Autom 6(4):293–362, 2012
Tarjan R (1972) Depth-first search and linear graph algorithms. SIAM J Comput 1(2): 146–160
Wegner P (1996) Coordination as constrained interaction (extended abstract). In: Coordination languages and models, LNCS, vol 1061. Springer, pp 28–33
Author information
Authors and Affiliations
Corresponding author
Additional information
Dimitra Giannakopoulou, Gwen Salaün, and Michael Butler
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Cite this article
Attie, P., Baranov, E., Bliudze, S. et al. A general framework for architecture composability. Form Asp Comp 28, 207–231 (2016). https://doi.org/10.1007/s00165-015-0349-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-015-0349-8