Method Engineering : Towards Methods as Services - Semantic Scholar

1 downloads 0 Views 672KB Size Report
ICSP 2008, Leipzig. 2. Evolution in Information System. Development Methods (ISD). Universal Method. Engineered Situated. Method. 1. 2. Method Engineering ...
Method Engineering : Towards Methods as Services Outline ™ Backdrop ™ MaaS

Prof. Colette Rolland CRI Université Panthéon Université Paris1 Panth éon Sorbonne ICSP 2008, Leipzig

Evolution in Information System Development Methods (ISD) Engineered Situated Method 2

Method Engineering

1

Universal Method

ICSP 2008, Leipzig

2

Method Engineering Method Methodengineering engineeringisisthe the discipline disciplineof ofdeveloping, developing, customizing, customizing,and/or and/orconfiguring configuringaa situation-specific situation-specificmethod methodfrom from parts partsof ofexisting existingmethods methods. . [Brinkkemper [Brinkkemper96, 96,Leppanen Leppanen2006 2006]]

ICSP 2008, Leipzig

Method Engineering

Motivations

Adaptability (to specific projects, companies, needs & new development settings

ICSP 2008, Leipzig

Reuse (of best practices, theories & tools)

Method Engineering ♣ ME process & research questions

Initial Method Description

Reverse engineering step

Method reengineering guidelines

C1 C3 C4

C4.1 C6.2

C5

Modular Method Description : Modular Method model

C2.5

C1.2

C2

CN.3 Method Base

Situational Method

Construction of Several strategies a new method for SME reusing method method parts

C1.1 C1.3

C6.3

Storage of method parts in a method base

C4.3

C4.3 CN.5

ICSP 2008, Leipzig

5

Method Engineering ♣Software engineering vs Method Engineering * Software engineering

Method engineering

Modelling (specification)

Meta- Modelling

CASE

CAME

(Computer Aided S/W Engineering)

(Computer Aided Method Engineering)

Software Base

Method Base

Software metrics

Method metrics

*Motoshi Saeki talk (EMISE) ICSP 2008, Leipzig

6

Method Engineering ♣Key Method Engineering Artefacts*

ME products

ME processes

ME meta models & meta-modelling languages to represent method parts Harmsen97, Heym& Osterle,92, venable93, Kelly et al 96, Graham et al 97, OMG 05, Prakash 99, Ralyte 01, * Leppanen06

ME strategies, approaches, workflows to combine, integrate, assemble method parts & to guide the ME process Kumar & Welke, 1992, Oei, 95, Phlihon et al 97, Heym&Osterle 97, Rolland & Prakash 96, Saeki, 98, Leppanen 00 Saeki 03, Karlsson & Agerfalk 04,

ICSP 2008, Leipzig

7

Method Engineering Products A modularization issue based on two assumptions ™ (1) A method is composed of a product model and a process model Method 1

1

1..*

Product Model

1..*

1..*

Process Model < utilises

ICSP 2008, Leipzig

1

8

Method Engineering Products ♣ (2) Meta-Modelling is an appropriate means to describe * methods (Yourdon & Coad) Concept = { Class, Attribute, Service} Relationship = {has(CS), has(CA)}

Class has

Service

has

Attribute

Identify classes & objects next produces

(a) Meta model of product part Identify attributes

consumes

Class

produces

procedure= { identify classes & objects, identify attributes}

Attribute has

*Motoshi Saeki talk (EMISE)

(b) Meta model of process part ICSP 2008, Leipzig

9

The Method Fragment Perspective [Harmsen 94, Harmsen 97, Brinkkemper 99]

Product Fragment

Process Fragment

is involved in involves

Assess Documentation

Entity

Relationship no

n

has

m

belongs

data model available? yes

Inspect data model

Construct data model

data model adequate? yes no

Attribute

Deliver data model ICSP 2008, Leipzig

Modify data model

The Method Chunk Perspective [Rolland & Prakash 1996, Rolland 1994, Ralyte & Rolland 2001]

♣ tight coupling in a chunk of the process and related product parts Start goal template strategy free prose strategy

refined by *

alternative discovery manual strategy strategy

*

AND 1..*

1

initial 1..*

Scenario

State final 1..*

1..*

*

OR refinement discovery strategy

Conceptualise a scenario

tool supported strategy completeness strategy

*

*

Requirements Chunk *

composition discovery strategy

Exceptional Scenario

Normal Scenario

Elicita Elicit a goal Use Case

template strategy

Write a scenario

case based strategy

1

*

Goal Verb Target …

2..*

Resource

1..* from 1

Agent

Action 1..*

to

1

*

Flow of actions

Stop

Process Part

Atomic action

1..*

1..*

Object

parameter

Product part ICSP 2008, Leipzig

11

Method Engineering Products ♣ Towards a consensual view (Cossentino et al , 2006) Method fragments (Brinkkemper et al) Method chunks (Ralyté et al) OFP (Henderson Sellers et al) FIPA fragments (Cossentino et al)

Actor (Who does it) Is responsible for

Activity (What to do) produces

Guides in

Guidance (How to do)

Is input of

Artifact (What is the result)

ICSP 2008, Leipzig

12

Method Engineering Products ♣ Using philosophical foundations ¾ Intentionality is at the core of cognition (all

modern philosophers : Brentano, Twarsdwowski, Hurssel, Sartre,Merleau Ponty, Berner….

¾ Intention is a mental state that integrates desires and beliefs and determines actions Intentional action attributes

Awareness Skill Intention Belief Desire

Intention baseline

Intentionality Model to Support Process Guidance ICSP 2008, Leipzig

13

Method Engineering Products ♣ Guiding the achievement of intentions from from intention intention Intention refinement

Nature meta-model

Context Context

Intention implies

motivates

Explore alternative Explore alternativeways waysto toachieve achievethe theintention intention Situation Action Determine Determinethe theappropriate appropriateactions actionsto to materialize materializethe thedesired desiredoutcome outcome raises

modifies

Product

to to action action

Space for rich guidance ICSP 2008, Leipzig

14

Method Engineering Products ♣ Choice Guideline in NATURE CC11

CC5

CC1

CC2

CC4 CC3

possible choices CC1: a2 CC1: a3 CC2: a4 or a9 or a10 or a11 CC3: a1 or a7 or a8 CC4: a6 CC5: a5 CC6: a1 or a7 CC7: a8

a1: cardinalities are: a2: cardinalities are: a3: cardinalities are: