Flexible and Efficient Reuse of Multi-mode Components for Building Multi-mode Systems

  • Hang Yin
  • Hans Hansson
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8919)


Software component reuse is deemed as an effective technique for managing the growing software complexity of large systems. Software complexity can also be reduced by partitioning the system behavior into different modes. Such a multi-mode system can change behavior by switching between modes under certain circumstances. Integrating component reuse and the multi-mode approach, we have developed the Mode Switch Logic (MSL), a framework dedicated to the development of multi-mode systems composed by reusable multi-mode components, i.e. components which can run in different modes. The mode switch handling of MSL is based on a fully distributed architecture in the sense that a system mode switch is achieved by the joint mode switches of different independently developed components. In this paper, we propose a mode transformation technique as a supplement to MSL for converting the distributed mode switch handling of MSL to a centralized mode switch handling. The goal is to enhance the run-time mode switch efficiency when components are deployed on a single hardware platform and global mode information is available. We demonstrate this technique by an example and reveal its potential industrial value.


component reuse mode switch mode transformation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bachmann, F., Bass, L.: Managing variability in software architectures. In: Proceedings of SSR, pp. 126–132 (2001)Google Scholar
  2. 2.
    Bennour, B., Henrio, L., Rivera, M.: A reconfiguration framework for distributed components. In: Proceedings of SINTER, pp. 49–56 (2009)Google Scholar
  3. 3.
    Borde, E., Haïk, G., Pautet, L.: Mode-based reconfiguration of critical software component architectures. In: Proc. DATE (2009)Google Scholar
  4. 4.
    Crnković, I., Larsson, M.: Building reliable component-based software systems. Artech House (2002)Google Scholar
  5. 5.
    Crnković, I., Sentilles, S., Vulgarakis, A., Chaudron, M.R.V.: A classification framework for software component models. IEEE Transactions on Software Engineering 37(5) (2011)Google Scholar
  6. 6.
    Feiler, P.H., Gluch, D.P., Hudak, J.J.: The architecture analysis & design language (AADL): An introduction. Tech. Rep. CMU/SEI-2006-TN-011, Software engineering institute, MA (February 2006)Google Scholar
  7. 7.
    Hang, Y.: Mode switch for component-based multi-mode systems. Licentiate thesis, Mälardalen University, Sweden (December 2012)Google Scholar
  8. 8.
    Hang, Y., Hansson, H.: Handling multiple mode switch scenarios in component-based multi-mode systems. In: Proc. APSEC (2013)Google Scholar
  9. 9.
    Hang, Y., Hansson, H.: Mode switch timing analysis for component-based multi-mode systems. Journal of Systems Architecture 59(10, Part D), 1299–1318 (2013)CrossRefGoogle Scholar
  10. 10.
    Hang, Y., Hansson, H.: Flexible and efficient reuse of multi-mode components for building multi-mode systems—An extended report. Tech. Rep. MDH-MRTC-288/2014-1-SE, Mälardalen University (August 2014)Google Scholar
  11. 11.
    Hang, Y., Qin, H., Carlson, J., Hansson, H.: Mode switch handling for the ProCom component model. In: Proc. CBSE (2013)Google Scholar
  12. 12.
    Hänninen, K., Mäki-Turja, J., Nolin, M., Lindberg, M., Lundbäck, J., Lundbäck, K.: The Rubus component model for resource constrained real-time systems. In: Proc. SIES (2008)Google Scholar
  13. 13.
    Hansson, H., Åkerholm, M., Crnković, I., Törngren, M.: SaveCCM - A component model for safety-critical real-time systems. In: Proc. Euromicro Conference (2004)Google Scholar
  14. 14.
    Heinzemann, C., Becker, S.: Executing reconfigurations in hierarchical component architectures. In: Proc. CBSE (2013)Google Scholar
  15. 15.
    Henzinger, T.A., Horowitz, B., Kirsch, C.M.: Giotto: A time-triggered language for embedded programming. In: Henzinger, T.A., Kirsch, C.M. (eds.) EMSOFT 2001. LNCS, vol. 2211, pp. 166–184. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Labbani, O., Dekeyser, J.-L., Boulet, P.: Mode-automata based methodology for Scade. In: Morari, M., Thiele, L. (eds.) HSCC 2005. LNCS, vol. 3414, pp. 386–401. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  17. 17.
    Maraninchi, F., Rémond, Y.: Mode-automata: About modes and states for reactive systems. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, p. 185. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  18. 18.
    Ommering, R.V., Linden, F.V.D., Kramer, J., Magee, J.: The Koala component model for consumer electronics software. Computer 33(3) (2000)Google Scholar
  19. 19.
    Pop, T., Hnětynka, P., Hošek, P., Malohlava, M., Bureš, T.: Comparison of component frameworks for real-time embedded systems. Knowledge and Information Systems, 1–44 (2013)Google Scholar
  20. 20.
    Pop, T., Plasil, F., Outly, M., Malohlava, M.: Bureš, T.: Property networks allowing oracle-based mode-change propagation in hierarchical components. In: Proc. CBSE (2012)Google Scholar
  21. 21.
    Real, J., Crespo, A.: Mode change protocols for real-time systems: A survey and a new proposal. Real-Time Systems 26(2), 161–197 (2004)CrossRefMATHGoogle Scholar
  22. 22.
    Sentilles, S., Vulgarakis, A., Bures, T., Carlson, J., Crnkovic, I.: A component model for control-intensive distributed embedded systems. In: Proc. CBSE (2008)Google Scholar
  23. 23.
    Warschofsky, R.: AUTOSAR software architecture. Tech. rep., Hasso-Plattner-Institute for IT-Systems Engineering (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Hang Yin
    • 1
  • Hans Hansson
    • 1
  1. 1.Mälardalen Real-Time Research CentreMälardalen UniversityVästeråsSweden

Personalised recommendations