MDD vs. traditional software development: A practitioner's subjective perspective

Context: Today's project managers have a myriad of methods to choose from for the development of software applications. However, they lack empirical data about the character of these methods in terms of usefulness, ease of use or compatibility, all of these being relevant variables to assess the developer's intention to use them. Objective: To compare three methods, each following a different paradigm (Model-Driven, Model-Based and Code-Centric) with respect to their adoption potential by junior software developers engaged in the development of the business layer of a Web 2.0 application. Method: We have conducted a quasi-experiment with 26 graduate students of the University of Alicante. The application developed was a Social Network, which was organized around a fixed set of modules. Three of them, similar in complexity, were used for the experiment. Subjects were asked to use a different method for each module, and then to answer a questionnaire that gathered their perceptions during such use. Results: The results show that the Model-Driven method is regarded as the most useful, although it is also considered the least compatible with previous developers' experiences. They also show that junior software developers feel comfortable with the use of models, and that they are likely to use them if the models are accompanied by a Model-Driven development environment. Conclusions: Despite their relatively low level of compatibility, Model-Driven development methods seem to show a great potential for adoption. That said, however, further experimentation is needed to make it possible to generalize the results to a different population, different methods, other languages and tools, different domains or different application sizes.

[1]  Turhan Özgür Comparison of Microsoft DSL Tools and Eclipse Modeling Frameworks for Domain-Specific Modeling in the context of Model-Driven Development , 2007 .

[2]  Tony Clark,et al.  Model-driven development - Guest editor's introduction , 2003 .

[3]  Daniel L. Moody,et al.  The method evaluation model: a theoretical model for validating information systems design methods , 2003, ECIS.

[4]  Fred D. Davis,et al.  A Theoretical Extension of the Technology Acceptance Model: Four Longitudinal Field Studies , 2000, Management Science.

[5]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[6]  Peter Wright,et al.  Consumer Choice Strategies: Simplifying Vs. Optimizing: , 1975 .

[7]  Scott W. Ambler,et al.  Agile modeling: effective practices for extreme programming and the unified process , 2002 .

[8]  A. Tenbrunsel,et al.  Organizational Behavior and Human Decision Processes , 2013 .

[9]  Michał 'MiMaS' Świątkiewicz,et al.  Poseidon for UML , 2004 .

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

[11]  I. Ajzen The theory of planned behavior , 1991 .

[12]  Tore Dybå,et al.  A systematic review of quasi-experiments in software engineering , 2009, Inf. Softw. Technol..

[13]  Volker Gruhn,et al.  Model-Driven Software Development , 2005 .

[14]  Oscar Díaz,et al.  A Model-Driven Development for GWT-Based Rich Internet Applications with OOH4RIA , 2008, 2008 Eighth International Conference on Web Engineering.

[15]  Julie F. Pallant,et al.  SPSS Survival Manual , 2020 .

[16]  Henry Montgomery,et al.  Attractiveness of decision rules , 1980 .

[17]  LerouxD.,et al.  Rational software architect , 2006 .

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

[19]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[20]  Frank Budinsky,et al.  Eclipse modeling framework : a developer's guide , 2004 .

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

[22]  Parastoo Mohagheghi,et al.  An Approach for Empirical Evaluation of Model-Driven Engineering in Multiple Dimensions , 2010 .

[23]  Antonio Vallecillo,et al.  Actas del I Taller sobre Desarrollo Dirigido por Modelos, MDA y Aplicaciones (DSDM'04) , 2004 .

[24]  Izak Benbasat,et al.  Development of an Instrument to Measure the Perceptions of Adopting an Information Technology Innovation , 1991, Inf. Syst. Res..

[25]  Björn Lundell,et al.  Integrating proprietary and open-source tool chains through horizontal interchange of XMI models , 2007, ICSM.

[26]  Jari Peltonen,et al.  Enhancing usability of UML CASE-tools with speech recognition , 2003, IEEE Symposium on Human Centric Computing Languages and Environments, 2003. Proceedings. 2003.

[27]  Kendall Scott,et al.  UML distilled - a brief guide to the Standard Object Modeling Language (2. ed.) , 2000, notThenot Addison-Wesley object technology series.

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

[29]  Vicente Pelechano,et al.  MDA vs. Factorías de Software , 2005, DSDM.

[30]  Richard C. Gronback Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit , 2009 .

[31]  Markus Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[32]  Parastoo Mohagheghi Evaluating Software Development Methodologies Based on their Practices and Promises , 2008, SoMeT.

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

[34]  Michael Eichberg,et al.  Model-Driven Engineering of Machine Executable Code , 2010, ECMFA.

[35]  Ståle Walderhauga,et al.  Factors affecting developers ’ use of MDSD in the Healthcare Domain : Evaluation from the MPOWER Project , 2013 .

[36]  Ben Shneiderman,et al.  The eyes have it: a task by data type taxonomy for information visualizations , 1996, Proceedings 1996 IEEE Symposium on Visual Languages.

[37]  Fred D. Davis,et al.  Explaining Software Developer Acceptance of Methodologies: A Comparison of Five Theoretical Models , 2002, IEEE Trans. Software Eng..

[38]  Michael Guttman,et al.  Real-Life MDA: Solving Business Problems with Model Driven Architecture , 2006 .

[39]  R. Abelson Decision making and decision theory , 1985 .

[40]  T. Cook,et al.  Quasi-experimentation: Design & analysis issues for field settings , 1979 .

[41]  Claes Wohlin,et al.  Experimentation in software engineering: an introduction , 2000 .

[42]  Ritu Agarwal,et al.  A field study of the adoption of software process innovations by information systems professionals , 2000, IEEE Trans. Engineering Management.

[43]  Jane M. Howell,et al.  Personal Computing: Toward a Conceptual Model of Utilization , 1991, MIS Q..

[44]  Shari Lawrence Pfleeger,et al.  Understanding and improving technology transfer in software engineering , 1999, J. Syst. Softw..

[45]  Michel R. V. Chaudron,et al.  Empirical Investigations of Model Size, Complexity and Effort in a Large Scale, Distributed Model Driven Development Process , 2009, 2009 35th Euromicro Conference on Software Engineering and Advanced Applications.

[46]  Vicente Pelechano,et al.  Building Tools for Model Driven Development. Comparing Microsoft DSL Tools and Eclipse Modeling Plug-ins , 2006, DSDM.

[47]  Fred D. Davis Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology , 1989, MIS Q..

[48]  Dietmar Pfahl,et al.  Reporting guidelines for controlled experiments in software engineering , 2005, 2005 International Symposium on Empirical Software Engineering, 2005..

[49]  Silvia Mara Abrahão,et al.  Towards to the validation of a usability evaluation method for model-driven web development , 2010, ESEM '10.

[50]  Aniruddha S. Gokhale,et al.  Developing applications using model-driven design environments , 2006, Computer.

[51]  Andraž Cej,et al.  Agile software development with Scrum , 2010 .

[52]  I. Ajzen,et al.  The Influence of Attitudes on Behavior , 2005 .

[53]  Santiago Meliá,et al.  An Eclipse Plug-in for Model-Driven Development of Rich Internet Applications , 2010, ICWE.

[54]  Marco Brambilla,et al.  Designing Web Applications with Webml and Webratio , 2008, Web Engineering.

[55]  Stephen J. Mellor,et al.  Model-driven development - Guest editor's introduction , 2003 .

[56]  Jose Ignacio,et al.  Incorporación de mecanismos de usabilidad en un entorno de producción de software dirigido por modelos , 2011 .

[57]  Richard C. Gronback Eclipse Modeling Project: A Domain-Specific Language Toolkit , 2009 .

[58]  Ivar Jacobson,et al.  The Road to the Unified Software Development Process , 2000 .

[59]  G. Norman Likert scales, levels of measurement and the “laws” of statistics , 2010, Advances in health sciences education : theory and practice.

[60]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[61]  Ruben Picek,et al.  Suitability of Modern Software Development Methodologies for Model Driven Development , 2009 .