Title: Experiences from a standardization attempt in AO methodologies
1Experiences from a standardization attempt in AO
methodologies
- Massimo Cossentino
- (Italian National Research Council)
2Reference Scenario for this talk
- I dont like your methodology!!!
- Im going to create a new, better one!
- how ??
3Place of events
- The (ex) FIPA Methodology Technical Committee
4AOSE Today (methodological point of view)
- Several methodologies exist with different
advantages - Gaia
- Ingenias/Message
- MaSE
- PASSI
- Prometheus
- Tropos
- e.g. one size does not fit all !!!
5The FIPA Methodology TC Goals
- Problem
- It makes no sense to define one unique
methodology and to force everyone to adopt it in
order to be FIPA compliant - (Proposed) Solution
- Let the developer of a multi-agent system create
his own methodology - Suited for the specific problem/system to be
built - Not conflicting with his (development)
environmental constraints - Coherent with his (or his group) knowledge and
skills - Supported by a CASE tool
- Supported by a FIPA methodology composition
framework (specifications, guidelines and
construction bricks)
6The proposed approach
- Adopting and customizing for Agent-based systems
the well known Method Engineering paradigm - The development methodology is built by the
developer assembling pieces of the process
(method fragments) taken from a repository. - The repository is composed of contributions
coming from existing methodologies and other
novel and specifically conceived fragments
7What is method engineering
8The normal agent development process
9The proposed Method Engineering approach
The Method Engineer uses a CAME tool to compose
the new methodology by reusing fragments from the
repository
The Method Engineer analyzes the problem and the
development context/people to deduce new
methodology features
The CAME tool is used to instantiate a
methodology specific tool
10Key elements
- OK sounds interesting, now, I want to create my
new methodology with this approach. - What do I need?
- A collection of method fragments
- Some guidelines about how to assemble fragments
- A CAME (Computer Aided Method Engineering) tool
- an evaluation framework (is my new methodology
really good?)
11The results of the FIPA Methodology TC
12The new methodology production process
Fragments are identified and described according
to the previous discussed definition
All methodologies are expressed in a standard
notation (we adopt SPEM - Software Process
Engineering Metamodel by OMG)
New fragments are defined if necessary
A method fragments repository is composed with
all existing fragments
The methodology design tool is aware of the
selected MAS meta-model (this helps in fragments
selection and consistency check)
A CAME (Computer Aided Method Engineering) tool
assists in the selection of fragments and
composition of design process
A new and problem specific methodology is built
13What has been done
- First release of a glossary of agent-design
related terms (one of the TC deliverables) (see
http//www.pa.icar.cnr.it/cossentino/
FIPAmeth/glossary.htm) - Definition of the method fragment structure
(meta-model) - In terms of a portion of process, some
deliverables, preconditions, list of concepts
addressed in the fragment, guidelines, glossary
of terms, composition guidelines, aspects and
dependencies. - Study of several MAS meta-model, definition of an
unifying proposal - Extensive experimentation of OMG SPEM (Software
Process Engineering Metamodel) as a modeling
language for representing process aspects of
fragments of MAS design processes - Collection of fragments from several
methodologies (Adelfe, Gaia, PASSI, Tropos, to be
completed Ingenias) - Experiments of methodologies composition
14What is (still) to be done(according to the old
plan)
- Extraction of more fragments from existing
methodologies in order to improve the methods
base - Documents to be completed
- Fragments Repository architecture definition
- Methodology Composition Guidelines
15Our Plans for the future
- Starting a debate
- With both old TC members and new interested
people - Defining the new strategy
- From the technical point of view
- Merging with OPF?
- Exploring new directions?
- Consolidating this position?
- From the organizational point of view
- Preparing a proposal for an IEEE FIPA WG/SG?
- Collaborating within other contexts? (ISO,
Agentlink, research projects, )
16Are you interested?
- Please, contact me
- cossentino_at_pa.icar.cnr.it
17Further details
18What is a (method) fragment
- A fragment1 is a portion of the development
process, composed as follows - A portion of process (what is to be done, in what
order), defined with a SPEM diagram - One or more deliverables (artifacts like
(A)UML/UML diagrams, text documents and so on). - Some preconditions (they are a kind of constraint
because it is not possible to start the process
specified in the fragment without the required
input data or without verifying the required
guard condition) - A list of concepts (related to the MAS
meta-model) to be defined (designed) or refined
during the specified process fragment. - Guideline(s) that illustrates how to apply the
fragment and best practices related to that - A glossary of terms used in the fragment (in
order to avoid misunderstandings if the fragment
is reused in a context that is different from the
original one) - Other information (composition guidelines,
platform to be used, application area and
dependency relationships useful to assemble
fragments) complete this definition. - 1According to the (old) FIPA Methodology TC
definition (see http//www.pa.icar.cnr.it/cossent
ino/ FIPAmeth/metamodel.htm)
19MAS meta-models
- It is the meta-model of the system to be built
- It specifies
- which elements (agents, roles, behaviors,
communications, ) will constitute the agent
solution - which relationships exist among these elements
- The MAS meta-model (when chosen before of the
methodology) provides a guideline for the
methodology pieces selection and assembling
20Method Fragment structure
21Description of a methodology in SPEM
22Description of a methodology in SPEM
- (From PASSI process the Agent Society Phase)
23Relationship with the MAS meta-model
- MAS meta-model elements and work products are
directly related -
- Kinds of relationships
- Define
- Refine
- Quote
- Relate
-
24A unifying MAS meta-model (from Adelfe, Gaia,
Ingenias, PASSI)
C. Bernon, M. Cossentino, M.P. Gleizes, J. Pavon,
P. Turci, F. Zambonelli. Towards Unification of
Multi-Agent Systems Meta-Models.
25Experiments of methodologies compositions
- Recently, several papers have been written
- Among the others
- Following the Methodology TC approach
- M. Cossentino, V. Seidita. Composition of a New
Process to Meet Agile Needs Using Method
Engineering. Software Engineering for Large
Multi-Agent Systems vol. III. LNCS Series,
Elsivier Ed. (2004) - A. Garro, G. Fortino, W. Russo. Using Method
Engineering for the Construction of
Agent-Oriented Methodologies. In Proc. of WOA 04
- Dagli Oggetti agli Agenti, Sistemi Complessi e
Agenti razionali, pages 5154, Torino, Italy,
December 2004. - Following similar approaches
- B. Henderson-Sellers. Method Engineering for OO
Systems Development. Communications of the ACM,
46(10), 2003. 29 B. Henderson-Sellers. Creating
a comprehensive agent-oriented methodology -
using method engineering and the OPEN metamodel.
In B. Henderson-Sellers and P. Giorgini, editors,
Agent-Oriented Methodologies Idea Group, 2005. - T. Juan, and L. Sterling, and M. Winikoff.
Assembling Agent Oriented Software Engineering
Methodologies from Features. In Proc. of the
Third International Workshop on Agent-Oriented
Software Engineering, at AAMAS02.
26Proposals for a new plan
- Merging with OPF (Open Process Framework)?
- Design tools
- A standardization effort could help in enabling
the development of this kind of tools - Specific topics of interest for FIPA
- Definition of a MAS meta-model,
- Definition of the methodology meta-model
- Identification of the basic activities that
constitute a MAS design process (?) - Proposals?