Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC.

Similar presentations


Presentation on theme: "University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC."— Presentation transcript:

1 University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC Center for Systems and Software Engineering madachy@usc.edu Annual Research Review March 18, 2008

2 University of Southern California Center for Systems and Software Engineering ©USC-CSSE2 3/18/08 Dealing with Systems and Software Engineering Complexities The evaluation of process strategies for the architecting and engineering of complex systems involves many interrelated factors. Effective systems and software engineering requires a balanced view of technology, business or mission goals, and people. System dynamics is a rich and integrative simulation framework used to quantify the complex interactions and the strategy tradeoffs between cost, schedule, quality and risk. Everything is connected to everything Anonymous

3 University of Southern California Center for Systems and Software Engineering ©USC-CSSE3 3/18/08 Systems and Software Engineering Challenges What to build? Why? How well? –Stakeholder needs balancing, business case Who to build it? Where? –Staffing, organizing, outsourcing How to build? When; in what order? –Construction processes, methods, tools, components, increments How to adapt to change? –In user needs, technology, marketplace How much is enough? –Functionality, quality, specifying, prototyping, test See relevant application models in Software Process Dynamics chapters 4-6

4 University of Southern California Center for Systems and Software Engineering ©USC-CSSE4 3/18/08 The Software Process Dynamics Field 1991 Software Project Dynamics book, Abdel-Hamid and Madnick, MIT –A single model –Useful tradeoff insights, some mischaracterizations 1990’s Growing number of applications and commercial modeling tools 1998 Annual ProSim Workshop start 1999 Refereed journal articles start 2000’s Many applications, few modeling principles 2008 Software Process Dynamics book, Madachy, USC –Modeling techniques and principles, model building blocks, entire models, review of extensive model applications

5 University of Southern California Center for Systems and Software Engineering ©USC-CSSE5 3/18/08 Software Process Dynamics Table of Contents Part 1 - Fundamentals Chapter 1 – Introduction and Background Chapter 2 – The Modeling Process with System Dynamics Chapter 3 – Model Structures and Behavior for Software Processes Part 2 – Applications and Future Directions Chapter 4 – People Applications Chapter 5 – Process and Product Applications Chapter 6 – Project and Organization Applications Chapter 7 – Current and Future Directions Appendices – Statistics of Simulation, Annotated Bibliography, Provided Models

6 University of Southern California Center for Systems and Software Engineering ©USC-CSSE6 3/18/08 System Dynamics Principles Major concepts –Defining problems dynamically, in terms of graphs over time –Striving for an endogenous, behavioral view of the significant dynamics of a system –Thinking of all real systems concepts as continuous quantities interconnected in information feedback loops and circular causality –Identifying independent levels in the system and their inflow and outflow rates –Formulating a model capable of reproducing the dynamic problem of concern by itself –Deriving understandings and applicable policy insights from the resulting model –Implementing changes resulting from model-based understandings and insights. The continuous view –Individual events are not tracked –Entities are treated as aggregate quantities that flow through a system

7 University of Southern California Center for Systems and Software Engineering ©USC-CSSE7 3/18/08 System Dynamics Strengths / Weaknesses Strengths –Provides a global system perspective and the ability to analyze combined strategies –Enables analysis of integrated process factors and feedback loops (e.g. holistic enterprise models, positive and negative feedback, process delays, process concurrence) –Finding the right process balance (e. g., quality assurance levels, staffing levels) –Adapting to change; strategic long-term policy analysis –Can model inherent tradeoffs between schedule, cost and quality –Attractive for schedule analysis accounting for critical path flows, task interdependencies and bottlenecks not available with static models or PERT/CPM methods Weaknesses –Assumption of homogeneity of entities; cannot attach attributes to individual entities –Sequential activities difficult to represent –Queuing and other discrete statistics not captured

8 University of Southern California Center for Systems and Software Engineering ©USC-CSSE8 3/18/08 System Dynamics Notation System represented by x’(t)= f(x,p). x: vector of levels (state variables), p: set of parameters Legend: Example system:

9 University of Southern California Center for Systems and Software Engineering ©USC-CSSE9 3/18/08 Model Elements

10 University of Southern California Center for Systems and Software Engineering ©USC-CSSE10 3/18/08 Model Elements (continued)

11 University of Southern California Center for Systems and Software Engineering ©USC-CSSE11 3/18/08 Brooks’s Law Model “Adding manpower to a late software project makes it later” [Brooks 75]. A simple model based on the following assumptions: –New personnel require training by experienced personnel to come up to speed –More people on a project entail more communication overhead –Experienced personnel are more productive then new personnel, on average.

12 University of Southern California Center for Systems and Software Engineering ©USC-CSSE12 3/18/08 Brooks’s Law Model Output Sensitivity of Software Development Rate to Varying Personnel Allocation Pulses (1: no extra hiring, 2: add 5 people on 100th day, 3: add 10 people on 100th day) Days Function points/day

13 University of Southern California Center for Systems and Software Engineering ©USC-CSSE13 3/18/08 Brooks’s Law Dynamics

14 University of Southern California Center for Systems and Software Engineering ©USC-CSSE14 3/18/08 References Abdel-Hamid T, Madnick S, Software Project Dynamics, Englewood Cliffs, NJ, Prentice-Hall, 1991 Madachy R, Software Process Dynamics, Wiley/IEEE Press, Hoboken NJ, 2008 USC Web Sites http://csse.usc.edu/softwareprocessdynamics http://rcf.usc.edu/~madachy/spd


Download ppt "University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC."

Similar presentations


Ads by Google