Revenir à la page d'accueil
Plan du site   |   Plan d’accès   |   UTBM
  
Projets Européens
Réseaux d'Excellence
Projets Nationaux
Contrats Industriels
Projets thématiques
    ASPECS Methodology
       Introduction
       A quick overview of ASPECS
       System Requirements Analysis
       Agent Society Design
       Implementation
       Deployment
       References
       Comparisons with existing Agent-Oriented Methodologies
Conférences
Séminaires
Accueil > Activités et projets > Projets thématiques > ASPECS Methodology > Comparisons with existing Agent-Oriented Methodologies
Comparisons with existing Agent-Oriented Methodologies

Comparisons with existing Agent-Oriented Methodologies

 

With the increasing amount of successful applications and techniques based on the multiagent paradigm, a lot of efforts have been devoted to the definition of methods and tools for supporting agent-oriented software engineering. Most of them have been inspired by existing object-oriented software engineering techniques adapted to deal with specific issues of agents like social concerns (organisation, role, interaction, cooperation, coordination, negotiation), complex behaviours (autonomy, mental states, beliefs, goals or tasks) and a greater degree of concurrency and distribution. However according to Sommerville [71], all different kinds of software development processes share some fundamental activities. These include
specification (definitions of software functionalities and constraints), design and implementation, validation (against customers requirements) and evolution. This section focuses only on the two initial activities and tries to give a general overview of the different existing approaches. Several proposed AOSE methodologies cover the entire software engineering process like for instance the already cited INGENIAS, MESSAGE, ADELFE, TROPOS, MASE, PROMETHEUS, and PASSI.

With the exception of formal approaches (out of scope here), specifications are generally based on the use of structured text and graphical notations. Two major perspectives are generally used: a goal-oriented or a functional-oriented (i.e. based on use-cases) one. The TROPOS methodology is based on requirements analysis by means of goals, dependencies, roles, actors, positions and agents [7]. Some of these notions are similar to those we use and enable to deal with dynamic role playing. They are often depicted on the same schema with the result that is sometimes difficult to read such schemas where all concepts are at the same level of abstraction.

The MaSE methodology [23] insists upon the necessity of software tools for software engineering, specifically code generation tools. This methodology has seven sequential steps. It begins with the identification of overall goals and their structuring. Starting from goals with use cases and sequence diagrams the designer can identify roles and define them as a set of tasks. Agents are then introduced within a sort of class diagram exhibiting an extended semantics. The last step consists in precisely defining: high level interaction protocols, agent architectures and deployment diagrams. For each step a different diagram is introduced.

MaSE methodology suffers from limited one-to-one agent interactions. The authors authorize a dynamic role playing relationship without providing a hint about how it can be done.

Prometheus [3] is a methodology which defines a process associated with a set of deliverables. It covers phases from specification to architectural and detailed designs. The available supporting tool verifies features at the architectural and detailed design level and it is mainly concerned with interfaces compatibility and plans consistency.

Kendall [44] suggests the use of extended Object Oriented methodologies like design patterns and CRC. CRC are extended to Role Responsibilities and Collaborators. In [45] a seven layered architectural pattern for agents is presented. The seven layers are: mobility, translation, collaboration, actions, reasoning, beliefs and sensory. This architecture is dedicated to mobile agents. Dynamic role playing is enabled by the use of aspects oriented programming and therefore considered only at implementation level. In the novel proposed approach dynamic role playing will be considered at the analysis level too.

The Andromeda methodology [24] uses the notion of role and proposes a step by step process. It also deals with machine learning techniques for MAS and is oriented towards the design of reactive MAS. As already specified, the adoption of cognitive architectures is within the objectives of ASPECS [36].

Other methodologies such as ADELFE [5] or MESSAGE [11] have adopted RUP2 [51] as their generic software life-cycle framework and use UML and AUML diagrams. ADELFE is based on a object-oriented approach and specifically deals with applications that require adaptive MAS. MESSAGE is based on an organisational approach and is dedicated to telecommunication applications. They consider the distinction between Role and Agent as analogous to that between Interface and Object Class. Kristensen and Osterbye [49], studying the notion role for object, called such a vision of role as the Filter Metaphor and discussed the problems related to such an approach: “This is mistaken because the filter metaphor implies that the persons3 has all the properties from the outset, and we choose to see only some of them. This neglects the important meaning behind roles, that the properties are extrinsic, - the person only has them because of the role”. In ASPECS the role is emphasized as a fundamental entity spreading from requirements
to implementation. It is the abstraction of a behaviour in the context defined by its organisation and it gives a status to its players in the organisation itself (refer to section 4.4 for more details); each role has its own specific properties and behaviour.

In [32] MaMA-S is composed of three methodology phases: analysis and specification, design, and implementation. Recursive multiagent concepts are introduced in the second phase since the first one is reserved to system domain specialists. According to its UML metamodel which supports collaborative design MaMA-S provides models and tools to check and verify several properties of the models resulting from the two first stages.

As regards relevant modeling aspects, Bergenti and Poggi [4] suggest the use of four UML-like diagrams. These diagrams are modified in order to take into account MAS specific aspects like: conceptual ontology description, MAS architecture, interaction protocols and agent functionalities.

Other interesting modelling issues are raised in [57], where the authors extend UML for representing agent related notions. In particular, the authors insist upon role concept and suggest the use of modified sequence diagrams to deal with roles.

 

 

  90010 Belfort cedex - Tél : +33 (0)3 84 58 33 19 - Fax : +33 (0)3 84 58 33 42 - Mentions légales