17
Experience with Software Process Simulation and Modeling Walt Scacchi ATRIUM Laboratory [email protected]

Experience with Software Process Simulation and Modeling

Embed Size (px)

DESCRIPTION

Experience with Software Process Simulation and Modeling. Walt Scacchi ATRIUM Laboratory [email protected]. Overview. Introduction Simulating and modeling software development processes Simulation and modeling in process life cycle engineering Experience in industrial settings - PowerPoint PPT Presentation

Citation preview

Page 1: Experience with Software Process Simulation and Modeling

Experience with Software Process Simulation and Modeling

Walt Scacchi

ATRIUM Laboratory

[email protected]

Page 2: Experience with Software Process Simulation and Modeling

Overview• Introduction

• Simulating and modeling software development processes

• Simulation and modeling in process life cycle engineering

• Experience in industrial settings

• Emerging topics in software process simulation and modeling

Page 3: Experience with Software Process Simulation and Modeling

Introduction

• Modeling and simulation as tools/techniques for understanding software processes

• “As-is” processes

• “To-be” processes

• “Here-to-there” transition processes

Page 4: Experience with Software Process Simulation and Modeling

Sim/Mod Soft. Dev. Processes

• Knowledge-Based Simulation (KBS)– Custom built: Articulator environment (88-96)– Process states explicit or implicit– Persistent representation of state

• Discrete-Event Simulation (DES)– COTS: Witnesstm

– Process states always explicit

Page 5: Experience with Software Process Simulation and Modeling

Sim/Mod Soft. Dev. Processes

• KBS:– Used for fine-grain process understanding– Analyzing process with multiple/mixed levels

of process instance/class granularity– Analyzing patterns of interaction and workflow

among software developers/agents– Analyzing processes whose structure and

control flow are dynamic (process dynamism)

Page 6: Experience with Software Process Simulation and Modeling

Sim/Mod Soft. Dev. Processes• KBS:

– Implemented as a semantic network whose nodes (objects, attributes) and links (relations) are updated by triggered rule firings

– KBSs run forward, backward, or triggered by user query

– KBSs output can be paraphrased and summarized using natural language generation techniques

Page 7: Experience with Software Process Simulation and Modeling
Page 8: Experience with Software Process Simulation and Modeling
Page 9: Experience with Software Process Simulation and Modeling

Sim/Mod Soft. Dev. Processes

• DES:– Analyzing different samples of parameter

values in software process instances– Simulations resemble transportation/flow

networks– Easy to observe process bottlenecks or

optimization opportunities– Can assess and validate simulation vs. actual

replicability

Page 10: Experience with Software Process Simulation and Modeling

Sim/Mod Soft. Dev. Processes

• DES:– Well-suited for studying repeated processes

with large number of process instances– Can provide animated visual display of

simulated process execution: Big Win!– Animated software process “movies” are

intuitive, easy to grasp, and empowering

Page 11: Experience with Software Process Simulation and Modeling
Page 12: Experience with Software Process Simulation and Modeling
Page 13: Experience with Software Process Simulation and Modeling

Simulation and modeling in process life cycle engineering

Meta-modeling Visualization Enactment

Modeling Prototyping Measurement

Analysis Administration History andReplay

Simulation Integration Articulation

Redesign EnvironmentGeneration

AssetManagement

Page 14: Experience with Software Process Simulation and Modeling

Experience in industrial settings

• Have modeled/simulated >100 processes using Articulator KBS environment

• Examined small<-->very large software development projects

• Have found or developed results that have (or could have) saved projects substantial amounts of money, time, and frustration

Page 15: Experience with Software Process Simulation and Modeling

Emerging topics in software process simulation and modeling

• Supporting software process reengineering

• SAMSA: Simulation and modeling for software acquisition

• A wide-area information infrastructure supporting software development, use, and evolution processes

Page 16: Experience with Software Process Simulation and Modeling

Conclusions

• KBS facilitates qualitative analysis

• DES facilitates quantitative analysis

• KBS and DES are complementary, not strict alternatives

• Process meta-models were key to integration of process simulation and modeling into overall process life cycle

Page 17: Experience with Software Process Simulation and Modeling

Conclusions

• KBS of software/business processes is still “rocket science” – Agent-based systems on the WWW may re-

invent the development/use of KBS

• Intuitive and animated visual displays of software process simulations and models merit further investigation