WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

25
WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

Transcript of WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

Page 1: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

WG Methodology

Chair:Massimo Cossentino (Italian National Research Council)

Page 2: 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

Page 3: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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?

Page 4: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 5: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 6: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

What is method engineering

Page 7: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

The Method Engineer analyzes the problem and the development context/people to

deduce new methodology

features

Method Engineering:people, artifacts and tools

Method Engineer

Uses

Design Methodology

Defines Is adopted by

SystemDesigner

CAMEToolsFragments

Repository

Uses

CASETools

Perceives

Problem

Designs Solve

Agents

Instantiate

System Specifications

Produce

SpecifyThe Method

Engineer uses a CAME tool to

compose the new methodology by

reusing fragments from the repository

The CAME tool is used to instantiate

a methodology specific tool

The System Designer using the

CASE tool specifies and

develops the agent solution

Page 8: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

What is a (method) fragment A fragment1 is a portion of the development process, composed as follows:

1. A portion of process (what is to be done, in what order), defined with a SPEM diagram

2. One or more deliverables (artifacts like (A)UML/UML diagrams, text documents and so on).

3. 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)

4. A list of concepts (related to the MAS meta-model) to be defined (designed) or refined during the specified process fragment.

5. Guideline(s) that illustrates how to apply the fragment and best practices related to that

6. 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)

7. 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)

Page 9: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

The new methodology production process

ExistingMethodo-

logies

MethodBase

MethodFragmentsExtraction

NewMethod

Fragments

CAME tool SpecificMethodo-

logy

MASMeta-Model

CASE tool Specificproblem

MAS runningon agent platforms

MASModelDeployment

All methodologies are expressed in a

standard notation (we adopt SPEM - Software Process Engineering

Metamodel – by OMG)

Fragments are identified and described

according to the previous discussed

definition

New fragments are defined if necessaryA method fragments

repository is composed with all existing

fragments

The desired MAS-Meta-Model is

composed according to problem specific needs (for instance including or not self-organizing

agents)

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

A CASE (Computer Aided Software

Engineering) tool is used to effectively

design the multi-agent system

The multi-agent system has been coded, tested

and is ready to be deployed

Page 10: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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.

Page 11: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 12: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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. 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.

Page 13: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 14: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 15: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

Method Fragment structure

Text Documenttemplate : URL

UML Diagramnotation = UMLxmi_content : String

Diagramnotation : String

Guard Condition

condition : String

Fragments dependencydescription : text

<<Guideline>>

GlossaryComposition

GuidelineGuidelineAspect

MASModel Relationship

MASModel Entity

Role Actorrole_name : String

Activity Dataref : MasModelElementType

Process Description

1..*involved roles 1..*

MasModelElementType

Constraint

Fragment

fragment_name : String

11

1..n

1

dependee1..n

1

1..n

dependant1..n

defines/refines

precondition

Work Product

title : Stringfile : URL

artifact_element

deliverable

Activityactivity_name : Stringdescription : Stringactivity_role : Role Actorguideline : String1..*1..*

performs

0..*0..*activity_input 0..*0..* activity_output

1..* activities1..*1..*

activity_product

1..*

Page 16: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

System Requirements

Agent Society Agent Implementation Code

Deployment

Syst.Req.

Model

AgentImpl.

Model

CodeModel

AgentSocietyModel

DeploymentModel

[New Iteration]

Description of a methodology in SPEM

(From the PASSI process)

KEYS

Phase WorkProduct

Page 17: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

Description of a methodology in SPEM

(From PASSI process: the Agent Society Phase)

KEYS

UML Diagram Control Flow

Data Flow

Text Document

Activity

Fragment

Fragment

Fragment

Fragment

Page 18: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

DomainOntology

Description

1 *

1

*

1 *

1

*

AgentSocietyModel

Communication Ontology Description

ProtocolDescription

Roles Description Diagram

Ontology

Concept

Predicate

Action

AIP Performative1 *1 *

Tasks

D

D

D

D

OntologyElement

Q

AIP

Q

1

1

1

0..*

Agent

R

ContentLanguage

Q

1..*

1..*

0..*

1..*

1..*

1..*

1-Knowledge0..*

1

-Exch. Knowledge

1..*

D

Communication

DD

Role

Q

1

1..*

Q

D

Communication

QResource

DService

QRole

R

Agent

Q

10..*D

1

0..*

D

Service

D

Services

D D

1

Relationship with the MAS meta-model

MAS meta-model elements and work products are directly related

Kinds of relationships:

Define Refine Quote Relate …

Page 19: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

A unifying MAS meta-model (from Adelfe, Gaia, Ingenias, PASSI)

SafetyRules LivenessRules

SafetyPropertyLivenessPeoperty

Specific NCSs derived from here [see AdelFe MAS meta-model] are hidden because of space concerns

NCS

FIPAPlatformTask

NonFuncReq

Requirement

FIPAPlatformAgent

*

1

*

1

Cooperation Rules

SkillCharacteristics Aptitude

Organization

controlEnginetopology

Organizational Rules

Task

1

1

1

1

Responsibility

Organizational Structure

0..1

1

0..1

1observes

Service

inputoutputpre-conditionpost-condition

Resource

name : String

Agent

name : String

0..*

1..*

0..*

1..*1..*

1..*

1..*

1..*

1

1

1

10..* 0..*0..* 0..*

0..*

1

0..*

1

0..*

1

0..*

1

0..*

1

0..*

1

0..*

0..*

0..*

0..*

belongs

Concept Predicate

Environment

Action

act1..*

1+PermittedAction

1..*

1

Representation

1

1..*

1

1..*

0..1

1

0..1

1

ScenarioRole

name : String

1..*

1

+activity1..*

1

0..*

1..*

0..*

1..*

acts on/interact with

1..*

1

1..*

1

has

1..*

1

1..*

1

0..*

0..*

0..*

0..*

0..*

1..*

0..*

1..*

Provides/ Requests

Ontology

1

1

1

1 describes

0..1

1

0..1

1

Communication

contentLanguage

1..*

0..*

1..*

0..*

+Initiator/ Participant

ExchangedKnowledge

AIP

name : String

1

1..*

1

1..*

Performative

Message

1..*1..*

comm_Act

C. Bernon, M. Cossentino, M.P. Gleizes, J. Pavon, P. Turci, F. Zambonelli.Towards Unification of Multi-Agent Systems Meta-Models.

Page 20: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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.

Page 21: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 22: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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?

Page 23: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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?

Page 24: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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

Page 25: WG Methodology Chair: Massimo Cossentino (Italian National Research Council)

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