A General Framework for Architecture Composability

  • Paul Attie
  • Eduard Baranov
  • Simon Bliudze
  • Mohamad Jaber
  • Joseph Sifakis
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8702)

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 Φ. 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 ‘⊕’. The main result is that if two architectures A1 and A2 enforce respectively safety properties Φ1 and Φ2, the architecture A1 ⊕ A2 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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Calder, M., Kolberg, M., Magill, E.H., Reiff-Marganiec, S.: Feature interaction: a critical review and considered forecast. Computer Networks 41(1), 115–141 (2003)CrossRefMATHGoogle Scholar
  2. 2.
    Sifakis, J.: Rigorous System Design. Foundations and Trends in Electronic Design Automation 6(4), 293–362 (2012)CrossRefMathSciNetGoogle Scholar
  3. 3.
    Bliudze, S., Sifakis, J.: Synthesizing glue operators from glue constraints for the construction of component-based systems. In: Apel, S., Jackson, E. (eds.) SC 2011. LNCS, vol. 6708, pp. 51–67. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  4. 4.
    Basu, A., Bensalem, S., Bozga, M., Combaz, J., Jaber, M., Nguyen, T.H., Sifakis, J.: Rigorous component-based system design using the BIP framework. IEEE Software 28(3), 41–48 (2011)CrossRefGoogle Scholar
  5. 5.
    Wegner, P.: Coordination as constrained interaction (extended abstract). In: Ciancarini, P., Hankin, C. (eds.) COORDINATION 1996. LNCS, vol. 1061, pp. 28–33. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  6. 6.
    Bliudze, S., Sifakis, J.: Causal semantics for the algebra of connectors. Formal Methods in System Design 36(2), 167–194 (2010)CrossRefMATHGoogle Scholar
  7. 7.
    Abadi, M., Lamport, L.: Composing specifications. ACM Trans. Program. Lang. Syst. 15(1), 73–132 (1993)CrossRefGoogle Scholar
  8. 8.
    Attie, P.C., Bensalem, S., Bozga, M., Jaber, M., Sifakis, J., Zaraket, F.A.: An abstract framework for deadlock prevention in BIP. In: Beyer, D., Boreale, M. (eds.) FMOODS/FORTE 2013. LNCS, vol. 7892, pp. 161–177. Springer, Heidelberg (2013)Google Scholar
  9. 9.
    Tarjan, R.: Depth-first search and linear graph algorithms. SIAM Journal on Computing 1(2), 146–160 (1972)CrossRefMATHMathSciNetGoogle Scholar
  10. 10.
    D’Souza, D., Gopinathan, M.: Conflict-tolerant features. In: Gupta, A., Malik, S. (eds.) CAV 2008. LNCS, vol. 5123, pp. 227–239. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    Plath, M., Ryan, M.: Feature integration using a feature construct. Science of Computer Programming 41(1), 53–84 (2001)CrossRefMATHGoogle Scholar
  12. 12.
    Balarin, F., Watanabe, Y., Hsieh, H., Lavagno, L., Passerone, C., Sangiovanni-Vincentelli, A.: Metropolis: an integrated electronic system design environment. IEEE Computer 36(4), 45–52 (2003)CrossRefGoogle Scholar
  13. 13.
    Balasubramanian, K., Gokhale, A., Karsai, G., Sztipanovits, J., Neema, S.: Developing applications using model-driven design environments. IEEE Computer 39(2), 33–40 (2006)CrossRefGoogle Scholar
  14. 14.
    Eker, J., Janneck, J., Lee, E., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity: The Ptolemy approach. Proceedings of the IEEE 91(1), 127–144 (2003)CrossRefGoogle Scholar
  15. 15.
    Arbab, F.: Reo: a channel-based coordination model for component composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)CrossRefMATHMathSciNetGoogle Scholar
  16. 16.
    Fiadeiro, J.L.: Categories for Software Engineering. Springer (April 2004)Google Scholar
  17. 17.
    Ray, A., Cleaveland, R.: Architectural interaction diagrams: AIDs for system modeling. In: ICSE 2003: Proceedings of the 25th International Conference on Software Engineering, pp. 396–406. IEEE Computer Society, Washington, DC (2003)Google Scholar
  18. 18.
    Spitznagel, B., Garlan, D.: A compositional formalization of connector wrappers. In: ICSE, pp. 374–384. IEEE Computer Society (2003)Google Scholar
  19. 19.
    Bernardo, M., Ciancarini, P., Donatiello, L.: On the formalization of architectural types with process algebras. In: SIGSOFT FSE, pp. 140–148 (2000)Google Scholar
  20. 20.
    Bruni, R., Lanese, I., Montanari, U.: A basic algebra of stateless connectors. Theoretical Computer Science 366(1), 98–120 (2006)CrossRefMATHMathSciNetGoogle Scholar
  21. 21.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall International Series in Computer Science. Prentice Hall (April 1985)Google Scholar
  22. 22.
    Milner, R.: Communication and Concurrency. Prentice Hall International Series in Computer Science. Prentice Hall (1989)Google Scholar
  23. 23.
    Liu, I., Reineke, J., Lee, E.A.: A PRET architecture supporting concurrent programs with composable timing properties. In: 2010 Conference Record of the Forty Fourth Asilomar Conference on Signals, Systems and Computers (ASILOMAR), pp. 2111–2115 (2010)Google Scholar
  24. 24.
    Hay, J.D., Atlee, J.M.: Composing features and resolving interactions. SIGSOFT Softw. Eng. Notes 25(6), 110–119 (2000)CrossRefGoogle Scholar
  25. 25.
    Decker, G., Puhlmann, F., Weske, M.: Formalizing service interactions. In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 414–419. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  26. 26.
    Li, Z., Jin, Y., Han, J.: A runtime monitoring and validation framework for web service interactions. In: ASWEC, pp. 70–79 (2006)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Paul Attie
    • 1
  • Eduard Baranov
    • 2
  • Simon Bliudze
    • 2
  • Mohamad Jaber
    • 1
  • Joseph Sifakis
    • 2
  1. 1.American University of BeirutLebanon
  2. 2.École Polytechnique Fédérale de LausanneLausanneSwitzerland

Personalised recommendations