Considerations about quality in model-driven engineering

The virtue of quality is not itself a subject; it depends on a subject. In the software engineering field, quality means good software products that meet customer expectations, constraints, and requirements. Despite the numerous approaches, methods, descriptive models, and tools, that have been developed, a level of consensus has been reached by software practitioners. However, in the model-driven engineering (MDE) field, which has emerged from software engineering paradigms, quality continues to be a great challenge since the subject is not fully defined. The use of models alone is not enough to manage all of the quality issues at the modeling language level. In this work, we present the current state and some relevant considerations regarding quality in MDE, by identifying current categories in quality conception and by highlighting quality issues in real applications of the model-driven initiatives. We identified 16 categories in the definition of quality in MDE. From this identification, by applying an adaptive sampling approach, we discovered the five most influential authors for the works that propose definitions of quality. These include (in order): the OMG standards (e.g., MDA, UML, MOF, OCL, SysML), the ISO standards for software quality models (e.g., 9126 and 25,000), Krogstie, Lindland, and Moody. We also discovered families of works about quality, i.e., works that belong to the same author or topic. Seventy-three works were found with evidence of the mismatch between the academic/research field of quality evaluation of modeling languages and actual MDE practice in industry. We demonstrate that this field does not currently solve quality issues reported in industrial scenarios. The evidence of the mismatch was grouped in eight categories, four for academic/research evidence and four for industrial reports. These categories were detected based on the scope proposed in each one of the academic/research works and from the questions and issues raised by real practitioners. We then proposed a scenario to illustrate quality issues in a real information system project in which multiple modeling languages were used. For the evaluation of the quality of this MDE scenario, we chose one of the most cited and influential quality frameworks; it was detected from the information obtained in the identification of the categories about quality definition for MDE. We demonstrated that the selected framework falls short in addressing the quality issues. Finally, based on the findings, we derive eight challenges for quality evaluation in MDE projects that current quality initiatives do not address sufficiently.

[1]  John Krogstie Model-Based Development and Evolution of Information Systems: A Quality Approach , 2012 .

[2]  Marcel van Amstel The Right Tool for the Right Job: Assessing Model Transformation Quality , 2010, 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops.

[3]  Marco Torchiano,et al.  Maturity of software modelling and model driven engineering: A survey in the Italian industry , 2012, EASE.

[4]  Beatriz Marín,et al.  Key features for a successful model-driven development tool , 2014, 2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD).

[5]  Jesús Sánchez Cuadrado,et al.  Applying model-driven engineering in small software enterprises , 2014, Sci. Comput. Program..

[6]  H. James Nelson,et al.  Research Review: A Systematic Literature Review on the Quality of UML Models , 2011, J. Database Manag..

[7]  José Ambrosio Toval Álvarez,et al.  Integrating usability requirements that can be evaluated in design time into Model Driven Engineering of Web Information Systems , 2009, Adv. Eng. Softw..

[8]  P. Kam,et al.  : 4 , 1898, You Can Cross the Massacre on Foot.

[9]  Mario Piattini,et al.  The impact of structural complexity on the understandability of UML statechart diagrams , 2010, Inf. Sci..

[10]  Jordi Cabot,et al.  EMFtoCSP: A tool for the lightweight verification of EMF models , 2012, 2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA).

[11]  Mark Rouncefield,et al.  The State of Practice in Model-Driven Engineering , 2014, IEEE Software.

[12]  P. Krutchen,et al.  The Rational Unified Process: An Introduction , 2000 .

[13]  Bernhard Rumpe,et al.  Meaningful modeling: what's the semantics of "semantics"? , 2004, Computer.

[14]  Philippe Kruchten,et al.  The Rational Unified Process: An Introduction , 1998 .

[15]  Antonio Vallecillo On the Combination of Domain Specific Modeling Languages , 2010, ECMFA.

[16]  Miguel A. Fernández,et al.  Where does model-driven engineering help? Experiences from three industrial cases , 2011, Software & Systems Modeling.

[17]  Sophie Dupuy-Chessa,et al.  Support for quality metrics in metamodelling , 2013 .

[18]  Tom Mens,et al.  Challenges in Model-Driven Software Engineering , 2009, MoDELS.

[19]  Antonio Vallecillo,et al.  On the Industrial Adoption of Model Driven Engineering. Is your company ready for MDE , 2015 .

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

[21]  Marie-Pierre Gervais,et al.  Executing and debugging UML models: an fUML extension , 2013, SAC '13.

[22]  Claes Wohlin,et al.  Systematic literature studies: Database searches vs. backward snowballing , 2012, Proceedings of the 2012 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement.

[23]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

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

[25]  Shari Lawrence Pfleeger,et al.  Preliminary Guidelines for Empirical Research in Software Engineering , 2002, IEEE Trans. Software Eng..

[26]  Frank Weil,et al.  Model-Driven engineering in a large industrial context — motorola case study , 2005, MoDELS'05.

[27]  Stanko Strmčnik,et al.  Model-driven engineering of process control software – beyond device-centric abstractions , 2013 .

[28]  Tom Mens,et al.  A Taxonomy of Model Transformation , 2006, GRaMoT@GPCE.

[29]  Regina Hebig,et al.  On the need to study the impact of model driven engineering on software processes , 2014, ICSSP 2014.

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

[31]  Erkuden Rios,et al.  MDD Maturity Model: A Roadmap for Introducing Model-Driven Development , 2006, ECMDA-FA.

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

[33]  Jordi Cabot,et al.  Corpus-based analysis of domain-specific languages , 2013, Software & Systems Modeling.

[34]  D. L. Moody Dealing with "Map Shock": A Systematic Approach to Managing Complexity in Requirements Analysis , 2006 .

[35]  Jean-Marc Jézéquel,et al.  Measuring Models , 2009 .

[36]  Oscar Pastor,et al.  In search of evidence for model-driven development claims: An experiment on quality, effort, productivity and satisfaction , 2015, Inf. Softw. Technol..

[37]  Michaela Bacíková,et al.  Pragmatic model-driven software development from the viewpoint of a programmer: Teaching experience , 2014, 2014 Federated Conference on Computer Science and Information Systems.

[38]  Mark van den Brand,et al.  Using Metrics for Assessing the Quality of ASF+SDF Model Transformations , 2009, ICMT@TOOLS.

[39]  Marian Petre,et al.  UML in practice , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[40]  Päivi Parviainen,et al.  Challenges in Deployment of Model Driven Development , 2009, 2009 Fourth International Conference on Software Engineering Advances.

[41]  Richard F. Paige,et al.  The Grand Challenge of Scalability for Model Driven Engineering , 2009, MoDELS.

[42]  Miroslaw Staron,et al.  Adopting model driven software development in industry: a case study at two companies , 2006, MoDELS'06.

[43]  Davide Di Ruscio,et al.  Managing the Coupled Evolution of Metamodels and Textual Concrete Syntax Specifications , 2013, 2013 39th Euromicro Conference on Software Engineering and Advanced Applications.

[44]  Eckhard D. Falkenberg,et al.  FRISCO: A framework of information system concepts : The FRISCO report (WEB edition) , 1998 .

[45]  Marco Brambilla,et al.  Large-scale Model-Driven Engineering of web user interaction: The WebML and WebRatio experience , 2014, Sci. Comput. Program..

[46]  Tanja Mayerhofer,et al.  Testing and debugging UML models based on fUML , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[47]  Graeme G. Shanks,et al.  Improving the quality of data models: empirical validation of a quality management framework , 2003, Inf. Syst..

[48]  Michel R. V. Chaudron,et al.  How effective is UML modeling ? , 2012, Software & Systems Modeling.

[49]  Silvio Romero de Lemos Meira,et al.  Using CMMI together with agile software development: A systematic review , 2015, Inf. Softw. Technol..

[50]  Ipek Ozkaya Strategic Management of Architectural Technical Debt , 2012 .

[51]  Pericles Loucopoulos,et al.  Quality evaluation framework (QEF): Modeling and evaluating quality of business processes , 2014, Int. J. Account. Inf. Syst..

[52]  Roberto Vinaja A Framework for Usability Evaluation of Modeling Languages , 2013 .

[53]  Monique Snoeck,et al.  A systematic literature review of studies on business process modeling quality , 2015, Inf. Softw. Technol..

[54]  Parastoo Mohagheghi,et al.  Where Is the Proof? - A Review of Experiences from Applying MDE in Industry , 2008, ECMDA-FA.

[55]  Geert Poels,et al.  Towards a Quality-Aware Engineering Process for the Development of Web Applications , 2007 .

[56]  Jean Bézivin,et al.  Model-based Technology Integration with the Technical Space Concept , 2006 .

[57]  John Krogstie,et al.  Defining quality aspects for conceptual models , 1995, ISCO.

[58]  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.

[59]  Miguel Goulão,et al.  Quality in use of domain-specific languages: a case study , 2011, PLATEAU '11.

[60]  Mark Rouncefield,et al.  Empirical assessment of MDE in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[61]  Christian Lange,et al.  Model size matters , 2006, MoDELS'06.

[62]  Remco M. Dijkman,et al.  Semantics and analysis of business process models in BPMN , 2008, Inf. Softw. Technol..

[63]  Pearl Brereton,et al.  Empirical evidence about the UML: a systematic literature review , 2011, Softw. Pract. Exp..

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

[65]  A. Abran,et al.  Using a functional size measurement procedure to evaluate the quality of models in MDD environments , 2013, TSEM.

[66]  Håkan Burden,et al.  Comparing and contrasting model-driven engineering at three large companies , 2014, ESEM '14.

[67]  Juan de Lara,et al.  Assessing the Quality of Meta-models , 2014, MoDeVVa@MoDELS.

[68]  Guttorm Sindre,et al.  Evaluating the Quality of Process Models: Empirical Testing of a Quality Framework , 2002, ER.

[69]  John Krogstie,et al.  Specialisations of SEQUAL , 2012 .

[70]  Heinrich C. Mayr,et al.  Harmonizing the Quality View of Stakeholders , 2014, Relating System Quality and Software Architecture.

[71]  Michel R. V. Chaudron,et al.  Effects of defects in UML models: an experimental investigation , 2006, ICSE.

[72]  Peter B. Seddon A Respecification and Extension of the DeLone and McLean Model of IS Success , 1997, Inf. Syst. Res..

[73]  R María Nelcy González Desarrollo de software dirigido por modelos , 2016 .

[74]  Mari Matinlassi,et al.  Quality-Driven Software Architecture Model Transformation , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[75]  Marouane Kessentini,et al.  Searching models, modeling search: On the synergies of SBSE and MDE , 2013, 2013 1st International Workshop on Combining Modelling and Search-Based Software Engineering (CMSBSE).

[76]  Bernhard Rumpe,et al.  Modeling Languages: Syntax, Semantics and All That Stuff, Part I: The Basic Stuff , 2000 .

[77]  Keng Siau,et al.  Toward a Unified Model of Information Systems Development Success , 2010, J. Database Manag..

[78]  Miguel A. Fernández,et al.  An empirical study of the state of the practice and acceptance of model-driven engineering in four industrial cases , 2012, Empirical Software Engineering.

[79]  Mario Piattini,et al.  Quality in conceptual modeling: five examples of the state of the art , 2005, Data Knowl. Eng..

[80]  Benoît Combemale,et al.  MDE in Practice for Computational Science , 2015, ICCS.

[81]  Mrv Michel Chaudron,et al.  An empirical investigation in quantifying inconsistency and incompleteness of UML designs , 2003 .

[82]  Colin Atkinson,et al.  Driving Component-Based Software Development through Quality Modelling , 2003, Component-Based Software Quality.

[83]  Paulo Cézar Stadzisz,et al.  A Brazilian survey on UML and model-driven practices for embedded software development , 2013, J. Syst. Softw..

[84]  Jan Mendling,et al.  Business Process Quality Management , 2015, Handbook on Business Process Management.

[85]  A. H. Torres,et al.  A Quality Model in a Quality Evaluation Framework for MDWE methodologies , 2010, 2010 Fourth International Conference on Research Challenges in Information Science (RCIS).

[86]  Giancarlo Guizzardi,et al.  PoN-S: A Systematic Approach for Applying the Physics of Notation (PoN) , 2016, BMMDS/EMMSAD.

[87]  Gerti Kappel,et al.  A Framework for Testing UML Activities Based on fUML , 2013, MoDeVVa@MoDELS.

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

[89]  Miguel A. Fernández,et al.  MDE Adoption in Industry: Challenges and Success Criteria , 2009, MoDELS.

[90]  Maged Elaasar,et al.  A FRAMEWORK FOR MEASURING QUALITY OF MODELS : EXPERIENCES FROM A SERIES OF CONTROLLED EXPERIMENTS , 2012 .

[91]  Janne Merilinna,et al.  A Tool for Quality-Driven Architecture Model Transformation: Master's thesis , 2005 .

[92]  Yashwant Singh,et al.  Model Driven Architecture: A Perspective , 2009, 2009 IEEE International Advance Computing Conference.

[93]  John Krogstie,et al.  Quality of Modelling Languages , 2012 .

[94]  Oscar Pastor,et al.  Evidences of the mismatch between industry and academy on modelling language quality evaluation , 2016, ArXiv.

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

[96]  Lefteris Angelis,et al.  On the use of software design models in software development practice: An empirical investigation , 2014, J. Syst. Softw..

[97]  Geert Poels,et al.  Evaluating quality of conceptual modelling scripts based on user perceptions , 2007, Data Knowl. Eng..

[98]  Cfj Christian Lange,et al.  Experimentally investigating the effectiveness and effort of modeling conventions for the UML , 2006 .

[99]  Claes Wohlin,et al.  Guidelines for snowballing in systematic literature studies and a replication in software engineering , 2014, EASE '14.

[100]  A Straw,et al.  Guide to the Software Engineering Body of Knowledge , 1998 .

[101]  Pierre-Alain Muller,et al.  Exploiting model driven technology: a tale of two startups , 2012, Software & Systems Modeling.

[102]  Clemente Izurieta,et al.  Preemptive management of model driven technical debt for improving software quality , 2015, 2015 11th International ACM SIGSOFT Conference on Quality of Software Architectures (QoSA).

[103]  Jordi Cabot,et al.  Formal verification of static software models in MDE: A systematic review , 2014, Inf. Softw. Technol..

[104]  Arash Saghafi,et al.  Do Ontological Guidelines Improve Understandability of Conceptual Models? A Meta-analysis of Empirical Work , 2014, 2014 47th Hawaii International Conference on System Sciences.

[105]  Jörg Becker,et al.  Evaluating the Expressiveness of Domain Specific Modeling Languages Using the Bunge-Wand-Weber Ontology , 2010, 2010 43rd Hawaii International Conference on System Sciences.

[106]  Marta Indulska,et al.  How do practitioners use conceptual modeling in practice? , 2006, Data Knowl. Eng..

[107]  O. Geoffrey Okogbaa,et al.  A review of: “Adaptive Sampling” S. Thompson and G. Seber Wiley, 1996 , 1997 .

[108]  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.

[109]  Dániel Varró,et al.  A research roadmap towards achieving scalability in model driven engineering , 2013, BigMDE '13.

[110]  Mario Piattini,et al.  A conceptual modeling quality framework , 2011, Software Quality Journal.

[111]  Carlos Eduardo Pereira,et al.  Combining aspects and object-orientation in model-driven engineering for distributed industrial mechatronics systems , 2014 .

[112]  Lionel Morel,et al.  Description and Implementation of a UML Style Guide , 2008, MoDELS Workshops.

[113]  Benoît Combemale,et al.  The Relevance of Model-Driven Engineering Thirty Years from Now , 2014, MoDELS.

[114]  Esperanza Marcos,et al.  A framework for model-driven development of information systems: Technical decisions and lessons learned , 2012, J. Syst. Softw..

[115]  Bedir Tekinerdogan,et al.  A systematic approach to evaluating domain-specific modeling language environments for multi-agent systems , 2015, Software Quality Journal.

[116]  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).

[117]  Miguel Goulão,et al.  Quality in model-driven engineering: a tertiary study , 2016, Software Quality Journal.

[118]  Mark Rouncefield,et al.  Model-driven engineering practices in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[119]  Mark Rouncefield,et al.  Model-driven engineering practices in industry: Social, organizational and managerial factors that lead to success or failure , 2014, Sci. Comput. Program..

[120]  Juan Bernardo Quintero,et al.  How face the top MDE adoption problems , 2012, 2012 XXXVIII Conferencia Latinoamericana En Informatica (CLEI).

[121]  Giancarlo Guizzardi,et al.  Formal Semantics and Ontological Analysis for Understanding Subsetting, Specialization and Redefinition of Associations in UML , 2011, ER.

[122]  Emilio Insfran,et al.  Model-Driven Engineering Languages and Systems , 2014, Lecture Notes in Computer Science.

[123]  Daniela E. Damian,et al.  Transition to model-driven engineering: what is revolutionary, what remains the same? , 2012, MODELS'12.

[124]  Alberto Rodrigues da Silva,et al.  Assessing the Quality of User-interface Modeling Languages , 2015, ICEIS.

[125]  Ariadi Nugroho,et al.  Level of detail in UML models and its impact on model comprehension: A controlled experiment , 2009, Inf. Softw. Technol..

[126]  Jean-Marc Jézéquel,et al.  A Model-Driven Measurement Approach , 2008, MoDELS.

[127]  Arne Sølvberg,et al.  Understanding quality in conceptual modeling , 1994, IEEE Software.

[128]  Alberto Rodrigues da Silva,et al.  Model-driven engineering: A survey supported by the unified conceptual model , 2015, Comput. Lang. Syst. Struct..

[129]  Oscar Pastor,et al.  Modelling language quality evaluation in model-driven information systems engineering: A roadmap , 2015, 2015 IEEE 9th International Conference on Research Challenges in Information Science (RCIS).

[130]  Oscar Pastor,et al.  Analysing the concept of quality in model-driven engineering literature: A systematic review , 2014, 2014 IEEE Eighth International Conference on Research Challenges in Information Science (RCIS).

[131]  Semih Bilgen,et al.  A framework for qualitative assessment of domain-specific languages , 2015, Software & Systems Modeling.

[132]  SoaresInali Wisniewski,et al.  A Brazilian survey on UML and model-driven practices for embedded software development , 2013 .

[133]  Parastoo Mohagheghi,et al.  Evaluating Quality in Model-Driven Engineering , 2007, International Workshop on Modeling in Software Engineering (MISE'07: ICSE Workshop 2007).

[134]  Javier J. Gutiérrez,et al.  Measuring the Quality of Model-Driven Projects with NDT-Quality , 2009, ISD.

[135]  Macarena Espinilla,et al.  A Method Based on AHP to Define the Quality Model of QuEF , 2011 .

[136]  Bernhard Rumpe,et al.  Model-driven Development of Complex Software : A Research Roadmap , 2007 .

[137]  Oscar Pastor,et al.  Integrating the Goal and Business Process Perspectives in Information System Analysis , 2014, CAiSE.

[138]  Javier Fabra,et al.  Automatic execution of business process models: Exploiting the benefits of Model-driven Engineering approaches , 2012, J. Syst. Softw..

[139]  Jordi Cabot,et al.  Lightweight and static verification of UML executable models , 2016, Comput. Lang. Syst. Struct..

[140]  Nadine Mandran,et al.  Qualité des langages de modélisation et des modèles : vers un catalogue des patrons collaboratifs , 2012, INFORSID.

[141]  Brian Henderson-Sellers,et al.  Ontological Evaluation of the UML Using the Bunge–Wand–Weber Model , 2002, Software and Systems Modeling.

[142]  Arda Goknil,et al.  Survey of Traceability Approaches in Model-Driven Engineering , 2007, 11th IEEE International Enterprise Distributed Object Computing Conference (EDOC 2007).

[143]  Jim Davies,et al.  Formal model-driven engineering of critical information systems , 2015, Sci. Comput. Program..

[144]  Christian Schalles A Framework for Usability Evaluation of Modeling Languages (FUEML) , 2013 .

[145]  Isabel M. Ramos,et al.  A Framework for the Quality Evaluation of MDWE Methodologies and Information Technology Infrastructures , 2011, Int. J. Hum. Cap. Inf. Technol. Prof..

[146]  Marco Torchiano,et al.  Relevance, benefits, and problems of software modelling and model driven techniques - A survey in the Italian industry , 2013, J. Syst. Softw..

[147]  Oscar Pastor,et al.  A framework to identify primitives that represent usability within Model-Driven Development methods , 2015, Inf. Softw. Technol..

[148]  Fáber D. Giraldo,et al.  Adapting the PBEC-OTSS software selection approach for BPM suites: an application case , 2015, 2015 34th International Conference of the Chilean Computer Science Society (SCCC).

[149]  Ricardo Soto,et al.  Model-driven constraint programming , 2008, PPDP.

[150]  Juan Bernardo-Quintero,et al.  Reflexiones acerca de la adopción de enfoques centrados en modelos en el desarrollo de software , 2011 .

[151]  Vinay Kulkarni,et al.  Scaling up model driven engineering-experience and lessons learnt , 2010, MODELS'10.

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

[153]  José Manuel Marqués Corral,et al.  UML Support for Designing Software Product Lines: The Package Merge Mechanism , 2010, J. Univers. Comput. Sci..

[154]  Ruben Picek,et al.  Model Driven Development – Future or Failure of Software Development? , 2007 .

[155]  Håkan Burden,et al.  A taxonomy of tool-related issues affecting the adoption of model-driven engineering , 2017, Software & Systems Modeling.

[156]  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..

[157]  Dov Dori,et al.  Generating SysML views from an OPM model: Design and evaluation , 2011, Syst. Eng..

[158]  Keng Siau An Analysis of Unified Modeling Language ( UML ) Graphical Constructs Based on BWW Ontology , 2009 .

[159]  Pierre-Yves Schobbens,et al.  Evaluating formal properties of feature diagram languages , 2008, IET Softw..