An Approach for Multi-Artifact Testing Through an Ontological Perspective for Behavior-Driven Development

In a user-centered development process, artifacts evolve in iterative cycles until they meet users’ requirements and then become the final product. Every cycle gives the opportunity to revise the design and to introduce new requirements which might affect the specification of artifacts that have been set in former development phases. Testing the consistency of multiple artifacts used to develop interactive systems every time that new requirements are introduced is a cumbersome activity, especially if it is done manually. This paper proposes an approach based on Behavior-Driven Development (BDD) to support the automated assessment of artifacts along the development process of interactive systems. The paper uses an ontology for specifying tests that can run over multiple artifacts sharing similar concepts. A case study testing Task Models, Prototypes, and Final User Interfaces is presented to demonstrate the feasibility of this approach from the early phases of the design process, providing a continuous quality assurance of requirements, and helping clients and development teams to identify potential problems and inconsistencies before commitments with software implementation are made.

[1]  Marco Winckler,et al.  Beyond modelling: an integrated environment supporting co-execution of tasks and systems models , 2010, EICS '10.

[2]  Philippe A. Palanque,et al.  A generic tool-supported framework for coupling task models and interactive applications , 2015, EICS.

[3]  Benjamin Michotte,et al.  USIXML: A Language Supporting Multi-path Development of User Interfaces , 2004, EHCI/DS-VIS.

[4]  Marco Winckler,et al.  Structuring and Composition Mechanisms to Address Scalability Issues in Task Models , 2011, INTERACT.

[5]  Dimitris Karagiannis,et al.  Modelling mobile app requirements for semantic traceability , 2015, Requirements Engineering.

[6]  Fabio Paternò,et al.  ConcurTaskTrees: An Engineered Notation for Task Models , 2003 .

[7]  Philippe A. Palanque,et al.  A Tool Suite for Integrating Task and System Models through Scenarios , 2001, DSV-IS.

[8]  Steffen Staab,et al.  What Is an Ontology? , 2009, Handbook on Ontologies.

[9]  Clayton Lewis,et al.  TASK-CENTERED USER INTERFACE DESIGN A Practical Introduction , 2006 .

[10]  Dave Astels,et al.  The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends , 2010 .

[11]  Jean Vanderdonckt,et al.  Towards Uniformed Task Models in a Model-Based Approach , 2001, DSV-IS.

[12]  Ken Pugh Lean-Agile Acceptance Test-Driven Development: Better Software Through Collaboration , 2010 .

[13]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

[14]  Carmen Santoro,et al.  A task model-based approach for the design and evaluation of innovative user interfaces , 2004 .

[15]  Julio Cesar Sampaio do Prado Leite,et al.  A client oriented requirements baseline , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[16]  David R. Lindstrom Five Ways to Destroy a Development Project , 1993, IEEE Softw..

[17]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[18]  Anke Dittmar,et al.  Linking GUI elements to tasks: supporting an evolutionary design process , 2005, TAMODIA '05.

[19]  Mary Beth Rosson,et al.  Usability Engineering: Scenario-based Development of Human-Computer Interaction , 2001 .

[20]  Robert Wille,et al.  Assisted Behavior Driven Development Using Natural Language Processing , 2012, TOOLS.

[21]  Jose Luis de la Vara,et al.  A review of traceability research at the requirements engineering conferencere@21 , 2013, 2013 21st IEEE International Requirements Engineering Conference (RE).

[22]  Christof Ebert Global Software and IT: A Guide to Distributed Development, Projects, and Outsourcing , 2011 .

[23]  Gojko Adzic Specification by Example: How Successful Teams Deliver the Right Software , 2011 .

[24]  Marjo Kauppinen,et al.  Linking Requirements and Testing in Practice , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[25]  Marja Kapyaho,et al.  Agile requirements engineering with prototyping: A case study , 2015, 2015 IEEE 23rd International Requirements Engineering Conference (RE).