A tool environment for quality assurance based on the Eclipse Modeling Framework

The paradigm of model-based software development has become more and more popular since it promises an increase in the efficiency and quality of software development. Following this paradigm, models become primary artifacts in the software development process. Therefore, software quality and quality assurance frequently leads back to the quality and quality assurance of the involved models. In our approach, we propose a model quality assurance process that can be adapted to project-specific and domain-specific needs. This process is based on static model analysis using model metrics and model smells. Based on the outcome of the model analysis, appropriate model refactoring steps can be performed. In this paper, we present a tool environment conveniently supporting the proposed model quality assurance process. In particular, the presented tools support metrics reporting, smell detection, and refactoring for models being based on the Eclipse Modeling Framework, a widely used open source technology in model-based software development.

[1]  Ivan Porres,et al.  Model Refactorings as Rule-Based Update Transformations , 2003, UML.

[2]  Markku Sakkinen,et al.  Disciplined Inheritance , 1989, ECOOP.

[3]  H. D. Rombach,et al.  The Goal Question Metric Approach , 1994 .

[4]  Gabriele Taentzer,et al.  Composite Refactorings for EMF Models , 2012 .

[5]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[6]  Gabriele Taentzer,et al.  Model Refactoring in Eclipse by LTK , EWL , and EMF Refactor : A Case Study , 2009 .

[7]  Uwe Aßmann,et al.  Role-based generic model refactoring , 2010, MODELS'10.

[8]  Gabriele Taentzer,et al.  EMF Refactor : Specification and Application of Model Refactorings within the Eclipse Modeling Framework , 2010 .

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

[10]  Frédéric Jouault,et al.  MoDisco, a Model-Driven Platform to Support Real Legacy Modernization Use Cases , 2010 .

[11]  Volker Gruhn,et al.  Model-Driven Software Development , 2005 .

[12]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series) , 1992 .

[13]  Mikael Lindvall in Software Engineering , 2002 .

[14]  Thorsten Sturm,et al.  Refactoring Browser for UML , 2002, NetObjectDays.

[15]  Nikolaus Regnat,et al.  Towards Syntactical Model Quality Assurance in Industrial Software Development: Process Definition and Tool Support , 2011, Software Engineering.

[16]  Jean-Marc Jézéquel,et al.  Refactoring UML Models , 2001, UML.

[17]  Arthur J. Riel,et al.  Object-Oriented Design Heuristics , 1996 .

[18]  Richard F. Paige,et al.  Update Transformations in the Small with the Epsilon Wizard Language , 2007, J. Object Technol..

[19]  Philip H. Newcomb,et al.  Information Systems Transformation: Architecture-Driven Modernization Case Studies , 2010 .

[20]  Tracy Hall,et al.  Improving the Precision of Fowler's Definitions of Bad Smells , 2008, 2008 32nd Annual IEEE Software Engineering Workshop.

[21]  John J. Marciniak,et al.  Encyclopedia of Software Engineering , 1994, Encyclopedia of Software Engineering.

[22]  Mario Piattini,et al.  A Survey of Metrics for UML Class Diagrams , 2005, J. Object Technol..

[23]  Gabriele Taentzer,et al.  Henshin: advanced concepts and tools for in-place EMF model transformations , 2010, MODELS'10.

[24]  Ivar Jacobson,et al.  Unified Modeling Language , 2020, Definitions.

[25]  Gabriele Taentzer,et al.  Integration of smells and refactorings within the Eclipse modeling framework , 2012, WRT '12.

[26]  Christopher G. Lasater,et al.  Design Patterns , 2008, Wiley Encyclopedia of Computer Science and Engineering.

[27]  Martin Fowler,et al.  Refactoring - Improving the Design of Existing Code , 1999, Addison Wesley object technology series.

[28]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[29]  Thomas Baar,et al.  Refactoring OCL annotated UML class diagrams , 2005, MoDELS'05.

[30]  Parastoo Mohagheghi,et al.  Definitions and approaches to model quality in model-based software development - A review of literature , 2009, Inf. Softw. Technol..

[31]  Jeffrey G. Gray,et al.  Generic and Domain-Specific Model Refactoring Using a Model Transformation Engine , 2005, Model-Driven Software Development.

[32]  Rainer Unland,et al.  Objects, Components, Architectures, Services, and Applications for a Networked World , 2003, Lecture Notes in Computer Science.