Modeling Architectures of Cyber-Physical Systems

  • Evgeny Kusmenko
  • Alexander Roth
  • Bernhard Rumpe
  • Michael von Wenckstern
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10376)


Cyber-physical systems (CPS) in automotive or robotics industry comprise many different specific features, e.g., trajectory planning, lane correction, battery management or engine control, requiring a steady interaction with their environment over sensors and actuators. Assembling all these different features is one of the key challenges in the development of such complex systems. Component and connector (C&C) models are widely used for the design and development of CPS to represent features and their logical interaction. An advantage of C&C models is that complex features can be hierarchically decomposed into subfeatures, developed and managed by different domain experts. In this paper, we present the textual modeling family MontiCAR, Modeling and Testing of Cyber-Physical Architectures. It is based on the C&C paradigm and increases development efficiency of CPS by incorporating (i) component and connector arrays, (ii) name and index based autoconnections, (iii) a strict type system with unit and accuracy support, as well as (iv) an advanced Math language supporting BLAS operations and matrix classifications. Arrays and their autoconnection modes allow an efficient way of modeling redundant components such as front and rear park sensors or an LED matrix system containing hundreds of single dimmable lights. The strict type system and matrix classification provide means for integrated static verification of C&C architectures at compile time minimizing bug-fixing related costs. The capabilities and benefits of the proposed language family are demonstrated by a running example of a parking assistance system.



This research was supported by a Grant from the GIF, the German-Israeli Foundation for Scientific Research and Development, and by the Grant SPP1835 from DFG, the German Research Foundation.


  1. 1.
    Allen, R.J.: A formal approach to software architecture. Technical report (1997)Google Scholar
  2. 2.
    Aravantinos, V., Voss, S., Teufl, S., Hölzl, F., Schätz, B.: AutoFOCUS 3: tooling concepts for seamless, model-based development of embedded systems. In: ACES-MB (2015)Google Scholar
  3. 3.
    Ashenden, P.J.: The Designer’s Guide to VHDL, vol. 3. Morgan Kaufmann, San Francisco (2010)Google Scholar
  4. 4.
    Association, M., et al.: Modelica Language Specification. Linköping, Sweden (2005)Google Scholar
  5. 5.
    AUTOSAR: layered software architecture. Technical report 053 (4.3.0), AUTOSAR (2016)Google Scholar
  6. 6.
    AUTOSAR: modeling guidelines of basic software EA UML model. Technical report 117 (4.3.0), AUTOSAR (2016)Google Scholar
  7. 7.
    Azumi, T., Yamamoto, M., Kominami, Y., Takagi, N., Oyama, H., Takada, H.: A new specification of software components for embedded systems. In: ISORC (2007)Google Scholar
  8. 8.
    Blanc, N., Kroening, D., Sharygina, N.: Scoot: a tool for the analysis of SystemC models. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 467–470. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-78800-3_36 CrossRefGoogle Scholar
  9. 9.
    Cavada, R., Cimatti, A., Dorigatti, M., Griggio, A., Mariotti, A., Micheli, A., Mover, S., Roveri, M., Tonetta, S.: The nuXmv symbolic model checker. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 334–342. Springer, Cham (2014). doi: 10.1007/978-3-319-08867-9_22 Google Scholar
  10. 10.
    Cheng, S.T., York, G., Brayton, R.K.: Vl2mv: A compiler from verilog to blif-mv. HSIS Distribution (1993)Google Scholar
  11. 11.
    Dashofy, E.M., van der Hoek, A., Taylor, R.N.: A highly-extensible, xml-based architecture description language. In: Conference on Software Architecture (2001)Google Scholar
  12. 12.
    Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-78800-3_24 CrossRefGoogle Scholar
  13. 13.
    Dormoy, F.X.: Scade 6: a model based solution for safety critical software development. In: ERTS 2008, pp. 1–9 (2008)Google Scholar
  14. 14.
    Eker, J., Janneck, J.W., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity-the Ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)CrossRefGoogle Scholar
  15. 15.
    Texas Instruments of Electrical and Electronic Engineers: Standard VHDL language reference manual. IEEE Std (1988)Google Scholar
  16. 16.
    Elmqvist, H., Mattsson, S.E., Otter, M.: Modelica-a language for physical system modeling, visualization and interaction. In: Proceedings of the 1999 IEEE International Symposium on Computer Aided Control System Design, pp. 630–639. IEEE (1999)Google Scholar
  17. 17.
    Haber, A.: MontiArc - Architectural Modeling and Simulation of Interactive Distributed Systems. Shaker Verlag (2016)Google Scholar
  18. 18.
    Herbert, J., Dutertre, B., Riemenschneider, R., Stavridou, V.: A formalization of software architecture. In: FM (1999)Google Scholar
  19. 19.
    Horn, R.A., Johnson, C.R.: Matrix Analysis. Cambridge University Press, Cambridge (2012)CrossRefGoogle Scholar
  20. 20.
    Instruments, N.: BridgeView and LabView: G Programming Reference Manual. Technical report 321296B–01, National Instruments (1998)Google Scholar
  21. 21.
    Kaufmann, M., Kornerup, J., Reitblatt, M.: Formal verification of LabVIEW programs using the ACL2 theorem prover. In: ACL2 (2009)Google Scholar
  22. 22.
    Klein, C., Rumpe, B., Broy, M.: A stream-based mathematical model for distributed information processing systems-the SysLab system model. In: Formal Methods for Open Object-based Distributed Systems (1997)Google Scholar
  23. 23.
    Lemke, J.: C++-Metaprogrammierung: Eine Einführung in die Präprozessor-und Template-Metaprogrammierung (2016)Google Scholar
  24. 24.
    Logozzo, F.: Cibai: an abstract interpretation-based static analyzer for modular analysis and verification of Java classes. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 283–298. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-69738-1_21 CrossRefGoogle Scholar
  25. 25.
    Luckham, D.C., Vera, J.: An event-based architecture definition language. IEEE Trans. Softw. Eng. 21(9), 717–734 (1995)CrossRefGoogle Scholar
  26. 26.
    Maoz, S., Ringert, J.O., Rumpe, B.: Verifying component and connector models against crosscutting structural views. In: ICSE (2014)Google Scholar
  27. 27.
    Maoz, S., Ringert, J.O., Rumpe, B., von Wenckstern, M.: Consistent extra-functional properties tagging for component and connector models. In: ModComp (2016)Google Scholar
  28. 28.
    Mathworks: simulink user’s guide. Technical report R2016b, MATLAB & SIMULINK (2016)Google Scholar
  29. 29.
    Nikitin, P.V., Shi, C., Wan, B.: Modeling partial differential equations in VHDL-AMS (mixed signal systems applications). In: SOC (2003)Google Scholar
  30. 30.
    OMG: UML profile for MARTE: modeling and analysis of real-time embedded systems. Technical report Version 1.1, OMG Group (2011)Google Scholar
  31. 31.
    OMG: OMG systems modeling language (OMG SysML). Technical report. Version 1.4, OMG Group (2015)Google Scholar
  32. 32.
    Rumpe, B.: Modeling with UML: Language, Concepts, Methods. Springer, Heidelberg (2016)CrossRefMATHGoogle Scholar
  33. 33.
    Rumpe, B., Schulze, C., von Wenckstern, M., Ringert, J.O., Manhart, P.: Behavioral compatibility of simulink models for product line maintenance and evolution. In: SPLC (2015)Google Scholar
  34. 34.
    IEEE Computer Society: IEEE standard for standard systemc® language reference manual (2012)Google Scholar
  35. 35.
    Chromatography software: UNICORN 5.0 - User Reference Manual. Technical report 03–0014-90 (2004)Google Scholar
  36. 36.
    Accellera Systems Initiative: Verilog-AMS Language Reference Manual. Technical report 2.4.0, Accellera Systems Initiative standards (2014)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Evgeny Kusmenko
    • 1
  • Alexander Roth
    • 1
  • Bernhard Rumpe
    • 1
    • 2
  • Michael von Wenckstern
    • 1
  1. 1.Software EngineeringRWTH AachenAachenGermany
  2. 2.Fraunhofer FITAachenGermany

Personalised recommendations