University of Southern California Center for Software Engineering CSE USC A Case for Anchor Point Milestones and Feasibility Rationales April 2005 Barry.

Slides:



Advertisements
Similar presentations
WinWin Stakeholder Roles
Advertisements

1 Lecture #8 Purpose of SSRD Describe Capability Requirements: system subject matter measured by concrete means Describe Project, Level of Service, and.
MBASE Process: WinWin Spiral
September 2008Mike Woodard Rational Unified Process Key Concepts Mike Woodard.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 12, Software Life Cycle.
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Unit 2. Software Lifecycle
Software Project Management
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier.
CSE 470 : Software Engineering The Software Process.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
University of Southern California Center for Systems and Software Engineering Evidence-Based Software Processes Supannika Koolmanojwong CS510 1.
Rational Unified Process
University of Southern California Center for Software Engineering C S E USC 3/8/06©USC-CSE1 Software Acquisition and Life Cycle Management CS577b, Spring.
University of Southern California Center for Software Engineering C S E USC Hardware/Software Human Systems Integration Context and Processes USC-CSE Executive.
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 MBASE Essentials Planning and control Milestone content Process models Life cycle.
University of Southern California Center for Systems and Software Engineering USC CSSE Research Overview Barry Boehm Sue Koolmanojwong Jo Ann Lane Nupul.
1 SOFTWARE LIFE-CYCLES Beyond the Waterfall. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance The WATERFALL.
Software Engineering.
USC Annual Research Review - March 2006 University of Southern California Center for Software Engineering Software Architecting On the Acquisition Side.
Administrivia Lifecycle Architecture (LCA) group assignment will go out later today. Informal feedback meetings with LCO groups EasyShare: Mon, 2:45pm-3:15pm,
1 Jul 2005CSE403, Summer'05, Section 02 Section 02: Life Cycle Architecture Review Valentin Razmov.
July 2008 Barry Boehm and Jo Ann Lane USC CSSE
19-February-2003cse LCA © 2003 University of Washington1 Architecture Milestone CSE 403, Winter 2003 Software Engineering
University of Southern California Center for Software Engineering C S E USC Agile and Plan-Driven Methods Barry Boehm, USC USC-CSE Affiliates’ Workshop.
University of Southern California Center for Systems and Software Engineering Feasibility Evidence Description (FED) Barry Boehm, USC CS 577a Lecture Fall.
Web Development Process Description
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Software Development *Life-Cycle Phases* Compiled by: Dharya Dharya Daisy Daisy
Chapter 2 The process Process, Methods, and Tools
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
University of Southern California Center for Software Engineering CSE USC 2/9/00 ©USC-CSE 1 Spiral Development: Experience, Principles, and Refinements.
Chapter – 9 Checkpoints of the process
IT Requirements Management Balancing Needs and Expectations.
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
University of Southern California Center for Systems and Software Engineering Simplifiers & Complicators and IICM-Sw Barry Boehm & A Winsor Brown CS 577a.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
13-January-2003cse LifeCycle © 2003 University of Washington1 Lifecycle CSE 403, Winter 2003 Software Engineering
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
University of Southern California Center for Systems and Software Engineering Evidence-Based Reviews for Systems of Systems: Needs, Principles, Practices,
Software Project Management (SEWPZG622) BITS-WIPRO Collaborative Programme: MS in Software Engineering SECOND SEMESTER /1/ "The content of this.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
SRR and PDR Charter & Review Team Linda Pacini (GSFC) Review Chair.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
University of Southern California Center for Systems and Software Engineering Aug. 26, 2010 © USC-CSE Page 1 A Winsor Brown CS 577a Lecture Fall.
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 Rational Unified Process – Part 2 Original slides modified.
University of Southern California Center for Software Engineering C S E USC ICSM Principles for Successful Software and Systems Engineering Barry Boehm,
Barry Boehm, USC CSSE CS 510 Lecture, Fall 2016
Barry Boehm, USC CSSE CS 577 Lecture, Fall 2017
Requirements and the Software Lifecycle
Software life cycle models
USC e-Services Software Engineering Projects
ICM-Sw Essentials for 577 Process models Success models Product models
USC e-Services Software Engineering Projects
Barry Boehm, USC CSSE CS 577 Lecture
Comparison between each special case
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Presentation transcript:

University of Southern California Center for Software Engineering CSE USC A Case for Anchor Point Milestones and Feasibility Rationales April 2005 Barry Boehm, USC

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE2 Use of APs and FRs Used to provide and independently review EVIDENCE of the feasibility of a project’s specifications and plans before proceeding into development. Originally developed to enhance the original spiral model –Avoid late discovery of infeasible requirements –Control concurrent engineering –Provide in-process stakeholder commitment milestones Can be approximated within traditional waterfall or V-models –By adding FRs to the content of SRRs, SFRs, and PDRs

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE3 $100M $50M Required Architecture: Custom; many cache processors Original Architecture: Modified Client-Server Response Time (sec) Original Spec After Prototyping Original Cost Problems Encountered without FR: 15-Month Architecture Rework Delay

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE4 Problems Avoided with FR Attempt to validate 1-second KPP –Architecture analysis: needs expensive custom solution –Prototype: 4-seconds OK 90% of the time Negotiate KPP ranges –2 seconds desirable –4 seconds acceptable with some 2-second special cases Benchmark client-server to validate feasibility Present solution and feasibility rationale at anchor point milestone review –Result: Acceptable solution with minimal delay

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE5 Key Point: Need to Show Evidence Not just traceability matrices and PowerPoint charts Evidence can include results of –Prototypes: networks, robots, user interfaces, COTS interoperability –Benchmarks: performance, scalability, accuracy –Exercises: mission performance, interoperability, security –Models: cost, schedule, performance, reliability; tradeoffs –Simulations: mission scalability, performance, reliability –Early working versions: infrastructure, data fusion, legacy compatibility –Combinations of the above Validated by independent experts –Realism of assumptions –Representativeness of scenarios –Thoroughness of analysis –Coverage of key off-nominal conditions

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE % of Software Problem Reports (SPR’s) TRW Project A 373 SPR’s TRW Project B 1005 SPR’s % of Cost to Fix SPR’s Major Rework Sources: Off-Nominal Architecture-Breakers A - Network Failover B - Extra-Long Messages Off-Nominal Architecture-Breakers

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE7 Common Examples of Inadequate Evidence 1.Our engineers are tremendously creative. They will find a solution for this. 2.We have three algorithms that met the KPPs on small-scale nominal cases. At least one will scale up and handle the off-nominal cases. 3.We’ll build it and then tune it to satisfy the KPPs 4.The COTS vendor assures us that they will have a security-certified version by the time we need to deliver. 5.We have demonstrated solutions for each piece from our NASA, Navy, and Air Force programs. It’s a simple matter of integration to put them together.

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE8 Examples of Making the Evidence Adequate 1.Have the creative engineers prototype and evaluate a solution on some key nominal and off- nominal scenarios. 2.Prototype and evaluate the three examples on some key nominal and off-nominal scenarios 3.Develop prototypes and/or simulations and exercise them to show that the architecture will not break while scaling up or handling off- nominal cases. 4.Conduct a scaled-down security evaluation of the current COTS product. Determine this and other vendors’ track records for getting certified in the available time. Investigate alternative solutions. 5.Have a tiger team prototype and evaluate the results of the simple matter of integration.

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE9 Case Study: CCPDS-R Project Overview CharacteristicCCPDS-R Domain Ground based C3 development Size/language 1.15M SLOC Ada Average number of people 75 Schedule 75 months; 48-month IOC Process/standards DOD-STD-2167A Iterative development Rational host DEC host DEC VMS targets Contractor TRW Customer USAF Current status Delivered On-budget, On-schedule Environment RATIONAL S o f t w a r e C o r p o r a t I o n

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE10 CCPDS-R Reinterpretation of SSR, PDR Development Life Cycle ConstructionElaboration Inception Competitive design phase: Architectural prototypes Planning Requirements analysis Contract award Architecture baseline under change control Early delivery of “alpha” capability to user Architecture IterationsRelease Iterations SSRIPDRPDRCDR RATIONAL S o f t w a r e C o r p o r a t I o n (LCA) (LCO) High-risk prototypes Working Network OS with validated failover

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE11 CCPDS-R Results: No Late Rework  Architecture first -Integration during the design phase -Demonstration-based evaluation  Configuration baseline change metrics: RATIONAL S o f t w a r e C o r p o r a t I o n Project Development Schedule Design Changes Implementation Changes Maintenance Changes and ECP’s Hours Change  Risk Management

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE12 AT&T Experience with AP Reviews

University of Southern California Center for Software Engineering CSE USC Backup Charts

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE14 Spiral Anchor Points Enable Concurrent Engineering

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE15 Operational Concept Elaboration of system objectives and scope by increment Elaboration of operational concept by increment System Prototype(s) Exercise range of usage scenarios Resolve major outstanding risks System Requirements Elaboration of functions, interfaces, quality attributes, and prototypes by increment - Identification of TBD’s (to be determined items) Stakeholders’ concurrence on their priority concerns System and Software Architecture Choice of architecture and elaboration by increment - Physical and logical components, connectors, configurations, constraints - COTS, reuse choices - Domain architecture and architectural style choices Architecture evolution parameters Need Concurrently Engineered Milestone Reviews Life Cycle Objectives (LCO); Life Cycle Architecture Package (LCA)

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE16 Life-Cycle Plan Elaboration of WWWWWHH* for Initial Operational Capability (IOC) Partial elaboration, identification of key TBD’s for later increments Feasibility Rationale Assurance of consistency among elements above All major risks resolved or covered by risk management plan. *WWWWWHH: Why, What, When, Who, Where, How, How Much Need Concurrently Engineered Milestone Reviews Life Cycle Objectives (LCO); Life Cycle Architecture Package (LCA)

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE17 LCO (MS A) and LCA (MS B) Pass/Fail Criteria A system built to the given architecture will –Support the operational concept –Satisfy the requirements –Be faithful to the prototype(s) –Be buildable within the budgets and schedules in the plan –Show a viable business case –Establish key stakeholders’ commitment to proceed LCO: True for at least one architecture LCA: True for the specific life cycle architecture; All major risks resolved or covered by a risk management plan

University of Southern California Center for Software Engineering CSE USC 4/15/05© USC-CSE18 B. Boehm, W. Hansen, “The Spiral Model as a Tool for Evolutionary Acquisition,” Cross Talk, May B. Boehm, D. Port, “Balancing Discipline and Flexibility with the Spiral Model and MBASE,” CrossTalk, December 2001, pp B. Boehm, D. Port, L. Huang, and W. Brown, “Using the Spiral Model and MBASE to Generate New Acquisition Process Models: SAIV/ CAIV, and SCQAIV,” CrossTalk, January 2002, pp D. Reifer and B. Boehm, “A Model Contract/Subcontract Award Fee Plan for Large, Change-Intensive Software Acquisitions,” USC-CSE Technical Report, April B. Boehm, A.W. Brown, V. Basili, and R. Turner, “Spiral Acquisition of Software- Intensive Systems of Systems,” Cross Talk, May 2004, pp J. Marenzano et. al., “Architecture Reviews: Practice and Experience,” in IEEE Software, March/April W. Royce, Software Project Management, Addison Wesley, MBASE web site : sunset.usc.edu/research/MBASE CrossTalk articles: References