Towards patterns for MDE-related processes to detect and handle changeability risks

One of the multiple technical factors which affect changeability of software is model-driven engineering (MDE), where often several models and a multitude of manual as well as automated development activities have to be mastered to derive the final software product. The ability to change software with only reasonable costs, however, is of uppermost importance for the iterative and incremental development of software as well as agile development in general. Thus, the effective applicability of agile processes is influenced by the used MDE activities. However, there is currently no approach available to systematically detect and handle such risks to the changeability that result from the embedded MDE activities. In this paper we extend our beforehand-introduced process modeling approach by a notion of process pattern to capture typical situations that can be associated with risk or benefit with respect changeability. In addition, four candidates for the envisioned process patterns are presented in detail in the paper. Further, we developed strategies to handle changeability risks associated to these process patterns.

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

[2]  H. ElMaraghy,et al.  Changeability – An Introduction , 2009 .

[3]  Javier Garzás,et al.  Analyzability and Changeability in Design Patterns , 2002 .

[4]  Armin P. Schulz,et al.  Design for changeability (DfC): Principles to enable changes in systems throughout their entire lifecycle , 2005, Syst. Eng..

[5]  Miroslaw Staron,et al.  Improving Efficiency of Change Impact Assessment Using Graphical Requirement Specifications: An Experiment , 2010, PROFES.

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

[7]  Forrest Shull,et al.  Using the ISO/IEC 9126 product quality model to classify defects: A controlled experiment , 2012, EASE.

[8]  J. P. Andrade Almeida,et al.  Costs and benefits of multiple levels of models in MDA development , 2004 .

[9]  Holger Giese,et al.  Toward a comparable characterization for software development activities in context of MDE , 2011, ICSSP '11.

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

[11]  Aruna Raja,et al.  Domain Specific Languages , 2010 .

[12]  Beijun Shen,et al.  On the Measurement of Agility in Software Process , 2007, ICSP.

[13]  María José Escalona Cuaresma,et al.  Studying Maintainability on Model-Driven Web Methodologies , 2010, ISD.

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

[15]  Eric S. K. Yu,et al.  A Repository of Agile Method Fragments , 2010, ICSP.

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

[17]  Benoit Combemale,et al.  Crossing Model Driven Engineering and Agility: Preliminary Thought on Benefits and Challenges , 2010 .

[18]  Sergio Luján-Mora,et al.  Impact of MDE Approaches on the Maintainability of Web Applications: An Experimental Evaluation , 2011, ER.

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