Model-driven engineering practices in industry: Social, organizational and managerial factors that lead to success or failure

In this article, we attempt to address the relative absence of empirical studies of model driven engineering (MDE) in two different but complementary ways. First, we present an analysis of a large online survey of MDE deployment and experience that provides some rough quantitative measures of MDE practices in industry. Second, we supplement these figures with qualitative data obtained from some semi-structured, in-depth interviews with MDE practitioners, and, in particular, through describing the practices of four commercial organizations as they adopted a model driven engineering approach to their software development practices. Using in-depth semi-structured interviewing, we invited practitioners to reflect on their experiences and selected four to use as exemplars or case studies. In documenting some details of their attempts to deploy model driven practices, we identify a number of factors, in particular the importance of complex organizational, managerial and social factors-as opposed to simple technical factors-that appear to influence the relative success, or failure, of the endeavor. Three of the case study companies describe genuine success in their use of model driven development, but explain that as examples of organizational change management, the successful deployment of model driven engineering appears to require: a progressive and iterative approach; transparent organizational commitment and motivation; integration with existing organizational processes and a clear business focus. We present extensive results from a survey of MDE practices in industry.We present case studies of the adoption of model driven engineering (MDE) by four companies.We identify important factors that can affect the success or failure of MDE use from both the survey and case studies.MDE provides genuine benefits to those companies who use its appropriate contexts.Success/failure appears to be more dependent on organizational factors than technical.

[1]  Reidar Conradi,et al.  Experiences from Introducing UML-based Development in a Large Safety-Critical Project , 2006 .

[2]  K. Dunbar,et al.  Analogy use in naturalistic settings: The influence of audience, emotion, and goals , 2001, Memory & cognition.

[3]  P. Johnson-Laird How We Reason , 2006 .

[4]  Michel R. V. Chaudron,et al.  Empirical Analysis of the Relation between Level of Detail in UML Models and Defect Density , 2008, MoDELS.

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

[6]  Mario Piattini,et al.  Evaluating the effect of composite states on the understandability of UML statechart diagrams , 2005, MoDELS'05.

[7]  Jonathan Grudin,et al.  Why CSCW Applications Fail: Problems in the Design and Evaluation of Organization of Organizational Interfaces. , 1988 .

[8]  A. Strauss,et al.  The Discovery of Grounded Theory , 1967 .

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

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

[11]  Mario Piattini,et al.  Using Practitioners for Assessing the Understandability of UML Statechart Diagrams with Composite States , 2007, ER Workshops.

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

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

[14]  Jeff Kramer,et al.  Is abstraction the key to computing? , 2007, CACM.

[15]  P. Biernacki,et al.  Snowball Sampling: Problems and Techniques of Chain Referral Sampling , 1981 .

[16]  Jose Teixeira,et al.  From code centric to model centric software engineering: practical case study of MDD infusion in a systems integration company , 2006, Fourth Workshop on Model-Based Development of Computer-Based Systems and Third International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MBD-MOMPES'06).

[17]  Siw Elisabeth Hove,et al.  The impact of UML documentation on software maintenance: an experimental evaluation , 2006, IEEE Transactions on Software Engineering.

[18]  Colin F. Snook,et al.  Experimental Comparison of the Comprehensibility of a UML-based Formal Specification versus a Textual One , 2007, EASE.

[19]  David Frankel,et al.  Model Driven Architecture: Applying MDA to Enterprise Computing , 2003 .

[20]  Massimiliano Di Penta,et al.  An experimental investigation of formality in UML-based development , 2005, IEEE Transactions on Software Engineering.

[21]  Dave A. Thomas,et al.  MDA: revenge of the modelers or UML utopia? , 2004, IEEE Software.

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

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

[24]  Mario Piattini,et al.  Finding "early" indicators of UML class diagrams understandability and modifiability , 2004, Proceedings. 2004 International Symposium on Empirical Software Engineering, 2004. ISESE '04..