a polymorphic context frame to support scalability and evolvability

23
A Polymorphic Context Frame to Support Scalability and Evolvability of Information System Development Processes Isabelle MIRBEL I3S Laboratory Les Algorithmes Route des Lucioles BP 121 06903 Sophia Antipolis Cedex FRANCE

Upload: jewell

Post on 28-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

A Polymorphic Context Frame to Support Scalability and Evolvability of Information System Development Processes. Isabelle MIRBEL. I3S Laboratory Les Algorithmes Route des Lucioles BP 121 06903 Sophia Antipolis Cedex FRANCE. Introduction - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A Polymorphic Context Frame  to Support Scalability and Evolvability

A Polymorphic Context Frame

to Support Scalability and Evolvability

of Information System Development Processes

Isabelle MIRBEL

I3S Laboratory Les Algorithmes

Route des LuciolesBP 121

06903 Sophia Antipolis CedexFRANCE

Page 2: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 3: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

No universal method / Situation-specific methods required

Isabelle Mirbel – April 2004

Knowledge capitalization framework

Reuse

Fragmentation

Process perspective

Evolvability

Method engineers & Project team members

Lightweight / heavyweight processes

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 4: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 5: A Polymorphic Context Frame  to Support Scalability and Evolvability

To help project team members in their daily activities Easily usable Quickly usable

Focus on critical aspects of ISD Problem-driven instead of result-driven Task-centered instead of notation-centered

Framework Presentation

Isabelle Mirbel – April 2004

An environment for knowledge capitalization

Reuse independently of functional & technical domains

To involve project team members by providing means to accumulate knowledge about their own experiences

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 6: A Polymorphic Context Frame  to Support Scalability and Evolvability

Basic elements of the environment

Context frame To support adequation problem/solution and project/process To be scalable enough

to allow customisation of the environment to handle evolvability

To allow method engineers to broadcast their way of thinking through another means than deliverables To give a universal/ontological frame for meaningful criterias to guide ISD processes

Repository of reusable process fragment To allow capitalization of knowledge about ISD problem solving To adapt processes to project requirement features

Isabelle Mirbel sept. 2003

Framework Presentation

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 7: A Polymorphic Context Frame  to Support Scalability and Evolvability

Reusable process fragment Example

Name

Fragment Context

Related Fragments

Non-compatible Fragments

Intention

Guidelines Notation

Description

Requirement-Out-of-Scope

{[base-software-running software]}

-

To document existing parts of the running software useful

UML use-case diagrams

* Add use-cases dedicated to running functionalities increasing the understanding of the software. Stereotype them with <<out-of-scope>>.* Group all use-cases stereotyped <<out-of-scope>> in a package (or set of packages) also stereotyped <<out-of-scope>>

BusinessDomain-Out-of-Scope – Complementarity – 0.75

to understand the purpose of the new software but not directly related to the new development.

Isabelle Mirbel – April 2004

Up to 75 fragments currently covering analysis and design activities with regards to software-related criteria

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 8: A Polymorphic Context Frame  to Support Scalability and Evolvability

Method Engineer

Project Team Member

ProcessFragmentRepository

ContextFrame

FragmentManagement

Fragment Selection

Crite

riaM

anagem

en

t

Help in solving problem

Sharing solution

Criteria Use

ISDby reuse

ISDfor reuse

Controling working

frame

Framework Overview

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 9: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 10: A Polymorphic Context Frame  to Support Scalability and Evolvability

Isabelle Mirbel sept. 2003

A Scalable & Polymorphic Context Frame

Common working frame

Ontological vs structural organization of process fragments

Focus on critical aspects of ISD

Isabelle Mirbel – April 2004

key elements Context Criterion

to help in qualifying fragments & anticipating their reuse specifying problems to retrieve adequate fragments

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 11: A Polymorphic Context Frame  to Support Scalability and Evolvability

{ [base-software-running software-code-weak], [base-software-DB], [base-Human-Medium] }

Baseno/ne

Humano/ne

Expert Beginner

Medium

Softwareno/ne

Running Software

no/neUI

DB

Distributed

Codeno/ne

FunctionalDomain

no/ne

Interfaceno/ne

Weak

Medium

Strong

Timepressure

no/e

Low

High

Weak

Medium

Strong

Weak

Medium

Strong

Projectno/ne

DeliveryStrategy

no/e RealizationStrategy

no/e

At onceEvolutionary

IncrementalAt once

Incremental

Concurrent

Overlapping

Isabelle Mirbel sept. 2003

Context Frame

Example of context frame

[base - software - running software - code - weak]

Example of criterion

Example of context

Examples

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 12: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 13: A Polymorphic Context Frame  to Support Scalability and Evolvability

NameTo indicate if sub-nodes are ordered or not: o, no

To indicate if sub-nodes are exclusive or not: e, ne

Root

Family

Criteria

Baseno/ne

C1

ordl/exc

l

Cn

ordn/exc

n...

Ck

ordk/exc

k

Cm

ordm/exc

m

...

...

...C

iC

j

Context Frame Definitions Context Frame

Node

<name, exc, ord, type>

Types of Node

<name=base, exc=ne, ord=no, type=root>

<name, type=criteria>

<name, exc, ord, type=family>

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 14: A Polymorphic Context Frame  to Support Scalability and Evolvability

Path between the base node and another node nn

of the context tree, where nn can't be a non-ending node (family node) with exc = e

Baseno/ne

C1

ordl/exc

l

Cn

ordn/exc

n...

Ck

ordk/exc

k

Cm

ordm/exc

m

...

...

...C

iC

j

Compatible criterias do not share a common family node with an exclusion field equal to e or are included one in the other

ni Cr

1 and n

j Cr

if ni=n

j then exc

ni e

Context Frame Definitions Criterion

Compatibility between criteria

ContextSet of criteria

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 15: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 16: A Polymorphic Context Frame  to Support Scalability and Evolvability

Context Frame Context Frame in Use

Global Context Maintained by method engineers Shared by project team members Ontological view of ISD

Isabelle Mirbel – April 2004

Fragment Context Taken from the Global Context Given by project team members To provide richer means to organize reusable process

fragments

Problem Context Taken from the Global Context Given by project team members To find a tailored solution to an ISD problem To improve matching techniques between problem &

reusable process fragments

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 17: A Polymorphic Context Frame  to Support Scalability and Evolvability

GC={C1,..,C

n}

Ci=[base,..,n

j] where n

j is a criterion node

Context Frame Context & criteria management

One Global Context to define the working frame

Defined & maintained by methodologists

Shared by all projects in the organization

Context & criteria management

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 18: A Polymorphic Context Frame  to Support Scalability and Evolvability

by refining existing ending node (after specifying their ordering and exclusion fields)

by adding intermediary nodes between the root node and criterion nodes

by adding new sub-node(s) to the root node

Context Frame Context & Criteria management

Methodologists manage criteria through the addition of new nodes

Baseno/ne

C1

ordl/exc

l

Cn

ordn/exc

n...C

k

ordk/exc

k

Cm

ordm/exc

m

...

...

...C

i Cj

Cl

ordl/exc

l

Cq

Cp

ordp/exc

p

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 19: A Polymorphic Context Frame  to Support Scalability and Evolvability

FC={C1,..,C

n}

Ci=[base,..,n

j] where nj is a criterion node

Ci GC

Context Frame Context & ISD for reuse

Context & fragment management

Fragment contexts help in organizing process fragments

A Fragment Context is associated to each process fragment

A Fragment Context is defined as a set of at least 1 compatible criterion taken form the Global Context

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 20: A Polymorphic Context Frame  to Support Scalability and Evolvability

CN CF = Ci GC

Ci=[base,..,n

j]

where excnj

e, excnjne is equivalent to a problem context

including all the sub-nodes of nj, C

i CN , C

j CF, comp(C

i, C

i)

PC=<CN,CF>

CN={C1,..,C

n

}CF={C

1,..,C

m

}

Context Frame Context & ISD by reuse

Context & fragment selection

Problem contexts help in finding appropriate process fragments

A Problem Context is associated to a problem and its solution (given in terms of route maps)

A Problem Context is defined as a set of at least 1 necessary criterion (CN) and a set of forbidden criteria (CF). CN and CF do not share common or compatible criteria

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 21: A Polymorphic Context Frame  to Support Scalability and Evolvability

Introduction

A framework to capitalize knowledge about ISD problem solving

A scalable & polymorphic context frame

Context frame definitions

Context frame in use Context & criteria management Context & ISD for reuse Context & ISD by reuse

Conclusion

Page 22: A Polymorphic Context Frame  to Support Scalability and Evolvability

Fragment Context

Context Frame Polymorphic structure To support evolvability & scalability Dedicated to ISD knowledge

capitalization & sharing

Framework Global Context Frame Reusable process fragment repository To support

ISD for reuse ISD by reuse Problem Context

Conclusion

Isabelle Mirbel – April 2004

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion

Page 23: A Polymorphic Context Frame  to Support Scalability and Evolvability

Associate expert weights to fragments Support fragment comparison when building new fragments

Information about fragment (frequency of use) Information about route-maps (frequency of use, discovery of route-map families, ...) Information about fragments inside route-maps (frequency of keeping/deleting a fragment, ...) Discovery of close contexts

Keep tracking information

CF

PFR

Isabelle Mirbel – April 2004

Future work

Introduction

The framework

The context frame

Definitions

Context frame in use

Criteria

management

ISD for reuse

ISD by reuse

Conclusion