TROPOS: AN AGENT-ORIENTED SOFTWARE DEVELOPMENT METHODOLOGY

TROPOS: AN AGENT-ORIENTED SOFTWARE DEVELOPMENT METHODOLOGY

2002 | Paolo Bresciani, Paolo Giorgini, Fausto Giunchiglia, John Mylopoulos, and Anna Perini
TROPOS is an agent-oriented software development methodology introduced in this paper. It is based on two key ideas: (1) the notion of agent and related mentalistic concepts (goals, plans, beliefs, etc.) are used throughout all phases of software development, from early analysis to implementation. (2) Tropos covers the very early phases of requirements analysis, allowing for a deeper understanding of the environment and interactions between software and human agents. The methodology is illustrated with a case study involving the eCulture system, a web-based broker of cultural information and services for the government of Trentino. The Tropos language for conceptual modeling is formalized in a metamodel described with UML class diagrams. The methodology includes five main development phases: Early Requirements, Late Requirements, Architectural Design, Detailed Design, and Implementation. Early Requirements focuses on identifying and analyzing stakeholders and their intentions. Late Requirements extends this by including the system as an actor and modeling its dependencies. Architectural Design defines the system's global architecture in terms of subsystems and their interconnections. Detailed Design specifies agent capabilities and interactions, while Implementation follows the detailed design specification. Key concepts in Tropos include actors, goals, plans, resources, dependencies, and capabilities. Actors represent entities with strategic goals and intentionality. Goals represent actors' strategic interests, while plans represent abstract ways of achieving goals. Dependencies indicate relationships between actors, and capabilities represent the ability of an actor to define, choose, and execute plans. Modeling activities include actor modeling, dependency modeling, goal modeling, plan modeling, and capability modeling. These activities help in acquiring, refining, and evolving models. Goal modeling involves analyzing goals from the perspective of actors using techniques such as means-end analysis, contribution analysis, and AND/OR decomposition. Plan modeling complements goal modeling by analyzing plans in a similar manner. The eCulture system example illustrates the application of Tropos. Early Requirements analysis identifies stakeholders and their goals, while Late Requirements analysis extends this by including the system as an actor. Architectural Design defines the system's global architecture, and Detailed Design specifies agent capabilities and interactions. Implementation follows the detailed design specification. The development process involves analyzing goals from the perspective of different actors and is described as a non-deterministic concurrent algorithm with a completeness criterion. This process is carried out by software engineers at design-time, not run-time. The process begins with a number of actors, each with a list of associated root goals. These goals are analyzed, and subgoals are generated, which are either delegated to other actors or handled by the actor themselves. The process continues until all goals have been addressed to the satisfaction of the actors.TROPOS is an agent-oriented software development methodology introduced in this paper. It is based on two key ideas: (1) the notion of agent and related mentalistic concepts (goals, plans, beliefs, etc.) are used throughout all phases of software development, from early analysis to implementation. (2) Tropos covers the very early phases of requirements analysis, allowing for a deeper understanding of the environment and interactions between software and human agents. The methodology is illustrated with a case study involving the eCulture system, a web-based broker of cultural information and services for the government of Trentino. The Tropos language for conceptual modeling is formalized in a metamodel described with UML class diagrams. The methodology includes five main development phases: Early Requirements, Late Requirements, Architectural Design, Detailed Design, and Implementation. Early Requirements focuses on identifying and analyzing stakeholders and their intentions. Late Requirements extends this by including the system as an actor and modeling its dependencies. Architectural Design defines the system's global architecture in terms of subsystems and their interconnections. Detailed Design specifies agent capabilities and interactions, while Implementation follows the detailed design specification. Key concepts in Tropos include actors, goals, plans, resources, dependencies, and capabilities. Actors represent entities with strategic goals and intentionality. Goals represent actors' strategic interests, while plans represent abstract ways of achieving goals. Dependencies indicate relationships between actors, and capabilities represent the ability of an actor to define, choose, and execute plans. Modeling activities include actor modeling, dependency modeling, goal modeling, plan modeling, and capability modeling. These activities help in acquiring, refining, and evolving models. Goal modeling involves analyzing goals from the perspective of actors using techniques such as means-end analysis, contribution analysis, and AND/OR decomposition. Plan modeling complements goal modeling by analyzing plans in a similar manner. The eCulture system example illustrates the application of Tropos. Early Requirements analysis identifies stakeholders and their goals, while Late Requirements analysis extends this by including the system as an actor. Architectural Design defines the system's global architecture, and Detailed Design specifies agent capabilities and interactions. Implementation follows the detailed design specification. The development process involves analyzing goals from the perspective of different actors and is described as a non-deterministic concurrent algorithm with a completeness criterion. This process is carried out by software engineers at design-time, not run-time. The process begins with a number of actors, each with a list of associated root goals. These goals are analyzed, and subgoals are generated, which are either delegated to other actors or handled by the actor themselves. The process continues until all goals have been addressed to the satisfaction of the actors.
Reach us at info@study.space