University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC University of Idaho Talk April 23, 2010 Value-Based Software.

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

Software Project Management
CSE 470 : Software Engineering The Software Process.
1 State of Michigan Achieving Software Process Improvement with Capability Maturity Model (CMM)
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC Community-Based Learning Collaborative April 6, 2009 Service.
Demonstrating Early Value in Software System Projects Using Software and System Cost Models Anca-Juliana Stoica, IT Dept, UU 26th International Forum on.
University of Southern California Center for Software Engineering C S E USC 02/16/05©USC-CSE1 LiGuo Huang Computer Science Department.
COCOMO Suite Model Unification Tool Ray Madachy 23rd International Forum on COCOMO and Systems/Software Cost Modeling October 27, 2008.
University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,
Software Quality Engineering Roadmap
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 Systems and Software Engineering USC CSSE Research Overview Barry Boehm Sue Koolmanojwong Jo Ann Lane Nupul.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC.
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510 Lecture Fall 2011 Value-Based Software Engineering:
VBSE Theory, and SimVBSE CSE, Annual Research Review Apurva Jain, Barry Boehm Version 1.0 (modified March 02, 2006)
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510 Lecture Fall 2011 Value-Based Software Engineering:
© 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 C S E USC © USC-CSSE1 Barry Boehm CS 577a, 510 Fall 2010 Software Engineering Ethics.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510 Lecture Fall 2011 Value-Based Software Engineering.
Software Architecture in Practice
University of Southern California Center for Software Engineering C S E USC Marilee Wheaton, USC CS 510 Lecture Fall 2010 Value-Based Software Engineering:
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy USC Center for Systems and Software Engineering
DRIVING INNOVATION AND ABILITY TO COMPETE THROUGH OUTSOURCING Anthony (Tony) C. Bernardo, Alloy Polymers Inc. NPE 2003 bernardo:
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
University of Southern California Center for Systems and Software Engineering Improving Affordability via Value-Based Testing 27th International Forum.
University of Southern California Center for Software Engineering C S E USC ISERN 2005 November 15, 2005 Stefan Biffl, Aybuke Aurum, Rick Selby, Dan Port,
Cost Management Week 6-7 Learning Objectives
Achieving Better Reliability With Software Reliability Engineering Russel D’Souza Russel D’Souza.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Chapter 2 The Process.
On Target Group Coaching
Copyright © 2013 Pearson Education, Inc. Publishing as Prentice Hall. Performance Evaluation Chapter 10 1.
Operational Concept Description
University of Southern California Center for Systems and Software Engineering Value-Based Software Engineering CS 577a Software Engineering I Barry Boehm.
Naseer Jan Course Instructor : Dr. Huang Value-based requirements engineering CSE 5316/7316 Software Requirements Fall 2013 Computer science Department,
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
University of Southern California Center for Systems and Software Engineering 7/19/2013(c) USC-CSSE11 USC e-Services Software Engineering Projects.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
Microsoft Office Project 2003: Selling EPM in your Organization Matt Wilson Business Solutions Specialist LMR Solutions.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
Optimizing NASA IV&V Benefits Using Simulation Grant Number: NAG David M. Raffo, Ph.D College of Engineering and Computer Science School of Business.
Barry Boehm, USC CS 510, 577a Lectures Fall 2008
University of Southern California Center for Software Engineering CSE USC 3/26/101 © USC-CSSE Value-Based Software Engineering CS 577b Winsor.
University of Southern California Center for Systems and Software Engineering COCOMO Suite Toolset Ray Madachy, NPS Winsor Brown, USC.
Design, Development and Roll Out
Agile Metrics It’s Not All That Complicated. © 2011 VersionOne 2 Welcome – About your Trainer, Katia Sullivan VersionOne Product Trainer and Agile Coach.
CS 510 Final Exam Q&A Fall 2015 Barry Boehm, USC.
Copyright  2006 McGraw-Hill Australia Pty Ltd PPTs t/a Management Accounting: Information for managing and creating value 4e Slides prepared by Kim Langfield-Smith.
The Second Annual Medical Device Regulatory, Reimbursement and Compliance Congress Presented by J. Glenn George Thursday, March 29, 2007 Day II – Track.
1 Value-Based Software Engineering II: Theory, Process, and Case Study LiGuo Huang Computer Science and Engineering Southern Methodist University.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M13 8/20/2001Slide 1 SMU CSE 8314 /
1 Value-Based Software Engineering I: Motivation and Key Practices LiGuo Huang Computer Science and Engineering Southern Methodist University.
Copyright , Dennis J. Frailey CSE Software Measurement and Quality Engineering CSE8314 M00 - Version 7.09 SMU CSE 8314 Software Measurement.
University of Southern California Center for Systems and Software Engineering Aug. 26, 2010 © USC-CSE Page 1 A Winsor Brown CS 577a Lecture Fall.
Value-Based Software Engineering (VBSE) CS577a Nupul Kukreja, Barry Boehm August 30, 2013.
Welcome to Software Project Management. CONVENTIONAL SOFTWARE MANAGEMENT The BEST and WORST thing about software is its flexibility. 1.Software development.
INTRODUCTION Mehmet Sait Andaç Web: Office: 431.
Establishing (or Enhancing) PMO Effectiveness Nicolle Goldman, PMP March 28, 2007.
University of Southern California Center for Software Engineering C S E USC ICSM Principles for Successful Software and Systems Engineering Barry Boehm,
CS 577b: Software Engineering II
State of Michigan Achieving Software Process Improvement with
Value-Based Software Engineering: Motivation and Key Practices
Contents A GENERIC IT BALANCED SCORECARD
Value-Based Software Engineering: Case Study and Value-Based Control
Value-Based Software Engineering II: Theory, Process, and Case Study
Presentation transcript:

University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC University of Idaho Talk April 23, 2010 Value-Based Software Engineering

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE2 Outline Value-based software engineering (VBSE) motivation and definitions Initial VBSE theory (with Apurva Jain) –Software process implications –Application to case study Conclusions and references

University of Southern California Center for Software Engineering C S E USC 04/23/10 ©USC-CSE3 Software Testing Business Case Vendor proposition –Our test data generator will cut your test costs in half –We’ll provide it to you for 30% of your test costs –After you run all your tests for 50% of your original cost, you are 20% ahead Any concerns with vendor proposition?

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE4 Software Testing Business Case Vendor proposition –Our test data generator will cut your test costs in half –We’ll provide it to you for 30% of your test costs –After you run all your tests for 50% of your original cost, you are 20% ahead Any concerns with vendor proposition? –Test data generator is value-neutral* –Every test case, defect is equally important –Usually, 20% of test cases cover 80% of business case * As are most current software engineering techniques

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE5 20% of Features Provide 80% of Value: Focus Testing on These (Bullock, 2000) % of Value for Correct Customer Billing Customer Type Automated test generation tool - all tests have equal value

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE6 Value-Based Testing Provides More Net Value Net Value NV (100, 20) Percent of tests run Test Data Generator Value-Based Testing (30, 58) % TestsTest Data GeneratorValue-Based Testing CostValueNVCostValueNV …

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE7 By NumberP-value% Gr A higherBy ImpactP-value% Gr A higher Average of Concerns Average Impact of Concerns Average of Problems Average Impact of Problems Average of Concerns per hour Average Cost Effectiveness of Concerns Average of Problems per hour Average Cost Effectiveness of Problems Group A: 15 IV&V personnel using VBR procedures and checklists Group B 13 IV&V personnel using previous value-neutral checklists – Significantly higher numbers of trivial typo and grammar faults Experiment Value-Based Reading (VBR) Experiment — Keun Lee, ISESE 2005

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE8 Motivation for Value-Based SE Current SE methods are basically value-neutral –Every requirement, use case, object, test case, and defect is equally important –Object oriented development is a logic exercise –“Earned Value” Systems don’t track business value –Separation of concerns: SE’s job is to turn requirements into verified code –Ethical concerns separated from daily practices Value – neutral SE methods are increasingly risky –Software decisions increasingly drive system value –Corporate adaptability to change achieved via software decisions –System value-domain problems are the chief sources of software project failures

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE9 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 *Capability Maturity Model

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE10 Resulting Project Social Structure SOFTWARE MGMT. AERO.ELEC.G & C MFG. COMMPAYLOAD I wonder when they'll give us our requirements?

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE11 20% of Fires Cause 80% of Property Loss: Focus Fire Dispatching on These? % of Property Loss % of Fires

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE12 Penumbra Negotiation Example: Fire Dispatching System Dispatch to minimize value of property loss –Neglect safety, least-advantaged property owners English-only dispatcher service –Neglect least-advantaged immigrants Minimal recordkeeping –Reduced accountability Tight budget; design for nominal case –Neglect reliability, safety, crisis performance

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE13 Why Software Projects Fail

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE14 Outline Value-based software engineering (VBSE) motivation and definitions Initial VBSE theory (with Apurva Jain) –Software process implications –Application to case study Conclusions and references

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE15 Initial VBSE Theory: with Apurva Jain Engine: Theory W (stakeholder win-win): What values are important? –Enterprise Success Theorem –Theory of Justice –Win-Win Equilibrium and Negotiation Four Supporting Theories –Utility Theory: How important are the values? –Multi-attribute utility; Maslow need hierarchy –Decision Theory: How do values determine decisions? –Investment theory; game theory; statistical decision theory –Dependency Theory: How do dependencies affect value realization? –Results chains; value chains; cost/schedule/performance tradeoffs –Control Theory: How to monitor and control value realization –Feedback control; adaptive control; spiral risk control

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE16 Theory W: Enterprise Success Theorem – And informal proof Theorem: Your enterprise will succeed if and only if it makes winners of your success-critical stakeholders Proof of “if”: Everyone that counts is a winner. Nobody significant is left to complain. Proof of “only if”: Nobody wants to lose. Prospective losers will refuse to participate, or will counterattack. The usual result is lose-lose.

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE17 Theory W: WinWin Achievement Theorem Making winners of your success-critical stakeholders requires: i.Identifying all of the success-critical stakeholders (SCSs). ii.Understanding how the SCSs want to win. iii.Having the SCSs negotiate a win-win set of product and process plans. iv.Controlling progress toward SCS win-win realization, including adaptation to change.

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE18 VBSE Theory 4+1 Structure

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE19 Initial VBSE Theory: 4+1 Process – With a great deal of concurrency and backtracking

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE20 Example Project: Sierra Mountainbikes –Based on what would have worked on a similar project Quality leader in specialty area Competitively priced Major problems with order processing –Delivery delays and mistakes –Poor synchronization of order entry, confirmation, fulfillment –Disorganized responses to problem situations –Excess costs; low distributor satisfaction

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE21 Order Processing Project Goals Goals: Improve profits, market share, customer satisfaction via improved order processing Questions: Current state? Root causes of problems? Keys to improvement? Metrics: Balanced Scorecard of benefits realized, proxies –Customer satisfaction ratings; key elements (ITV: in-transit visibility) –Overhead cost reduction –Actual vs. expected benefit and cost flows, ROI

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE22 Initial VBSE Theory: 4+1 Process, Steps 1 and 2 – With a great deal of concurrency and backtracking

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE23 Frequent Protagonist Classes Sierra Moutainbikes: Susan Swanson, new CEO – Bicycle champion, MBA, 15 years’ experience – Leads with goals, open agenda

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE24 DMR/BRA* Results Chain INITIATIVE OUTCOME Implement a new order entry system ASSUMPTION Contribution Order to delivery time is an important buying criterion Reduce time to process order Reduced order processing cycle (intermediate outcome) Increased sales Reduce time to deliver product *DMR Consulting Group’s Benefits Realization Approach

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE25 Expanded Order Processing System Benefits Chain

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE26 Initial VBSE Theory: 4+1 Process, Steps 3 and 4 – With a great deal of concurrency and backtracking

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE27 The Model-Clash Spider Web: Master Net - Stakeholder value propositions (win conditions)

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE28 EasyWinWin OnLine Negotiation Steps

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE29 Red cells indicate lack of consensus. Oral discussion of cell graph reveals unshared information, unnoticed assumptions, hidden issues, constraints, etc.

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE30 Initial VBSE Theory: 4+1 Process, Step 5 – With a great deal of concurrency and backtracking

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE31 Project Strategy and Partnerships Partner with eServices, Inc. for order processing and fulfillment system –Profit sharing using jointly-developed business case Partner with key distributors to provide user feedback –Evaluate prototypes, beta-test early versions, provide satisfaction ratings Incremental development using MBASE/RUP anchor points –Life Cycle Objectives; Architecture (LCO; LCA) –Core Capability Drivethrough (CCD) –Initial; Full Operational Capability (IOC; FOC) Architect for later supply chain extensions

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE32 Business Case Analysis Estimate costs and schedules –COCOMO II and/or alternative for software –PRICE H or alternative for hardware –COSYSMO for systems engineering Estimate financial benefits –Increased profits –Reduced operating costs Compute Return on Investment –ROI = (Benefits – Costs) / Costs –Normalized to present value Identify quantitative metrics for other goals –Customer satisfaction ratings Ease of use; In-transit visibility; overall –Late delivery percentage

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE33 MilestoneDue DateBudget ($K)Cumulative Budget ($K) Inception Readiness1/1/ Life Cycle Objectives1/31/ Life Cycle Architecture3/31/ Core Capability Drivethrough7/31/ Initial Oper. Capability: SW9/30/ Initial Oper. Capability: HW9/30/ Developed IOC12/31/ Responsive IOC3/31/ Full Oper. Cap’y CCD7/31/ FOC Beta9/30/ FOC Deployed12/31/ Annual Oper. & Maintenance3800 Annual O&M; Old System7600 Order Processing System Schedules and Budgets

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE34 Order Processing System: Expected Benefits and Business Case

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE35 Initial VBSE Theory: 4+1 Process, Steps 6 and 7 – With a great deal of concurrency and backtracking

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE36 Value-Based Expected/Actual Outcome Tracking Capability

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE37 Conclusions Current SE methods are basically value- neutral Value-neutral SE methods are increasingly risky VBSE agenda making progress, but major challenges remain –Evolving VBSE theory –Creating VB counterparts for value-neutral SE methods

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE38 C. Baldwin & K. Clark, Design Rules: The Power of Modularity, MIT Press, S. Biffl, A. Aurum, B. Boehm, H. Erdogmus, and P. Gruenbacher (eds.), Value-Based Software Engineering, Springer, B. Boehm, “Value-Based Software Engineering,” ACM Software Engineering Notes, March B. Boehm, C. Abts, A.W. Brown, S. Chulani, B. Clark, E. Horowitz, R. Madachy, D. Reifer, and B. Steece, Software Cost Estimation with COCOMO II, Prentice Hall, B. Boehm and L. Huang, “Value-Based Software Engineering: A Case Study, Computer, March 2003, pp B. Boehm and R. Turner, Balancing Agility and Discipline: A Guide for the Perplexed, Addison Wesley, B. Boehm, L. Huang, A. Jain. R. Madachy, “ The ROI of Software Dependability: The iDAVE Model”, IEEE Software Special Issue on Return on Investment, May/June B. Boehm, R. Valerdi, and E. Honour, “The ROI of Systems Engineering,” Systems Engineering, Fall 2008, pp M. Denne and J. Cleland-Huang, Software by Numbers, Prentice Hall, References - I

University of Southern California Center for Software Engineering C S E USC 04/23/10©USC-CSE39 S. Faulk, D. Harmon, and D. Raffo, “Value-Based Software Engineering (VBSE): A Value-Driven Approach to Product-Line Engineering,” Proceedings, First Intl. Conf. On SW Product Line Engineering, August R. Kaplan & D. Norton, The Balanced Scorecard: Translating Strategy into Action, Harvard Business School Press, Q. Li, B. Boehm, F. Su, and Q. Wang. “Improving the ROI of Software Quality Assurance Activities: an Empirical Study” Accepted by the International Conference on Software Process (ICSP2010), to appear. D. Reifer, Making the Software Business Case, Addison Wesley, K. Sullivan, Y. Cai, B. Hallen, and W. Griswold, “The Structure and Value of Modularity in Software Design,” Proceedings, ESEC/FSE, 2001, ACM Press, pp J. Thorp and DMR, The Information Paradox, McGraw Hill, S. Tockey, Return on Software, Addison Wesley, References - II