Advertisement

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 A 1 and A 2 enforce respectively safety properties Φ1 and Φ2, the architecture A 1 ⊕ 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.

Keywords

Interaction Model Composition Operator Mutual Exclusion Safety Property Idle State 
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.

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)CrossRefzbMATHGoogle 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)CrossRefzbMATHGoogle 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)CrossRefzbMATHMathSciNetGoogle 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)CrossRefzbMATHGoogle 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)CrossRefzbMATHMathSciNetGoogle 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)CrossRefzbMATHMathSciNetGoogle 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