A framework to identify primitives that represent usability within Model-Driven Development methods

Abstract Context Nowadays, there are sound methods and tools which implement the Model-Driven Development approach (MDD) satisfactorily. However, MDD approaches focus on representing and generating code that represents functionality, behaviour and persistence, putting the interaction, and more specifically the usability, in a second place. If we aim to include usability features in a system developed with a MDD tool, we need to extend manually the generated code. Objective This paper tackles how to include functional usability features (usability recommendations strongly related to system functionality) in MDD through conceptual primitives. Method The approach consists of studying usability guidelines to identify usability properties that can be represented in a conceptual model. Next, these new primitives are the input for a model compiler that generates the code according to the characteristics expressed in them. An empirical study with 66 subjects was conducted to study the effect of including functional usability features regarding end users’ satisfaction and time to complete tasks. Moreover, we have compared the workload of two MDD analysts including usability features by hand in the generated code versus including them through conceptual primitives according to our approach. Results Results of the empirical study shows that after including usability features, end users’ satisfaction improves while spent time does not change significantly. This justifies the use of usability features in the software development process. Results of the comparison show that the workload required to adapt the MDD method to support usability features through conceptual primitives is heavy. However, once MDD supports these features, MDD analysts working with primitives are more efficient than MDD analysts implementing these features manually. Conclusion This approach brings us a step closer to conceptual models where models represent not only functionality, behaviour or persistence, but also usability features.

[1]  W. Marsden I and J , 2012 .

[2]  Fabio Paternò,et al.  Engineering the authoring of usable service front ends , 2011, J. Syst. Softw..

[3]  Silvia Mara Abrahão,et al.  Integrating a Usability Model into Model-Driven Web Development Processes , 2009, WISE.

[4]  Jeff Sauro,et al.  Quantifying the User Experience: Practical Statistics for User Research , 2012 .

[5]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[6]  Dominique L. Scapin,et al.  Ergonomic criteria for the evaluation of human-computer interfaces , 1993 .

[7]  Oscar Mauricio Serrano Jaimes,et al.  EVALUACION DE LA USABILIDAD EN SITIOS WEB, BASADA EN EL ESTANDAR ISO 9241-11 (International Standard (1998) Ergonomic requirements For office work with visual display terminals (VDTs)-Parts II: Guidance on usability , 2012 .

[8]  Natalia Juristo Juzgado,et al.  Basics of Software Engineering Experimentation , 2010, Springer US.

[9]  José Ignacio Panach,et al.  Mapping Study about Usability Requirements Elicitation , 2013, CAiSE.

[10]  Oscar Pastor,et al.  Introducing Usability in a Conceptual Modeling-Based Software Development Process , 2012, ER.

[11]  Hallvard Trætteberg,et al.  Interaction Patterns in User Interfaces. , 2000 .

[12]  Jean-Sébastien Sottet,et al.  A Model-Driven Engineering Approach for the Usability of Plastic User Interfaces , 2008, EHCI/DS-VIS.

[13]  Hermann Kaindl,et al.  Optimized GUI Generation for Small Screens , 2011, Model-Driven Development of Advanced User Interfaces.

[14]  Oscar Pastor,et al.  Model-driven architecture in practice - a software production environment based on conceptual modeling , 2007 .

[15]  Oscar Pastor,et al.  Using Profiles to Support Model Transformations in the Model-Driven Development of User Interfaces , 2008, CADUI.

[16]  Oscar Pastor,et al.  Including functional usability features in a model-driven development method , 2013, Comput. Sci. Inf. Syst..

[17]  SampaioAlberto Quantifying the user experience , 2013 .

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

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

[20]  Jan Bosch,et al.  Architecting for usability: a survey , 2004, J. Syst. Softw..

[21]  Kaisa Sere,et al.  Proceedings of the Third International Conference on Integrated Formal Methods , 2002 .

[22]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[23]  Shane Sendall,et al.  Model Transformation: The Heart and Soul of Model-Driven Software Development , 2003, IEEE Softw..

[24]  차일환,et al.  펄스 반사법을 이용한 NDT 시스템 , 1986 .

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

[26]  Nora Koch,et al.  Uml-Based Web Engineering - An Approach Based on Standards , 2008, Web Engineering.

[27]  Yonglei Tao An Adaptive Approach to Obtaining Usability Information for Early Usability Evaluation , 2007, IMECS.

[28]  Marco Brambilla,et al.  WebRatio 5: An Eclipse-Based CASE Tool for Engineering Web Applications , 2007, ICWE.

[29]  Jean Vanderdonckt,et al.  Usability Evaluation of User Interfaces Generated with a Model-Driven Architecture Tool , 2008, Maturing Usability.

[30]  Detlef Zuehlke,et al.  Model-driven development of advanced user interfaces , 2010, CHI Extended Abstracts.

[31]  María José Escalona Cuaresma,et al.  NDT. A Model-Driven Approach for Web Requirements , 2008, IEEE Transactions on Software Engineering.

[32]  Natalia Juristo Juzgado,et al.  Analysing the impact of usability on software design , 2007, J. Syst. Softw..

[33]  Natalia Juristo Juzgado,et al.  Guidelines for Eliciting Usability Functionalities , 2007, IEEE Transactions on Software Engineering.

[34]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

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

[36]  Scott Henninger,et al.  An Ontology-Based Infrastructure for Usability Design Patterns , 2005 .

[37]  Ergonomic requirements for office work with visual display terminals ( VDTs ) — Part 11 : Guidance on usability , 1998 .

[38]  David W. Kane,et al.  Title: Usability Patterns for Applications on the World Wide Web , 1999 .

[39]  Leonard J. Bass,et al.  Linking usability to software architecture patterns through general scenarios , 2003, J. Syst. Softw..

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

[41]  Jenifer Tidwell Designing Interfaces , 2005 .

[42]  Vicente Pelechano,et al.  The OO-method approach for information systems modeling: from object-oriented conceptual modeling to automated programming , 2001, Inf. Syst..

[43]  Oscar Pastor,et al.  Just-UI : A User Interface Specification Model , 2002, CADUI.