Autonomous Agents and Multi-Agent Systems

, Volume 20, Issue 2, pp 260–304 | Cite as

ASPECS: an agent-oriented software process for engineering complex systems

How to design agent societies under a holonic perspective
  • Massimo Cossentino
  • Nicolas GaudEmail author
  • Vincent Hilaire
  • Stéphane Galland
  • Abderrafiâa Koukam


Holonic multiagent systems (HMAS) offer a promising software engineering approach for developing complex open software systems. However the process of building Multi-Agent Systems (MAS) and HMAS is mostly different from the process of building more traditional software systems as it introduces new design and development challenges. This paper introduces an agent-oriented software process for engineering complex systems called ASPECS. ASPECS is based on a holonic organisational metamodel and provides a step-by-step guide from requirements to code allowing the modelling of a system at different levels of details using a set of refinement methods. This paper details the entire ASPECS development process and provides a set of methodological guidelines for each process activity. A complete case study is also used to illustrate the design process and the associated notations. ASPECS uses UML as a modelling language. Because of the specific needs of agents and holonic organisational design, the UML semantics and notation are used as reference points, but they have been extended by introducing new specific profiles.


Agent oriented software engineering Software development process Design methodology Holonic multiagent systems Complex hierarchical systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Software engineering body of knowledge. (2004). IEEE Computer Society.Google Scholar
  2. 2.
    Argente, E., Julian, V., & Botti, V. (2006). Multi-agent system development based on organizations. In CoOrg’06, Electronic Notes in Theoretical Computer Science (Vol. 150, pp. 55–71). Elsevier.Google Scholar
  3. 3.
    Bernon C., Cossentino M., Pavón J. (2005) An overview of current trends in European aose research. Informatica 29(4): 379–390Google Scholar
  4. 4.
    Bernon, C., Gleizes, M.-P., Peyruqueou, S., & Picard, G. (2002). ADELFE, a methodology for adaptive multi-agent systems engineering. In ESAW, LNAI (Vol. 2577, pp. 156–169). Madrid, Spain: Springer-Verlag.Google Scholar
  5. 5.
    Bresciani P., Giorgini P., Giunchiglia F., Mylopoulos J., Perini A. (2004) TROPOS: An agent- oriented software development methodology. Journal of Autonomous Agents and Multi-Agent Systems 8(3): 203–236CrossRefGoogle Scholar
  6. 6.
    Brussel H.V., Wyns J., Valckenaers P., Bongaerts L., Peeters P. (1998) Reference architecture for holonic manufacturing systems: PROSA. Computers in Industry 37: 255–274CrossRefGoogle Scholar
  7. 7.
    Caire, G., Coulier, W., Garijo, F. J., Gomez, J., Pavón, J., Leal, F., et al. (2002). Agent oriented analysis using message/uml. In M. Wooldridge, G. Weiß, & P. Ciancarini (Eds.), AOSE 2001, LNCS (Vol. 2222, pp. 119–135). Springer Verlag.Google Scholar
  8. 8.
    Cernuzzi L., Cossentino M., Zambonelli F. (2005) Process models for agent-based development. Journal of Engineering Applications of Artificial Intelligence 18: 205–222CrossRefGoogle Scholar
  9. 9.
    Chella A., Cossentino M., Sabatucci L., Seidita V. (2006) Agile PASSI: An agile process for designing agents. International Journal of Computer Systems Science & Engineering. Special issue on Software Engineering for Multi-Agent Systems 21(2): 133–144Google Scholar
  10. 10.
    Chung L., Nixon B.A., Yu E.S.K. (1997) Dealing with change: An approach using non-functional requirements. Requirements Engineering 1(4): 238–260CrossRefGoogle Scholar
  11. 11.
    Cockburn A. (1997) Structuring use cases with goals. Journal of Object-Oriented Programming 9(6): 56–62Google Scholar
  12. 12.
    Cockburn, A. (2000). Writing effective use cases. Addison-Wesley.Google Scholar
  13. 13.
    Cossentino, M. (2005). From requirements to code with the PASSI methodology. In B. Henderson- Sellers & P. Giorgini (Eds.), Agent-oriented methodologies (Chap. IV, pp. 79–106). Hershey, PA, USA: Idea Group Publishing.Google Scholar
  14. 14.
    Cossentino M., Gaglio S., Garro A., Seidita V. (2007) Method fragments for agent design methodologies: From standardization to research. International Journal on Agent Oriented Software Engineering 1(1): 91–121CrossRefGoogle Scholar
  15. 15.
    Cossentino, M., Galland, S., Gaud, N., Hilaire, V., & Koukam, A. (2008). How to control emergence of behaviours in a holarchy. In Self-Adaptation for Robustness and Cooperation in holonic multi-agent systems (SARC), workshop of the second IEEE international conference on Self-Adaptive and Self-Organizing Systems (SASO). Venice, Italy: Isola di San Servolo.Google Scholar
  16. 16.
    Coutinho, L. D. R., Sichman, J. S. A., & Boissier, O. (2005). Modeling organization in MAS: A comparison of models. In SEAS, Uberlândia.Google Scholar
  17. 17.
    Dahl R.A. (1971) Polyarchy: Participation and opposition. Yale University Press, New HavenGoogle Scholar
  18. 18.
    Dignum, M., Vazquez-Salceda, J., & Dignum, F. (2005). OMNI: Introducing social structure, norms and ontologies into agent organizations. In PROMAS@AAMAS, LNAI (Vol. 3346, pp. 181–198). Springer.Google Scholar
  19. 19.
    Esteva, M., Rodríguez-Aguilar, J. A., Sierra, C., Garcia, P., & Arcos, J. L. (2001). On the formal specifications of electronic institutions. In Agent mediated electronic commerce, the European agentLink perspective (pp. 126–147). London, UK: Springer-Verlag.Google Scholar
  20. 20.
    Ferber J. (1999) Multi-agent systems. An introduction to distributed artificial intelligence. London, Addison WesleyGoogle Scholar
  21. 21.
    Ferber, J., Gutknecht, O., & Michel, F. (2004). From agents to organizations: An organizational view of multi-agent systems. In AOSE-IV@AAMAS03, LNCS (Vol. 2935, pp. 214–230). Springer Verlag.Google Scholar
  22. 22.
    Foundation for Intelligent Physical Agents. (2001). FIPA RDF content language specification. Experimental, XC00011B.Google Scholar
  23. 23.
    Foundation for Intelligent Physical Agents. (2002). FIPA ACL message structure specification. Standard, SC00061G.Google Scholar
  24. 24.
    Foundation for Intelligent Physical Agents. (2002). FIPA communicative act library specification. Standard, SC00037J.Google Scholar
  25. 25.
    Gandon, F. (2002). Ontology engineering: a survey and a return on experience. Rapport, Inria Research Report.Google Scholar
  26. 26.
    Gaud, N., Galland, S., Hilaire, V., & Koukam, A. (2008). An organisational platform for holonic and multiagent systems. In PROMAS-6@AAMAS’08, Estoril, Portugal.Google Scholar
  27. 27.
    Gaud, N., Hilaire, V., Galland, S., Koukam, A., & Cossentino, M. (2008). A verification by abstraction framework for organizational multi-agent systems. In AT2AI-6@AAMAS’08, Estoril, Portugal.Google Scholar
  28. 28.
    Gerber, C., Siekmann, J., & Vierke, G. (1999). Holonic multi-agent systems. Technical Report DFKI-RR-99-03, DFKI-GmbH.Google Scholar
  29. 29.
    Giunchiglia, F., Mylopoulos, J., & Perini, A. (2002). The Tropos software development methodology: Processes, models and diagrams. Technical Report 0111-20, ITC-IRST. Submitted AAMAS Conference 2002. A Knowledge Level Software Engineering 15.Google Scholar
  30. 30.
    Gruber T. (1995) Toward principles for the design of ontologies used for knowledge sharing. International Journal Human-Computer Studies 43(5–6): 907–928CrossRefGoogle Scholar
  31. 31.
    Gruer P., Hilaire V., Koukam A., Rovarini P. (2004) Heterogeneous formal specification based on object-z and statecharts: Semantics and verification. Journal of Systems and Software 70(1–2): 95–105CrossRefGoogle Scholar
  32. 32.
    Gutknecht, O., & Ferber, J. (2000). Madkit: A generic multi-agent platform autonomous agents. In AGENTS 2000 (pp. 78–79). Barcelona: ACM Press.Google Scholar
  33. 33.
    Hannoun, M., Boissier, O., Sichman, J. S., & Sayettat, C. (2000). MOISE: An organizational model for multi-agent systems. In Advances in Artificial Intelligence, IBERAMIA-SBIA, Brazil (pp. 156–165).Google Scholar
  34. 34.
    Henderson-Sellers B. (2003) Method engineering for OO systems development. Communications of the ACM 46(10): 73–78CrossRefGoogle Scholar
  35. 35.
    Hilaire, V., Koukam, A., Gruer, P., & Müller, J.-P. (2000). Formal specification and prototyping of multi-agent systems. In A. Omicini, R. Tolksdorf, & F. Zambonelli (Eds.), ESAW, LNAI (No. 1972). Springer Verlag.Google Scholar
  36. 36.
    Iglesias, C., Garijo, M., Gonzalez, J., & Velasco, J. (1998). Intelligent agents IV: Agent theories, architectures, and languages. In Analysis and design of multi-agent systems using MAS-CommonKADS, LNAI (Vol. 1365, pp. 313–326). Springer-Verlag.Google Scholar
  37. 37.
    Jennings N. (2001) An agent-based approach for building complex software systems. Communications of the ACM 44(4): 35–41CrossRefGoogle Scholar
  38. 38.
    Juan, T., Pearce, A., & Sterling, L. (2002). ROADMAP: Extending the Gaia methodology for complex open systems. In AAMAS ’02: Proceedings of the first international joint conference on Autonomous agents and multiagent systems, Bologna, Italy (pp. 3–10). New York: ACM. ISBN: 1-58113-480-0.
  39. 39.
    Koestler, A. (1967). The ghost in the machine. Hutchinson.Google Scholar
  40. 40.
    Kolp M., Giorgini P., Mylopoulos J. (2006) Multi-agent architectures as organizational structures. Autonomous Agents and Multi-Agent Systems 13(1): 3–25CrossRefGoogle Scholar
  41. 41.
    Kristensen B., Osterbye K. (1996) Roles: Conceptual abstraction theory and practical language issues. Theory and Practice of Object Systems 2(3): 143–160CrossRefGoogle Scholar
  42. 42.
    Object Management Group. (2003). MDA guide, v1.0.1, OMG/2003-06-01.Google Scholar
  43. 43.
    Odell, J., Nodine, M., & Levy, R. (2005). A metamodel for agents, roles, and groups. In J. Odell, P. Giorgini, & J. Müller (Eds.), AOSE, LNCS. Springer.Google Scholar
  44. 44.
    Omicini, A. (2000). SODA: Societies and infrastructures in the analysis and design of agent-based systems. In AOSE, LNCS (Vol. 1957, pp. 185–193). Springer-Verlag.Google Scholar
  45. 45.
    Padgham, L., & Winikoff, M. (2002). Prometheus: A methodology for developing intelligent agents. In AOSE.Google Scholar
  46. 46.
    Pavón, J., Gómez-Sanz, J., & Fuentes, R. (2005). The INGENIAS methodology and tools. In Agent-oriented methodologies (pp. 236–276). NY, USA: Idea Group Publishing.Google Scholar
  47. 47.
    Sauvage, S. (2004). Agent oriented design patterns: A case study. In AAMAS ’04 (pp. 1496–1497). Washington, DC, USA: IEEE Computer Society.Google Scholar
  48. 48.
    Searle J. (1969) Speech acts. Cambridge University Press, Cambridge, UKGoogle Scholar
  49. 49.
    Seidita, V., Cossentino, M., Hilaire, V., Gaud, N., Galland, S., Koukam, A., et al. (2009). The metamodel: A starting point for design processes construction. International Journal of Software Engineering and Knowledge Engineering (IJSEKE) (in press).Google Scholar
  50. 50.
    Shen W., Maturana F., Norrie D.H. (2000) MetaMorph II: An agent-based architecture for distributed intelligent design and manufacturing. Journal of Intelligent Manufacturing 11(3): 237–251CrossRefGoogle Scholar
  51. 51.
    Simon H.A. (1996) The science of artificial (3rd ed). MIT Press, Cambridge, MassachusettsGoogle Scholar
  52. 52.
    Sommerville, I. (2004). Software engineering (7th ed.). International Computer Science Series. Addison Wesley, Pearson Education.Google Scholar
  53. 53.
    SPEM. (2007). Software process engineering metamodel specification, v2.0, final adopted specification, ptc/07-03-03. Object Management Group.Google Scholar
  54. 54.
    Tran, Q.-N. N., & Low, G. C. (2005). Agent-oriented methodologies, Comparison of Ten Agent-Oriented Methodologies (Chap. XII, pp. 341–367). Idea Group.Google Scholar
  55. 55.
    Wilber, K. (1995). Sex, ecology, spirituality. Shambhala.Google Scholar
  56. 56.
    Wooldridge M., Jennings N.R., Kinny D. (2000) The Gaia methodology for agent-oriented analysis and design. Autonomous Agents and Multi-Agent Systems 3(3): 285–312CrossRefGoogle Scholar
  57. 57.
    Zambonelli, F., Jennings, N. R., & Wooldridge, M. (2003). Developing multiagent systems: The GAIA methodology. ACM Transactions on Software Engineering and Methodology, 12(3), 317–370.

Copyright information

© Springer Science+Business Media, LLC 2009

Authors and Affiliations

  • Massimo Cossentino
    • 1
    • 2
  • Nicolas Gaud
    • 1
    Email author
  • Vincent Hilaire
    • 1
  • Stéphane Galland
    • 1
  • Abderrafiâa Koukam
    • 1
  1. 1.Multiagent Systems Group, System and Transport LaboratoryUniversity of Technology of Belfort MontbéliardBelfort CedexFrance
  2. 2.ICAR InstituteNational Research CouncilPalermoItaly

Personalised recommendations