Abstract
Today, in general, embedded software is distributed onto networks and structured into logical components that interact asynchronously by exchanging messages. The software system is connected to sensors, actuators, human machine interfaces and networks. In this paper we study fundamental models of composed embedded software systems and their properties, identify and describe various basic views, and show how they are related. We consider, in particular, models of data, states, interfaces, functionality, hierarchically composed systems, and processes. We study relationships by abstraction and refinement as well as forms of composition and modularity. In particular, we introduce a comprehensive mathematical model and a corresponding mathematical theory for composed systems, its essential views and their relationships. We introduce two methodologically essential, complementary and orthogonal concepts for the structured modeling of multifunctional embedded systems in software and systems engineering and their scientific foundation. One approach addresses mainly tasks in requirements engineering and the specification of the comprehensive user functionality of multifunctional systems in terms of their functions, features and services. The other approach essentially addresses the design phase with its task to develop logical architectures formed by networks of interactive components that are specified by their interface behavior.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Abrial JR (1996) The B-book. Cambridge University Press, Cambridge
Website of AutoFocus with documentation, screenshots, tutorials and download. http://autofocus.in.tum.de
Website AutoRAID, with documentation, screenshots and downloads http://wwwbroy.in.tum.de/~autoraid/
Baeten JCM, Bergstra J (1992) Process algebras with signals and conditions. In: Broy M (ed.) Programming and mathematical method. Springer, Berlin Heidelberg New York, pp 273–324, NATO ASI Series, Series F: Computer and system sciences, vol. 88.
Benveniste A, Caspi P, Edwards S, Halbwachs N, LeGuernic P, De Simone R (2003) The synchronous languages twelve years later. Proc IEEE 91(1):64–83
Berry G, Gonthier G (1988) The Esterel synchronous programming language: design, semantics, implementation. INRIA, Research Report 842
Berry G (2000) The foundations of esterel. MIT Press, Cambridge
Booch G (1991) Object oriented design with applications. Benjamin Cummings, Redwood City
Booch G, Rumbaugh J, Jacobson I (1998) The unified modeling language for object-oriented development, version 1.0. RATIONAL Software Cooperation
Botaschanjan J, Broy M, Gruler A, Harhurin A, Knapp S, Kof L, Paul W, Spichkova M (2006) On the correctness of upper layers of automotive systems. (in press)
Broy M (1991) Towards a formal foundation of the specification and description language SDL. Formal Aspects Comput 3:21–57
Broy M, Facchi C, Hettler R, Hußmann H, Nazareth D, Regensburger F, Slotosch O, Stølen K (1993) The requirement and design specification language spectrum. An introduction. version 1.0. Part I/II Technische Universität München, Institut für Informatik, TUM-I9311 / TUM-I9312
Broy M (1997) Refinement of time. In: Bertran M, Rus Th (eds) Transformation-based reactive system development. ARTS’97, Mallorca 1997. Lecture notes in computer science vol 1231, pp 44–63 (To appear in TCS)
Broy M, Hofmann C, Krüger I, Schmidt M (1997) A graphical description technique for communication in software architectures. Technische Universität München, Institut für Informatik, TUM-I9705, February 1997. http://www4.informatik.tu-muenchen.de/reports/TUM-I9705.Also in: Joint 1997 Asia Pacific Software Engineering Conference and International Computer Science Conference (APSEC’97/ICSC’97)
Broy M, Stølen K (2001) Specification and development of interactive systems: Focus on streams, interfaces, and refinement. Springer, Berlin Heidelberg New York
Broy M (2003) Modeling services and layered architectures. In: König H, Heiner M, Wolisz A (eds) Formal techniques for networked and distributed systems. Springer, Berlin Heidelberg New York, pp 48–61, Lecture notes in computer science, vol 2767.
Broy M (2004) Time, abstraction, causality, and modularity in interactive systems. FESCA 2004. Workshop at ETAPS 2004, pp. 1–8
Broy M (2004) The semantic and methodological essence of message sequence charts. Sci Comput Program SCP 54(2–3):213–256
Broy M, Cengarle MV, Rumpe B (2006) Semantics of UML. Towards a system model for UML. The structural data model. Technische Universität München, Institut für Informatik, Report TUM-IO612
Chandy KM, Misra J (1988) Program design: a foundation. Addison–Wesley, Reading
DeMarco T (1979) Structured analysis and system specification. Prentice Hall, Englewood Cliffs
Deubler M (2006) Dienst-orientierte Softwaresysteme: Anforderungen und Entwurf. Dissertation (To appear)
Filman R, Elrad T, Clarke S, Aksit M (2004) Aspect-oriented software development. Addison–Wesley, Reading
Garlan D, Allen R, Ockerbloom J (1995) Architectural mismatch: why reuse is so hard. IEEE Soft 12(6):17–26
Gurevich Y (1994) Evolving algebra. In: Pehrson B, Simson I (eds) IFIP 1994 World Computer Congress, vol. I: Technology and Foundations. Elsevier, Amsterdam, pp. 423–427
Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8:231–274
Hehne ECR (1993) A practical theory of programming. Springer, Berlin eidelberg New York
Herzberg D, Broy M (2005) Modeling layered distributed communication systems. Springer, Berlin Heidelberg New York, Applicable formal methods, vol. 17, no. 1.
Hettler R (1994) Zur Übersetzung von E/R-Schemata nach Spectrum. Technischer Bericht TUM-I9409, TU M"unchen
Hoare CAR (1985) Communicating sequential processes. Prentice Hall, Englewood Cliffs
Jacobsen I (1992) Object-oriented software engineering. Addison–Wesley, ACM, Reading
Jones C (1986) Systematic program development using VDM. Prentice Hall, Englewood Cliffs
Jackson MA (1983) System development. Prentice Hall, Englewood Cliffs
Kahn G (1974) The semantics of a simple language for parallel processing. In: Rosenfeld JL (ed.) Information processing 74. Proceedings of the IFIP Congress 74. North Holland, Amsterdam, pp. 471–475
Lamport L (1994) The temporal logic of actions. ACM Trans Program Languages Syst 16(3):872–923
Luckham DC, Kenney JL, Augustin LM, Vera J, Bryan D, Mann W (1955) Specification and analysis of system architecture using rapide. IEEE Trans Softw Eng 21(4):336–355
Manna Z, Pnueli A (1992) A temporal logic of reactive systems and concurrent systems. Springer, Berlin Heidelberg New York
Milner R (1980) A calculus of communicating systems. Springer, Berlin Heidelberg New York, Lecture notes in computer science, vol 92.
Petri CA (1962) Kommunikation mit Automaten.Technical Report RADCTR-65-377, Bonn, institut für Instrumentelle Mathematik
Petri CA (1963) Fundamentals of a theory of asynchronous information flow. In: Proceedings of IFIP Congress 62. North Holland Publishing Company, Amsterdam, pp. 386–390
Romberg J (2006) Synthesis of distributed systems from synchronous dataflow programs. PhD Thesis, Technische Universität München, Fakultät für Informatik
Ross DT (1977) Structured analysis (sa): a language for communicating ideas. IEEE Trans Softw Eng 3(1):16–34
Ross DT (1990) Applications and extensions of sadt. In: Glinert EP (ed) Visual programming environments: paradigms and systems. IEEE Computer Society Press, Los Alamitos, pp 147–156
Rumbaugh J (1991) Object-oriented modelling and design. Prentice Hall, Englewood Cliffs
Rumpe B (1996) Formale Methodik des Entwurfs verteilter objektorientierter Systeme. PhD Thesis, Technische Universität München, Fakultät für Informatik 1996. Published by Herbert Utz Verlag
Schätz B (2004) Mastering the complexity of embedded systems – the Autofocus approach. In: Fabrice Kordon F, Lemoine M (eds) Formal techniques for embedded distributed systems: from requirements to detailed design. Kluwer, Dordrecht
Specification and Description Language (SDL), Recommendation Z.100. Technical Report, CCITT, 1988
ITU-T (previously CCITT) (1993) Criteria for the use and applicability of formal description techniques. Recommendation Z. 120, Message Sequence Chart (MSC), 35p
ITU-T. Recommendation Z.120, Annex B: Algebraic semantics of message sequence charts. ITU-Telecommunication Standardization Sector, Geneva, Switzerland, 1995
Selic B, Gullekson G, Ward PT (1994) Real-time objectoriented modeling. Wiley, New York
Spivey M (1988) Understanding Z – a specification language and its formal semantics. Cambridge tracts in theoretical computer science 3. Cambridge University Press, Cambridge
Stoy JE (1997) Denotational semantics: the scott strachey approach to programming languages. MIT Press, Cambridge
Zave P, Jackson M (1997) Four dark corners of requirements engineering. ACM Trans Softw Eng and Methodol 6(1):1–30
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Open Access This is an open access article distributed under the terms of the Creative Commons Attribution Noncommercial License ( https://creativecommons.org/licenses/by-nc/2.0 ), which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
About this article
Cite this article
Broy, M. Model-driven architecture-centric engineering of (embedded) software intensive systems: modeling theories and architectural milestones. Innovations Syst Softw Eng 3, 75–102 (2007). https://doi.org/10.1007/s11334-006-0011-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-006-0011-y