University of Southern California Center for Software Engineering C S E USC Agile and Plan-Driven Methods Barry Boehm, USC USC-CSE Affiliates’ Workshop.

Slides:



Advertisements
Similar presentations
Rational Unified Process®
Advertisements

©2004 by Richard D. StutzkeAgile Methods and Process Maturity.ppt 1 Science Applications International Corporation An Employee-Owned Company ® Richard.
Incremental Commitment Spiral Model, Expedited Engineering, and Kanban Jo Ann Lane and Alexey Tregubov USC CSSE Rich Turner Stevens University.
Web Development Engineering Processes Introduction to Web Development Outsourcing Processes.
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
RUP/UP Software Development Method Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
University of Southern California Center for Systems and Software Engineering A Look at Software Engineering Risks in a Team Project Course Sue Koolmanojwong.
University of Southern California Center for Systems and Software Engineering Next Generation Estimation Methods and Management Metrics: Working Group.
University of Southern California Center for Systems and Software Engineering SoS Engineering and the ICM Workshop Overview Jo Ann Lane USC CSSE
1 Software Testing and Quality Assurance Lecture 34 – SWE 205 Course Objective: Basics of Programming Languages & Software Construction Techniques.
3/14/2006USC-CSE1 Ye Yang, Barry Boehm Center for Software Engineering University of Southern California COCOTS Risk Analyzer and Process Usage Annual.
University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC USC-CSE Executive Workshop March 15, 2006 Processes for Human.
University of Southern California Center for Software Engineering CSE USC 477 Class Project – HazMat (Hazardous materials) Spring 2003 Feb. 4.
University of Southern California Center for Software Engineering CSE USC MBASE Essentials Planning and control Milestone content Process models Life cycle.
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
1 CS 425/625 Software Engineering CS 425/625 Software Engineering Software Processes Based on Chapter 4 of the textbook [SE-7] Ian Sommerville, Software.
University of Southern California Center for Systems and Software Engineering Integrating Systems and Software Engineering (IS&SE) with the Incremental.
University of Southern California Center for Software Engineering CSE USC ©USC-CSE Overview: USC Annual Research Review Barry Boehm, USC-CSE February.
1 CS 691z/791z Topics on Software Engineering CS 691z/791z Topics on Software Engineering Software Processes Based on Chapter 4 of the book [SE-8] Ian.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Process Synchronization Workshop Summary Report Jo Ann Lane University of Southern California Center for Software Engineering.
Valuing System Flexibility via Total Ownership Cost Analysis Barry Boehm, JoAnn Lane, USC Ray Madachy, NPS NDIA Systems Engineering Conference October.
© USC-CSE1 Determine How Much Dependability is Enough: A Value-Based Approach LiGuo Huang, Barry Boehm University of Southern California.
University of Southern California Center for Software Engineering CSE USC ©USC-CSE 3/11/2002 Empirical Methods for Benchmarking High Dependability The.
SERA 2003 Keynote Address Research Review San Francisco, CA June 25, 2003 A forthcoming Addison Wesley Book ©USC-CSE6/25/03 1.
University of Southern California Center for Systems and Software Engineering Feasibility Evidence Description (FED) Barry Boehm, USC CS 577a Lecture Fall.
Agile Project Management By: Jim Highsmith Presented by: Brian Faulk.
University of Southern California Center for Software Engineering C S E USC August 2001©USC-CSE1 CeBASE Experience Base (eBASE) -Shared Vision Barry Boehm,
University of Southern California Center for Software Engineering CSE USC ©USC-CSE 5/10/ The Future of Software Engineering Barry Boehm, USC Boeing.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
CMMI Course Summary CMMI course Module 9..
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510 Lecture Fall 2001 (
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Balancing Agility and Discipline Chapter 2 : Contrasts and Home Grounds Presented By: Shawn Mulkey.
Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection.
University of Southern California Center for Systems and Software Engineering Top Enablers and Inhibitors of Affordable Systems Supannika Koolmanojwong,
Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004.
Decision Support System Development By Dr.S.Sridhar,Ph.D., RACI(Paris),RZFM(Germany),RMR(USA),RIEEEProc. web-site :
IS Methodologies. Systems Development Life Cycle - SDLC Planning Planning define the system to be developed define the system to be developed Set the.
Washington State Office of Insurance Commissioner State Insurance Management & Business Application Project Recap November 2007.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
Agile Working Group Agile Method Critical Success Factors.
University of Southern California Center for Software Engineering CSE USC A Case for Anchor Point Milestones and Feasibility Rationales April 2005 Barry.
Lecture 4 – XP and Agile 17/9/15. Plan-driven and agile development Plan-driven development A plan-driven approach to software engineering is based around.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
1 Discipline vs. Agility. 2 Topics What is discipline? What is agility? What are the misconceptions? Contrasts and home grounds Five critical factors.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Rational Unified Process (RUP)
1/2/12 Chapt 2 Iterative Evolutionary Agile. 1/2/12 (Rational) Unified Process A software development process – Flexible and open Other processes – XP.
Agile. Processes Waterfall Traditional With prototyping Sprial Agile Dynamic Systems Development Method (DSDM) Scrum Crystal eXtreme Programming (XP)
Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Introduction Requirements and the Software Lifecycle (3)
University of Southern California Center for Systems and Software Engineering Enablers and Inhibitors for Expediting Systems and Software Engineering &
University of Southern California Center for Systems and Software Engineering RDCR ARB CS 577b Software Engineering II Supannika Koolmanojwong.
1 KM Track Overview & Gaining Value from Knowledge -- Knowledge Management (KM) and the Contracting Professional Breakout Session # 119 Name: Gaining.
1 Agile COCOMO II: A Tool for Software Cost Estimating by Analogy Cyrus Fakharzadeh Barry Boehm Gunjan Sharman SCEA 2002 Presentation University of Southern.
Agile Methods Agile Alliance
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Agile Software Development
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger Joanne M. Atlee 4th Edition.
Chapt 2 Iterative Evolutionary Agile.
Chapter 5: New and Emerging Process Methodologies
Presentation transcript:

University of Southern California Center for Software Engineering C S E USC Agile and Plan-Driven Methods Barry Boehm, USC USC-CSE Affiliates’ Workshop March 12, 2002

University of Southern California Center for Software Engineering C S E USC ©USC-CSE2 Outline The planning spectrum Agile and Plan-Driven home grounds How much planning is enough? Hybrid Agile/Plan-Driven methods Relations to CMMI Conclusions

University of Southern California Center for Software Engineering C S E USC ©USC-CSE3 The Planning Spectrum Hackers XP Adaptive SW Devel. Milestone Risk- Driven Models …… Milestone Plan-Driven Models Inch- Pebble Ironbound Contract Software CMM Agile Methods CMMI

University of Southern California Center for Software Engineering C S E USC ©USC-CSE4 Agile and Plan-Driven Home Grounds Plan-oriented developers; mix of skills Mix of customer capability levels Reliance on explicit documented knowledge Requirements knowable early; largely stable Architected for current and foreseeable requirements Refactoring expensive Larger teams, products Premium on high-assurance Agile, knowledgeable, collocated, collaborative developers Above plus representative, empowered customers Reliance on tacit interpersonal knowledge Largely emergent requirements, rapid change Architected for current requirements Refactoring inexpensive Smaller teams, products Premium on rapid value Agile Home GroundPlan-Driven Home Ground

University of Southern California Center for Software Engineering C S E USC ©USC-CSE5 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: sources RE =  [Prob (Loss) * Size (Loss)] source

University of Southern California Center for Software Engineering C S E USC ©USC-CSE6 Example RE Profile: Planning Detail - Loss due to inadequate plans Time and Effort Invested in plans RE = P(L) * S(L) high P(L): inadequate plans high S(L): major problems (oversights, delays, rework) low P(L): thorough plans low S(L): minor problems

University of Southern California Center for Software Engineering C S E USC ©USC-CSE7 Example RE Profile: Planning Detail - Loss due to inadequate plans - Loss due to market share erosion Time and Effort Invested in Plans RE = P(L) * S(L) low P(L): few plan delays low S(L): early value capture high P(L): plan breakage, delay high S(L): value capture delays high P(L): inadequate plans high S(L): major problems (oversights, delays, rework)) low P(L): thorough plans low S(L): minor problems

University of Southern California Center for Software Engineering C S E USC ©USC-CSE8 low P(L): thorough plans low S(L): minor problems Example RE Profile: Time to Ship - Sum of Risk Exposures Time and Effort Invested in Plans RE = P(L) * S(L) low P(L): few plan delays low S(L): early value capture high P(L): plan breakage, delay high S(L): value capture delays Sweet Spot high P(L): inadequate plans high S(L): major problems (oversights, delays, rework)

University of Southern California Center for Software Engineering C S E USC ©USC-CSE9 Comparative RE Profile: Plan-Driven Home Ground Time and Effort Invested in Plans RE = P(L) * S(L) Mainstream Sweet Spot Higher S(L): large system rework Plan-Driven Sweet Spot

University of Southern California Center for Software Engineering C S E USC ©USC-CSE10 Comparative RE Profile: Agile Home Ground Time and Effort Invested in Plans RE =P(L) * S(L) Mainstream Sweet Spot Lower S(L): easy rework Agile Sweet Spot

University of Southern California Center for Software Engineering C S E USC ©USC-CSE11 Hybrid Agile/Plan-Driven Methods Early agility to determine emergent requirements –Agile user-interface prototyping Early planning to avoid surprises, point solutions –Plans for test data, drivers, oracles, tools, facilities –Architectures for assuring scalability, interoperability Early hybrid approach for complex COTS selection –Planned evaluation criteria, approach, priorities –Agile evaluations and iteration of approach Main development tailored to agile, plan-driven home grounds –Architect to modularize around sources of rapid change –Apply agile methods to rapidly changing lower-criticality modules –Planned approach to multi-site relativity stable, higher- criticality modules

University of Southern California Center for Software Engineering C S E USC ©USC-CSE12 Large System Life Cycle Planning/Agility Framework KPP’s:cost, schedule, performance, dependability, interoperability, … Desired FOC Desired IOC Acceptable IOC Desired FOC Desired Prioritized Capabilities IOC Trade Space Full Operational Capability (FOC) Architecture Support Acceptable Initial Operational Capability (IOC) Key Performance Parameters (KPP’s)

University of Southern California Center for Software Engineering C S E USC ©USC-CSE13 Agile Methods and CMMI: Compatible via Situation-Dependent Interpretations Integrated Teaming –Recognize value of tacit knowledge in dealing with rapid change Risk Management –Use risk to determine “how much is enough” planning, standardization, CM, QA, statistical process control, … Measurement and Analysis, Quantitative Project Management –Recognize value of qualitative data in establishing context, relevance of historical data –Emphasize prioritization, focus on most critical KPP’s –Avoid confusing priority with quantifiability

University of Southern California Center for Software Engineering C S E USC ©USC-CSE14 Conclusions: CMMI and Agile Methods Agile and plan-driven methods have best-fit home grounds –Increasing pace of change requires more agility Risk considerations help balance agility and planning –Risk-driven “How much planning is enough?” Risk-driven agile/plan-driven hybrid methods available –Adaptive Software Development, RUP, MBASE, CeBASE Method CMMI provides enabling criteria for hybrid methods –Risk Management, Integrated Teaming