Fundierung und Semantische Standardisierung der UML V2.0
Final Report Abstract
Die UML-SprachfamIlie bietet eine Reihe von Diagrammen, die unterschiedliche Sichten eines Softwaresystems beschreiben. Diese Sichten spezifizieren beispielweise statische Struktur, Momentaufnahmen oder dynamisches Verhalten des zu entwickelnden Systems. Mehr als zehn Jahre sind vergangen, seitdem erste Ansätze zur Definition einer UML Semantik diskutiert wurden. Viele Vorschläge entstanden, große Erfahrung wurde gewonnen, einzelne UML-Teilsprachen wurden mit maßgeschneiderten Semantiken ausgestattet sowie erweitert und präzisiert. Zu Beginn des rUML-Projekts bestand aber keine Einigkeit in Bezug auf eine formale, allumfassende Semantik der UML. Im Verlauf des Projekts wurden mehrere große Meilensteine erreicht: 1. Eine Methodik zur Definition einer formalen Semantik für Modellierungssprachen wurde erarbeitet. 2. Das rUML-Systemmodell wurde als semantische Domäne definiert und bietet als einziges, die Möglichkeit alle Aspekte objektorientierter Modellierungssprachen semantisch festzulegen. Dies ist ein hervorragendes Alleinstellungsmerkmal. 3. Größere Teile der UML wurden semantisch auf Basis des rUML-Systemmodells fixiert und via eines Generators für Verifikation in Isabelle-HOL bzw. Simulation zugänglich. 4. Die Methodik wurde in mehrere Varianten untergliedert. Neben der direkten Semantikbildung auf Basis des Systemmodells wurde als effizientere Form die indirekte Semantikbildung über konkatenierte Semantikabbildungen, zum Beispiel mittels Institutionen, eingeführt. 5. Die semantischen Variationspunkte, die im UML-Standard vielfach genutzt werden, wurden formalisiert und damit einer präzisen Untersuchung zugänglich. Dies ist ein weiteres herausragendes Ergebnis dieser Arbeiten. Die erzielten Ergebnisse im Bereich der Systemmodell-basierten Semantik der UML tragen zu einer besseren Fundierung der UML bei. Insbesondere die Möglichkeit der präzisen Behandlung semantischer Variationspunkte legen in Zukunft nahe, ausgehend von wenigen Kernkonzepten die jeweiligen Teilsprachen mit zusätzlich benötigten Konzepte durch Variantenbildung systematisch anzureichern, um eine unkontrollierte Überfrachtung der Notation zu verhindern. Derzeit sind einige Anstrengungen im Gange, die Ergebnisse im industriellen Umfeld zu etablieren. Dies ist jedoch schwierig, da Werkzeughersteller nur begrenztes Interesse zeigen und Werkzeugnutzer der UML weitgehend auf Standardwerkzeuge vertrauen. Am erfolgversprechendsten ist die Nutzung der gewonnenen Erkenntnisse eindeutig bei der Definition domänenspezifischer Sprachen (DSLs), die aufgrund ihrer Inhouse stattfindenden Evolution ebenfalls schnell Sprachfamilien werden. Beispiele hier sind etwa Funktionsnetze der Automobilhersteller oder Geschäftsprozesse für Versicherungen oder Entwicklungsbereiche. Insgesamt sind die Ergebnisse des rUML-Projekts sehr hilfreich, um sowohl in die neu entstandene Problematik der Behandlung von DSLs einzusteigen, als auch die heute praktische eingesetzten Modellierungstechniken (UML und Derivate) besser zu verstehen und Verifikation darauf zu begründen.
Publications
- A Heterogeneous Approach to UML Semantics. In: Pierpaolo Degano, Rocco De Nicola, and José Meseguer, editors, Concurrency, Graphs and Models: Essays Dedicated to Ugo Montanari on the Occasion of His 65th Birthday, volume 5065 of Lecture Notes in Computer Science, pages 383-402. Springer, 2008
Maria Victoria Cengarle, Alexander Knapp, Andrzej Tarlecki, and Martin Wirsing
- Approaches to an All-encompassing Formal Semantics for the UML. In: Ulrich Ultes-Nitsche, Daniel Moldt and Juan Carlos Augusto, editors. Modelling, Simulation, Verification and Validation of Enterprise Information Systems (MSVVEIS'08, Proceedings), pages 3-4. INSTICC PRESS, 2008
Maria Victoria Cengarle
- Modular Description of a Comprehensive Semantics Model for the UML (Version 2.0). Technical Report 2008-06, Carl-Friedrich-Gauß-Fakultät, Technische Universität Braunschweig, 2008
Manfred Broy, Maria Victoria Cengarle, Hans Grönniger, and Bernhard Rumpe
- Considerations and Rationale for a UML System Model. In: Kevin Lano, editor, UML 2 Semantics and Applications, pages 43-60. John Wiley & Sons, Hoboken, 2009
Manfred Broy, Maria Victoria Cengarle, Hans Grönniger, and Bernhard Rumpe
- Definition of the System Model. In: Kevin Lano, editor, UML 2 Semantics and Applications, pages 61-93. John Wiley & Sons, Hoboken, 2009
Manfred Broy, Maria Victoria Cengarle, Hans Grönniger, and Bernhard Rumpe
- Interactions. In: Kevin Lano, editor, UML 2 Semantics and Applications, pages 205-248. John Wiley & Sons, Hoboken, 2009
Maria Victoria Cengarle, Alexander Knapp, and Heribert Mühlberger
- System Model Semantics of Interactions. Technical Report TUM-10932, Institut für Informatik, Technische Universität München, 2009
Maria Victoria Cengarle and Hans Grönniger
- System Model- Based Definition of Modeling Language Semantics. In: David Lee, Antonie Lopes, and Arnd Poetzsch-Heffter, editors, Formal Techniques for Distributed Systems, Joint 11th IFIP WG 6.1 International Conference FMOODS 2009 and 29th IFIP WG 6.1 International Conference FORTE 2009 (Proceedings), volume 5522 of Lecture Notes in Computer Science, pages 152-166. Springer, 2009
Hans Grönniger, Jan Oliver Ringert, and Bernhard Rumpe
- Variability within Modeling Language Definitions. In: Andy Schurr and Bran Seile, editors, Model Driven Engineering Languages and Systems (MODELS 2009, Proceedings), volume 5795 of Lecture Notes in Computer Science, pages 670-684. Springer, 2009
Maria Victoria Cengarle, Hans Grönniger, and Bernhard Rumpe
- Modeling Language Variability. In: Modeling, Development and Verification of Adaptive Systems (16th Monterey Workshop, Proceedings), 2010
Hans Grönniger and Bernhard Rumpe
- Systemmodell-basierte Definition objektbasierter Modellierungssprachen mit semantischen Variationspunkten. Doktorarbeit, RWTH Aachen, 2010
Hans Grönniger
- Towards a Semantics of Activity Diagrams with Semantic Variation Points. In: Dorina C. Petriu, Nicolas Rouquette, and Øystein Haugen, editors, Model Driven Engineering Languages and Systems (MoDELS 2010, Proceedings), volume 6394 of Lecture Notes in Computer Science, pages 331-345. Springer, 2010
Hans Grönniger, Dirk Reiß, and Bernhard Rumpe