Preemptive management of model driven technical debt for improving software quality

Technical debt has been the subject of numerous studies over the last few years. To date, most of the research has concentrated on management (detection, quantification, and decision making) approaches-most performed at code and implementation levels through various static analysis tools. However, if practitioners are to adopt model driven techniques, then the management of technical debt also requires that we address this problem during the specification and architectural phases. This position paper discusses several questions that need to be addressed in order to improve the quality of software architecture by exploring the management of technical debt during modeling, and suggests various lines of research that are worthwhile subjects for further investigation.

[1]  Daniel L. Moody,et al.  Evaluating the quality of information models: empirical testing of a conceptual model quality framework , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[2]  James M. Bieman,et al.  Testing Consequences of Grime Buildup in Object Oriented Design Patterns , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[3]  Timothy Lethbridge,et al.  Problems and opportunities for model-centric versus code-centric software development: a survey of software professionals , 2008, MiSE '08.

[4]  Yuanfang Cai,et al.  Organizing the technical debt landscape , 2012, 2012 Third International Workshop on Managing Technical Debt (MTD).

[5]  Jeffrey Parsons,et al.  How UML is used , 2006, CACM.

[6]  Mauricio A. Saca Refactoring improving the design of existing code , 2017, 2017 IEEE 37th Central America and Panama Convention (CONCAPAN XXXVII).

[7]  James E. Rumbaugh,et al.  Unified Modeling Language (UML) , 2010, Encyclopedia of Software Engineering.

[8]  Joost Visser,et al.  An empirical model of technical debt and interest , 2011, MTD '11.

[9]  S. Strasser,et al.  An Automated Software Tool for Validating Design Patterns , 2011 .

[10]  Jeevan Prabhu,et al.  Complexity Analysis of Simulink Models to improve the Quality of Outsourcing in an Automotive Company , 2010 .

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

[12]  James M. Bieman,et al.  How Software Designs Decay: A Pilot Study of Pattern Evolution , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[13]  Robert V. Binder,et al.  Testing Object-Oriented Systems: Models, Patterns, and Tools , 1999 .

[14]  Marcela Genero Metrics For Software Conceptual Models , 2005 .

[15]  James M. Bieman,et al.  Design Pattern Coupling, Change Proneness, and Change Coupling: A Pilot Study , 2006 .

[16]  K. Shadan,et al.  Available online: , 2012 .

[17]  Yuanfang Cai,et al.  Using technical debt data in decision making: Potential decision approaches , 2012, 2012 Third International Workshop on Managing Technical Debt (MTD).

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

[19]  Joaquin Miller,et al.  MDA Guide Version 1.0.1 , 2003 .

[20]  Ward Cunningham,et al.  The WyCash portfolio management system , 1992, OOPSLA '92.

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

[22]  Philip M. Johnson,et al.  Generalizing fault contents from a few classes , 2007, ESEM 2007.

[23]  Dae-Kyoo Kim,et al.  A meta-modeling approach to specifying patterns , 2004 .

[24]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[25]  James M. Bieman,et al.  A multiple case study of design pattern decay, grime, and rot in evolving software systems , 2012, Software Quality Journal.

[26]  Sven Johann,et al.  Technical Debt , 2015, IEEE Softw..

[27]  Clemente Izurieta,et al.  Object oriented design pattern decay: a taxonomy , 2010, ESEM '10.

[28]  Tom Mens,et al.  Model-driven Software Refactoring , 2007, WRT.

[29]  Oscar Pastor,et al.  Integrating Technical Debt into MDE , 2014, CAiSE.