Model driven development of plug-ins for UML based modeling tools ; Modeliavimu grindžiamo UML įrankių įskiepių kūrimo metodika ir jos realizavimas
110 pages
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Model driven development of plug-ins for UML based modeling tools ; Modeliavimu grindžiamo UML įrankių įskiepių kūrimo metodika ir jos realizavimas

-

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

Description

VYTAUTAS MAGNUS UNIVERSITY VILNIUS UNIVERSITY INSTITUTE OF MATHEMATICS AND INFORMATICS Ruslanas Vitiutinas MODEL DRIVEN DEVELOPMENT OF PLUG-INS FOR UML BASED MODELING TOOLS Doctoral Dissertation Physical Sciences, Informatics (09P) Kaunas, 2011 Dissertation has been prepared at Vytautas Magnus University in 2006–2010. Scientific supervisor: Prof. Habil. Dr. Laimutis Telksnys (Institute of Mathematics and Informatics, Vytautas Magnus University, Physical Sciences, Informatics – 09P), member of Lithuanian Academy of Sciences Scientific consultant: Doc. Dr. Darius Silingas (No Magic Europe, Vytautas Magnus University, Physical Sciences, Informatics – 09P) VYTAUTO DIDŽIOJO UNIVERSITETAS VILNIAUS UNIVERSITETO MATEMATIKOS IR INFORMATIKOS INSTITUTAS Ruslanas Vitiutinas MODELIAVIMU GRINDŽIAMO UML ĮRANKIŲ ĮSKIEPIŲ KŪRIMO METODIKA IR JOS REALIZAVIMAS Daktaro disertacija Fiziniai mokslai, informatika (09P) Kaunas, 2011 Disertacija rengta 2006 – 2010 metais Vytauto Didžiojo universitete Mokslinis vadovas: prof. habil. dr. Laimutis Telksnys (Vilniaus universiteto Matematikos ir informatikos institutas, fiziniai mokslai, informatika - 09P) Konsultantas: doc. dr. Darius Šilingas (No Magic Europe, Vytauto Didžiojo universitetas, fiziniai mokslai, informatika - 09P) Table of Contents Abbreviations ................................................................................................................................ 10 Glossary........

Sujets

Informations

Publié par
Publié le 01 janvier 2011
Nombre de lectures 36
Poids de l'ouvrage 2 Mo

Exrait

VYTAUTAS MAGNUS UNIVERSITY
VILNIUS UNIVERSITY INSTITUTE OF MATHEMATICS AND
INFORMATICS
Ruslanas Vitiutinas
MODEL DRIVEN DEVELOPMENT OF PLUG-INS FOR UML
BASED MODELING TOOLS
Doctoral Dissertation
Physical Sciences, Informatics (09P)
Kaunas, 2011
Dissertation has been prepared at Vytautas Magnus University in 2006–2010.

Scientific supervisor:
Prof. Habil. Dr. Laimutis Telksnys (Institute of Mathematics and Informatics,
Vytautas Magnus University, Physical Sciences, Informatics – 09P), member of Lithuanian
Academy of Sciences

Scientific consultant:
Doc. Dr. Darius Silingas (No Magic Europe, Vytautas Magnus University, Physical
Sciences, Informatics – 09P)
VYTAUTO DIDŽIOJO UNIVERSITETAS
VILNIAUS UNIVERSITETO MATEMATIKOS IR INFORMATIKOS
INSTITUTAS
Ruslanas Vitiutinas
MODELIAVIMU GRINDŽIAMO UML ĮRANKIŲ ĮSKIEPIŲ
KŪRIMO METODIKA IR JOS REALIZAVIMAS
Daktaro disertacija
Fiziniai mokslai, informatika (09P)
Kaunas, 2011
Disertacija rengta 2006 – 2010 metais Vytauto Didžiojo universitete

Mokslinis vadovas:
prof. habil. dr. Laimutis Telksnys (Vilniaus universiteto Matematikos ir informatikos
institutas, fiziniai mokslai, informatika - 09P)

Konsultantas:
doc. dr. Darius Šilingas (No Magic Europe, Vytauto Didžiojo universitetas, fiziniai
mokslai, informatika - 09P) Table of Contents
Abbreviations ................................................................................................................................ 10
Glossary......................................................................................................................................... 11
Abstract ......................................................................................................................................... 13
1. Introduction ........................................................................................................................... 13
1.1 Subject Relevance .................................................................................................13
1.2 Research Object ....................................................................................................14
1.3 Research Goal .......................................................................................................14
1.4 Research Tasks......................................................................................................15
1.5 Applied Research Methods ...................................................................................15
1.6 Scientific Novelty..................................................................................................15
1.7 Practical Application of Research Results ............................................................15
1.8 Research Statements Presented for Defense .........................................................16
1.9 Research Artifacts Presented for Defense.............................................................16
1.10 Approbation of Research Results..........................................................................16
1.11 Publications...........................................................................................................16
1.12 Outline of Dissertation ..........................................................................................17
2. Related Work Analysis ......................................................................................................... 18
2.1 Model Driven Development..................................................................................18
2.1.1 Model Driven Architecture ...............................................................................18
2.1.2 MDD Benefits ...................................................................................................19
2.1.3 MDD Disadvantages .........................................................................................20
2.1.4 MDD Applications ............................................................................................20
2.1.5 Language for MDD ...........................................................................................22
2.2 Plug-in Development ............................................................................................24
2.2.1 Support of Plug-in Architecture in Software Systems ......................................28
2.3 Support of Plug-in Architecture in UML Based Modeling Tools.........................35
2.3.1 Rational Rose ....................................................................................................35
2.3.2 Rational Software Architect..............................................................................36
2.3.3 Enterprise Architect ..........................................................................................38
2.3.4 MagicDraw UML..............................................................................................41
2.3.5 Model Driven Features in Other Model Based Tools .......................................44
2.4 Application Programming Interface......................................................................45
2.4.1 Characteristics of Good API .............................................................................46
52.4.2 API Design Guidelines and Best Practices ....................................................... 47
3. Model Driven Plug-in Development Based on Application Modeling Interface ................. 49
3.1 Model Driven Development of UML Tool Plug-ins ............................................ 49
3.2 AMI Plug-in Metamodel....................................................................................... 50
3.3 AMI Plug-in Model Interpreter............................................................................. 52
3.4 Development Principles of AMI for UML Modeling Tool .................................. 52
3.4.1 AMI Plug-in Metamodel Design Guidelines .................................................... 54
3.4.2 AMI Plug-in Modeling Environment................................................................ 60
3.4.3 Guidelines for AMI Plug-in Interpreter Development...................................... 63
3.4.4 Reflecting Good API Characteristics in AMI................................................... 64
4. Applications of AMI Based Plug-ins in MagicDraw UML Tool ......................................... 65
4.1 AMI for Project Options ....................................................................................... 65
4.1.1 Proposed AMI Solution .................................................................................... 65
4.1.2 Application of Project Options AMI................................................................. 69
4.2 AMI for Model Validation.................................................................................... 71
4.2.1 Proposed AMI Solution .................................................................................... 71
4.2.2 Application of Validation Rules AMI............................................................... 72
4.3 AMI for Methodology Wizards ............................................................................ 75
4.3.1 AMI Solution .................................................................................................... 75
4.4 AMI for Applying Model Patterns........................................................................ 78
4.4.1 Proposed AMI Solution for Adapter Pattern .................................................... 78
5. Comparing Model Based Plug-in Development to Traditional Programming Based Pug-in
Development................................................................................................................................. 82
5.1 Comparison of Project Options Plug-ins .............................................................. 82
5.2 Comparison of Model Validation Plug-ins........................................................... 86
5.3 Comparison of Pattern Plug-ins............................................................................ 87
5.3.1 Comparison of Singleton Pattern Implementation............................................ 90
5.3.2 Comparison of Adapter Pattern Implementation .............................................. 92
5.4 Summary of Plug-ins Complexity Comparison.................................................... 95
6. Conclusions......................................................................................................................... 100
7. References........................................................................................................................... 102
6 List of Figures
Figure 1 MDA abstraction levels and development flow .................................................................19
Figure 2 Organization profile for organization structure modeling ..................................................23
Figure 3 Linking extension classes to the main application using Separated Interface pattern........24
Figure 4 Plug-in extension class instance creation using Plugin pattern ..........................................25
Figure 5 Plug-in architecture concepts by Marquardt (1999) ...........................................................26
Figure 6 Traditional plug-in architecture structure ...........................................................................28
Figure 7 Pure plug-in architecture structure......................................................................................29
Figure 8 Pluggable interface of power strip......................................................................................31
Figure 9 General structure of Eclipse Plug-in...................................................................................32
Figure 10 Pattern definition for composite pattern ...........................................................................37
Figure 11 Collaboration type pattern instance applied on the class..................................................37
Figure 12 MDG Technology Add-in files for custom Dynamic Requirement Framework..............39
Figure 13 Defining custom diagram toolbars by extending ToolboxPage metaclas ........................40
Figure 14 MagicDraw possible extensions through provided interfaces ..........................................41
Figure 15 Transformation type mapping modeling ..........................................................................42
Figure 16 MagicDraw File view for the Java code engineering .......................................................43
Figure 17 MagicDraw report variables in the model ........................................................................43
Figure 18 Validation rules modeled as constraints ...........................................................................43
Figure 19 Example of Fujaba transformation graph chart (Schippers et. al. 2005). .........................45
Figure 20 Main concepts of proposed AMI framework for model based system extensions...........50
Figure 21 The internal structure of proposed AMI plug-in metamodel implemented as UML profile
...................................................................................................................................................51
Figure 22 The proposed process of preparing AMI accomplished by UML tool vendor.................53
Figure 23 Stereotype and tag definition CamelCased names............................................................55
Figure 24 MARTE profile structure presented in Package diagram.................................................56
Figure 25 Organization model elements with graphical icons defined in applied stereotypes.........57
Figure 26 RTF Velocity template fragment for printing stereotypes and their description..............59
Figure 27 RTF documentation sample for AMI plug-in metamodel generated using Velocity
template .....................................................................................................................................60
Figure 28 The proposed process of extending UML tool capability by creating AMI plug-in model
...................................................................................................................................................61
Figure 29 Custom diagram for custom elements creation.................................................................62
Figure 30 Debugging window prototype in UML modeling tool with output messages and active
element value ............................................................................................................................63
7Figure 31 Project options profile structure and elements ................................................................. 66
Figure 32 Numeric project option customized properties list........................................................... 67
Figure 33 Project options group creation simplification in model tree ............................................ 68
Figure 34 MagicDraw customization for simpler numeric project option creation in diagram ....... 68
Figure 35 Model validation error. Incorrect numeric option type. ................................................... 68
Figure 36 AMI plug-in model for Email notification options .......................................................... 69
Figure 37 Interpreted Email notification AMI plug-in project options ............................................ 69
Figure 38 Email Notification option values modelled as Instance Specification ............................ 70
Figure 39 AMI Plug-in Metamodel for Model Validation AMI Plug-ins ........................................ 71
Figure 40 The properties of “Black hole action” validation rule...................................................... 73
Figure 41 Validation suite for black hole action and its test case..................................................... 74
Figure 42 A detected invalid model element – a “black hole” action. ............................................. 74
Figure 43 Wizards' plugin model and a screenshot of a wizard in action ........................................ 75
Figure 44 Wizards’ plugin profile for specifying wizard steps as activity (Silingas et. al. 2009b).. 76
Figure 45 Wizard activities represented as menu items for executing wizards................................ 76
Figure 46 Pattern model definition in MagicDraw UML tool.......................................................... 79
Figure 47 Pattern Wizard with patterns defined in model driven way ............................................. 79
Figure 48 Model driven pattern transformation flow ....................................................................... 80
Figure 49 Applying model driven pattern to a class......................................................................... 81
Figure 50 Class after model driven Adapter pattern applied ............................................................ 81
Figure 51 The evaluation task implementated using AMI plug-in.................................................. 83
Figure 52 The implementation of model version option in Java code using MagicDraw API. ...... 84
Figure 53 Required model elements for Adapter pattern declaration in AMI.................................. 88
Figure 54 Required files for Adapter pattern declaration using API................................................ 89
Figure 55 Class after Singleton pattern is applied ............................................................................ 90
Figure 56 Singleton pattern implementation using AMI .................................................................. 90
Figure 57 Class with Adapter pattern applied................................................................................... 92
Figure 58 Adapter pattern implementation using AMI..................................................................... 93
Figure 59 Number of actions to accomplish for specific AMI and API based plug-in
implementations........................................................................................................................ 96
Figure 60 Amount of time required for specific AMI and API based plug-in implementations...... 97
Figure 61 Number of concepts user should be familiar with for specific implementation............... 98

8 List of Tables
Table 1 Extensible software development issues by Marquardt (1999) ...........................................26
Table 2 Actions for modeling numbered project option using AMI.................................................83
Table 3 Actions of model version and state options development using API ..................................85
Table 4 The implementation scenario of model validation plug-in using AMI based approach......86
Table 5 The implementation scenario of model validation plug-in using API based approach .......87
Table 6 Actions for modeling pattern structure using AMI..............................................................88
Table 7 Actions of pattern structure development using API ...........................................................89
Table 8 Actions of modeling Singleton pattern implementation using AMI....................................91
Table 9 Actions of Singleton pattern implementation development using API................................91
Table 10 Actions of modeling Adapter pattern implementation using AMI ....................................93
Table 11 Actions of Adapter pattern implementation development using API................................94
Table 12 Simplification of AMI plug-ins implementation compared to implementation of API
based plug-ins............................................................................................................................99

9Abbreviations
API Application Program Interface
AMI Application Model Interface
COM Component Object Model
DSL Domain Specific Language
DSM Domain Specific Modeling
HTML HyperText Markup Language
IDE Integrated Development Environment
JAR Java Archive
MDD Model Driven Development
MDG Model Driven Generation Technologies
PDE Plug-in Development Environment
PDF Portable Document Format
RTF Rich Text Format
UML Unified Modeling Language
XML Extensible Markup Language
XSD XML Schema Definition

10

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