Skip to main content

Four Exercises in Programming Dynamic Reconfigurable Systems: Methodology and Solution in DR-BIP

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11246))

Abstract

DR-BIP is an extension of the BIP component framework intended for programming reconfigurable systems encompassing various aspects of dynamism. A system is built from instances of types of components characterized by their interfaces. The latter consist of sets of ports through which data can be exchanged when interactions take place. DR-BIP allows the description of parametric exogenous interactions and reconfiguration operations. To naturally model self-organization and mobility of components, a system is composed of several architecture motifs, each motif consisting of a set of component instances and coordination rules. The use of motifs allows a disciplined management of dynamically changing coordination rules. The paper illustrates the basic concepts of DR-BIP through a collection of four non-trivial exercises from different application areas: fault-tolerant systems, mobile systems and autonomous systems. The presented solutions show that DR-BIP is both minimal and expressive allowing concise and natural description of non-trivial systems.

Grenoble INP—Institute of Engineering Univ. Grenoble Alpes.

The research leading to these results has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement no. 700665 CITADEL (Critical Infrastructure Protection using Adaptive MILS).

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    The dot operator is used interchangeably to access a component’s port/data, and to access a motif’s components/deployment/map, and to apply primitives over a motif’s deployment/map.

  2. 2.

    Maps are restricted to simple graphs e.g., chain, cyclic, star.

References

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

    Chapter  Google Scholar 

  2. Attie, P., Baranov, E., Bliudze, S., Jaber, M., Sifakis, J.: A general framework for architecture composability. Form. Asp. Comput. 28(2), 207–231 (2016)

    Article  MathSciNet  Google Scholar 

  3. Basu, A., et al.: Rigorous component-based system design using the BIP framework. IEEE Softw. 28(3), 41–48 (2011)

    Article  Google Scholar 

  4. Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time systems in BIP. In: SEFM 2006 Proceedings, pp. 3–12. IEEE Computer Society Press (2006)

    Google Scholar 

  5. Bergenhem, C.: Approaches for facilities layer protocols for platooning. In: 2015 IEEE 18th International Conference on Intelligent Transportation Systems (ITSC), pp. 1989–1994. IEEE (2015)

    Google Scholar 

  6. Bliudze, S., Sifakis, J.: The algebra of connectors - structuring interaction in BIP. IEEE Trans. Comput. 57(10), 1315–1330 (2008)

    Article  MathSciNet  Google Scholar 

  7. 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). https://doi.org/10.1007/978-3-642-30564-1_1

    Chapter  Google Scholar 

  8. Bradbury, J.: Organizing definitions and formalisms for dynamic software architectures. Technical report 2004–477, Software Technology Laboratory, School of Computing, Queen’s University (2004)

    Google Scholar 

  9. Butting, A., Heim, R., Kautz, O., Ringert, J.O., Rumpe, B., Wortmann, A.: A classification of dynamic reconfiguration in component and connector architecture description languages. In: 4th International Workshop on Interplay of Model-Driven and Component-Based Software Engineering (ModComp 2017) (2017)

    Google Scholar 

  10. Canal, C., Pimentel, E., Troya, J.M.: Specification and refinement of dynamic software architectures. In: Donohoe, P. (ed.) Software Architecture. ITIFIP, vol. 12, pp. 107–125. Springer, Boston (1999). https://doi.org/10.1007/978-0-387-35563-4_7

    Chapter  Google Scholar 

  11. Cuesta, C., de la Fuente, P., Barrio-Solárzano, M.: Dynamic coordination architecture through the use of reflection. In: Proceedings of the 2001 ACM Symposium on Applied Computing, pp. 134–140. ACM (2001)

    Google Scholar 

  12. De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: the SCEL language. TAAS 9(2), 7:1–7:29 (2014)

    Google Scholar 

  13. De Nicola, R., Maggi, A., Sifakis, J.: DReAM: dynamic reconfigurable architecture modeling (full paper). arXiv preprint arXiv:1805.03724 (2018)

  14. El Ballouli, R., Bensalem, S., Bozga, M., Sifakis, J.: DR-BIP - programming dynamic reconfigurable systems. Technical report TR-2018-3, Verimag Research Report

    Google Scholar 

  15. Garlan, D.: Software architecture: a travelogue. In: Future of Software Engineering (FOSE 2014), pp. 29–39. ACM (2014)

    Google Scholar 

  16. Malavolta, I., Lago, P., Muccini, H., Pelliccione, P., Tang, A.: What industry needs from architectural languages: a survey. IEEE Trans. Softw. Eng. 39(6), 869–891 (2006)

    Article  Google Scholar 

  17. Medvidovic, N., Dashofy, E., Taylor, R.: Moving architectural description from under the technology lamppost. Inf. Softw. Technol. 49(1), 12–31 (2007)

    Article  Google Scholar 

  18. Nouyan, S., Gross, R., Bonani, M., Mondada, F., Dorigo, M.: Teamwork in self-organized robot colonies. IEEE Trans. Evol. Comput. 13(4), 695–711 (2009)

    Article  Google Scholar 

  19. Oreizy, P.: Issues in modeling and analyzing dynamic software architectures. In: International Workshop on the Role of Software Architecture in Testing and Analysis, pp. 54–57 (1998)

    Google Scholar 

  20. Pinciroli, C., Beltrame, G.: Buzz: an extensible programming language for heterogeneous swarm robotics. In: 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 3794–3800. IEEE (2016)

    Google Scholar 

  21. Pinciroli, C., Lee-Brown, A., Beltrame, G.: Buzz: an extensible programming language for self-organizing heterogeneous robot swarms. arXiv preprint arXiv:1507.05946 (2015)

  22. Taivalsaari, A., Mikkonen, T., Systä, K.: Liquid software manifesto: the era of multiple device ownership and its implications for software architecture. In: IEEE 38th Annual Computer Software and Applications Conference (COMPSAC 2014) (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Rim El Ballouli or Marius Bozga .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

El Ballouli, R., Bensalem, S., Bozga, M., Sifakis, J. (2018). Four Exercises in Programming Dynamic Reconfigurable Systems: Methodology and Solution in DR-BIP. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Distributed Systems. ISoLA 2018. Lecture Notes in Computer Science(), vol 11246. Springer, Cham. https://doi.org/10.1007/978-3-030-03424-5_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-03424-5_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-03423-8

  • Online ISBN: 978-3-030-03424-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics