Conciliating Model-Driven Engineering with Technical Debt Using a Quality Framework

The main goal of this work is to evaluate the feasibility to calculate the technical debt (a traditional software quality approach) in a model-driven context through the same tools used by software developers at work. The SonarQube tool was used, so that the quality check was performed directly on projects created with Eclipse Modeling Framework (EMF) instead of traditionals source code projects. In this work, XML was used as the model specification language to verify in SonarQube due to the creation of EMF metamodels in XMI (XML Metadata Interchange) and that SonarQube offers a plugin to assess the XML language. After this, our work focused on the definition of model rules as an XSD schema (XML Schema Definition) and the integration between EMF-SonarQube in order that these metrics were directly validated by SonarQube; and subsequently, this tool determined the technical debt that the analyzed EMF models could contain.

[1]  Clemente Izurieta,et al.  On the Uncertainty of Technical Debt Measurements , 2013, 2013 International Conference on Information Science and Applications (ICISA).

[2]  Radu Marinescu,et al.  Assessing technical debt by identifying design flaws in software systems , 2012, IBM J. Res. Dev..

[3]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[4]  Oscar Pastor,et al.  Conceptual-Model Programming: A Manifesto , 2011, Handbook of Conceptual Modeling.

[5]  Richard T. Vidgen,et al.  An exploration of technical debt , 2013, J. Syst. Softw..

[6]  Robert L. Nord,et al.  Technical Debt: From Metaphor to Theory and Practice , 2012, IEEE Software.

[7]  Oscar Pastor,et al.  A Quality Model for Conceptual Models of MDD Environments , 2010, Adv. Softw. Eng..

[8]  Forrest Shull,et al.  Practical considerations, challenges, and requirements of tool-support for managing technical debt , 2013, 2013 4th International Workshop on Managing Technical Debt (MTD).

[9]  Michel R. V. Chaudron,et al.  Managing Model Quality in UML-Based Software Development , 2005, 13th IEEE International Workshop on Software Technology and Engineering Practice (STEP'05).

[10]  Eric Allman,et al.  Managing technical debt , 2012, Commun. ACM.

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

[12]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[13]  Gabriele Taentzer,et al.  A tool environment for quality assurance based on the Eclipse Modeling Framework , 2012, Automated Software Engineering.

[14]  Andrew Fish,et al.  Towards an Operationalization of the "Physics of Notations" for the Analysis of Visual Languages , 2013, MoDELS.

[15]  Peter Loos,et al.  Towards the Reconstruction and Evaluation of Conceptual Model Quality Discourses - Methodical Framework and Application in the Context of Model Understandability , 2012, BMMDS/EMMSAD.

[16]  Parastoo Mohagheghi,et al.  Developing a Quality Framework for Model-Driven Engineering , 2007, MoDELS Workshops.

[17]  Carolyn B. Seaman,et al.  Measuring and Monitoring Technical Debt , 2011, Adv. Comput..

[18]  Daniel L. Moody,et al.  Theoretical and practical issues in evaluating the quality of conceptual models: current state and future directions , 2005, Data Knowl. Eng..

[19]  John Krogstie,et al.  Quality of Models , 2012 .

[20]  Dirk Fahland,et al.  2013 IEEE 1st International Workshop on Communicating Business Process and Software Models : quality, understandability, and maintainability (CPSM), September 23, 2013, Eindhoven, The Netherlands) , 2013 .

[21]  Volker Gruhn,et al.  Measuring and visualising the quality of models , 2013, 2013 IEEE 1st International Workshop on Communicating Business Process and Software Models Quality, Understandability, and Maintainability (CPSM).

[22]  Robert L. Nord,et al.  In Search of a Metric for Managing Architectural Technical Debt , 2012, 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture.

[23]  Jean-Louis Letouzey,et al.  Managing Technical Debt with the SQALE Method , 2012, IEEE Software.

[24]  Michael Blaha Patterns of Data Modeling , 2010 .