Tropos: An Agent-Oriented Software Development Methodology

Our goal in this paper is to introduce and motivate a methodology, called Tropos,1 for building agent oriented software systems. Tropos is based on two key ideas. First, the notion of agent and all related mentalistic notions (for instance goals and plans) are used in all phases of software development, from early analysis down to the actual implementation. Second, Tropos covers also the very early phases of requirements analysis, thus allowing for a deeper understanding of the environment where the software must operate, and of the kind of interactions that should occur between software and human agents. The methodology is illustrated with the help of a case study. The Tropos language for conceptual modeling is formalized in a metamodel described with a set of UML class diagrams.

[1]  Allen Newell,et al.  The Knowledge Level , 1989, Artif. Intell..

[2]  Anand S. Rao,et al.  Modeling Rational Agents within a BDI-Architecture , 1997, KR.

[3]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

[4]  Alan M. Davis,et al.  Software Requirements: Objects, Functions and States , 1993 .

[5]  Eric S. K. Yu,et al.  Modeling organizations for information systems requirements engineering , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

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

[7]  John Mylopoulos,et al.  Using Goals, Rules and Methods to Support Reasoning in Business Process Reengineering , 1994, Intell. Syst. Account. Finance Manag..

[8]  John Mylopoulos,et al.  Understanding "why" in software process modelling, analysis, and design , 1994, Proceedings of 16th International Conference on Software Engineering.

[9]  Nicholas R. Jennings,et al.  Intelligent agents: theory and practice , 1995, The Knowledge Engineering Review.

[10]  Anand S. Rao,et al.  A Methodology and Modelling Technique for Systems of BDI Agents , 1996, MAAMAW.

[11]  Hyacinth S. Nwana,et al.  Software agents: an overview , 1996, The Knowledge Engineering Review.

[12]  John Mylopoulos,et al.  AI Models for Business Process Reengineering , 1996, IEEE Expert.

[13]  Nicholas R. Jennings,et al.  DESIRE: Modelling Multi-Agent Systems in a Compositional Formal Framework , 1997, Int. J. Cooperative Inf. Syst..

[14]  Nicholas R. Jennings,et al.  Using Multi-context Systems to Engineer Executable Agents , 1999, ATAL.

[15]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[16]  Nicholas R. Jennings Agent-Oriented Software Engineering , 1999, MAAMAW.

[17]  Gerhard Weiss,et al.  Multiagent systems: a modern approach to distributed artificial intelligence , 1999 .

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

[19]  Michael Wooldridge,et al.  Agent-oriented software engineering , 1999, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[20]  Jörg P. Müller,et al.  Agent UML: A Formalism for Specifying Multiagent Software Systems , 2001, Int. J. Softw. Eng. Knowl. Eng..

[21]  Fausto Giunchiglia,et al.  NUSMV: a new symbolic model checker , 2000, International Journal on Software Tools for Technology Transfer.

[22]  Fausto Giunchiglia,et al.  Agent- Oriented Software Development: A Case Study , 2001, SEKE.

[23]  Jorge J. Gómez-Sanz,et al.  Agent Oriented Analysis Using Message/UML , 2001, AOSE.

[24]  Fausto Giunchiglia,et al.  A knowledge level software engineering methodology for agent oriented programming , 2001, AGENTS '01.

[25]  Fausto Giunchiglia,et al.  Modeling Early Requirements in Tropos: A Transformation Based Approach , 2001, AOSE.

[26]  Marco Pistore,et al.  Model checking early requirements specifications in Tropos , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[27]  Eric S. K. Yu,et al.  Agent-Oriented Modelling: Software versus the World , 2001, AOSE.

[28]  John Mylopoulos,et al.  A Goal-Based Organizational Perspective on Multi-agent Architectures , 2001, ATAL.

[29]  John Mylopoulos,et al.  Information systems as social structures , 2001, FOIS.

[30]  Scott A. DeLoach,et al.  Analysis and Design using MaSE and agentTool , 2001 .

[31]  Fausto Giunchiglia,et al.  The Tropos Modeling Language. A User Guide , 2002 .

[32]  John Mylopoulos,et al.  Towards requirements-driven information systems engineering: the Tropos project , 2002, Inf. Syst..

[33]  John Mylopoulos,et al.  Reasoning with Goal Models , 2002, ER.

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

[35]  Nicholas R. Jennings,et al.  The Gaia Methodology for Agent-Oriented Analysis and Design , 2000, Autonomous Agents and Multi-Agent Systems.

[36]  Ivar Jacobson,et al.  Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series) , 2005 .