SUNIT: A Unit Testing Framework for Test Driven Development of Multi-Agent Systems

  • Ali Murat Tiryaki
  • Sibel Öztuna
  • Oguz Dikenelli
  • Riza Cenk Erdur
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4405)


Complex and distributed nature of multi-agent systems (MASs) makes it almost impossible to identify of all requirements at the beginning of the development. Hence, development of such systems needs an iterative and incremental process to handle complexity and the continuously changing na-ture of the requirements. In this paper, a test driven multi-agent system devel-opment approach that naturally supports iterative and incremental MAS con-struction is proposed. Also a testing framework called as SUnit which supports the proposed approach by extending JUnit framework is introduced. This framework allows writing automated tests for agent behaviors and interactions between agents. The framework also includes the necessary mock agents to model the organizational aspects of the MAS.


Multi Agent System Multiagent System Hierarchical Task Network Test Drive Development Primitive Task 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Wooldridge, M., Ciancarini, P.: Agent-oriented software engineering: the state of the art. In: Ciancarini, P., Wooldridge, M.J. (eds.) AOSE 2000. LNCS, vol. 1957, pp. 1–28. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  2. 2.
    Wooldridge, M., Jennings, N.R., Kinny, D.: The gaia methodology for agent-oriented analysis and design. Autonomous Agents and Multi-Agent Systems 3(3), 285–312 (2000)CrossRefGoogle Scholar
  3. 3.
    Zambonelli, F., Jennings, N.R., Wooldridge, M.: Developing multiagent systems: The gaia methodology. ACM Trans. Softw. Eng. Methodol. 12(3), 317–370 (2003), doi:10.1145/958961.958963CrossRefGoogle Scholar
  4. 4.
    Omicini, A.: Soda: societies and infrastructures in the analysis and design of agent-based systems. In: Ciancarini, P., Wooldridge, M.J. (eds.) AOSE 2000. LNCS, vol. 1957, pp. 185–193. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  5. 5.
    Padgham, L., Winikoff, M.: Prometheus: a methodology for developing intelligent agents. In: Alonso, E., Kudenko, D., Kazakov, D. (eds.) Adaptive Agents and Multi-Agent Systems. LNCS (LNAI), vol. 2636, pp. 37–38. Springer, Heidelberg (2003), doi:10.1145/544741.544749Google Scholar
  6. 6.
    Gómez-Sanz, J., Pavón, J.: Agent oriented software engineering with ingenias. In: Mařík, V., Müller, J.P., Pěchouček, M. (eds.) CEEMAS 2003. LNCS (LNAI), vol. 2691, pp. 394–403. Springer, Heidelberg (2003)Google Scholar
  7. 7.
    Bresciani, P., et al.: Tropos: An agent-oriented software development methodology. Autonomous Agents and Multi-Agent Systems 8(3), 203–236 (2004)CrossRefGoogle Scholar
  8. 8.
    Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley, Reading (2004)Google Scholar
  9. 9.
    Cernuzzi, L., Cossentino, M., Zambonell, F.: Process models for agent-based development. Journal of Engineering Applications of Artificial Intelligence 18(2) (2005)Google Scholar
  10. 10.
    Zambonelli, F., Omicini, A.: Challenges and research directions in agent-oriented software engineering. Autonomous Agents and Multi-Agent Systems 9(3), 253–283 (2004)CrossRefGoogle Scholar
  11. 11.
    Knublauch, H.: Extreme programming of multi-agent systems. In: Alonso, E., Kudenko, D., Kazakov, D. (eds.) Adaptive Agents and Multi-Agent Systems. LNCS (LNAI), vol. 2636, pp. 704–711. Springer, Heidelberg (2003), doi:10.1145/544862.544912Google Scholar
  12. 12.
    Knublauch, H., Rose, T.: Tool-supported process analysis and design for the development of multi-agent systems. In: Giunchiglia, F., Odell, J.J., Weiss, G. (eds.) AOSE 2002. LNCS, vol. 2585, pp. 186–197. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Chella, A., et al.: From passi to agile passi: Tailoring a design process to meet new needs. In: IEEE/WIC/ACM International Joint Conference on Intelligent Agent Technology (IAT-04) (2004)Google Scholar
  14. 14.
    Caire, G., et al.: Multi-agent systems implementation and testing. In: From Agent Theory to Agent Implementation, Fourth International Symposium (AT2AI-4) (2004)Google Scholar
  15. 15.
    Cossentino, M., Seidita, V.: Composition of a new process to meet agile needs using method engineering. In: Choren, R., et al. (eds.) Software Engineering for Multi-Agent Systems III. LNCS, vol. 3390, pp. 36–51. Springer, Heidelberg (2005)Google Scholar
  16. 16.
    Dikenelli, O., Erdur, R.C., Gumus, O.: Seagent: a platform for developing semantic web based multi agent systems. In: AAMAS ’05: Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems, The Netherlands, pp. 1271–1272. ACM Press, New York (2005), doi:10.1145/1082473.1082728CrossRefGoogle Scholar
  17. 17.
    Link, J., Frolich, P.: Unit Testing in Java: How Tests Drive the Code. Morgan Kaufmann Publishers Inc., San Francisco (2003)zbMATHGoogle Scholar
  18. 18.
    Fowler, M.: Refactoring - Improving the Design of Existing Code. Addison-Wesley, Reading (1999)Google Scholar
  19. 19.
    Williamson, M., Decker, K., Sycara, K.: Unified information and control flow in hierarchical task networks. In: Theories of Action, Planning, and Robot Control: Bridging the Gap: Proceedings of the 1996 AAAI Workshop, pp. 142–150. AAAI Press, Menlo Park (1996)Google Scholar
  20. 20.
    Paolucci, M., et al.: A planning component for retsina agents. In: Jennings, N.R. (ed.) ATAL 1999. LNCS, vol. 1757, Springer, Heidelberg (2000)CrossRefGoogle Scholar
  21. 21.
    Graham, J.R., Decker, K.S., Mersic, M.: Decaf - a flexible multi agent system architecture. Autonomous Agents and Multi-Agent Systems 7(1-2), 7–27 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Ali Murat Tiryaki
    • 1
  • Sibel Öztuna
    • 1
  • Oguz Dikenelli
    • 1
  • Riza Cenk Erdur
    • 1
  1. 1.Ege University, Department of Computer Engineering, 35100 Bornova, IzmirTurkey

Personalised recommendations