+ All Categories
Home > Documents > Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

Date post: 25-Feb-2016
Category:
Upload: nardo
View: 16 times
Download: 0 times
Share this document with a friend
Description:
Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project. 3 rd AgentLink III Technical Forum meeting (AL3-TF3) Budapest, September 15-17, 2005 Brian Henderson-Sellers Director, COTAR University of Technology, Sydney www-staff.it.uts.edu.au/~brian - PowerPoint PPT Presentation
30
. Henderson-Sellers, 2002-2005 1 Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project 3 rd AgentLink III Technical Forum meeting (AL3-TF3) Budapest, September 15- 17, 2005 Brian Henderson-Sellers Director, COTAR University of Technology, Sydney
Transcript
Page 1: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 1

Underpinning a Method Engineering Framework with a

Powertype-based Metamodel – the FAME Project

3rd AgentLink III Technical Forum meeting (AL3-TF3)

Budapest, September 15-17, 2005

Brian Henderson-SellersDirector, COTAR

University of Technology, Sydneywww-staff.it.uts.edu.au/~brian

email: [email protected]

Page 2: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 2

Preview• I. The FAME project• II. Method engineering• III. Metamodelling• IV. Incorporating a standard method metamodel• V. Existing repository• VI. FAML overview• VII. In summary

Page 3: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 3

Project funded by Australian Research Council (2004-6)

I. The FAME Project

(FAME = Framework forAgent-oriented Method Engineering)

Lead researchers: Brian Henderson-Sellers, Graham Low

Postdoc researchers: Cesar Gonzalez-Perez, Ghassan Beydoun

Page 4: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 4

Project to

• create an AO, method engineering (ME)-based approach to software development

• Offer a supportive and integrative framework to consolidate and strengthen existing AO methodologies

• FAME project includes both process and product aspects (based on AS4651 and forthcoming ISO standard) including an AO modelling language (FAML) based on a generic model of agents at both design and run time

Page 5: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 5

We thus seek consensus, whilst ensuring consistency and maximizing coverage

• We seek collaborative incorporation of fragments from all other identified AO methodologies

• We propose continuing to support these various methodologies by providing a set of interfaces (façades) to the repository to maintain consistency for current AO methodology users

Page 6: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 6

Repository

Tropos-style interface

BrandX-styleinterface

Prometheus-style

interface

Page 7: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 7

II. Method EngineeringMethod fragments/chunks/components

Repository

Methodology Instance

Step 2: Project Manager

Construction Guidelines

uses

Metamodel

instance of

instances of

Methodology M (a.k.a. Process Model)

Step 1: Method engineer

(a.k.a. Process)

Page 8: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 8

From the method fragments in the repository can be assembled an individually tailored process

methodfragments

Constructed methodology

Page 9: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 9

III. MetamodellingA metamodel is at a higher level of

abstraction than a conventional model. It is often called “a model of a model“. It provides the rules/grammar for the modelling language (ML) itself. The ML consists of instances of concepts in the metamodel.

Page 10: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 10

Strict MetamodellingMetaM odel

Model

MetaModelElement

Element

«instanceO f» «instanceO f»

con tains1..* 1..*

con tains1..* 1..*

“is-instance-of“ is key relationship i.e.instance -> class is paralleled byelement -> set

BUT “is-instance-of” is not transitive

Page 11: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 11

+name+visibility

Operation

+name

Task

name = ComputeBalancevisibility = public

op1 : Operation

name = DefineOperations

ta1 : Task

«instanceOf» «instanceOf»

do1 : DefineOperations

«instanceOf»

UML OPF

M2

M1

M0

+Product

*

+Originator

*

This is illegal.

This is illegal.

Product

Originator

duration=50

Adding process to product adds problems

Enacted tasks

need to have a duration

Page 12: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 12

An apparent solution using generalization

M2

M1

M2

Activity

durationDiagram

DesignActivity

usePatterns

Brian’sDesigns

duration=50usePatterns=TRUE

Brian’sClassDiagram

classCount=2Brian’sClass

ClassDiagram

classCount

contains

«instanceOf» «instanceOf»

results in1 *

results in1 *

results in

Page 13: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 13

In this “solution” element Activity can now define an attribute duration. Brian’sClassDiagram and Brian’sClass at same level (M1)BUT Have lost processes being enacted at M0 and not M1AND M2 level standardization has to identify all Activities,

all Tasks etc. i.e. all contents of a method fragment repository

FURTHERMORE Semantics of “Activity” have been completely changed. [This

is a commonly occurring error in the metamodelling literature]

Page 14: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 14

xx

xx

xxx

x

xx

x

xx

Test

CodeDesign

Activity class ActivityKind class

xx

x Test

CodeDesign

ActivityKind

DesignDesign Test

Activity

x

So, in “Strictness restored” slide, we have also changed the original“Activity” to “ActivityKind” but forgotten to rename it as such. ActivityKind and Activity are two very different Sets. Here Activity class has 14 elements, ActivityKind class has only 3.

Page 15: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 15

IV. Incorporating a standard method metamodel

Current possibilities include• OMG‘s SPEM• AS4651 (SMSDM)/draft of ISO24744

(SEMDM) – used here

Page 16: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 16

SMSDM/SEMDM

Standard Metamodel for Software Development Methodologies (AS4651-2004 standard)/Software Engineering – Metamodel for Development Methodologies (draft ISO24744)

• Underpinned by powertype patterns• Three layer architecture: metamodel,

method, endeavour

Page 17: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 17

SMSDM/SEMDM architecture

endeavour

method

metamodelActivity

WorkUnit

Task Technique

* *

methodologies assessment quality tools

Page 18: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 18

An Example of a Powertype in Process Modelling

DefineOperation

TaskKindname : String

Task+assignedTeam : String

name=DefineOperation+assignedTeam : String

is classified into

: DefineOperation+assignedTeam=Liz,John

Page 19: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 19

Solves the problem of non-transitivity

endeavour

method

metamodel

“MySystem”RequirementsSpecification

Document

RequirementsSpecificationDocument

DocumentKind

TitleVersion

NameMustBeApproved

TitleVersion

Req. Spec. DocumentMust be approved: yes

“MySystem” Req. Spec.Version 1.5

Page 20: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 20

MethodologyElement

+Purpose+MinCapabilityLevel

WorkUnitKind

+Type

ActionKind

WorkProductKind

ModelUnitKind

+IsSingleInstance

ModelUnitUsageKind

+Name

Template Resource

+Name

Language

+Name

Notation

+Expression

Constraint

+Description+MinCapabilityLevel

Outcome

ProjectElement

WorkUnit

Action

+CreationDate+LastChangeDate+Status

WorkProduct

ModelUnit

ModelUnitUsage

+Description

Guideline

0..*

+DescribedElement

1..* On

ProducerKind

+Name

ProducerStage

StageKind

In summary:the core of the SMSDM/SEMDM

Page 21: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 21

• Precursor to FAME project focussed on the OPF repository

• Fragments consistent with OPF metamodel are currently being (easily) translated to be SEMDM-compatible

• Existing fragments offer wide software development support beyond existing AO methodologies

V. Existing Repository

Page 22: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 22

AOSE fragmentsFrom the literature, we have evaluated Tropos, Prometheus, MaSE, Gaia, Cassiopeia, MAS-CommonKADS, AgentFactory, CAMLE and PASSI for new method

fragments

We have so far identified 1 new Activity, 28 new Tasks, 11 new Subtasks, 23 new Techniques and 28 new Work Products

Page 23: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 23

It is now possible to a) recreate standard AO methods like Gaia,

Prometheusb) create an enhanced or integrated method

e.g. Prometheus enhanced by Tropos

Page 24: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 24

Prometheus enhanced by TroposTasks

Technique 1 2 3 4 5 6Abstract class identification

TasksTechnique 1 2 3 4 5 6Abstract class identificationAgent internal design

Class namingControl architectureContext modellingDelegation analysisEvent modellingIntelligent agent identificationMeans-end analysisRole modellingState modellingTextual analysis3-layer BDI model

.

Key:Key:1. Model dependencies for actors and goals; 2. Construct the agent model;3. Design agent internal structure; 4. Model the agent’s environment;5. Model responsibilities; 6. Model permissions

YY

YY

YY

Y

YY

Y

Y

YYYY

Y

Y

Y

Y

Y Y

TasksTechnique 1 2 3 4 5 6Abstract class identification

TasksTechnique 1 2 3 4 5 6Abstract class identificationAgent internal design AND/OR decompositionClass namingControl architectureContext modellingDelegation analysisEvent modellingIntelligent agent identification

Role modellingState modellingTextual analysis3-layer BDI model

.

Key:Key:1. Model dependencies for actors and goals; 2. Construct the agent model;3. Design agent internal structure; 4. Model the agent’s environment;5. Model responsibilities; 6. Model permissions

Key:Key:1. Model dependencies for actors and goals; 2. Construct the agent model;3. Design agent internal structure; 4. Model the agent’s environment;5. Model responsibilities; 6. Model permissions

YY

YY

YY

Y

YY

Y

Y

YYYY

Y

Y

Y

Y

Y Y

Page 25: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 25

Key:Key:

1. Model dependencies for actors and goals; 2. Construct the agent model;3. Design agent internal structure; 4. Model the agent’s environment;5. Model responsibilities; 6. Model permissions; 7. Code

Tasks

1 2 3 4 5 6 7

TasksWork Product 1 2 3 4 5 6 7

Agent Class DescriptorAgent Acquaintance DiagramAgent Overview DiagramCapability DiagramRole ModelRole Schema(Tropos) Goal Diagram(Tropos) Actor Diagram UML Sequence Diagram

.

YY

Y

Y

Y

Y

Y

YY

YY

YY

Page 26: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 26

VI. FAML OverviewStart with core concepts of agent:

– Autonomy– Situatedness– Interactivity

Two scopesTwo layers

System-level

Agent definition-level

Agent-level

Environment-level

Agent-external

Design time

Run time

Agent-internal

Page 27: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 27

e.g. Agent-related, run time

Agent

+Specification

EnvironmentStatement

Action

Belief

+IsGoal

Desire

1

*

1 *

Intention

1

* *

1

Of

MessageAction

+Parameters

Message

Plan

1

*1

*

*

*

ResultsIn

*

+Sender

1From

*

+Recipient *

To

+Name+ParameterSpecs

MessageSchema

*

+Template

1

IsAnInstanceOf

FacetAction

+Value

Facet

*

+Target

1

Changes

Agent+Name

Role

* *

Plays4

+Specification

Obligation

1

*

PlanSpecification

1

*

3 GeneratedFrom

+NewValue

FacetActionSpecification

*

1

GeneratedFrom4 +Parameters

MessageActionSpecification

*

1

GeneratedFrom4

Page 28: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 28

VII. In Summary• No one methodology can fit all situations; hence

need to create flexibility such that the process remains “standard” yet can somehow be moulded to various circumstances

• Method engineering a solid basis for both standardization and flexibility

• Comprehensive metamodel needed to support process+product aspects of an AO methodology. Simple combination of method metamodels dangerous because of implicit assumptions (e.g. agents collaborate vs. agents compete) and use of same term but with different semantics

Page 29: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 29

In Summary – cont.

• Start with existing repository of method fragments and consolidate

• Implement the new standard metamodel• Create exemplar methodologies for industry

testing• Encourage community effort to intercompare

approaches and make recommendations (1, 2 or more?)

• Identification of weak points for further research endeavours?

Page 30: Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

©B. Henderson-Sellers, 2002-2005 30

THE END


Recommended