Refactoring in Multi Agent System Development

The need for XP-like agile approaches that provide evolutionary development in a flexible way has been widely acknowledged in the AOSE area. Such approaches improve acceptability of agent-technology by industry. Evolutionary development of multi agent systems-MASs can only be applied successfully, if designs of the MASs being developed are improved throughout the development process. In this paper, we introduce a refactoring approach that can be used during evolutionary MAS development. The proposed refactoring approach makes it possible to develop MASs in an evolutionary way by managing the changes between the iterations of the evolutionary development process. Also, a case study that shows application of a refactoring technique during the evolutionary MAS development is introduced in the fifth section.

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

[2]  Holger Knublauch,et al.  Extreme programming of multi-agent systems , 2002, AAMAS '02.

[3]  Franco Zambonelli,et al.  Process models for agent-based development , 2005, Eng. Appl. Artif. Intell..

[4]  Keith Decker,et al.  Unified Information and Control Flow in Hierarchical Task Networks , 1996 .

[5]  Agostino Poggi,et al.  Multi-Agent Systems Implementation and Testing , 2003 .

[6]  Valeria Seidita,et al.  From PASSI to Agile PASSI: tailoring a design process to meet new needs , 2004 .

[7]  Franco Zambonelli,et al.  Agent-Oriented Software Engineering VII, 7th International Workshop, AOSE 2006, Hakodate, Japan, May 8, 2006, Revised and Invited Papers , 2007, AOSE.

[8]  Paulo S. C. Alencar,et al.  Software Engineering for Multi-Agent Systems II , 2004 .

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

[10]  Franco Zambonelli,et al.  Developing multiagent systems: The Gaia methodology , 2003, TSEM.

[11]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[12]  Franco Zambonelli,et al.  Challenges and Research Directions in Agent-Oriented Software Engineering , 2004, Autonomous Agents and Multi-Agent Systems.

[13]  Johannes Link,et al.  Unit Testing in Java: How Tests Drive the Code , 2003 .

[14]  Valeria Seidita,et al.  Composition of a New Process to Meet Agile Needs Using Method Engineering , 2004, SELMAS.

[15]  Onn Shehory,et al.  A Planning Component for RETSINA Agents , 1999, ATAL.

[16]  Martin Fowler,et al.  Refactoring - Improving the Design of Existing Code , 1999, Addison Wesley object technology series.

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

[18]  Philippe Kruchten,et al.  What Is the Rational Unified Process ? , 2001 .