270 likes | 394 Views
Modeling Value-Based Process with Object Petri-Nets. LiGuo Huang lghuang@engr.smu.edu Department of Computer Science & Engineering Southern Methodist University. Value-Based Software Quality Achievement (VBSQA) Process. Neusoft DIMS Upgrade Project.
E N D
Modeling Value-Based Process with Object Petri-Nets LiGuo Huang lghuang@engr.smu.edu Department of Computer Science & Engineering Southern Methodist University
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
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
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
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
Formal Definitions of VBSQA-OPN • An OPN is a 3-tuple • System Net: is a Petri Net with its tokens referring to Object Nets • Object Nets: (n>1) • SN and ONs synchronize via “channels” ρ • VBSQA-OPN = • System Net: , VBSQA Process Framework or its tailoring • Object Nets: (n>1) represents a set of process instances of stakeholders, • Synchronization relation between SN and ONs: • , 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
VBSQA-OPN Object Nets– Stakeholders’ Process Instances Developer’s Object Net System Acquirer’s Object Net
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 Creator– Creating an ERP VBSQA Process Instance
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
VBSQA Process Simulator • ROI of Synchronous Stakeholder Interaction Activities • ROI = (Value – Cost)/Cost • Value: • 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
VBSQA Process Simulator– ROI of Synchronous Stakeholder Interaction Activities DIMS Top-Priority Q-attributes: Performance, Evolvability
VBSQA Process Simulator– ROI of Synchronous Stakeholder Interaction Activities
Process V&V • Enforce the chronological order of process steps and milestones • Identify the violation of critical path activity dependency
Ambiguity Tolerance • Process framework: steps, milestones and their order • Process checker: defect identification • Pre and post conditions • Process simulation
Scalability • Number of process steps: 12 • Number of stakeholders/process instances: 4 • Model cross-organizational processes
Extensibility • Need expertise on Petri-Nets in modeling new capabilities
Flexibility • Separation of concerns of different stakeholders/parties on the process • Can add activities for individual process instance • Support coordination among process instances
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
Dynamism • Defect introduction and removal