A Deviation Management System For Handling ...

67 downloads 0 Views 539KB Size Report
Assumptions. • Absence of deviation is the exception, not the rule. • Process models are needed to guide humans, not to be enforced prescriptively. • Process ...
A Deviation Management System For Handling Software Process Enactment Evolution Ph.D. Thesis Mohammed Issam KABBAJ

Supervised by Dr. Redouane LBATH, Pr. Bernard COULETTE IRIT UNIVERSITY OF TOULOUSE - FRANCE

Introduction - Problem Description - Proposed Approach – Detecting Deviation System - Deviation Management System - Conclusion

Introduction • Context : • Enactment of software process models in Processcentered Software Engineering Environments (PSEE). • Problem : permanent evolution of software processes • material failure, • technological change, • No respect of deadlines, ….

• Difficulty : Incapacity to be completely defined in advance and to follow a model. => Deviations inevitably occur and have to be managed University of Toulouse

Mohammed Issam KABBAJ

2

Introduction - Problem Description - Proposed Approach – Detecting Deviation System - Deviation Management System - Conclusion

Introduction • Existent PSEEs : • Most of them are rigid i.e. prescriptive. • Some Works/PSEE endeavor to resolve the problem but in the best case, deviations are partially controlled.

University of Toulouse

Mohammed Issam KABBAJ

3

Introduction - Problem Description - Proposed Approach – Detecting Deviation System - Deviation Management System - Conclusion

Introduction • Objectives : • Deviation Management during process enactment (more flexibility). • Take into account specific and context-dependent aspects of actual processes. • Refuse or tolerate deviations. • Dynamic adaptation of software process models.

University of Toulouse

Mohammed Issam KABBAJ

4

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Illustrating Process Example • Student Project : It is a simplistic process favored by  our students in developing small‐size software within a  few weeks. 

Université de Toulouse

Mohammed Issam KABBAJ

5

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Deviation Problem Example (Student Project) :  Launch « Coding » without     « Design »

G

ui d

es

Deviation

Always True (Working Hypothisis)

s m or f n o C

Re fl e ct

s

Conforms

University of Toulouse

Mohammed Issam KABBAJ

6

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Assumptions • Absence of deviation is the exception, not the rule. • Process models are needed to guide humans, not to  be enforced prescriptively. • Process models should not be an obstacle. • Humans must always be allowed to decide whether  to follow process models or not whenever they need  to face unexpected situations or to improve process  models.

University of Toulouse

Mohammed Issam KABBAJ

7

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Basic Idea Real Process

Generic Process Model

Monitoring

Instantiating Enacting Process Model (EPM)

Based on

Observed Process Model (OPM)

Comparing + Analyzing => - Detecting deviations - Making decision (Accept/refuse deviations ) University of Toulouse

Mohammed Issam KABBAJ

8

9In Deviation-Tolerance Model consists Monitoring System (MS) : used to- Proposed Approach 9 case of deviation, DMS Introduction - Problem Description of DT Rules collect events relating to the(DDS) actualis 9 Detecting Deviation system selects applicable rule from Detecting Deviation System Deviation 9 DT Rules can be interpreted as Management System - Conclusion process (visible performed informed by MS of changes of the Deviation-Tolerance Model actions) directives for deviations. 9actual OPM elements associated with process arethe 9 Refuses/accepts 9 DT Rules and DTIlisteners values are specified observers (event changes 9 Following changeover, DMStocompares deviation according to the by the Process Designer on the basis of OPM elements’ proprieties) EPM & OPM looking for deviation rule of his/her expertise.

Architecture

Perform

Actual Process

Human Actors informs

Deviation-tolerance

request

observes

Model

deviations

actions

uses

Deviation

Process

Management

Enactment Engine

uses / uses

informs

Detecting

Monitoring

Deviation

System

System

informs

System uses

adapts uses

builds

uses / rectifies

Enacting

Observed

Process Model

University of Toulouse

inform

Process Model

Mohammed Issam KABBAJ

9

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Nominal Behavior • The Process Enactment Engine (PEE) is a module in charge of  enacting process models.  • It is based on : – structure of process models. – behavior of process elements (expressed as state machines  that describe their nominal life cycles, i.e. without  deviations.)

Université de Toulouse

Mohammed Issam KABBAJ

10

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Logical Formalization • Let M be the union of the sets of formulas that describe : – The structure of process model (e.g. the Student Project (SP)) { activity(Design); activity(Coding); artifact(Specifications);  input(Specifications, Design) ; validated(Design) → precedence(Coding) ;} 

– The behavior of an enacting process model (extract)  { ∀w (initial(w) ∧ activity(w) → enactable(w)) ; ∀w ((precondition(w) ∧ precedence(w) ∧ enactable(w)) → activatable(w)) ; ∀w∀r ((activatable(w)∧responsibleForWork(r, w))→ operation(launch, w,r)) ;}  . – The observed process model (e.g. SP) operation(launch, Design, Designer);  enacting(Design); • Let o be an operation executed by human actors (e.g. SP). operation(launch, Design, Designer); 

o is not a deviation ⇔ M |⎯ o . Université de Toulouse

Mohammed Issam KABBAJ

11

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Example of Logical Formalization o = operation(launch, Coding, Developer) . M = { responsibleForWork(Developer, Coding);  validated(Design) → precedence(Coding) ;  ∀w∀r ((activatable(w) ∧ responsibleForWork(r, w)) → operation(launch, w, r)) ;  ∀w (enactable(W) ∧ precedence(W) → activatable(w)); enacting(Design) ; enactable(Coding) ;  … } . M  |‐⎯/⎯ o . Thus,  o constitutes a deviation. Université de Toulouse

Mohammed Issam KABBAJ

12

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Deviation-Tolerance Model • The deviation‐tolerance model helps process  designers  – Clarify parts of the process that should never endure  deviations. – authorize deviations in order to meet specific needs,  and thus improve process models’ flexibility. 

• It consists of deviation‐tolerance rules  rules ProcessElement

University of Toulouse

Mohammed Issam KABBAJ

13

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Example of Deviation-Tolerance Model • Description : “In case of violation of precedence of an  activity w, then if all input of w is in the state Draftβ with  at least a 90% degree of achievement, the deviation is to  be qualified as minor and is to be tolerated (with  DTI=0.9)”. • Deviation : ∃ r (operation(launch, w, r) ∧ ¬precedence(w))

• Context : ∀ P (input(P,W) → (Draftβ(P) ∧ GreaterThan(achievement(P), 90%))) • Qualification : minor University of Toulouse

Deviation Tolerance Index : 0.9

Mohammed Issam KABBAJ

14

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Intervals of Deviation-Tolerance values „

Tolerance deviation Indicators (DTI) associated to process elements : DTI Є[0 , 1].

0

zero-tolerance interval The deviation is incompatible with the development

„

NT

uncertainty = interval A human intervention is needed

TT

tolerance interval

1

The deviation is Acceptable

The threshold values may be adjusted dynamically

University of Toulouse

Mohammed Issam KABBAJ

15

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Handling Deviations • When a deviation occurs select the  applicable rule

Adding  rules ∈ Uncertainty Interval

∈Tolerance

Index

Interval

University of Toulouse

Accept  deviation Type

∈ Zero-tolerance Interval

Human Decision

Deviation  Tolerance  Rules

major

Reject  deviation

Model Changing

Mohammed Issam KABBAJ

minor

Model Relaxing 16

Introduction - Problem Description - Proposed Approach Detecting Deviation System - Deviation Management System - Conclusion

Conclusion & perspectives

„ „ „

Deviations always occur during development Software process => unexpected situation To cope with process deviation

• Two models :

1. Enacting process model (EPM); 2. Observed process model (OPM).

• Tolerance deviation Indicator. = Dynamic Adaptation of Software Process „ Current investigations 9 Validation of our approach by a industrial processes. 9 Ensuring that Model-changing approach do not generate new

inconsistencies in case of major deviation.

University of Toulouse

Mohammed Issam KABBAJ

17

Thank you • Any Questions ? • Any Suggestions ?

University of Mirail Toulouse

Mohammed Issam KABBAJ

18