Agent Oriented Software Engineering

  • Pedro Cuesta
  • Alma Gómez
  • Juan Carlos González
Part of the Whitestein Series in Software Agent Technologies and Autonomic Computing book series (WSSAT)


Research in Agent Oriented Software Engineering involves the integration of different disciplines, from software engineering to artificial intelligence. To demonstrate the breadth of the field, this chapter discusses a number of the research issues involved. The issues range from the definition of a framework for evaluation of agent-oriented methodologies to the integration of other software engineering practices such as the use of software components or the Model Driven Engineering approach. The works discussed involve various activities of the software life cycle: test, verification and validation of multi-agent systems, the application of multi-agent systems for software maintenance and practical multi-agent systems proposals for specific domains, such as the development of multi-agent systems applying the System Product Lines philosophy and the definition of a method based on agent-oriented methodologies for the development of Holonic Manufacturing Systems.


Multiagent System Software Product Line Software Maintenance Model Drive Architecture Core Architecture 
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]
    M. Alberti, M. Gavanelli, E. Lamma, P. Mello, and P. Torroni. Specification and verification of agent interaction using social integrity constraints. Electronic Notes in Theoretical Computer Science, 85(2), 2004.Google Scholar
  2. [2]
    N. Anquetil, K. M. de Oliveira, K. D. de Sousa, and M. G. Batista Dias. Software maintenance seen as a knowledge management issue. Information and Software Technology, page In press, 2006.Google Scholar
  3. [3]
    A. Aurum, R. Jeffery, C. Wohlin, and M. Handzic, editors. Managing Software Engineering Knowledge. Springer, 2003.Google Scholar
  4. [4]
    Birkhäuser Basel, editor. The Agent Modeling Language — AML. Springer-verlag, 2007.Google Scholar
  5. [5]
    C. Bernon, M. Cossentino, and J. Pavón. Agent-oriented software engineering. Knowl. Eng. Rev., 20(2):99–116, 2005.CrossRefGoogle Scholar
  6. [6]
    C. Bernon, M. Cossentino, and J. Pavón. Agent-oriented software engineering. The Knowledge Engineering Review, 20(02):99–116, 2006.CrossRefGoogle Scholar
  7. [7]
    C. Bernon, M. P. Gleizes, S. Peyruqueou, and G. Picard. Adelfe: A methodology for adaptive multi-agent systems engineering. In P. Petta, R. Tolksdorf, and F. Zambonelli, editors, ESAW, volume 2577 of Lecture Notes in Computer Science, pages 156–169. Springer, 2002.Google Scholar
  8. [8]
    J. A. Botía, J. M. Hernansáez, and A. F. Gómez-Skarmeta. Towards an approach for debugging mas through the analysis of acl messages. Computer Systems Science and Engineering, 20, July 2005.Google Scholar
  9. [9]
    P. Bresciani, A. Perini, P. Giorgini, F. Giunchiglia, and J. Mylopoulos. Tropos: an agent-oriented software development methodology. Journal of Autonomous agents and Multiagent Systems, 8(3), 2004.Google Scholar
  10. [10]
    W. Caire, G.and Coulier, F. J. Garijo, J. J. Gómez-Sánz, J. Pavón, F. Leal, P. Chainho, P. E. Kearney, J. Stark, R. Evans, and P. Massonet. Agent oriented analysis using message/uml. In Agent-Oriented Software Engineering II, volume 2222 of Lecture Notes in Computer Science, pages 119–135. Springer, 2002.CrossRefGoogle Scholar
  11. [11]
    N. Chapin. The job of software maintenance. In Proc. of the Conf. on Software Maintenance-1987, pages 4–12. IEEE Computer Society Press, 1987.Google Scholar
  12. [12]
    S. Chien, R. Sherwood, G. Rabideau, R. Castano, A. Davies, M. Burl, R. Knight, T. Stough, J. Roden, P. Zetocha, R. Wainwright, P. Klupar, J. Van Gaasbeck, P. Cappelaere, and D. Oswald. The techsat-21 autonomous space science agent. In AAMAS’ 02: Proceedings of the first international joint conference on Autonomous agents and multiagent systems, pages 570–577, New York, NY, USA, 2002. ACM Press.Google Scholar
  13. [13]
    P. Clements and L. Northrop. Software Product Lines: Practices and Patterns. SEI Series in Software Engineering. Addison-Wesley, August 2001.Google Scholar
  14. [14]
    Massimo Cossentino. Agent Oriented Methodologies, chapter From Requirements to Code with the PASSI Methodology, pages 79–106. Idea Group, 2005.Google Scholar
  15. [15]
    P. Cuesta, A. Gómez, J. C. Gonzalez-Moreno, and F. J. Rodriguez. A framework for evaluation of agent oriented methodologies. Technical report, Universidade de Vigo, 2003.Google Scholar
  16. [16]
    K. Czarnecki and U. Eisenecker. Generative Programming: Methods, Tools, and Applications. Addison-Wesley, 2000.Google Scholar
  17. [17]
    K. H. Dam and M. Winikoff. Comparing agent-oriented methodologies. In Agent-Oriented Information Systems: AOIS, pages 78–93, Berlin / Heidelberg, 2003. Springer.Google Scholar
  18. [18]
    M. Dastani, John-J. Ch. Meyer, and R. H. Bordini. 06261 abstracts collection: Foundations and practice of programming multi-agent systems. In Rafael H. Bordini, Mehdi Dastani, and John-Jules Ch. Meyer, editors, Foundations and Practice of Programming Multi-Agent Systems, number 06261 in Dagstuhl Seminar Proceedings. Internationales Begegnungs-und Forschungszentrum fuer Informatik (IBFI), Schloss Dagstuhl, Germany, 2007.Google Scholar
  19. [19]
    T. H. Davenport and L. Prusak. Working Knowledge: How Organizations Manage What they Know. Harvard Business School Press, 2000.Google Scholar
  20. [20]
    T. De Wolf and T. Holvoet. Towards a methodology for engineering self-organising emergent systems. Self-Organization and Autonomic Informatics, 135:18–34, 2005.Google Scholar
  21. [21]
    J. Dehlinger and R. R. Lutz. A product-line requirements approach to safe reuse in multi-agent systems. In SELMAS’ 05: Proceedings of the fourth international workshop on Software engineering for large-scale multi-agent systems, pages 1–7, New York, NY, USA, 2005. ACM Press.Google Scholar
  22. [22]
    J. Dehlinger and R. R. Lutz. Bi-directional safety analysis for product-line, multiagent systems. SIGBED Review: Special Issues on Workshop on Innovative Techniques for Certification of Embedded Systems, 3(4), 2006.Google Scholar
  23. [23]
    J. Dehlinger and R. R. Lutz. A product-line approach to promote asset reuse in multi-agent systems. In A. F. Garcia, R. Choren, C. J. Pereira de Lucena, P. Giorgini, T. Holvoet, and A. B. Romanovsky, editors, Software Engineering for Multi-Agent Systems IV, Research Issues and Practical Applications, volume 3914 of Lecture Notes in Computer Science, pages 161–178. Springer, 2006.Google Scholar
  24. [24]
    S. A. DeLoach. Multiagent systems engineering of organization-based multiagent systems. SIGSOFT Softw. Eng. Notes, 30(4):1–7, 2005.CrossRefGoogle Scholar
  25. [25]
    S. A. DeLoach and M. Wood. Developing multiagent systems with agenttool. In C. Castelfranchi and Y. Lesperance, editors, Intelligent Agents VII. Agent Theories Architectures and Languages, 7th International Workshop (ATAL 2000), volume 1986 of Lecture Notes in Computer Science. Springer-Verlag, 2001.Google Scholar
  26. [26]
    Y. Demazeau. From interactions to collective behaviour in agent-based systems. In Proceedings of the 1st. European Conference on Cognitive Science, 1995.Google Scholar
  27. [27]
    R. Girardi. Reuse in agent-based application development. In First International Workshop on Software Engineering for Large-Scale Multi-Agent Systems, pages 1–7, Orlando, FL, USA, 2000.Google Scholar
  28. [28]
    A. Giret and V. Botti. Holons and Agents. Journal of Intelligent Manufacturing, 15:645–659, 2004.CrossRefGoogle Scholar
  29. [29]
    A. Giret and V. Botti. Multiagent System Technologies, chapter On the definition of meta-models for analysis of large-scale MAS, pages 273–286. LNAI 3187, 2004.Google Scholar
  30. [30]
    A. Giret and V. Botti. Towards an Abstract Recursive Agent. Integrated Computer-Aided Engineering, 11(2):165–177, 2004.Google Scholar
  31. [31]
    A. Giret and V. Botti. From system requirements to holonic manufacturing system analysis. International Journal of Production Research, 44:3917–3928, 2006.CrossRefMATHGoogle Scholar
  32. [32]
    J. J. Gómez-Sánz. Modelado de Sistemas Multi-Agente. PhD thesis, Universidad Complutense de Madrid, 2003.Google Scholar
  33. [33]
    J. J. Gómez-Sánz and J. Pavón. IDK MANUAL, 2005.Google Scholar
  34. [34]
    Z. Guessoum, M. Cossentino, and J. Pavón. Methodologies and Software Engineering for Agent Systems, chapter Roadmap of Agent-Oriented Software Engineering, pages 431–451. Kluwer, 2004.Google Scholar
  35. [35]
    H. Hara, S. Fujita, and K. Sugawara. Reusable software components based on an agent model. In ICPADS’ 00: Proceedings of the Seventh International Conference on Parallel and Distributed Systems: Workshops, page 447, Washington, DC, USA, 2000. IEEE Computer Society.Google Scholar
  36. [36]
    K. Havelund, M. Lowry, and J. Penix. Formal analysis of a space-craft controller using spin. IEEE Trans. Softw. Eng., 27(8):749–765, 2001.CrossRefGoogle Scholar
  37. [37]
    I. Hawryszkiewycz, B. Henderson-Sellers, and Quynh-Nhu Numi Tran. Fragments for composing collaborative systems. In ISTA, pages 95–106, 2006.Google Scholar
  38. [38]
    B. Henderson-Sellers and P. Giorgini. Agent-Oriented Methodologies. Idea Group Inc., 2005.Google Scholar
  39. [39]
    Press Release HMS. HMS Requirements. HMS Server,, 1994.Google Scholar
  40. [40]
    Marc-Philippe Huget. Agent uml notation for multiagent system design. IEEE Internet Computing, 8(4):63–71, 2004.CrossRefGoogle Scholar
  41. [41]
    A. Jansen, R. Smedinga, J. Gurp, and J. Bosch. First class feature abstractions for product derivation. IEE Proceedings — Software, 151(4):187–198, 2004.CrossRefGoogle Scholar
  42. [42]
    D. Jensen and V. Lesser. Social pathologies of adaptive agents. Safe Learning Agents: Papers from the 2002 AAAI Spring Symposium, TR SS-02-07, August 2002.Google Scholar
  43. [43]
    V. Julian and V. Botti. Developing real-time multiagent systems. Integrated Computer-Aided Engineering, 11:135–149, 2004.Google Scholar
  44. [44]
    D. Kinny, M. Georgeff, and A. Rao. A methodology and modelling technique for systems of BDI agents. In Walter Van de Velde and John W. Perram, editors, Agents Breaking Away: Proceedings of the Seventh European Workshop on Modelling Autonomous Agents in a Multi-Agent World, volume 1038 of Lecture Notes in Computer-Science, pages 56–71. Springer, 1996.Google Scholar
  45. [45]
    A. Koestler. The Ghost in the Machine. Arkana Books, 1971.Google Scholar
  46. [46]
    D. S. Kolovos, R. F. Paige, and F. Polack. The epsilon object language (eol). In Rensink and Warmer [69], pages 128–142.Google Scholar
  47. [47]
    D. N. Lam and K. S. Barber. Comprehending agent software. In AAMAS’ 05: Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems, pages 586–593, New York, NY, USA, 2005. ACM Press.Google Scholar
  48. [48]
    M. Lindvall and I. Rus. Managing Software Engineering Knowledge, chapter Knowledge Management for Software Organizations, pages 73–94. Springer, 2003.Google Scholar
  49. [49]
    M. Luck and P. McBurney. Challenges for Agent Technology Moving towards 2010. Upgrade, V(4), 2004.Google Scholar
  50. [50]
    D. C. McFarlane and S. Bussmann. Agent-Based Manufacturing. Advances in the Holonic Approach, chapter Holonic Manufacturing Control: Rationales, Developments and Open Issues, pages 301–326. Springer-Verlag, 2003.Google Scholar
  51. [51]
    J. Mylopoulos, M. Kolp, and J. Castro. Uml for agent-oriented software development: The tropos proposal. Lecture Notes in Computer Science, 2185:422–441, 2001.CrossRefGoogle Scholar
  52. [52]
    A. J. Offutt and A. Abdurazik. Generating tests from uml specifications. In R. B. France and B. Rumpe, editors, UML, volume 1723 of Lecture Notes in Computer Science, pages 416–429. Springer, 1999.Google Scholar
  53. [53]
    OMG. Mda foundation model,, 2007.Google Scholar
  54. [54]
    L. Padgham, J. Thangarajah, and M. Winikoff. Tool support for agent development using the prometheus methodology. In Fifth International Conference on Quality Software (QSIC 2005), pages 383–388. IEEE Computer Society, 2005.Google Scholar
  55. [55]
    L. Padgham and M. Winikoff. Prometheus: A Practical Agent-Oriented Methodology, chapter Chapter 5 in Agent-Oriented Methodologies, pages 107–135. Idea Group, 2005.Google Scholar
  56. [56]
    J. Pavón and J. J. Gómez-Sánz. Agent Oriented Software Engineering with INGENIAS. 3rd International Central and Eastern European Conference on Multi-Agent Systems (CEEMAS 2003): V. Marik, J. Müller, M. Pechoucek:Multi-Agent Systems and Applications II, LNAI 2691, pages 394–403, 2003.Google Scholar
  57. [57]
    J. Pavon, J. J. Gómez-Sánz, and R. Fuentes. Agent-Oriented Methodologies, chapter The INGENIAS Methodology and Tools, pages 236–276. Idea Group Publishing, 2005.Google Scholar
  58. [58]
    J. Pavón, J. J. Gómez-Sánz, and R. Fuentes. Model driven development of multiagent systems. In Rensink and Warmer [69], pages 284–298.Google Scholar
  59. [59]
    J. Peña. On Improving The Modelling Of Complex Acquaintance Organisations Of Agents. A Method Fragment For The Analysis Phase. PhD thesis, University of Seville, 2005.Google Scholar
  60. [60]
    J. Peña and M. G. Hinchey. Multiagent system product lines: Challenges and benefits. Communications of the ACM, 49(12), December 2006.Google Scholar
  61. [61]
    J. Pefia, M. G. Hinchey, M. Resinas, R. Sterritt, and J. L. Rash. Designing and managing evolving systems using a mas-product-line approach. Journal of Science of Computer Programming, 2006.Google Scholar
  62. [62]
    J. Pefia, M. G. Hinchey, A. Ruiz-Cortés, and P. Trinidad. Building the core architecture of a nasa multiagent system product line. In 7th International Workshop on Agent Oriented Software Engineering 2006, volume 4405, pages 208–224, Hakodate, Japan, May, 2006. LNCS.Google Scholar
  63. [63]
    J. Peña, M. G. Hinchey, R. Sterritt, A. Ruiz-Cortés, and M. Resinas. A model-driven architecture approach for modeling, specifying and deploying policies in autonomous and autonomic systems. In Second International Symposium on Dependable Autonomic and Secure Computing (DASC 2006), 29 September–1 October 2006, Indianapolis, Indiana, USA, pages 19–30. IEEE Computer Society, 2006.Google Scholar
  64. [64]
    K. Pohl, G. Böckle, and F. van der Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, September 2005.Google Scholar
  65. [65]
    M. Polo, M. Piattini, and F. Ruiz, editors. Advances in Software Maintenance Management: Technologies and Solutions. Idea Group Inc., 2003.Google Scholar
  66. [66]
    M. Polo, M. Piattini, F. Ruiz, and C. Calero. Roles in the maintenance process. SIGSOFT Softw. Eng. Notes, 24(4):84–86, 1999.CrossRefGoogle Scholar
  67. [67]
    D. Poutakidis, L. Padgham, and M. Winikoff. Debugging multi-agent systems using design artifacts: The case of interaction protocols. In AAMAS’02, Bologna, Italy, July 2002.Google Scholar
  68. [68]
    A. S. Rao and M. P. Georgeff. BDI-agents: from theory to practice. In Proceedings of the First Intl. Conference on Multiagent Systems, San Francisco, 1995.Google Scholar
  69. [69]
    A. Rensink and J. Warmer, editors. Model Driven Architecture — Foundations and Applications, Second European Conference, ECMDA-FA 2006, Bilbao, Spain, July 10–13, 2006, Proceedings, volume 4066 of Lecture Notes in Computer Science. Springer, 2006.Google Scholar
  70. [70]
    O. M. Rodriguez, A. I. Martínez, J. Favela, A. Vizcaíno, and M. Piattini. Understanding and supporting knowledge flows in a community of software developers. Lecture Notes in Computer Science, 3198:52–66, 2004.Google Scholar
  71. [71]
    A. Sabas, M. Badri, and S. Delisle. A comparative analysis of multiagent system development: Towards a unified approach. In Proceedings of Third Interanational Symposium “From Agent Theory to Agent Implementation” AT2AI-3, pages 624–631, 2002.Google Scholar
  72. [72]
    D. C. Schmidt. Model Driven Engineering. IEEE Computer, 39(2):25–31, 2006.Google Scholar
  73. [73]
    C. Seaman. The information gathering strategies of software maintainers. In Proc. of the Intl. Conf. on Software Maintenance (ICSM’2002), pages 141–149. IEEE Computer Society Press, 2002.Google Scholar
  74. [74]
    B. Selic. The pragmatics of model-driven development. IEEE Software, 20(5):19–25, 2003.CrossRefGoogle Scholar
  75. [75]
    O. Shehory and A. Sturm. Evaluation of modeling techniques for agent-based systems. In AGENTS’ 01: Proceedings of the fifth international conference on Autonomous agents, pages 624–631, New York, NY, USA, 2001. ACM Press.Google Scholar
  76. [76]
    W. Shen and D. H. Norrie. Agent-Based Systems for Intelligent Manufacturing: A State-of-the-Art Survey. Knowledge and Information Systems, an Internatinal Journal, 1(2):129–156, 1999.Google Scholar
  77. [77]
    Y. Smaragdakis and D. Batory. Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs. ACM Trans. Softw. Eng. Methodol., 11(2):215–255, 2002.CrossRefGoogle Scholar
  78. [78]
    J. Sudeikat, L. Braubach, A. Pokahr, W. Lamersdorf, and W. Renz. On the validation of belief-desire-intention agents. In R. Bordini, M. Dastani, J. Dix, and A. El Fallah, editors, Programming Multi-Agent Systems Workshop at AAMAS 2006, 2006.Google Scholar
  79. [79]
    H. Van Brussel, J. Wyns, P. Valckenaers, L. Bongaerts, and P. Peeters. Reference Architecture for Holonic Manufacturing Systems: PROSA. Computers In Industry, 37:255–274, 1998.CrossRefGoogle Scholar
  80. [80]
    L. van Elst, V. Dignum, and A. Abecker. Towards agent-mediated knowledge management. Lecture Notes in Artificial Intelligence, 2926:1–30, 2003.Google Scholar
  81. [81]
    D. M. Weiss and C. T. R. Lai. Software Product-Line Engineering. Addison Wesley, 1999.Google Scholar
  82. [82]
    F. Zambonelli, N. Jennings, and M. Wooldridge. Developing multiagent systems: the GAIA methodology. ACM Transactions on Software Engineering and Methodology, 12(3):317–370, July 2003.Google Scholar
  83. [83]
    F. Zambonelli, N. R. Jennings, and M. Wooldridge. Developing multiagent systems: The Gaia methodology. ACM Transactions on Software Engineering and Methodology (TOSEM), 12(3):317–370, 2003.CrossRefGoogle Scholar

Copyright information

© Birkhäuser Verlag Basel/Switzerland 2007

Authors and Affiliations

  • Pedro Cuesta
    • 1
  • Alma Gómez
    • 1
  • Juan Carlos González
    • 1
  1. 1.Departamento de Informática-Universidade de Vigo Escola Superior de Enxeñería InformáticaCampus Universitario As Lagoas S/NOurenseSpain

Personalised recommendations