Skip to main content

A Theory Agenda for Component-Based Design

  • Chapter
Software, Services, and Systems

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8950))

  • 1044 Accesses

Abstract

The aim of the paper is to present a theory agenda for component-based design based on results that motivated the development of the BIP component framework, to identify open problems and discuss further research directions. The focus is on proposing a semantically sound theoretical and general framework for modelling component-based systems and their properties both behavioural and architectural as well for achieving correctness by using scalable specific techniques.

We discuss the problem of composing components by proposing the concept of glue as a set of stateless composition operators defined by a certain type of operational semantics rules. We provide an overview of results about glue expressiveness and minimality. We show how interactions and associated transfer of data can be described by using connectors and in particular, how dynamic connectors can be defined as an extension of static connectors. We present two approaches for achieving correctness for component-based systems. One is by compositional inference of global properties of a composite component from properties of its constituents and interaction constraints implied by composition operators. The other is by using and composing architectures that enforce specific coordination properties. Finally, we discuss recent results on architecture specification by studying two types of logics: 1) interaction logics for the specification of sets of allowed interactions; 2) configuration logics for the characterisation of architecture styles.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

eBook
USD 18.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Allen, R.B., Douence, R., Garlan, D.: Specifying and analyzing dynamic software architectures. In: Astesiano, E. (ed.) ETAPS 1998 and FASE 1998. LNCS, vol. 1382, pp. 21–37. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  2. Arbab, F.: Reo: a channel-based coordination model for component composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  3. Aştefănoaei, L., Ben Rayana, S., Bensalem, S., Bozga, M., Combaz, J.: Compositional invariant generation for timed systems. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014 (ETAPS). LNCS, vol. 8413, pp. 263–278. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  4. Attie, P., Baranov, E., Bliudze, S., Jaber, M., Sifakis, J.: A general framework for architecture composability. In: Giannakopoulou, D., Salaün, G. (eds.) SEFM 2014. LNCS, vol. 8702, pp. 128–143. Springer, Heidelberg (2014)

    Google Scholar 

  5. Baranov, E., Bliudze, S.: Offer semantics: Achieving compositionality, flattening and full expressiveness for the glue operators in BIP. Technical Report EPFL-REPORT-203507, EPFL IC IIF RiSD (November 2014), http://infoscience.epfl.ch/record/203507 .

  6. Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: 4th IEEE International Conference on Software Engineering and Formal Methods (SEFM), pp. 3–12. IEEE Computer Society (2006)

    Google Scholar 

  7. Bensalem, S., Bozga, M., Boyer, B., Legay, A.: Incremental generation of linear invariants for component-based systems. In: 13th International Conference on Application of Concurrency to System Design (ACSD), pp. 80–89. IEEE (2013)

    Google Scholar 

  8. Bensalem, S., Bozga, M., Legay, A., Nguyen, T.-H., Sifakis, J., Yan, R.: Incremental component-based construction and verification using invariants. In: Bloem, R., Sharygina, N. (eds.) 10th International Conference on Formal Methods in Computer-Aided Design (FMCAD), pp. 257–256. IEEE (2010)

    Google Scholar 

  9. Bensalem, S., Bozga, M., Nguyen, T.-H., Sifakis, J.: D-finder: A tool for compositional deadlock detection and verification. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 614–619. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  10. Bensalem, S., Bozga, M., Nguyen, T.-H., Sifakis, J.: Compositional verification for component-based systems and application. IET Software 4(3), 181–193 (2010)

    Article  MATH  Google Scholar 

  11. Bensalem, S., Bozga, M., Sifakis, J., Nguyen, T.-H.: Compositional verification for component-based systems and application. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 64–79. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Bensalem, S., Griesmayer, A., Legay, A., Nguyen, T.-H., Peled, D.: Efficient deadlock detection for concurrent systems. In: Singh, S., Jobstmann, B., Kishinevsky, M., Brandt, J. (eds.) 9th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE), pp. 119–129. IEEE (2011)

    Google Scholar 

  13. Bliudze, S.: Towards a theory of glue. In: Carbone, M., Lanese, I., Silva, A., Sokolova, A. (eds.) 5th International Conference on Interaction and Concurrency Experience (ICE). EPTCS, vol. 104, pp. 48–66 (2012)

    Google Scholar 

  14. Bliudze, S., Sifakis, J.: The algebra of connectors — Structuring interaction in BIP. In: 7th ACM & IEEE International Conference on Embedded Software (EMSOFT), pp. 11–20. ACM SigBED (2007)

    Google Scholar 

  15. Bliudze, S., Sifakis, J.: A notion of glue expressiveness for component-based systems. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 508–522. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  16. Bliudze, S., Sifakis, J.: Causal semantics for the algebra of connectors. Formal Methods in System Design 36(2), 167–194 (2010)

    Article  MATH  Google Scholar 

  17. Bliudze, S., Sifakis, J., Bozga, M., Jaber, M.: Architecture internalisation in BIP. In: Proceedings of The 17th International ACM Sigsoft Symposium on Component-Based Software Engineering (CBSE), pp. 169–178. ACM (July 2014)

    Google Scholar 

  18. Bonakdarpour, B., Bozga, M., Jaber, M., Quilbeuf, J., Sifakis, J.: From high-level component-based models to distributed implementations. In: 10th ACM International Conference on Embedded Software (EMSOFT), pp. 209–218. ACM, New York (2010)

    Google Scholar 

  19. Bozga, M., Jaber, M., Maris, N., Sifakis, J.: Modeling dynamic architectures using dy-BIP. In: Gschwind, T., De Paoli, F., Gruhn, V., Book, M. (eds.) SC 2012. LNCS, vol. 7306, pp. 1–16. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  20. Bozga, M., Jaber, M., Sifakis, J.: Source-to-source architecture transformation for performance optimization in BIP. In: IEEE International Symposium on Industrial Embedded Systems (SIES), pp. 152–160 (July 2009)

    Google Scholar 

  21. Bruni, R., Melgratti, H., Montanari, U.: Behaviour, interaction and dynamics. In: Iida, S., Meseguer, J., Ogata, K. (eds.) Specification, Algebra, and Software. LNCS, vol. 8373, pp. 382–401. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  22. Dhungana, D., Rabiser, R., Grünbacher, P., Prähofer, H., Federspiel, C., Lehner, K.: Architectural knowledge in product line engineering: An industrial case study. In: 32nd EUROMICRO Conference on Software Engineering and Advanced Applications (EUROMICRO-SEAA), pp. 186–197. IEEE (2006)

    Google Scholar 

  23. 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)

    Chapter  Google Scholar 

  24. 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)

    Article  Google Scholar 

  25. Fares, E., Bodeveix, J.-P., Filali, M.: Event algebra for transition systems composition - application to timed automata. In: Sánchez, C., Venable, K.B., Zimányi, E. (eds.) 20th International Symposium on Temporal Representation and Reasoning (TIME), pp. 125–132 (September 2013)

    Google Scholar 

  26. Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall International Series in Computer Science. Prentice Hall (April 1985)

    Google Scholar 

  27. ISO/IEC. Information technology – Object Management Group – Object Constraint Language (OCL). Technical Report ISO/IEC 19507, ISO, Object Management Group (2012)

    Google Scholar 

  28. ISO/IEC/IEEE. Systems and software engineering – Architecture description. Technical Report ISO/IEC/IEEE 42010, ISO (2011)

    Google Scholar 

  29. Koehler, C., Lazovik, A., Arbab, F.: Connector rewriting with high-level replacement systems. Electr. Notes Theor. Comput. Sci. 194(4), 77–92 (2008)

    Article  MATH  Google Scholar 

  30. Kumar, A.: Software architecture styles a survey. International Journal of Computer Applications 87(9) (2014)

    Google Scholar 

  31. Lustig, Y., Vardi, M.: Synthesis from component libraries. International Journal on Software Tools for Technology Transfer 15(5-6), 603–618 (2013)

    Article  MATH  Google Scholar 

  32. Metayer, D.L.: Describing software architecture styles using graph grammars. IEEE Trans. Software Eng. 24(7), 521–533 (1998)

    Article  Google Scholar 

  33. Milner, R.: Calculi for synchrony and asynchrony. Theoretical Computer Science 25(3), 267–310 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  34. Milner, R.: Communication and Concurrency. Prentice Hall International Series in Computer Science. Prentice-Hall (1989)

    Google Scholar 

  35. Milner, R.: Communicating and Mobile Systems: The π-calculus. Cambridge University Press (1999)

    Google Scholar 

  36. Papadopoulos, G.A., Arbab, F.: Configuration and dynamic reconfiguration of components using the coordination paradigm. Future Generation Computer Systems 17, 1023–1038 (2001)

    Article  MATH  Google Scholar 

  37. Plath, M., Ryan, M.: Feature integration using a feature construct. Science of Computer Programming 41(1), 53–84 (2001)

    Article  MATH  Google Scholar 

  38. Plotkin, G.D.: A structural approach to operational semantics. J. Log. Algebr. Program. 60-61, 17–139 (2004)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Sifakis, J., Bensalem, S., Bliudze, S., Bozga, M. (2015). A Theory Agenda for Component-Based Design. In: De Nicola, R., Hennicker, R. (eds) Software, Services, and Systems. Lecture Notes in Computer Science, vol 8950. Springer, Cham. https://doi.org/10.1007/978-3-319-15545-6_24

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-15545-6_24

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-15544-9

  • Online ISBN: 978-3-319-15545-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics