FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS
Document title: |
Agent Development
Methodology Work Plan |
||
Document number: |
f-in-00086 |
Document source: |
(see authors below) |
Document status: |
Draft |
Date of this status: |
2003/01/31 |
Change history: |
|||
2003/01/24 |
Initial draft |
Monique
Calisti Massimo Cossentino
mca@whitestein.com cossentino@pa.icar.cnr.it
Problem Statement:
Software
development methodologies (SDM) have demonstrated to be successful in
increasing speed to market of software engineering projects, lowering the
development cost and providing better quality. These benefits particularly
apply for those projects where the system requirements are complex. The agent-based approach is well suited to
developing complex and distributed systems. As such, we need an agent
development methodology (ADM) that can provide methods, techniques, and tools
to solve those problems inherent in developing agent-based systems. It is not
appropriate to use standard OO methodologies for developing agent-based
applications. This is not to say that
OO methodologies should be ignored, however. Rather, the aim of the FIPA Agent
Development Methodology is to embrace existing methodologies where it makes
sense to do so, and extend into new methodological territory when appropriate.
To
this end, this FIPA work plan proposes developing an agent development
methodology that supports the analysis and design of agent-based systems. This
methodology will consist of guidelines, asset of recommended modeling
languages, and a process for analysis and design of agent systems. The modeling
notation will be developed in conjunction with the FIPA AUML work plan.
Objective
This
FIPA work plan will focus on the identification of an agent methodology for
development of multi-agent systems.
Existing
development methodologies have different advantages when applied to specific
problems. It is therefore possible to think that the developer of a MAS would
like to use phases or models or elements coming from different methodologies in
order to build up a personalized approach for his own problem.
In
order to reuse contributions coming from existing methodologies we will adopt
the method engineering as the referring paradigm. In this context the
development methodology is constructed by the developer assembling pieces of
the process (method fragments) from a
method base. In this way he could
obtain the best process for his specific need/problem.
We
will take method fragments (the composing elements of the development
methodology) from several existing methodologies like: AOR, Cassiopeia, Gaia,
Mase, Message, PASSI, Tropos, and so on, if these fragments are coherent with
the FIPA architecture. Other novel and specific contributions will be
considered as well.
More
in details, the goals of the work are:
1. Creation
of the meta-model. It is
necessary to formally represent method fragments in order to store them in the
method base. A method is essentially composed of two elements: the structure of
the product (the artifact resulting from the developer activity) and the
procedures necessary to construct the artifact. For object-oriented systems
examples exist of entity-relationship descriptions of the structure of the
product; as regards the procedures, various documentation approaches can be
found in literature, among the others we have formal grammars, programming
languages and so on. No experiences exist in the description of agent-oriented
methods and therefore we have to establish a specific formalism but useful
hints could come from UML (and AUML) diagrams meta-models and the OPEN process
framework.
2. Identification
of the method base architecture.
The method base needs of a technological infrastructure for the instantiation
of the method meta-model previously described. It should also be considered
that the details of this architecture strongly effect the possibility of a
CASE/CAME tool support and availability. In identifying the proper structure
and implementation guidelines for the base, XMI and other XML-based languages
will be considered.
3. Collection
of method fragments. They can
origin from the most diffused methodologies and other specific contributions. After
the formalization they will be introduced in the method base.
4. Description
of techniques for method integration.
As already seen, method fragments have a double nature: the structure and the
procedure. This has a direct consequence in the possibility of integrating them
in a new methodology. Product-oriented integration allows the composition of
different fragments emphasizing their inter-relationships, process-oriented
integration facilitate the composition of the logical sequence of steps of the
methodology.
Existing
(object-oriented) experiences with method engineering stress the importance of
CASE tools support in order to both construct the methodology (retrieving the
method fragment from the method base and integrating methods) and apply it in
the real design work. Great attention is therefore needed to the possibility of
supporting the future FIPA agent development methodology with automatic tools.
In this phase advices could come both from object-oriented CASE tools authors
and from agent-oriented ones (agentTool, PTK, Tropos tool, Zeus and others).
Patterns will also be considered for the important role that they
can play in lowering the cost of the software development and their favorable
impact on the quality of the design. Patterns reuse will be considered as one
of the possible fragment methods or as a general paradigm that could influence
the procedural aspects of the methodology.
Technology
The primary sources of technology are:
·
FIPA Abstract
Architecture documents
·
OMG UML 1.4 (and
2.0 if/when available) specifications
·
Relevant papers and
documentation on :
·
object-oriented and
agent-based development methodologies;
·
methodology and tool evaluation studies (both in the
O-O and A-O contexts);
·
software engineering researches in software
architecture metrics and evaluations;
·
pattern design and reuse (both in the O-O and A-O
contexts);
·
Extant documents recommending agent-based development methodologies, such as
(but not limited to) AOR, Gaia,
Mase, MESSAGE, PASSI, and Tropos.
Documents Generated:
This work plan will create:
·
A specification
document of fragment methods meta-model;
·
A specification
document for the architecture of the
method base;
·
A set of reusable
methods obtained from existing agent-based development methodologies;
·
A collection of
guidelines for method integration;
Plan for Work and Milestones:
This work plan will create:
·
06/2003 Initial
specifications of the fragment methods meta-model
·
10/2003 Initial
draft of the specifications for the method base architecture
·
02/2004 A set
of documents describing reusable methods according to the meta-model
specifications
·
06/2004 Initial
draft of method integration guidelines
·
10/2004 Final draft
of the meta-model and method base architecture specifications
·
12/2004 Final
draft of method integration guidelines
It should be noted that we expect that significant work on these
specifications will be required between FIPA meetings and possibly at interim
meetings of the relevant TC.
Future Work:
We envisage further extensions to this work plan that will address
specifications and guidelines about the CASE/CAME tools support for the
methodology and patterns reuse.
These will be added to this work plan over time as the need and
participation level reaches an appropriate level for a FIPA work plan.
Dependencies:
The specification will depend on UML 2.0 specifications. Furthermore, close coordination and
alignment between the FIPA methodology and AUML work plan efforts is mandatory.
The design of MAS includes a particular attention for ontologies and
therefore an interaction with the ontology working group is necessary.
Support:
·
Bernhard Bauer,
Technische Universität München
·
Monique Calisti, Whitestein
Technologies
·
Massimo Cossentino, ICAR-CNR (considering FIPA
membership)
·
Renato Levy, Intelligent
Automation, Inc.
·
James Odell, James
Odell Associates
·
Radovan Cervenka, Whitestein
Technologies
·
Paola Turci,
University of Parma (considering FIPA membership)
·
Gerhard Weiss,
Technische Universität München
FAB Comments: