Semantic foundation and tool support for model-driven development with UML 2 activity diagrams [Elektronische Ressource] / Stefan Sarstedt
117 pages
Deutsch

Semantic foundation and tool support for model-driven development with UML 2 activity diagrams [Elektronische Ressource] / Stefan Sarstedt

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
117 pages
Deutsch
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Semantic Foundation and Tool Supportfor Model-Driven Development withUML 2 Activity DiagramsDissertationzur Erlangung des Doktorgrads Dr. rer. nat.der Fakult¨at fur¨ Informatik der Universit¨at UlmStefan Sarstedtaus GummersbachUniversit¨at UlmFakult¨at fur¨ InformatikAbteilung Programmiermethodik und CompilerbauLeiter: Prof. Dr. Helmuth Partsch2006Amtierender Dekan: Prof. Dr. Helmuth Partsch1. Gutachter: Prof. Dr. Helmuth Partsch2. Gutachter: Prof. Dr. Friedrich v. Henke3. Gutachter: Ju¨rgen Dingel, Ph.D., Assistant ProfessorTag der Promotion: 5. Juli 20062Danksagung“Indes sie forschten, r¨ontgten, filmten, funkten, entstand von selbst die k¨ostlichste Erfindung:der Umweg als die kurzeste¨ Verbindung zwischen zwei Punkten.”Erich K¨astnerAn dieser Stelle mochte ich mich bei allen Personen bedanken, die zum Gelingen meiner Arbeit¨direkt oder indirekt beigetragen haben.Zunachst mochte ich mich besonders bei Prof. Dr. Helmuth Partsch fur das Ermoglichen meiner¨ ¨ ¨ ¨Forschungsarbeit, die langjahrige Unterstutzung und angenehme Arbeitsatmosphare bedanken. Fur¨ ¨ ¨ ¨Anliegen und Fragen aller Art hatte er stets ein offenes Ohr. Des Weiteren gilt mein Dank meinemZweitgutachter, Herrn Prof. Dr. Friedrich v. Henke, sowie meinem Drittgutachter, Prof. Dr. Jur¨ genDingel.Ohne die Hilfe der gesamten Abteilung Programmiermethodik und Compilerbau an der Uni-versitat¨ Ulm w¨are diese Arbeit nicht moglic¨ h gewesen.

Sujets

Informations

Publié par
Publié le 01 janvier 2006
Nombre de lectures 16
Langue Deutsch
Poids de l'ouvrage 1 Mo

Extrait

Semantic Foundation and Tool Support
for Model-Driven Development with
UML 2 Activity Diagrams
Dissertation
zur Erlangung des Doktorgrads Dr. rer. nat.
der Fakult¨at fur¨ Informatik der Universit¨at Ulm
Stefan Sarstedt
aus Gummersbach
Universit¨at Ulm
Fakult¨at fur¨ Informatik
Abteilung Programmiermethodik und Compilerbau
Leiter: Prof. Dr. Helmuth Partsch
2006Amtierender Dekan: Prof. Dr. Helmuth Partsch
1. Gutachter: Prof. Dr. Helmuth Partsch
2. Gutachter: Prof. Dr. Friedrich v. Henke
3. Gutachter: Ju¨rgen Dingel, Ph.D., Assistant Professor
Tag der Promotion: 5. Juli 2006
2Danksagung
“Indes sie forschten, r¨ontgten, filmten, funkten, entstand von selbst die k¨ostlichste Erfindung:
der Umweg als die kurzeste¨ Verbindung zwischen zwei Punkten.”
Erich K¨astner
An dieser Stelle mochte ich mich bei allen Personen bedanken, die zum Gelingen meiner Arbeit¨
direkt oder indirekt beigetragen haben.
Zunachst mochte ich mich besonders bei Prof. Dr. Helmuth Partsch fur das Ermoglichen meiner¨ ¨ ¨ ¨
Forschungsarbeit, die langjahrige Unterstutzung und angenehme Arbeitsatmosphare bedanken. Fur¨ ¨ ¨ ¨
Anliegen und Fragen aller Art hatte er stets ein offenes Ohr. Des Weiteren gilt mein Dank meinem
Zweitgutachter, Herrn Prof. Dr. Friedrich v. Henke, sowie meinem Drittgutachter, Prof. Dr. Jur¨ gen
Dingel.
Ohne die Hilfe der gesamten Abteilung Programmiermethodik und Compilerbau an der Uni-
versitat¨ Ulm w¨are diese Arbeit nicht moglic¨ h gewesen. Die Umgebung und der kollegiale Umgang
miteinander boten mir stets einen idealen Rahmen fur¨ meine Forschung. Mein herzlicher Dank gilt
besonders meinen “ActiveCharts”-Projektkollegen Jens Kohlmeyer, Alexander Raschke, Dominik
Gessenharter und Matthias Schneiderhan fur¨ Fallbeispiele, Diskussionen, Ideen und Hilfe bei der
Implementierung der “ActiveChartsIDE”. Von meinen sehr geschatzte¨ n Kollegen ist insbesondere
auchWalterGuttmannhervorzuheben,derdurchzahlreicheDiskussionenundAnregungenzurReife
der Formalisierung beigetragen hat.
OhnediemoralischeHilfemeinerFreundinJessica,meinesVaters,meinerMutter,meinesBruders
Marko und meines Freundeskreises hatte ich bereits fruh aufgegeben. Fur euren unerschutterlichen¨ ¨ ¨ ¨
Glauben an mich und den taglichen Ansporn bin ich euch allen sehr dankbar.¨
34Contents
1 Introduction 9
1.1 Problems of current MDD-approaches . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Proposed approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Scope of this thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Overview of this thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 UML 2 Activity Diagrams 13
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Informal semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3 Abstract State Machines 17
3.1 Basic, Structured and Asynchronous Multi-Agent ASMs . . . . . . . . . . . . . . . . 17
3.1.1 Basic ASMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.2 Structured ASMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.3 Asynchronous Multi-Agent ASMs . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 ASM operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 Additional ASM rules and operators . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Discussion of UML 2 Activity Diagram Semantics 21
4.1 Targeting controversial elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2 Problems and enhancements of signals . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.3 Problems due to errors and obscure information . . . . . . . . . . . . . . . . . . . . . 22
4.3.1 Unclear terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.3.2 Where to hold control tokens . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.3.3 Confusion of the reader due to distributed information . . . . . . . . . . . . . 24
4.3.4 Termination of accept event actions without incoming edges . . . . . . . . . . 25
4.3.5 Actions without incoming edges. . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3.6st edges but with input pins . . . . . . . . . . . . . . 25
4.3.7 Data tokens outrun control tokens . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3.8 Buffering of tokens at fork nodes . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.4 Problems due to missing information . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.4.1 Context object for call behavior action . . . . . . . . . . . . . . . . . . . . . . 26
4.4.2 Which transitions to execute . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.4.3 Multiple callers with “isSingleExecution” . . . . . . . . . . . . . . . . . . . . 27
4.4.4 Interruptible activity regions . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5 An ASM Semantics for UML 2 Activity Diagrams 31
5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2 Basic definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.2.1 Predefined base domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.2.2 UML 2 meta model to ASM mapping . . . . . . . . . . . . . . . . . . . . . . 34
5.2.3 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.2.4 Configuration of activity executions . . . . . . . . . . . . . . . . . . . . . . . 38
55.3 Model-based configuration of semantics . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4 ASM initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.5 Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.5.1 Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.5.2 Controller loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.5.3 Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.5.4 Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.5.5 Abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.5.6 Transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.6 Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.6.1 Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.6.2 Enabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.6.3 Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.6.4 Abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.6.5 Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.7 Computation and selection of token offers . . . . . . . . . . . . . . . . . . . . . . . . 61
5.7.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.7.2 Data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.7.3 Creation of token offers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.7.4 Propagation of token offers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.7.5 Selection of token offers at targets . . . . . . . . . . . . . . . . . . . . . . . . 71
5.7.6 Handling interruptible activity regions . . . . . . . . . . . . . . . . . . . . . . 75
5.7.7 Handling accept event actions . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.7.8 Buffering of token offers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.7.9 Discussion of the token offer computation . . . . . . . . . . . . . . . . . . . . 80
5.8 Executing transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.9 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.9.1 Deviations from the specification . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.9.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.9.3 Possible extensions and further work . . . . . . . . . . . . . . . . . . . . . . . 87
5.9.4 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6 Tool Support 89
6.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.2 Working with the ActiveChartsIDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
6.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.3.1 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.3.2 Possible Extensions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3.3 Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3.4 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . .

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents