Skip to main content

Modelle in der Softwareentwicklung und ihre Beschreibung

  • 9158 Accesses

Part of the Xpert.press book series (XPERT.PRESS)

Zusammenfassung

In den im Laufe der Entwicklung von Softwaresystemen zu erstellenden Artefakten sind sehr unterschiedliche Zusammenhänge von oft hoher Komplexität zu erfassen. Dies umfasst die Beschreibung des Verhaltens eines Softwaresystems oder seiner Bestandteile und die Beschreibung von Daten, Prozessen, Zuständen oder Strukturen. Für die angemessene Beschreibung dieser unterschiedlichen Aspekte bieten sich in vielen Fällen Modelle an. Genauer gesagt bestehen die Inhalte von Artefakten häufig aus der Darstellung geeigneter Modelle für die zu beschreibenden Zusammenhänge. Modelle können dabei in sehr unterschiedlicher Form auftreten, angefangen von Gedankenmodellen, über grafisch dargestellte Modelle bis hin zu formalen Modellen. Gut gewählte Modelle bieten einen angemessenen Abstraktionsgrad, erlauben es, sich auf wesentliche Aspekte zu konzentrieren und erhöhen das Verständnis. Vor diesem Hintergrund sind für das Software Engineering eine Reihe von Modellkonzepten entwickelt worden, die sich für bestimmte Aspekte der Softwareentwicklung als besonders geeignet erwiesen haben. Dieses Kapitel führt in die Grundlagen der Modellierung im Kontext der Software- und Systementwicklung ein. Dazu werden ausgewählte Modellierungsansätze eingeführt, welche ein breites Spektrum von Einsatzmöglichkeiten – von der eher informalen Kommunikation bis hin zur mathematischen Modellierung – abdecken.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-662-50263-1_4
  • Chapter length: 71 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   54.99
Price excludes VAT (USA)
  • ISBN: 978-3-662-50263-1
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Hardcover Book
USD   69.99
Price excludes VAT (USA)
Abb. 4.1
Abb. 4.2
Abb. 4.3
Abb. 4.4
Abb. 4.5
Abb. 4.6
Abb. 4.7
Abb. 4.8
Abb. 4.9
Abb. 4.10
Abb. 4.11
Abb. 4.12
Abb. 4.13
Abb. 4.14
Abb. 4.15
Abb. 4.16
Abb. 4.17
Abb. 4.18
Abb. 4.19
Abb. 4.20
Abb. 4.21
Abb. 4.22
Abb. 4.23
Abb. 4.24
Abb. 4.25
Abb. 4.26
Abb. 4.27
Abb. 4.28
Abb. 4.29
Abb. 4.30
Abb. 4.31
Abb. 4.32
Abb. 4.33
Abb. 4.34
Abb. 4.35
Abb. 4.36
Abb. 4.37
Abb. 4.38
Abb. 4.39
Abb. 4.40
Abb. 4.41
Abb. 4.42

Notes

  1. 1.

    Der Begriff des Modells findet sich in vielen Bereichen. Man denke nur an den wohlvertrauten Begriff der Modelleisenbahn, wobei durch die Modelleisenbahn in der Tat miniaturisierte Modelle der wirklichen Eisenbahn geschaffen werden. Für die Verwendung in der Informatik ist der Modellbegriff allerdings deutlich komplizierter.

  2. 2.

    Im Folgenden betrachten wir der Einfachheit halber nur den deterministischen Fall.

  3. 3.

    In den Anfängen der Informatik sprach man folgerichtig auch von elektronischer Datenverarbeitung (EDV).

  4. 4.

    Den Begriff „Sorte“ verwenden wir nur im Zusammenhang mit den Ausführungen zu Abstrakten Datentypen. Ansonsten verwenden wir synonym den Begriff Datentyp oder kurz Typ.

  5. 5.

    ER-Modelle sind faktisch die Standard-Modellierungstechnik bei der Analyse und Entwicklung von relationalen Datenbanken [31]. Durch die Einfachheit der grafischen Notation eignen sich ER-Modelle insbesondere auch zur Kommunikation in Projekten, sodass Analysten und Stakeholder sich in der Abstimmung auf die gewünschte Fachlichkeit konzentrieren können.

  6. 6.

    Diese Technik lässt sich ohne Probleme auf die Methoden in objektorientierten Systemen übertragen.

  7. 7.

    Man beachte, dass es sich hier noch nicht um einen vollständigen Modellierungsschritt handelt und die Zusammenstellung der Aktionen und Zustände daher unvollständig ist.

  8. 8.

    Diese Notation wird in der DIN 66001:1983 [18] als Programmablaufplan bezeichnet.

  9. 9.

    Vergleiche hierzu auch die bereits Ende der 1990er Jahre begonnene Diskussion zur Harmonisierung von MSCs und Sequenzdiagrammen [55].

Literatur

  1. J.-R. Abrial. The B Tool. In Proceedings of the Europe Symposium on VDM – The Way Ahead, volume 328 of Lecture Notes in Computer Science, pages 86–87, Berlin, Heidelberg, 1988. Springer-Verlag.

    Google Scholar 

  2. H. Bekić, D. Bjørner, W. Henhapl, C. B. Jones, and P. Lucas. A formal definition of a pl/i subset. In Programming Languages and Their Definition, volume 177 of Lecture Notes in Computer Science, pages 107–155, Berlin, Heidelberg, 1984. Springer Berlin Heidelberg.

    Google Scholar 

  3. F. Belina, D. Hogrefe, and A. Sarma. SDL with Applications from Protocol Specification. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1991.

    MATH  Google Scholar 

  4. S. Beydeda, M. Book, and V. Gruhn, editors. Model-Driven Software Development. Springer, October 2010.

    Google Scholar 

  5. R. Bodendiek and R. Lang. Lehrbuch der Graphentheorie, volume Band 1 und 2 of Spektrum Hochschultaschenbuch. Spektrum Akademischer Verlag, erste edition, 1995.

    Google Scholar 

  6. M. Broy. Compositional refinement of interactive systems. Journal of the ACM, 44(6):850–891, 1997.

    MathSciNet  CrossRef  Google Scholar 

  7. M. Broy. Informatik – Eine grundlegende Einführung (Band 1: Programmierung und Rechnerstrukturen). Springer, 2 edition, 1998.

    Google Scholar 

  8. M. Broy. Engineering Theories of Software Construction, volume 180 of NATO Science Series III: Computer and System Sciences, chapter From States to Histories: Relating States and History Views onto Systems, pages 149–186. IOS Press, 2001.

    Google Scholar 

  9. M. Broy. A logical basis for component-oriented software and systems engineering. The Computer Journal, 53(10):1758–1782, 2010.

    CrossRef  Google Scholar 

  10. M. Broy. Multifunctional software systems: Structured modeling and specification of functional requirements. Science of Computer Programming, 75(12):1193–1214, 2010.

    CrossRef  Google Scholar 

  11. M. Broy. Logische und Methodische Grundlagen der Programm- und Systementwicklung. Springer Vieweg, June 2019.

    Google Scholar 

  12. M. Broy and R. Steinbrüggen. Modellbildung in der Informatik. Number ISBN: 3-540-44292-8 in Xpert.press. Springer, 2004.

    Google Scholar 

  13. M. Broy and K. Stølen. Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer-Verlag, Berlin, Heidelberg, 2001.

    CrossRef  Google Scholar 

  14. P. P.-S. Chen. The Entity-Relationship Model – Toward a Unified View of Data. ACM Transactions on Database Systems, 1(1):9–36, 1976.

    Google Scholar 

  15. R. Davis. ARIS Design Platform: Advanced Process Modeling and Administration. Springer, 2010.

    Google Scholar 

  16. R. Diestel. Graphentheorie. Springer Spektrum, 5 edition, May 2017.

    Google Scholar 

  17. E. W. Dijkstra. Letters to the editor: Go to statement considered harmful. Commun. ACM, 11(3):147–148, 1968.

    Google Scholar 

  18. DIN 66001:1983-12. Informationsverarbeitung; Sinnbilder und ihre Anwendung. Technical report, Deutsches Institut für Normung e.V. (DIN), December 1983.

    Google Scholar 

  19. J. Duncan, L. Rackley, and A. Walker. SSADM in Practice. Palgrave, London, 1995.

    CrossRef  Google Scholar 

  20. R. W. Floyd. Assigning meanings to programs. Proceedings of Symposium on Applied Mathematics, 19:19–32, 1967.

    MathSciNet  CrossRef  Google Scholar 

  21. M. Fowler and R. Parsons. Domain-Specific Languages. Addison Wesley, (to appear), 2010.

    Google Scholar 

  22. D. Harel. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 8(3):231–274, 1987.

    MathSciNet  CrossRef  Google Scholar 

  23. C. A. R. Hoare. An axiomatic basis for computer programming. Commun. ACM, 12(10):576–583, Oct. 1969.

    Google Scholar 

  24. F. Hölzl, H. P. de Leon, and S. Voss. AutoFOCUS (af3, version 2.16). Online: https://af3.fortiss.org (abgerufen: 2020-01-03), October 2019.

  25. ISO/IEC 13568:2002. Information technology – Z formal specification notation – Syntax, type system and semantics. International Organization for Standardization, July 2002.

    Google Scholar 

  26. ISO/IEC 19510:2013. Information Technology – Object Management Group Business Process Model and Notation. International Organization for Standardization, July 2013.

    Google Scholar 

  27. ISO/IEC 19514:2017. Information technology – Object management group systems modeling language (OMG SysML). International Organization for Standardization, March 2017.

    Google Scholar 

  28. ITU Z.120. Message Sequence Chart (MSC). International Telecommunication Union, February 2011.

    Google Scholar 

  29. ITU Z.121. Specification and Description Language (SDL) data binding to Message Sequence Charts (MSC). International Telecommunication Union, February 2003.

    Google Scholar 

  30. C. Kecher, A. Salvanos, and R. Hoffmann-Elbern. UML 2.5: Das umfassende Handbuch. Rheinwerk Computing, 6 edition, November 2017.

    Google Scholar 

  31. A. Kemper and A. Eickler. Datenbanksysteme: Eine Einführung. De Gruyter Studium. De Gruyter Oldenburg, 10 edition, September 2015.

    Google Scholar 

  32. S. Kleuker. Formale Modelle der Softwareentwicklung: Model-Checking, Verifikation, Analyse und Simulation. Studium. Vieweg+Teubner Verlag, September 2009.

    Google Scholar 

  33. A. Knöpfel, B. Gröne, and P. Tabeling. Fundamental Modeling Concepts: Effective Communication of IT Systems. Wiley, 2006.

    Google Scholar 

  34. F. Kröger and S. Merz. Temporal Logic and State Systems. Texts in Theoretical Computer Science. Springer, March 2008.

    Google Scholar 

  35. Liggesmeyer, P. Software-Qualität: Testen, Analysieren und Verifizieren von Software. Spektrum Akademischer Verlag, second edition, 2009.

    Google Scholar 

  36. D. A. Marca and C. L. McGowan. SADT: Structured Analysis and Design Techniques. McGraw Hill Higher Education, 1987.

    Google Scholar 

  37. MathWorks. Simulink. Online: https://de.mathworks.com/help/slcheck/ref/model-metric-checks.html (abgerufen: 2020-09-18), 2018.

  38. G. H. Mealy. A method for synthesizing sequential circuits. The Bell System Technical Journal, 34(5):1045–1079, September 1955.

    Google Scholar 

  39. B. Meyer. Eiffel : The Language. Prentice Hall Object-Oriented Series. Pearson Education Limited, October 1992.

    Google Scholar 

  40. B. Meyer. Object-Oriented Software Construction. Prentice Hall, 2 edition, November 1998.

    Google Scholar 

  41. I. Nassi and B. Shneiderman. Flowchart techniques for structured programming. ACM SIGPLAN Notices, 8(8):12–26, Aug. 1973.

    Google Scholar 

  42. M. Nüttgens and F. J. Rump. Syntax und semantik ereignisgesteuerter prozessketten (epk). In Promise 2002 – Prozessorientierte Methoden und Werkzeuge für die Entwicklung von Informationssystemen – Proceedings des GI-Workshops und Fachgruppentreffens, pages 64–77, October 2002.

    Google Scholar 

  43. OMG. Unified Modeling Language (UML): Infrastructure Version 2.1.1. Technical report, Object Management Group, 2007.

    Google Scholar 

  44. OMG. Software & Systems Process Engineering Metamodel Specification (SPEM) Version 2.0. Technical report, Object Management Group, 2008.

    Google Scholar 

  45. OMG. UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems, Version 1.1. Technical report, Object Management Group, 2011.

    Google Scholar 

  46. OMG. Business Process Model and Notation (BPMN), Version 2.0.2. Technical report, Object Management Group, January 2014.

    Google Scholar 

  47. OMG. Meta Object Facility (MOF), Version 2.5.1. Technical report, Object Management Group, 2016.

    Google Scholar 

  48. OMG. Unified Modeling Language (UML) Specification, Version 2.5.1.Technical report, Object Management Group, 2017.

    Google Scholar 

  49. D. L. Parnas. Tabular representation of relations. Technical Report CRL Report 260, McMaster University, Hamilton, Ontario, Canada, 1992.

    Google Scholar 

  50. C. A. Petri. Kommunikation mit Automaten. PhD thesis, Mathematisches Institut der Universität Bonn, 1962.

    Google Scholar 

  51. A. Poetzsch-Heffter. Specification and Verification of Object-Oriented Programs. Habilitation thesis, Technical University of Munich, January 1997.

    Google Scholar 

  52. K. Pohl, H. Hönninger, R. Achatz, and M. Broy, editors. Model-Based Engineering of Embedded Systems: The SPES 2020 Methodology. Springer, December 2014.

    Google Scholar 

  53. L. Priese and K. Erk. Theoretische Informatik: Eine umfassende Einführung. Springer Vieweg, 4 edition, August 2018.

    Google Scholar 

  54. W. Reisig. Petrinetze: Modellierungstechnik, Analysemethoden, Fallstudien. Vieweg+Teubner Verlag, 2010.

    CrossRef  Google Scholar 

  55. E. Rudolph, J. Grabowski, and P. Graubmann. SDL’99: The Next Millennium, chapter Towards a Harmonization of UML-Sequence Diagrams and MSC. Elsevier Science, June 1999.

    Google Scholar 

  56. C. Rupp, S. Queins, and die SOPHISTen. UML 2 glasklar: Praxiswissen für die UML-Modellierung. Carl Hanser Verlag GmbH & Co. KG, 4 edition, 2012.

    Google Scholar 

  57. A.-W. Scheer, W. Jost, and K. Wagner, editors. Von Prozessmodellen zu lauffähigen Anwendungen: ARIS in der Praxis. Springer, 2005.

    Google Scholar 

  58. J. Siedersleben. Moderne Software-Architektur – Umsichtig planen, robust bauen mit Quasar. dpunkt.verlag, 2004.

    Google Scholar 

  59. G. Simsion. Data Modeling. Theory and practise. Technics Publications, March 2007.

    Google Scholar 

  60. T. Stahl, M. Völter, S. Efftinge, and A. Haase. Modellgetriebene Softwareentwicklung: Techniken, Engineering, Management. dpunkt.verlag, 2 edition, May 2007.

    Google Scholar 

  61. W. Struckmann and D. Wätjen. Mathematik für Informatiker – Grundlagen und Anwendungen. Elsevier Spektrum Akademischer Verlag, 2006.

    Google Scholar 

  62. C. Szyperski, D. Gruntz, and S. Murer. Component Software: Beyond Object-Oriented Programming. Component Software Series. Addison-Wesley, 2 edition, November 2002.

    Google Scholar 

  63. W. van der Aalst. Formalization and verification of event-driven process chains. Information and Software Technology, 41(10):639–650, 1999.

    CrossRef  Google Scholar 

  64. M. Winter, T. Roßner, C. Brandes, and H. Götz. Basiswissen modellbasierter Test. dpunkt.verlag GmbH, September 2016.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Manfred Broy .

Rights and permissions

Reprints and Permissions

Copyright information

© 2021 Springer-Verlag GmbH Deutschland, ein Teil von Springer Nature

About this chapter

Verify currency and authenticity via CrossMark

Cite this chapter

Broy, M., Kuhrmann, M. (2021). Modelle in der Softwareentwicklung und ihre Beschreibung. In: Einführung in die Softwaretechnik. Xpert.press. Springer Vieweg, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-50263-1_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-50263-1_4

  • Published:

  • Publisher Name: Springer Vieweg, Berlin, Heidelberg

  • Print ISBN: 978-3-662-50262-4

  • Online ISBN: 978-3-662-50263-1

  • eBook Packages: Computer Science and Engineering (German Language)