A Goal-Oriented Software Testing Methodology

Agent-Oriented Software Engineering (AOSE) methodologiesare proposed to develop complex distributed systems based uponthe agent paradigm. The natural implementation for such systems hasusually the form of Multi-Agent Systems (MAS). As these systems areincreasingly applied in mission-critical services, assurances need to begiven to their owners and users that they operate properly. Althoughthe relevance of the link between requirements engineering and testinghas long been recognized, current Agent-Oriented Software Engineeringmethodologies partially address it. Some of them offer specification-based formal verification, allowing software developers to correct errors at thebeginning of the development process, others exploits Object-Oriented (OO) testing techniques, upon a mapping of agent-oriented abstractionsinto OO constructs. However, a structured testing process for AOSEmethodologies that complements formal verification is still missing. In this paper we introduce a testing framework for the AOSE methodologyTropos. It specifies a testing process model that complements theagent-oriented requirements and design models and strengthens the mutualrelationship between goal analysis and testing. Furthermore, it providesa systematic way of deriving test cases from goal analysis. We callthis approach goal-oriented testing.

[1]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[2]  Fausto Giunchiglia,et al.  Model Checking Multiagent Systems , 1998, J. Log. Comput..

[3]  Uirá Kulesza,et al.  Unit testing in multi-agent systems using mock agents and aspects , 2006, SELMAS '06.

[4]  John Mylopoulos,et al.  From Capability Specifications to Code for Multi-Agent Software , 2006, 21st IEEE/ACM International Conference on Automated Software Engineering (ASE'06).

[5]  Brian Henderson-Sellers,et al.  Agent-oriented methodologies , 2005 .

[6]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[7]  Anna Perini,et al.  A Goal-Oriented Software Testing Methodology Technical Report , 2007 .

[8]  Michael D. Ernst,et al.  An experimental evaluation of continuous testing during development , 2004, ISSTA '04.

[9]  Dorothy R. Graham,et al.  Requirements and Testing: Seven Missing-Link Myths , 2002, IEEE Softw..

[10]  Fausto Giunchiglia,et al.  The tropos software development methodology: processes, models and diagrams , 2002, AAMAS '02.

[11]  Michael Winikoff,et al.  An exploration of bugs and debugging in multi-agent systems , 2003, AAMAS '03.

[12]  John Mylopoulos,et al.  Specifying and analyzing early requirements in Tropos , 2004, Requirements Engineering.

[13]  Ana I. Anton,et al.  Goal identification and refinement in the specification of software-based information systems , 1997 .

[14]  John Mylopoulos,et al.  Why Goal-Oriented Requirements Engineering , 1998, Requirements Engineering: Foundation for Software Quality.

[15]  Michael Rovatsos,et al.  Capturing agent autonomy in roles and XML , 2003, AAMAS '03.

[16]  Bernhard Bauer,et al.  Extending UML for agents , 2000 .

[17]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[18]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[19]  Riza Cenk Erdur,et al.  SUNIT: A Unit Testing Framework for Test Driven Development of Multi-Agent Systems , 2006, AOSE.

[20]  Mehdi Dastani,et al.  Goal types in agent programming , 2006, AAMAS '06.

[21]  Massimo Cossentino,et al.  From Requirements to Code with PASSI Methodology , 2005 .

[22]  Michael D. Ernst,et al.  Reducing wasted development time via continuous testing , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[23]  Michael Wooldridge,et al.  The Computational Complexity of Agent Verification , 2001, ATAL.

[24]  Jorge J. Gómez-Sanz,et al.  The INGENIAS Methodology and Tools , 2005 .

[25]  Riza Cenk Erdur,et al.  SEAGENT: a platform for developing semantic web based multi agent systems , 2005, AAMAS '05.

[26]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

[27]  Rafael Heitor Bordini,et al.  Verifying Multi-agent Programs by Model Checking , 2006, Autonomous Agents and Multi-Agent Systems.

[28]  Eric van der Vlist,et al.  XML Schema , 2002 .