A FIPA-Systems Development Methodology Standardization

Download Report

Transcript A FIPA-Systems Development Methodology Standardization

WG Methodology
Chair:
Massimo Cossentino
(Italian National Research Council)
Outline








AOSE (Agent Oriented Software Engineering)
today
Our goals
The proposed approach
What is Method Engineering
The WG Methodology work plan
What has been done, what is to be done
List of supporters
Agenda of the Budapest meeting
AOSE Today

Several methodologies with different advantages:







Gaia
Mase
Message
PASSI
Prometheus
Tropos
…

No standard modeling language

 Modeling TC activity, AUML
Different tools
 How to make them interact?

Our Goals
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

Using a standard modeling language
The proposed approach
Method Engineering


The development methodology is built by the
developer assembling pieces of the process
(method fragments) from a method base.
The method base is composed of contributions
coming from existing methodologies and other
novel and specifically conceived fragments
Modeling Language:  Modeling WG activity
What is method
engineering
Method Engineering:
people, artifacts and tools
The
Method
The
CAME
tool is
The
System
Engineer
uses the
a
Engineer
analyzes
used
to instantiate
Designer
using
tool
to
the
problem
aCAME
methodology
CASE
tooland
compose
the
new
thespecifies
development
specific
tool
and
methodology
by
context/people
to
develops
the agent
reusing
fragments
deduce
new
solution
from
the repository
methodology
features
What is a (method) fragment

A fragment1 is a portion of the development process, composed as follows:
1.
2.
3.
4.
5.
6.
7.
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 FIPA Methodology TC definition (see http://www.pa.icar.cnr.it/~cossentino/
FIPAmeth/metamodel.htm)
The new methodology
production Aprocess
Fragments
are
fragments
are
All
methodologies
are
The
desired
MASANew
CASE
(Computer
new and problem
A
method
fragments
The
multi-agent
system
CAME
(Computer
Existing
Methodologies
New
Method
Fragments
Method
Fragments
Extraction
specific methodology
MAS is
built MetaModel
CAME tool
Method
Base
MAS
Deployment Model
MAS running
on agent platforms
CASE tool
identified
and
defined
ifcoded,
necessary
expressed
inis
a
Meta-Model
Aided
Software
repository
isMethod
composed
has
been
tested
Aided
described
according
standard
notation
(we
composed
according
to
Engineering)
tool
isto
withisall
existing
and
ready
totool
be
Engineering)
the
previous
discussed
adopt
SPEM
- selection
Software
problem
specific
needs
used
to
effectively
fragments
deployed
assists
in
the
definition
Process
(for
including
design
theEngineering
multi-agent
ofinstance
fragments
and
Metamodel
– of
bydesign
OMG)
or not self-organizing
system
composition
agents)
process
Specific
Methodology
Specific
problem
OO vs AO Method Engineering

Method Engineering has been introduced in the object oriented
(OO) context some years ago

It could seem that introducing the method engineering paradigm
in the agent oriented (AO) context is a plain operation.

It is not so, because in the OO context the construction of method
fragments (pieces of methodology), the assembling of the
methodology with them and the execution of the design rely on a
common denominator, the universally accepted concept of object
and related model of the object oriented system.

In the agent context, there is not an universally accepted definition
of agent nor it exists any very diffused model of the multi-agent
system.
MAS 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
Methodology TC Work Plan

Creation of the meta-model. It is necessary to formally
represent method fragments in order to store them in the
method base.

Identification of the method base architecture. The method
base needs of a technological infrastructure for the
instantiation of the method meta-model previously described.

the details of this architecture strongly effect the possibility of
a CASE/CAME tool support and availability.

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.

Description of techniques for method integration. Productoriented integration allows the composition of different
fragments emphasizing their inter-relationships, processoriented integration facilitate the composition of the logical
sequence of steps of the methodology.
Deliverables





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;
A glossary of methodology-related terms
What has been done
1. 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)
2. Definition of the method fragment specification 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.
3. Definition of a proposal of MAS meta-model
4. Extensive experimentation of OMG SPEM as a modeling language
for representing process aspects of fragments of MAS design
processes
5. Description of several methodologies in a form that is suitable for
fragment extractions (in several cases set of fragments are already
available) (one talk about that later in the methodology meeting)
6. Preliminary definition of an architecture for the fragment repository
7. Experiments of methodologies composition
Method Fragment structure
Aspect
Glossary
Guideline
Composition
Guideline
MasModelElementType
defines/refines
Fragment
fragment_name : String
dependant
precondition
artifact_element
Constraint
1..n
dependee
1..n
1
Process
Description
<<Guideline>>
1
1..*
involved roles
activities
Role Actor
1..*
Activity
1..*
role_name : String
MASModel
Relationship
MASModel
Entity
Work Product
deliverable
title : String
activity_product file : URL
Fragments dependency
description : text
Guard Condition
condition : String
activity_name : String
description : String
activity_role : Role Actor
1..* guideline : String
performs
activity_input
0..*
0..*
activity_output
Activity Data
ref : MasModelElementType
Text Document
template : URL
Diagram
notation : String
UML Diagram
notation = UML
xmi_content : String
Description of a methodology
in SPEM
(From the PASSI
process)
[New Iteration]
System Requirements
Deployment
Deploy
ment
Model
Syst.
Req.
Model
Agent
Society
Model
Agent
Impl.
Model
Code
Model
KEYS
Phase
WorkProduct
Agent Society
Agent Implementation
Code
Description of a methodology
in SPEM
Domain Ontology
Description
Fragment
Domain
Ontology
Description
(From PASSI process: the
Agent Society Phase)
Communication
Ontology Description
Communication Ontology
Description
Fragment
Roles Identification
Diagram(s)
(from Syst. Req. phase)
Fragment
Task Specification
Diagram(s)
(From Syst. Req. phase)
Roles Description
KEYS
Data Flow
Activity
UML
Diagram
Text
Document
Control Flow
Services
Fragment
Role
Description
Protocols Description
Protocol
Description
Relationship with the MAS
meta-model

MAS meta-model elements and
work products are directly related
D
*
Concept
1
D

D
Kinds of relationships:





1
1
Define
Refine
Quote
Relate
…
1
*
Ontology
Domain
Ontology
Description
*
Predicate
1
D
*
Action
R
D
1..*
1
Agent
0..*
-Knowledge
1..*
Q
0..*
1
Agent
Society
Model
-Exch. Knowledge
Ontology
Element
D
1..*
Communication Ontology
1
Communication
Description
Q
1..*
Q
Content
Language
1..*
Role
Q
1..*
AIP
D
A unifying MAS meta-model
(from Adelfe, Gaia, Ingenias, PASSI)
0..*
Organization
controlEngine
topology
Organizational
Structure
Service
input
output
pre-condition
post-condition
0..*
belongs
1
observes
1..*
Responsibility
0..1
has
LivenessPeoperty
Organizational Rules
SafetyRules
0..*
NonFuncReq
LivenessRules
SafetyProperty
Provides/
Requests
Communication
contentLanguage
Message
1..*
0..*
Specific NCSs derived from here
[see AdelFe MAS meta-model]
are hidden because of space
concerns
0..*
Cooperation
Rules
NCS
0..*
1
1
0..*
0..*
Characteristics
0..*
0..*
Skill
0..*
Requirement
Aptitude
1..*
1..*
1
1
Role
name : String
1
1
1
1
0..1
Representation
1..*
FIPAPlatform
Agent
+activity
1
comm_Act
acts on/interact with
1
*
1
describes
Environment
1
Predicate
Performative
1..*
FIPAPlatform
Task
1
Action
act
+PermittedAction
1..*
C. Bernon, M. Cossentino, M.P. Gleizes, J. Pavon, P. Turci, F. Zambonelli.
Towards Unification of Multi-Agent Systems Meta-Models.
AIP
name : String
Scenario
Task
1
0..1
Concept
1
1
1..*
Ontology
1..*
1..*
1
ExchangedKnowledge
+Initiator/
Participant
1..*
Agent
1..*
name : String
1..*
0..*
0..*
Resource
name : String
1
Experiments 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 51–54, 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 AAMAS’02.
What 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:


Fragment Repository architecture definition
Methodology Assembying Guidelines
Proposals 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?
Budapest Meeting Agenda

Discussion on method fragment definition and
submission to the FIPA board for approval


Discussion on the new work plan
Definition of the new WG proposal document

Other topics?
Supporters of the initial plan
(2003)








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
Members subscribed to the
Mailing List















Babar Zia, San Jose State University, California
Bauer Bernhard, University of Augsburg
Bernon Carole, IRIT / University Paul Sabatier,
Toulouse - France
Beydoun Ghassan, School of Information Systems and
Management, University of New South Wales, Australia
Calisti Monique,Whitestein Technologies
Cossentino Massimo, Italian National Research Council
Cysneiros Gilberto Amado de Azevedo Cysneiros Filho,
City University, London - PhD Student
David Nuno, ADETTI/ISCTE
Eggenberger Martin, Personal Research & ACM
Member
Garro Alfred, D.E.I.S. - University of Calabria
Gleizes Marie-Pierre IRIT
Henderson-Sellers Brian, University of Technology,
Sydney
Hopmans Gabriel, Communications Research &
Semiotics, University Maastricht
Huget Marc-Philippe, Agent ART Group, University of
Liverpool
Ingram Maciej, the Cracow University of Technology
(Poland)




















Jouvin Denis, LIRIS (CNRS FRE 2672), université
Lyon 1
Leversee Kevin, Zed Tycho Pty. Ltd
Levy Renato, IAI Inc.
Massonet Philippe, CETIC
Mattocks Charles, CHECKMi
Mellouli Sehl, Laval University
Morreale Vito, Engineering Ingegneria Informatica
Odell James,James Odell Associates
Pavon Juan, Universidad Complutense Madrid
Pinto Rosa Candida, Nilson Borba Bezerra
Cavalcanti and Maria Luiza de Souza Leão
Cavalcanti
Pirker Michael, PROFACTOR GmbH
Postnikov Alexey, Russia, Taganrog State University
Of Radioengineering
Reitbauer Alois, Profactor GmbH
Sabatucci Luca, Univ. of Palermo
Silva Ismênia, MSc student on CIN, Federal
University of Pernambuco -UFPE, Brazil
Turci Paola, University of Parma
Unland Rainer, University of Duisburg-Essen
Ye Shiren, National Univ of Singapore
Yusko Jay, Illinois Institute of Technology
Zambonelli Franco, University of Bologna