Model-Driven Plug-in Development for UML Based Modeling Systems. Information Technology and Control

UML is the main modeling language used in model-driven development (MDD). In many cases, UML-based modeling systems need to be extended by plug-ins to support different modeling approaches. This paper proposes a conceptual framework for model-driven development of plug-ins, which enables reuse of UML modeling capabilities for defining executable plug-in models. This approach suggests that UML-based modeling system should provide for their users a set of extension profiles that make up Application Modeling Interface (AMI), which is MDD alternative to Application Programming Interface (API). The paper describes three cases of AMI - model validation, methodology wizards, and model patterns - and sample plug-in models based on them. The presented samples are implemented in MagicDraw, which is one of the most popular UML-based modeling systems worldwide. The paper also discusses the benefits and drawbacks of the proposed approach and its further research directions. http://dx.doi.org/10.5755/j01.itc.40.3.627

[1]  Marie-Pierre Gervais,et al.  Model Bus: Towards the Interoperability of Modelling Tools , 2003, MDAFA.

[2]  Jean-Marc Jézéquel,et al.  Precise Modeling of Design Patterns , 2000, UML.

[3]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[4]  Jean Vanderdonckt,et al.  Applying model-based techniques to the development of UIs for mobile computers , 2001, IUI '01.

[5]  Jürgen Dunkel,et al.  Model-Driven Architecture for Mobile Applications , 2007, BIS.

[6]  Jean Bézivin,et al.  Model-based DSL frameworks , 2006, OOPSLA '06.

[7]  Stuart Kent,et al.  Precise Visual Specification of Design Patterns , 1998, ECOOP.

[8]  Peri L. Tarr,et al.  Model-driven development : The good , the bad , and the ugly & , 2006 .

[9]  Robert B. France,et al.  A UML-based pattern specification technique , 2004, IEEE Transactions on Software Engineering.

[10]  Xiaoguang Zhang,et al.  Model Driven Data Service Development , 2008, 2008 IEEE International Conference on Networking, Sensing and Control.

[11]  Z. Obrenovic,et al.  Model-Driven Development of User Interfaces: Promises and Challenges , 2005, EUROCON 2005 - The International Conference on "Computer as a Tool".

[12]  Paolo Paolini,et al.  Model-driven development of Web applications: the AutoWeb system , 2000, TOIS.

[13]  Eduardas Bareiša,et al.  A SOFTWARE TESTING APPROACH BASED ON BEHAVIORAL UML MODELS , 2009 .

[14]  Klaus Marquardt,et al.  Patterns for Plug-Ins , 1999, EuroPLoP.

[15]  Goetz Botterweck,et al.  Model-Based Methodologies for Pervasive and Embedded Software , 2012, Lecture Notes in Computer Science.

[16]  Lionel C. Briand,et al.  A metamodeling approach to pattern specification , 2006, MoDELS'06.

[17]  Jean-Marc Jézéquel,et al.  Design Patterns Application in UML , 2000, ECOOP.

[18]  Sudipto Ghosh,et al.  A UML-Based Metamodeling Language to Specify Design Patterns , 2003 .

[19]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[20]  Bran Selic,et al.  A Systematic Approach to Domain-Specific Language Design Using UML , 2007, 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'07).

[21]  G. Goth Beware the March of this IDE: Eclipse is overshadowing other tool technologies , 2005, IEEE Software.

[22]  Edward D. Willink UMLX : A graphical transformation language for MDA , 2003 .

[23]  Warren Harrison Eating Your Own Dog Food , 2006, IEEE Softw..

[24]  João Paulo A. Almeida,et al.  Model-Driven Design of Distributed Applications , 2004, OTM Workshops.

[25]  Darius Silingas,et al.  DOMAIN-SPECIFIC MODELING ENVIRONMENT BASED ON UML PROFILES , 2009 .

[26]  Rajesh Subramanyan,et al.  Automation of GUI testing using a model-driven approach , 2006, AST '06.

[27]  Kurt Geihs,et al.  Model-driven development of real-time systems with UML 2.0 and C , 2006, Fourth Workshop on Model-Based Development of Computer-Based Systems and Third International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MBD-MOMPES'06).

[28]  Pieter Van Gorp,et al.  Leveraging UML Profiles to Generate Plugins From Visual Model Transformations , 2005, Electron. Notes Theor. Comput. Sci..

[29]  Stefano Ceri,et al.  Model-driven development of context-aware Web applications , 2007, TOIT.

[30]  Elvinia Riccobene,et al.  A model-driven design environment for embedded systems , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[31]  Robert Wagner Developing Model Transformations with Fujaba , 2006 .

[32]  Juha-Pekka Tolvanen,et al.  MetaEdit+: defining and using domain-specific modeling languages and code generators , 2003, OOPSLA '03.

[33]  Emanuele Della Valle,et al.  Model-driven design and development of semantic Web service applications , 2007, TOIT.

[34]  Kestutis Motiejunas,et al.  A Method for Automated Testing of Software Interface , 2011, Inf. Technol. Control..

[35]  Heiko Kern,et al.  Model Interchange between ARIS and Eclipse EMF , 2007 .

[36]  Hans Vangheluwe,et al.  Domain-Specific Model Editors with Model Completion , 2008, MoDELS.

[37]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[38]  Gabriele Taentzer,et al.  Generation of visual editors as eclipse plug-ins , 2005, ASE.

[39]  Eric Clayberg,et al.  Eclipse Plug-ins , 2008 .

[40]  Dirk Riehle,et al.  Pattern Languages of Program Design 3 , 1997 .

[41]  Martin Fowler,et al.  Patterns of Enterprise Application Architecture , 2002 .