tc methodology massimo cossentino (italian national research council) radovan cervenka (whitestein...

14
TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

Upload: stanley-leonard

Post on 28-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

TC Methodology

Massimo Cossentino (Italian National Research Council)

Radovan Cervenka (Whitestein Technologies)

Page 2: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

Outline

AOSE (Agent Oriented Software Engineering) today

Our goals The proposed approach What is Method Engineering The TC Modeling work plan

Page 3: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

AOSE Today Several methodologies with different advantages:

Gaia Mase Message PASSI Prometheus Tropos …

No standard modeling language Modeling TC activity

Different tools How to make them interact?

Page 4: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

Our GoalsLet 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

In this work we are also contributing to a standardization action within the FIPA Methodology Technical Committee1

1 http://www.fipa.org/activities/methodology.html

Page 5: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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 TC activity

Page 6: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

What is method engineering

Page 7: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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 assemblying

Page 12: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

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: TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)

Scheduling

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