+ All Categories
Home > Documents > ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent...

ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent...

Date post: 04-Jan-2016
Category:
Upload: camron-perry
View: 216 times
Download: 0 times
Share this document with a friend
66
ATAL - Seattle, August 1 st , 2001 1 A Knowledge Level Software A Knowledge Level Software Engineering Methodology for Agent Engineering Methodology for Agent Oriented Programming Oriented Programming The Tropos framework Fausto Giunchiglia Dept. of Information and Communication Technology University of Trento SRA Division - ITC-irst Trento [email protected] - http://sra.itc.it
Transcript
Page 1: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 1

A Knowledge Level Software Engineering A Knowledge Level Software Engineering Methodology for Agent Oriented Methodology for Agent Oriented

ProgrammingProgramming

The Tropos framework

Fausto GiunchigliaDept. of Information and Communication TechnologyUniversity of Trento

SRA Division - ITC-irstTrento

[email protected] - http://sra.itc.it

Page 2: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 2

Outline Outline

• Key ideas• Modeling language

– case study – metamodel

• Transformational approach– case study revisited– transformation operators– composition of transformations: intuitions

• Conclusion• Future work• Related work

Page 3: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 3

Key ideas

Page 4: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 4

The Tropos framework rests on three key ideas:

1. Consider the overall software development process, from early requirements down to implementation

2. Use the notion of agent and all the related mentalistic notions in all phases of software development

3. Adopt a transformational approach, namely perform refinement steps, inside one phase or between phases, using a set of transformation operators

Key ideasKey ideas

Page 5: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 5

Key ideas (1.1)Key ideas (1.1)

5 phases:

• Early requirements• Late requirements• Architectural design• Detailed design

• Implementation

Page 6: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 6

Key Ideas (1.2): AOSE approachesKey Ideas (1.2): AOSE approaches

Early

require

ments

Late

require

ments

Archite

ctura

l

design Detaile

d

design

Implementatio

n

Tropos

Gaia, Wooldridge, et al.

AUML, Odell et al.

AAII, Kinny et al.

Development process methodologies, organizational analysis ontology

Extension of OO specification languages - methodologies

MSEM, Wood et al.

Page 7: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 7

– we adopt a requirements driven software development approach, exploiting goal analysis and actor dependencies analysis techniques

(i* by E. Yu, NFR by Chung et al., Kaos by Dardenne et al.)

Model the what, how and the whywhy

Key ideas (2.1)Key ideas (2.1)

Page 8: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 8

Filling the gap

Early

require

ments

Late

require

ments

Archite

ctura

l

design Deta

iled

design

Implem

entatio

n

i *Agent-orientedprogramming

Key ideas (2.2)Key ideas (2.2)

Page 9: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 9

• Notions of agent and goal are used along all the development phases.

• The key elements and dependencies describing the organizational setting can be used to and motivate design and implementation choices. Each artifact (including code) can be retraced back to the analysis performed during requirement phases.

• There is a direct and natural correspondence between requirement analysis (social actors) and implemented code (software agents).

Key ideas (2.3)Key ideas (2.3)

Page 10: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 10

We adopt a transformational approach:

• start with a limited list of Tropos conceptual elements (actors, goals, softgoals,...)

• iteratively and incrementally:

– add details

– revise dependency relationships

Each step corresponds to the introduction/deletion of relationships/elements in the model.

Key ideas (3.1)Key ideas (3.1)

Page 11: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 11

Advantages of the approach :

• provides systematic description of the process• allows for process analysis• provides guidelines to the engineer• provides a sound basis for describing and evaluating requirement acquisition and design strategies

Key ideas (3.2)Key ideas (3.2)

Page 12: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 12

Modeling languageModeling language

Page 13: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 13

Modeling languageModeling languagecase studycase study

Page 14: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 14

• a web-based broker of cultural information and services for the province of Trentino

• usable by a variety of users (e.g.Trentinos, tourists, scholars and students).

The eCulture system case studyThe eCulture system case study

Page 15: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 15

The eCulture system case studyThe eCulture system case study … following the 5 phases of the Tropos framework

•Early requirements•Late requirements•Architectural design•Detailed design

•Implementation

Tropos social actors

Agents

Page 16: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 16

We analyze the environmentenvironment (i.e. existing organizational setting) and model it in terms of relevant actorsrelevant actors and their respective dependenciesdependencies

Early requirementsEarly requirementsMain activities

Page 17: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 17

Early requirementsEarly requirementsThe stakeholders of the eCulture domain

PAT

Museum

Citizen

Visitor

Page 18: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 18

Early requirementsEarly requirementsThe stakeholders of the eCulture domain

PAT

Museum

Citizen

Visitor

get cultural information

increase internet

use

enjoy visit

Page 19: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 19

Early requirementsEarly requirementsThe stakeholders of the eCulture domain

PAT

Museum

Citizen

Visitor

get cultural information

increase internet

use

taxes well spent

enjoy visit

Page 20: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 20

Early requirementsEarly requirementsThe stakeholders of the eCulture domain

Page 21: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 21

Early requirementsEarly requirementsBalloon: goal-decomposition and Means-ends analysis for PAT

Page 22: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 22

We introduce the systemsystem actor and analize its dependencies dependencies with actors in its environment identifying system’s functional and non-functional requirements

Late requirementsLate requirementsMain activities

Page 23: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 23

Late requirementsRationale diagram for eCulture System

Page 24: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 24

Revision of dependencies Revision of dependencies Early Requirements revised

PAT

Citizen eCulture sys. available

get cultural information

eCulture sys. available

get cultural information

eCultureSystem

Page 25: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 25

Late requirementsLate requirementsdependencies with environmental actors

Page 26: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 26

Architectural designArchitectural design Main activities

3 steps:

1. decomposing and refining the system actor diagram

… at three different levels of abstraction

2. identifying capabilities

3. from actors to agents

Page 27: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 27

Architectural design: Architectural design: step 1step 1

a: inclusion of new actors due to delegation of subgoals upon goal analysis of system's goals

b: inclusion of new actors according to the choice of a specific architectural style (design patterns)

c: inclusion of new actors contributing positively to the fulfillment of someNon Functional Requirements

a:a: inclusion of new actors due to inclusion of new actors due to delegationdelegation of subgoals upon goal of subgoals upon goal analysis of system's goalsanalysis of system's goals

Page 28: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 28

Architectural designArchitectural design (step 1) taking into account functional requirements : decomposition into sub-actors

Page 29: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 29

Architectural design: Architectural design: step 1step 1

a: inclusion of new actors due to delegation of subgoals upon goal analysis of system's goals

b: inclusion of new actors according to the choice of a specific architectural style (design patterns)

c: inclusion of new actors contributing positively to the fulfillment of someNon Functional Requirements

Page 30: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 30

Architectural designArchitectural design (step 1) extending actor diagram taking into account architectural styles - the Info BrokerInfo Broker

Page 31: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 31

Architectural designArchitectural design Step 2

identifying actor capabilities from the analysis of dependencies in the actor diagram

…an intuitive idea of the process

Page 32: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 32

Architectural designArchitectural design (step 2) Actor capabilities

Page 33: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 33

Actor Name

Capability #

Area Classifier

1) Get area specification form

2) Classify area3) Provide area

information4) Provide service

description

Architectural designArchitectural design (step 2) Actor capabilities

Page 34: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 34

Architectural designArchitectural design (step 2) Actor capabilities

Actor Name Capability #

Area Classifier 1) Get area specification form2) Classify area3) Provide area information4) Provide service description

Info Searcher 5) Get area information6) Find information source7) Compose query8) Query source9) Provide query information Provide service description

Results Synthesizer 10) Get query information11) Get query results12) Provide query results13) Synthesize area query results Provide service description

Sources Interface Manager 14) Wrap information source

User Interface Manager 15) Get user specification

16) Provide user specification

17) Get query results

18) Present query results to the user

Provide service description

Page 35: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 35

Architectural designArchitectural design Step 3

from actors to agents ….

Page 36: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 36

Actor Name Capability #

Area Classifier 1) Get area specification form2) Classify area3) Provide area information4) Provide service description

Info Searcher 5) Get area information6) Find information source7) Compose query8) Query source9) Provide query information Provide service description

Results Synthesizer 10) Get query information11) Get query results12) Provide query results13) Synthesize area query results Provide service description

Sources Interface Manager 14) Wrap information source

User Interface Manager 15) Get user specification

16) Provide user specification

17) Get query results

18) Present query results to the user

Provide service description

Architectural designArchitectural design (step 3) from actors to agents

Page 37: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 37

Architectural designArchitectural design (step 3) from actors to agents

Agent Name Capability #

Query Handler 1) Get area specification form3) Provide area information4) Provide service description 5) Get area information7) Compose query8) Query source9) Provide query information 10) Get query information11) Get query results12) Provide query results

Classifier 2) Classify area4) Provide service description

Searcher 4) Provide service description 6) Find information source

Synthesizer 13)Synthesize area query results14)Provide service description

User Interface Agent 15, 16, 17, 18, 4

Wrapper 14, 4

Page 38: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 38

Detailed designDetailed design Main activities

Specification of the agents’ micro leveltaking into account the implementation platform.

Objective: to perform a design that will map directly to the code.

We consider a BDI multiagent platform, so …

Page 39: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 39

Detailed designDetailed design BDI platform caseBDI platform case

We model:

• capabilities– capability diagrams (currently AUML

activity diagrams)

Page 40: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 40

Detailed designDetailed design Capability diagram

Page 41: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 41

Detailed designDetailed design BDI platform caseBDI platform case

We model:

• capabilities– capability diagrams (currently AUML

activity diagrams)

• plans– plan diagrams (currently AUML activity

diagrams

Page 42: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 42

Detailed designDetailed design Plan diagram - plan evaluate query

Page 43: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 43

Detailed designDetailed design BDI platform caseBDI platform case

We model:

• capabilities– capability diagrams (currently AUML

activity diagrams)

• plans– plan diagrams (currently AUML activity

diagrams

• agents interaction– agent interactions diagrams (currently

AUML sequence diagrams

Page 44: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 44

Detailed designDetailed designAgent interaction diagram

Page 45: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 45

Implementation Implementation Main activities

… follow step by step the detailed design specification …

In JACK (BDI multiagent platform) agents are autonomous software components that have explicit goals (desires), events to handle, beliefs and capabilities. Agents are programmed with a set of plans that make them capable of achieving goals.

Page 46: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 46

ImplementationImplementationJack Intelligent system, AOS

Page 47: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 47

Modeling LanguageMetamodel

Page 48: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 48

So far only for early and late requirement diagrams

Tropos conceptual entities (actors, goals, …) are instances of classes in a (meta)metamodel described by UML class diagrams.

Modeling languageModeling language

Page 49: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 49

Language Element

Actor

EntitySystem Formula

PlanGoal

Attribute

Basic

ResourceDependency

invariant

creation

fulfillment

0..n

fulfillment

N-ary Relationship

MetametamodelMetametamodel Entity

Page 50: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 50

Metametamodel Metametamodel N-ary Relatioship

N-ary Relationship

ContributionDependency

Language Element

AND-OR decomposition Means-Ends Analysis

Page 51: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 51

Metamodel Metamodel Actor

DependencyActor

dependee

depender

Resource PlanGoal

Belief

has

wantedby

dependum dependumdependum

0..n

1..n

wants0..n

0..narebelieved

{XOR}

Page 52: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 52

Metamodel Metamodel Goal

Means-Ends analysis

Resource

Hardgoal

Goal

Plan

Softgoal

Contribution

0..nend

means0..n

root

pointview

means means

0..n 0..ncontributes to

contributed by

AND-OR decomposition

Actor

OR-decomposition AND-decomposition0..n

0..n

1..n

pointviewpointview

e.g.,++,+,-,--,...

child

child

Page 53: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 53

Metamodel Metamodel Plan

Means-Ends analysis

Resource

Plan0..n end

means0..n

root

pointview

means

0..n

AND-OR decomposition

Actor

1..n

is capable ofpointview

Hardgoal

1..n

fulfills

OR-decomposition AND-decomposition0..n

0..n

child

child

Page 54: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 54

Transformational Transformational approachapproach

Page 55: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 55

Case study revisited: Case study revisited: early requirements early requirements againagain

citizen

taxes wellspent

PAT

visit website

visit culturalinstitution

interenetavailable

buy eCulturesystem

build eCulturesystem

provide eCult.services

good culturalservices

goodservices

get culturalinformation

eCulture sys.available

eCulture sys.available

eCulture sys.available

eCulture sys.available

get culturalinformation

1

2

3

4

5

6

7

8

Page 56: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 56

Transformational operators

Page 57: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 57

Composition of operators: intuitionsComposition of operators: intuitions

citizen PAT

taxes wellspent

visit website

visit culturalinstitution

provide eCult.services

good culturalservices

goodservices

buy eCulturesystem

build eCulturesystem

eCulture sys.available

interenetavailable

eCulture sys.available

eCulture sys.available

get culturalinformation

4

5

6

7

8

3

1

2

taxes wellspent

Page 58: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 58

• Different transformation sequences may have different chances to lead to a satisfactory design;

• even when the same design is obtained, different transformation sequences in the design process may lead at discovering/facing/discarding relevant elements at different times;

• different analyses may have different costs;

• balancing analysis costs and good results is a hard (human) planning task.

Composition of operators: intuitionsComposition of operators: intuitions

Page 59: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 59

ConclusionConclusion

Page 60: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 60

ConclusionConclusion

The Tropos framework is a novel approach in Agent Oriented Software Engineering, resting on the following 3 key ideas:

– the Tropos approach framework spans the overall software development process, from early requirements down to implementation

– we use the notion of agent and all the related mentalistic notions in all phases of software development

– we adopt a transformational approach, i.e., we perform refinement steps, inside one phase or between phases, using a set of transformation operators

Page 61: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 61

Related workRelated work

Page 62: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 62

Related workRelated work

1) AOSE

2) OOP

3) Requirement engineering

Page 63: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 63

Future workFuture work

Page 64: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 64

Future workFuture work

• Formal Tropos

• Architectural patterns

• Formalization of the transformational approach (primitives and strategies)

Page 65: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 65

The The TroposTropos group group

Fausto Giunchiglia, Paolo Giorgini, Fabrizio Sannicoló

University of Trento, Trento

Paolo Bresciani, Anna Perini, Marco Pistore, Paolo Traverso

SRA Division at ITC-IRST, Trento

John Mylopoulos, Eric Yu, Manuel Kolp, Luiz Cysneiros, Ariel D. Fuxman, Daniel Gross, Linda Lin

University of Toronto, Toronto

Yves Lespérance York University, Toronto

Jaelson Castro Universidade Federale de Pernambuco, Recife, Brazil

Page 66: ATAL - Seattle, August 1 st, 2001 1 A Knowledge Level Software Engineering Methodology for Agent Oriented Programming The Tropos framework Fausto Giunchiglia.

ATAL - Seattle, August 1st, 2001 66

The The TroposTropos framework framework where to find what I talked about

[1] A. Perini, P. Bresciani, F. Giunchiglia, P. Giorgini and J. Mylopoulos, A Knowledge Level Software Engineering Methodology for Agent Oriented Programming. Proc. ACM Int. Conf. Agents 2001

[2] P. Bresciani, A. Perini, P. Giorgini, F. Giunchiglia, J. Mylopoulos, Modeling early requirements in Tropos: a transformation based approach. AOSE workshop at Conf. Agents 2001, LNAI Lectures Notes

[3] P. Giorgini, A. Perini, J. Mylopoulos, F. Giunchiglia, P. Bresciani. Agent-Oriented Software Development: A Case Study. Proc. Int. Conf. on Software Engineering & Knowledge Engineering (SEKE01), 2001

[4] A. Fuxman, M. Pistore, J. Mylopoulos, P. Traverso. Model Checking Early Requirements Specifications in Tropos. IEEE Int. Symp. on Requirements Engineering, 2001

[5] M. Kolp, P. Giorgini, J. Mylopoulos. A Goal-Based Organizational Perspective on Multi-Agent Architectures. Int. Workshop ATAL-2001, LNAI Lecture notes


Recommended