Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,

Similar presentations


Presentation on theme: "University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,"— Presentation transcript:

1 University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm, Jo Ann Lane USC Center for Software Engineering USC-CSE Annual Research Review March 14, 2006

2 University of Southern California Center for Software Engineering CSE USC ©USC-CSE2 Outline Introduction and background Model description Conclusions and future work

3 University of Southern California Center for Software Engineering CSE USC ©USC-CSE3 Introduction The spiral lifecycle is being extended to address new challenges for Software-Intensive Systems of Systems (SISOS), such as coping with rapid change while simultaneously assuring high dependability A hybrid plan-driven and agile process has been outlined to address these conflicting challenges with the need to rapidly field incremental capabilities A system dynamics model is being developed to assess the incremental hybrid process and support project decision- making Both the hybrid process and simulation model are being evolved on a very large scale incremental project for a SISOS

4 University of Southern California Center for Software Engineering CSE USC ©USC-CSE4 System Dynamics and Complex SOS System dynamics is a simulation methodology for modeling continuous systems. Quantities are expressed as levels, rates and information links representing feedback loops. –Provides a rich and integrative framework for capturing myriad process phenomena and their relationships –Complex and interacting process effects are modeled using continuous flows interconnected in loops of information feedback and circular causality A system-of-systems (SOS) integrates multiple independently-developed systems and is very large, dynamically evolving, unprecedented, with emergent requirements and behaviors –However, traditional static approaches cannot capture dynamic feedback loops and interacting phenomena that cause real-world complexity (e.g. hybrid processes, project volatility, increment overlap and resource contention, schedule pressure, slippages, communication overhead, slack, etc.) System dynamics is well-suited to deal with the complexities of SOS –Attractive for schedule analysis accounting for task interdependencies and bottlenecks not available with static models or PERT/CPM methods

5 University of Southern California Center for Software Engineering CSE USC ©USC-CSE5 Scalable Spiral Model Increment Activities Organize development into plan-driven increments with stable specs Agile team watches for and assesses changes, then negotiates changes so next increment hits the ground running Try to prevent usage feedback from destabilizing current increment Three team cycle plays out from one increment to the next

6 University of Southern California Center for Software Engineering CSE USC ©USC-CSE6 Outline Introduction and background Model description Conclusions and future work

7 University of Southern California Center for Software Engineering CSE USC ©USC-CSE7 Model Features Estimates cost and schedule for multiple increments of a hybrid process that uses three specialized teams (agile re-baseliners, developers, V&V’ers) per the scalable spiral model Considers changes due to external volatility and feedback from user-driven change requests Deferral policies and team sizes can be experimented with Includes tradeoffs between cost and the timing of changes within and across increments, length of deferral delays, and others

8 University of Southern California Center for Software Engineering CSE USC ©USC-CSE8 Model Input Control Panel

9 University of Southern California Center for Software Engineering CSE USC ©USC-CSE9 Model Overview Built around a cyclic flow chain for capabilities –Arrayed for multiple increments Each team is represented with a level and corresponding staff allocation rate Changes arrive a-periodically via the volatility trends time function and flow into the level for capability changes Changes are processed by the agile team and allocated to increments per the deferral policies –Constant or variable staffing for the agile team For each increment the required capabilities are developed into developed capabilities and then V&V’ed into V & V’ed capabilities –The productivities and team sizes for development and V&V are estimated with a Dynamic COCOMO variant and continuously recalculated for scope changes –All flow rates between capability changes and V & V’ed capabilities are bi-directional as a provision for capabilities to be “kicked back” and sent back up the chain User-driven changes from the field are identified as field issues that flow back into the capability changes

10 University of Southern California Center for Software Engineering CSE USC ©USC-CSE10 Volatility Cost Functions The volatility effort multiplier for construction effort and schedule is an aggregate multiplier for volatility from different sources (e.g. COTS, mission, etc.) relative to the original baseline for increment The lifecycle timing effort multiplier models increased development cost the later a change comes in midstream during an increment

11 University of Southern California Center for Software Engineering CSE USC ©USC-CSE11 Sample Response to Volatility An unanticipated change occurs at month 8 shown as a volatility trend [1] pulse It flows into capability changes [1] which declines to zero as the agile team processes the change The change is non-deferrable for increment 1 so total capabilities [1] increases Development team staff size dynamically responds to the increased scope * [1] refers to increment #1

12 University of Southern California Center for Software Engineering CSE USC ©USC-CSE12 Sample Test Results Test case for two increments of 15 baseline capabilities each A non-deferrable change comes at month 8 (per previous slide) The agile team size is varied from 2 to 10 people

13 University of Southern California Center for Software Engineering CSE USC ©USC-CSE13 Outline Introduction and background Model description Conclusions and future work

14 University of Southern California Center for Software Engineering CSE USC ©USC-CSE14 System dynamics is a convenient modeling framework to deal with the complexities of a SISOS A hybrid process appears attractive to handle SISOS dynamic evolution, emergent requirements and behaviors Initial results indicate that having an agile team can help decrease overall cost and schedule –Model can help find the optimum balance Will obtain more empirical data to calibrate and parameterize model including volatility and change trends, change analysis effort, effort multipliers and field issue rates Model improvements –Additional staffing options Rayleigh curve staffing profiles Constraints on development and V&V staffing levels –More flexible change deferral options across increments –Provisions to account for (timed) business/mission value of capabilities Additional model experimentation –Include capabilities flowing back from developers and V&V’ers –Vary deferral policies –Vary volatility patterns across increments –Compare different agile team staffing policies Continue applying the model on a current SISOS and seek other potential pilots Conclusions and Future Work

15 University of Southern California Center for Software Engineering CSE USC ©USC-CSE15 Bibliography Boehm B., Abts C., Brown A.W., Chulani S., Clark B., Horowitz E., Madachy R., Reifer D., Steece B., Software Cost Estimation with COCOMO II, Prentice-Hall, 2000 Boehm B., Turner R., Balancing Agility and Discipline, Addison Wesley, 2003 Boehm B., Brown A.W., Basili V., Turner R., “Spiral Acquisition of Software-Intensive Systems of Systems”, CrossTalk. May 2004 Boehm B., “Some Future Trends and Implications for Systems and Software Engineering Processes”, USC-CSE-TR-2005-507, 2005 Madachy R., Software Process Dynamics, IEEE Computer Society, 2006 (to be published) Madachy R., Boehm B., Lane J., “Spiral Lifecycle Increment Modeling for New Hybrid Processes”, Proceedings of SPW/ProSim 2006, Springer-Verlag, May 2006 (to be published)


Download ppt "University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,"

Similar presentations


Ads by Google