![Boehm [Read-Only]](https://data.docslib.org/img/3a60ab92a6e30910dab9bd827208bcff-1.webp)
USC University of Southern California C S E Center for Software Engineering CMMI and the Balance of Discipline and Agility Barry Boehm, USC CMMI Technology Conference ‘02 November 13, 2002 (boehm@; http://) sunset.usc.edu 11/13/2002 ©USC-CSE 1 USC University of Southern California C S E Center for Software Engineering Outline • Clausewitz and De Marco: Armor vs. Mobility – Software CMM and Agile Methods • Characteristics of Future Systems – Range of sizes and criticalities – All need to balance discipline and agility • Using Risk to Balance Discipline and Agility – No one-size-fits-all solution • Representative Future Example: Future Combat Systems – Complex system of systems (CSOS) • Conclusions 11/13/2002 ©USC-CSE 2 USC University of Southern California C S E Center for Software Engineering Clausewitz and De Marco: Armor and Mobility • Clausewitz: Armor and mobility alternate dominance Greeks Romans Vandals, Huns Franks Mongols Castles Field Artillery Maginot Line 11/13/2002 ©USC-CSE Panzers 3 USC University of Southern California C S E Center for Software Engineering Clausewitz and De Marco: Armor and Mobility • Clausewitz: Armor and mobility alternate dominance • De Marco: Same is true for software methods Craftsmanship CMM’s Agile Methods • Whither CMMI? 11/13/2002 ©USC-CSE 4 USC University of Southern California C S E Center for Software Engineering The Agile Manifesto - I We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. 11/13/2002 ©USC-CSE 5 USC University of Southern California C S E Center for Software Engineering Various Agile Methods Available • Adaptive Software Development (ASD) • Agile Modeling • Crystal methods • Dynamic System Development Methodology (DSDM) * eXtreme Programming (XP) • Feature Driven Development • Lean Development • Scrum 11/13/2002 ©USC-CSE 6 USC University of Southern California C S E Center for Software Engineering XP: The 12 Practices • The Planning Game • Pair Programming • Small Releases • Collective Ownership • Metaphor • Continuous Integration • Simple Design • 40-hour Week • Testing • On-site Customer • Refactoring • Coding Standards -Used generatively, not imperatively 11/13/2002 ©USC-CSE 7 USC University of Southern California C S E Center for Software Engineering The Planning Spectrum Milestone Milestone Inch- Pebble Adaptive Risk- Driven Plan-Driven Ironbound SW Devel. Hackers XP Models Models Contract … … Agile Methods Software CMM CMMI 11/13/2002 ©USC-CSE 8 USC University of Southern California C S E Center for Software Engineering Agile and Plan-Driven Home Grounds Agile Home Ground Plan-Driven Home Ground • Agile, knowledgeable, collocated, • Plan-oriented developers; collaborative developers mix of skills • Above plus representative, • Mix of customer capability empowered customers levels • Reliance on tacit interpersonal • Reliance on explicit knowledge documented knowledge • Largely emergent requirements, • Requirements knowable rapid change early; largely stable • Architected for current • Architected for current and requirements foreseeable requirements • Refactoring inexpensive • Refactoring expensive • Smaller teams, products • Larger teams, products • Premium on rapid value • Premium on high-assurance 11/13/2002 ©USC-CSE 9 USC University of Southern California C S E Center for Software Engineering Outline • Clausewitz and De Marco: Armor vs. Mobility – Software CMM and Agile Methods • Characteristics of Future Systems – Range of sizes and criticalities – All need to balance discipline and agility • Using Risk to Balance Discipline and Agility – No one-size-fits-all solution • Representative Future Example: Future Combat Systems – Complex system of systems (CSOS) • Conclusions 11/13/2002 ©USC-CSE 10 USC University of Southern California C S E Center for Software Engineering Information Technology Trends Traditional Development Current/Future Trends • Standalone systems • Everything connected-maybe • Stable requirements • Rapid requirements change • Rqts. determine capabilities • COTS capabilities determine rqts. • Control over evolution • No control over COTS evolution • Enough time to keep stable • Ever-decreasing cycle times • Small to big systems • Plus very big systems of systems • Repeatability-oriented • Adaptive process models process, maturity models 11/13/2002 ©USC-CSE 11 USC University of Southern California C S E Center for Software Engineering The “Separation of Concerns” Legacy “The notion of ‘user’ cannot be precisely defined, and therefore has no place in CS or SE.” – Edsger Dijkstra, ICSE 4, 1979 “Analysis and allocation of the system requirements is not the responsibility of the SE group but is a prerequisite for their work.” – Mark Paulk at al., SEI Software CMM v.1.1, 1993 11/13/2002 ©USC-CSE 12 USC University of Southern California C S E Center for Software Engineering Resulting Project Social Structure I wonder when they'll give us our requirements? SOFTWARE AERO. ELEC. G & C MGMT. MFG. COMM PAYLOAD 11/13/2002 ©USC-CSE 13 USC University of Southern California C S E Center for Software Engineering The CMMI Software Paradigm • System and software engineering are integrated – Software has a seat at the center table • Requirements, architecture, and process are developed concurrently – Along with prototypes and key capabilities • Developments done by integrated teams – Collaborative vs. adversarial process – Based on shared vision, negotiated stakeholder 11/13/2002 ©USC-CSE 14 USC University of Southern California C S E Center for Software Engineering How Much Planning Is Enough? - A risk analysis approach • Risk Exposure RE = Prob (Loss) * Size (Loss) – “Loss” – financial; reputation; future prospects, … • For multiple sources of loss: RE = S [Prob (Loss) * Size (Loss)]source sources 11/13/2002 ©USC-CSE 15 USC University of Southern California C S E Center for Software Engineering Example RE Profile: Planning Detail - Loss due to inadequate plans high P(L): inadequate plans high S(L): major problems (oversights, delays, rework) RE = P(L) * S(L) low P(L): thorough plans low S(L): minor problems Time and Effort Invested in plans 11/13/2002 ©USC-CSE 16 USC University of Southern California C S E Center for Software Engineering Example RE Profile: Planning Detail - Loss due to inadequate plans - Loss due to market share erosion high P(L): inadequate plans high S(L): major problems high P(L): plan (oversights, delays, rework)) breakage, delay high S(L): value capture delays RE = P(L) * S(L) low P(L): few plan delays low S(L): early value capture low P(L): thorough plans low S(L): minor problems Time and Effort Invested in Plans 11/13/2002 ©USC-CSE 17 USC University of Southern California C S E Center for Software Engineering Example RE Profile: Time to Ship - Sum of Risk Exposures high P(L): inadequate plans high P(L): plan high S(L): major problems breakage, delay (oversights, delays, rework) high S(L): value capture delays Sweet Spot low P(L): few plan delays RE = P(L) * S(L) low S(L): early value capture low P(L): thorough plans low S(L): minor problems Time and Effort Invested in Plans 11/13/2002 ©USC-CSE 18 USC University of Southern California C S E Center for Software Engineering Comparative RE Profile: Plan-Driven Home Ground Higher S(L): large system rework Plan-Driven Sweet Spot Mainstream Sweet Spot RE = P(L) * S(L) * P(L) = RE Time and Effort Invested in Plans 11/13/2002 ©USC-CSE 19 USC University of Southern California C S E Center for Software Engineering Comparative RE Profile: Agile Home Ground Mainstream Sweet Spot Agile Sweet Lower S(L): Spot easy rework RE =P(L) * S(L) Time and Effort Invested in Plans 11/13/2002 ©USC-CSE 20 USC University of Southern California C S E Center for Software Engineering Outline • Clausewitz and De Marco: Armor vs. Mobility – Software CMM and Agile Methods • Characteristics of Future Systems – Range of sizes and criticalities – All need to balance discipline and agility • Using Risk to Balance Discipline and Agility – No one-size-fits-all solution • Representative Future Example: Future Combat Systems – Complex system of systems (CSOS) • Conclusions 11/13/2002 ©USC-CSE 21 USC University of Southern California C S E Center for Software Engineering Future Combat Systems: A Network-Centric Example From This... To This... Network Centric Distributed Platforms Other Small Unit UAV Layered Sensors Network Centric Robotic Sensor Force Distributed Fire Mechanisms Robotic Direct Fire Exploit Battlefield Non-Linearities using Technology to Reduce the Size of Platforms and the Force Robotic NLOS Fire Manned C2/Infantry Squad 11/13/2002 ©USC-CSE 22 TotalTotal CollaborativeCollaborative EffortEffort toto SupportSupport FCSFCS FY00 FY01 FY02 FY03 FY04 FY05 FY06 Preliminary PDR CDR Design Detailed Design Concept Development / Design Build Competition Competition Modeling and Simulation Design T & E Government- Shakeout Run Experiments AUTONOMY CHPS Robotics VISION Breadboard Robotic Unmanned Brassboard Unmanned Ground MOBILITY Ground Vehicle Vehicle DESIGN Maneuver COMMAND & CONTROL SUO C3 COMMS Maneuver BLOS LOITER ATTACK AFSS Networked Fires Weapon* PRECISION ATTACK A160 Organic All-Weather 3D PLATFORM Redesign / Test ($5.0M) Targeting Vehicle
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages31 Page
-
File Size-