presentation4

advertisement
Southern Methodist University
Department of Computer Science and Engineering
Modeling Value-Based Process
with Object Petri-Nets
LiGuo Huang
lghuang@engr.smu.edu
Department of Computer Science & Engineering
Southern Methodist University
03/17/08
1
Southern Methodist University
Department of Computer Science and Engineering
Value-Based Software Quality Achievement (VBSQA) Process
Success-Critical
Stakeholders
Build-to Plans
(Life Cycle Architecture)
Top Level Plans
(Life Cycle Objectives)
System
Acquirer
DB
Administrator
Developer
Software
Maintainer
LCA
Execute Plans
(Construction)
…
LCO
Mission objectives, scenarios (including
software Q-attributes goals);
cost/benefit analysis
Q-tradeoff
Q-attributes
analysis;
conflict, risks;
negotiate
risk mitigation
agreements;
spirals; solution
options
V&V
Q-attributes
Q-tradeoff
conflict, risks;
analysis;
risk mitigation
negotiate
spirals; solution
agreements;
V&V
options
V&V plans
Feedback
IOC
…
…
Execution
Feedback
Usage Feedback
03/17/08
2
Southern Methodist University
Department of Computer Science and Engineering
Neusoft DIMS Upgrade Project
• Document and Image Management System
(DIMS) upgrade from version 6.0 to 7.0
• Change of database schema
– add, remove or update DB attributes
• Change of database platforms
– new capability of data migration
03/17/08
3
Southern Methodist University
Department of Computer Science and Engineering
Initial Experiment of VBSQA Process Application
• Objective: Tailor VBSQA process framework to ERP
software development in China
• Two week tutorials on VBSQA Process and WinWin
Spiral Model
– Developed a process instance composed of 22 ERP software
development activities
 6 misplaced activities due to misinterpretation
 4 missing activities
03/17/08
4
Southern Methodist University
Department of Computer Science and Engineering
Experience of Initial VBSQA Process Application
• Feedback from project managers of ERP
solution providers
–
–
–
–
–
Shorten the new process learning curve
Maintain the flexibility of the process
Identify the flaws in a process instance
Tradeoffs among conflicting software Q-attributes
Determine stakeholders’ perspectives and
interaction points
03/17/08
5
Southern Methodist University
Department of Computer Science and Engineering
Model VBSQA Process Using Object Petri Nets (OPN)
• Inherit the merits of Petri Nets (PN)
–
–
–
–
Formal semantics despite the graphical nature
State-based instead of event-based
Abundance of analysis techniques
Model concurrent process activities
• Support separation of concerns among various
stakeholders’ perspectives
– Object-oriented approach
– Model VBSQA Process Framework as the System Net (SN)
– Model each stakeholder’s process instance in a separate
Object Net (ON)
 Process activities in ONs are inherited from process
steps/milestones in SN
– Interaction/negotiation among stakeholders and the SN/ON
synchronization can be defined, analyzed, and integrated
concurrently
03/17/08
6
Southern Methodist University
Department of Computer Science and Engineering
Value-Based Process and OPN
System Net
(VBSQA Process Framework)
n
t
Se
03/17/08
tio
Object Net
(Stakeholder Process Instance)
ac
a
n
r
te
In
er
t
In
io
ct
t
e
S
…...
Object Net
(Stakeholder Process Instance)
7
Southern Methodist University
Department of Computer Science and Engineering
Formal Definitions of VBSQA-OPN
• An OPN is a 3-tuple OPN  ( SN , ONs ,  )
– System Net: SN  ( P, T , W ) is a Petri Net with its tokens
referring to Object Nets
– Object Nets: ON s  (ON 1 , ON 2 ,  ON n ) (n>1)
– SN and ONs synchronize via “channels” ρ
• VBSQA-OPN = ( SN , ON s ,  )
– System Net: SN  ( P, T ,W ) , VBSQA Process Framework or its
tailoring
– Object Nets: ON s  (ON 1 , ON 2 ,  ON n ) (n>1) represents a set of
process instances of stakeholders, ON i  ( Bi , Ei , Fi )
– Synchronization relation between SN and ONs:
  Tsyn  Esyn (Esyn : {Eisyn | 1  i  n}) , a mapping between VBSQA
process framework steps/milestones and ERP software
development activities.
– Guard functions: activation condition(s) of transitions
– Constraint 1: Inheritance of chronological order
– Constraint 2: Critical Path Dependency
03/17/08
8
Southern Methodist University
Department of Computer Science and Engineering
OPN Notations
Elements
Description
Software Process Modeling
Place: current state (the marking)
Place: current state (the marking) of the
of a system; places contain tokens
System Net (VBSQA process framework) or an
object net (a stakeholder’s process instance)
Token: pre- or post- condition of
firing a transition
Token:
1) pre- or post- condition of activating a
process step/milestone in System Net (SN) or
an activity in Object Net (ON);
2) refer to an object net
Transition: events or actions
System Net: steps and milestones of
which cause the change of system
state
VBSQA process framework or its tailoring
Object Net: activities of ERP software
development
Arc: connects a place with a
transition or a transition with a place
03/17/08
9
Southern Methodist University
Department of Computer Science and Engineering
VBSQA-OPN System Net
– VBSQA Process Framework
Initiate project
(α)
Mission
objectives
and stages
Project
cost/benefit
analysis
(β)
Terminate or
redefine project
Launch project
Project SCS classes
& Business Cases
Risk analysis &
Architecture/
technology
evaluation
(δ)
Legend (System Net)
synchronous transitions
status transitions
SCS define
acceptable&desired
values for Q-attributes
(γ)
SCS: Success Critical Stakeholders
Q-: Quality
Architecture/
technology
combination(s) CAN
satisfy all Q-attribute
requirements?
System top-level
design
(η)
LCO: Life Cycle Objective
FRD: Feasibility Rationale Description
Architecture/
technology
combination(s)
CANNOT satisfy all
Q-attribute
requirements?
Identify conflicting
Q-attributes &
perform tradeoff
analysis
(ε)
SCS adjust acceptable
values for Q-attributes
(ζ)
LCO phase
rework or extra work
(ι)
LCO Fail
LCO Pass
03/17/08
Deliverables:
System top-level
design and FRD
LCO Review (θ)
(Exit criteria: Provide at
least one feasible
architecture)
10
Southern Methodist University
Department of Computer Science and Engineering
VBSQA-OPN Object Nets
– Stakeholders’ Process Instances
Developer’s Object Net
Acquire system
upgrade
requirements
(α)
Mission
objectives
and stages
Estimate
system upgrade
schedule/cost &
develop DMR
results chain
(β)
System Acquirer’s Object Net
Schedule/cost not
accepted
Issue project
bidding
(α)
Schedule/cost
accepted
Project SCS classes
& Business Cases
Architecture/
technology
combination(s) CAN
satisfy all Q-attribute
requirements?
Architecture/
technology
combination(s)
CANNOT satisfy all
Q-attribute
requirements?
Identify conflicting
Q-attributes &
perform tradeoff
analysis
(ε)
External prototype
evaluation
(δ)
Peer review system
top-level design &
other documents
LCO Fail
Requirement elicitation
meeting
(γ)
Architecture/
technology
combination(s) CAN
satisfy all Q-attribute
requirements?
Architecture/
technology
combination(s)
CANNOT satisfy all
Q-attribute
requirements?
Stakeholder
renegotiation
(ζ)
LCO phase
rework or extra work
(ι)
Identify conflicting
Q-attributes &
perform tradeoff
analysis
(ε)
03/17/08
LCO Review (θ)
(Exit criteria: Provide at
least one feasible
architecture)
Stakeholder
renegotiation
(ζ)
Deliverables:
System top-level
design and FRD
LCO Fail
Deliverables:
System top-level
design and FRD
LCO Pass
LCO Pass
Launch project
Project SCS classes
& Business Cases
Requirement elicitation
meeting
(γ)
System top-level
design
(η)
Terminate or
redefine project
System
Acquirer
Developers
External prototype
evaluation
(δ)
Mission
objectives
and stages
Verify system
upgrade
schedule/cost &
DMR results
chain
(β)
Legend (Object Net)
object-autonomous transitions
synchronous transitions
LCO Review (θ)
(Exit criteria: Provide at
least one feasible
architecture)
status transitions
11
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Generator
– Based on VBSQA-OPN Model
Simulation Results
VBSQA
Process
Creator
VBSQA
Process
Checker
VBSQA
Process
Simulator
A Mapping between ERP Software
Development Activities
and VBSQA Process Framework
03/17/08
12
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Creator
–
Map ERP Software Development Activities into VBSQA Process Framework
Objectives:
• To shorten the VBSQA process learning curve
• To reduce the flaws in generated process instances
• To adapt to the changes in ERP software development activities
and/or workflows
VBSQA Process Framework
Steps/Milestones (System Net)
Project cost/benefit analysis
ERP Software Development Activities
(Object Nets)
Estimate system upgrade cost & develop DMR results chain
(Developer)
Verify system upgrade cost (System Acquirer)
SCS define acceptable & desired
values for Q-attributes
Requirement elicitation meeting
LCA Review
Selected architecture internal review (Developer)
Groupware WinWin negotiation
Selected architecture external review
CCD
Internal core capability demo (Developer)
Onsite core capability demo
03/17/08
13
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Creator
– Creating an ERP VBSQA Process Instance
03/17/08
14
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Checker
– Identifying the Flaws in a VBSQA Process Instance
• Maintain the flexibility of the process
– Allow to remove a step in SN (VBSQA process framework)
 Violate critical path activity dependencies due to missing activities
• VBSQA Process Checker
– Formal properties defined in VBSQA-OPN System Net (SN) and
implemented in the VBSQA Process Checker
• Examples of the activity dependency constraints in the SN
– SCS define acceptable & desired values for Q-attributes must be
completed before Risk analysis & architecture/technology evaluation
– Risk analysis & architecture/technology evaluation must be completed
before System top-level design
– System top-level design must be completed before LCO Review
03/17/08
15
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Simulator
• ROI of Synchronous Stakeholder Interaction Activities
– ROI = (Value – Cost)/Cost
– Value:
m
n
i 1
j 1
Value   (((1   (1  Eij ))  Ri )  V
V: the total value of the project;
Eij (0-1): the effectiveness of a specific process activity on mitigating
the risk of Q-attribute i if it is performed in phase j;
Ri (0-1): the risk of Q-attribute i to the total value of the project.
– Cost = Activity Cost + Rework Cost
• Various combinations of synchronous stakeholder
interaction activities and developer internal activities
03/17/08
16
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Simulator
– ROI of Synchronous Stakeholder Interaction Activities
DIMS Top-Priority Q-attributes: Performance, Evolvability
03/17/08
17
Southern Methodist University
Department of Computer Science and Engineering
VBSQA Process Simulator
– ROI of Synchronous Stakeholder Interaction Activities
ROI
Process Activity Combinations
Worst-Case
Scenario
Best-Case
Scenario
1
LCO(i)\ LCA(i) \ CCD(i) \ IOC(s)
-0.223
—
2
LCO(s)\ LCA(i) \ CCD(i) \ IOC(s)
-0.045
6.23
3
LCO(i)\ LCA(s) \ CCD(i) \ IOC(s)
0.162
2.414
4
LCO(i)\ LCA(i) \ CCD(s) \ IOC(s)
-0.09
0.149
5
LCO(s)\ LCA(s) \ CCD(i) \ IOC(s)
0.194
6.165
6
LCO(s)\ LCA(i) \ CCD(s) \ IOC(s)
0.002
5.765
7
LCO(i)\ LCA(s) \ CCD(s) \ IOC(s)
0.205
2.33
8
LCO(s)\ LCA(s) \ CCD(s) \ IOC(s)
0.215
5.48
03/17/08
18
Southern Methodist University
Department of Computer Science and Engineering
Value/Petri Process Costs and Benefits
VBSQA-OPN Modeling Costs and Benefits
100
90
80
70
Hours
60
50
56
Many Hours!
40
30
20
10
24
0
Mutual Learning
6
2
6
4
3
Developing Plan
V&V of Plan
Improving Plan
VBSQA-OPN Modeling Costs (hrs)
Early vs. Late
Plan Rework
VBSQA-OPN Modeling Benefits (Saved hrs)
Southern Methodist University
Department of Computer Science and Engineering
Discussion
03/17/08
20
Southern Methodist University
Department of Computer Science and Engineering
Process V&V
• Enforce the chronological order of
process steps and milestones
• Identify the violation of critical path
activity dependency
03/17/08
21
Southern Methodist University
Department of Computer Science and Engineering
Ambiguity Tolerance
• Process framework: steps, milestones and
their order
– Process checker: defect identification
• Pre and post conditions
– Process simulation
03/17/08
22
Southern Methodist University
Department of Computer Science and Engineering
Scalability
• Number of process steps: 12
• Number of stakeholders/process instances: 4
• Model cross-organizational processes
03/17/08
23
Southern Methodist University
Department of Computer Science and Engineering
Extensibility
• Need expertise on Petri-Nets in modeling
new capabilities
03/17/08
24
Southern Methodist University
Department of Computer Science and Engineering
Flexibility
• Separation of concerns of different
stakeholders/parties on the process
• Can add activities for individual process
instance
• Support coordination among process
instances
03/17/08
25
Southern Methodist University
Department of Computer Science and Engineering
Coverage
• Process simulator
– estimate project schedule
– estimate project budget
– analyze quality attribute tradeoffs
– optimize the project plan in terms of ROI
– possible future extension: generate templates for
deliverables
• Model multi-views of processes
• Model cross-organizational processes
03/17/08
26
Southern Methodist University
Department of Computer Science and Engineering
Dynamism
• Defect introduction and removal
03/17/08
27
Download