81
10/22/2001 Copyright RCI, 2001 1 The Role of Business Case Analysis in Software Engineering Donald J. Reifer Guest Lecturer USC Center for Software Engineering USC C S E U niversity ofSouthern C alifornia C enterforSoftw are Engineering

PPT

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: PPT

10/22/2001 Copyright RCI, 2001 1

The Role of Business Case Analysis in Software Engineering

Donald J. Reifer

Guest Lecturer

USC Center for Software Engineering

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 2: PPT

10/22/2001 Copyright RCI, 2001 2

Why Write a Book on Software Business Cases?

• Over the years, I have observed that many software engineers don’t know how to justify proposed changes or improvements using either economic analyses methods or business cases

• In many of these cases, these engineers are trying to justify changes technically to managers who come from a non-technical background (financial, marketing, etc.)

• The book was written to serve as a textbook for teaching software engineers to win the war of the budget

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 3: PPT

10/22/2001 Copyright RCI, 2001 3

For Software, Change is Constant

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Agile methods

Streamlined processes

Best engineeringpractices

Metrics-basedmanagement

COTS-based systemsArchitecture-first

Process paradigms

Component-basedcomposition

Reuse/patterns Product-lines

Rapid developmentExperience

factory

Searching for ways to do the job faster, better and cheaperSearching for ways to do the job faster, better and cheaper

Page 4: PPT

10/22/2001 Copyright RCI, 2001 4

Impacts in Making Needed Changes Are Many

• Technical changes– Paradigms, methods and tools

engineers use to do the work

• Management changes– Infrastructure, methods & tools

managers use to plan, organize, staff, direct and control the work

• Organizational changes– Decision-making infrastructure

seniors used to establish vision and guide action

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 5: PPT

10/22/2001 Copyright RCI, 2001 5

Business Cases Focus on Quantifying Impact of Changes

• As understood by most, engineering decisions involve many options and difficult tradeoffs – May be several feasible solutions for the problem

– The optimal solution is determined by evaluating the tradeoffs in the many dimensions of the solution space

• Cost/schedule, functionality and performance envelopes

• Software engineering provides you the methods and tools to understand the tradeoffs and select the best answer (typically under constraints)

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 6: PPT

10/22/2001 Copyright RCI, 2001 6

This Role Is ControversialI cannot recommend this book to be part of the SEI Series on Software Engineering. First, it does not really address engineering issues. Rather, it discusses how business reasoning and models apply to a variety of issues confronting software organizations. This is of value and important to such organizations. However, it is somewhat outside of the scope of software engineering. So, in my judgment, it is outside the scope of the series, although relevant due primarily to cases or illustrations described in the manuscript.

----- SEI Reviewer ----- SEI Reviewer

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 7: PPT

10/22/2001 Copyright RCI, 2001 7

What Are we Going to Cover?

• Part I - Fundamental Part I - Fundamental ConceptsConcepts– Chapter 1Chapter 1: Improvement is

Everybody’s Business

– Chapter 2Chapter 2: Making a Business Case

– Chapter 3Chapter 3: Making the Business Case: Principles, Rules, and Analysis Tools

– Chapter 4Chapter 4: Business Cases that Make Sense

• Part II - The Case StudiesPart II - The Case Studies– Chapter 5Chapter 5 - Playing the Game of

Dungeons and Dragons: Process Improvement Case Study

– Chapter 6Chapter 6: Quantifying the Costs/Benefits: Capitalizing Software Case Study

– Chapter 7Chapter 7: Making Your Numbers Sing: Architecting Case Study

– Chapter 8Chapter 8: Maneuvering the Maze: Web-Based Economy Case Study

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Making the Software Business Case: Improvement by the Numbers

Page 8: PPT

10/22/2001 Copyright RCI, 2001 8

Coverage (Continued)• Part III - FinalePart III - Finale

– Chapter 9Chapter 9: Overcoming Adversity: More Than a

Pep Talk

• Appendix AAppendix A: Recommended Readings

• Appendix BAppendix B: Compound Interest Tables

• AcronymsAcronyms

• GlossaryGlossary

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 9: PPT

10/22/2001 Copyright RCI, 2001 9

View Software As A BusinessProfession 1998 2008 % Change

- Computer scientists 97,500 212,100 118- Computer engineers 299,300 622,100 108- Computer support specialists 429,300 868,700 102- Systems analysts 616,900 1,194,200 94- Database administrators 87,400 154,900 77- Paralegal personnel 136,000 220,400 62- Medical assistants 252,200 398,000 58- Human services workers 268,400 409,900 53- Residential counselors 189,900 277,800 46- Engineering managers 326,200 468,000 44- Medical records technicians 92,400 132,900 44- Dental assistants 228,900 325,400 42

Source: Bureau of Labor Statistics Fastest-Growing Occupations

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 10: PPT

10/22/2001 Copyright RCI, 2001 10

Understand the Software Industry is in Constant Turmoil

Marketplace modelin transition

USC

C S E University of Southern CaliforniaCenter for Software Engineering

End-user programming

Computer as an appliance

Collaboration viaseamless networks

Systems of systemsconcepts

Software continuesto provide the edge

dot.commeltdown

Page 11: PPT

10/22/2001 Copyright RCI, 2001 11

Improvement Framework

Time to Market Cost

Productivity Quality

Reduce Avoid/Cut

Increase Improve

There needs to be some compelling business reason for making an improvement, else it won’t be approved

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 12: PPT

10/22/2001 Copyright RCI, 2001 12

Making the Leap Forward

Innovators

Early Adopters

Early Majority

LateMajority

Laggards

Source: G. Moore, Crossing the Chasm

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Change takes time and Change takes time and is hard to accomplishis hard to accomplish

Page 13: PPT

10/22/2001 Copyright RCI, 2001 13

CMMI Level 5 - Technology Innovation Seven Step Process

• Establish improvement objectives

• Improvement proposal collection & analysis

• Identify innovations

• Perform cost/benefit analysis

• Perform pilot

• Select candidate improvements

• Provide feedback Source: Ahern, CMMI Distilled

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 14: PPT

10/22/2001 Copyright RCI, 2001 14

Challenges Associated with Making Organizational Changes

• Lack of incentives

• “Good of the firm” versus “Good of the project”

• Infrastructure shortfalls

• Few meaningful metrics

• Limited cash available

• Reward system must be altered

• Reward system must be altered to emphasize “good of firm”

• Policies, processes and decision making structure changes

• Must collect data to quantify impact of changes

• To get funded, must make compelling business case

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 15: PPT

4/18/97 Copyright RCI, 1997 15

Many Obstacles to Change• Organizations fight changes for many reasons

WHY CHANGE-WE’RE SUCCESSFUL

MIDDLE MANAGEMENT RESISTANCE

MIDDLE MANAGEMENT RESISTANCE

NEVERENOUGH TIME

IGNORANCE IS BLISS

ISLANDCULTURE

HACKER MENTALITY

NOT INVENTED HERE (NIH)

NEVERENOUGH $$

CUSTOMERINCENTIVES

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 16: PPT

10/22/2001 Copyright RCI, 2001 16

Making Changes: Eight Lessons Learned

• Tie improvement to organizational goals

• Emphasize making product-oriented improvements

• Demonstrate value that justifies improvements

• Make new processes how you do business

• Recognize major barriers are psychological & political

• Change your culture to one that rewards risk-taking

• If you don’t have the talent, buy it

• Use numbers to overcome post-decision dissonance

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 17: PPT

10/22/2001 Copyright RCI, 2001 17

Why Change - Five Good Reasons?• Keeping up with the competition

– Playing catch-up is always a motivation for change

• Achieving economic benefits– Having a compelling business reason also works

• Supporting new product needs– Tying change to a product need justifies investment

• Avoiding legal entanglements– Sometimes changes are needed to comply with the law

• Achieving efficiencies– Streamlining/simplifying process also justifies change

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 18: PPT

10/22/2001 Copyright RCI, 2001 18

Are You Ready for Change?• Examine the following:

– Consistency with business goals

– Compatibility with level of process maturity

– Consistency with corporate culture

– Compatibility with investment strategies

– Achievability within desired timetable

• If warranted, be willing to take the risk– The opportunity should be justifiable in terms

of the risk/returns

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 19: PPT

10/22/2001 Copyright RCI, 2001 19

Corporate Cultures Compared

• Seeks opportunity for improvement

• Action-oriented and willing to take risks

• Team-oriented

• Rewards innovation

• Learns from failure

• Creative, imaginative, pliant and flexible

• Prefers the status quo

• Avoids change and risk

• Territorial by nature

• Rewards followers, not innovators

• Penalizes failure

• Persistent, authoritative and rigid

Entrepreneurial CultureEntrepreneurial Culture Old-Fashioned Culture Old-Fashioned Culture

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 20: PPT

10/22/2001 Copyright RCI, 2001 20

Success is a Numbers Game

USC

C S E University of Southern CaliforniaCenter for Software Engineering

• Will this proposal save money, cut costs, increase productivity, speed development or improve quality?

• Have you looked at the tax and financial implications of the proposal?

• What’s the impact of the proposal on the bottom line?• Are our competitors doing this? If so, what are the

results they are achieving?• Who are the stakeholders and are they supportive of the

proposal? + + Many more tough questionsMany more tough questions

Answer Basic Business-Related QuestionsAnswer Basic Business-Related Questions

Page 21: PPT

10/22/2001 Copyright RCI, 2001 21

Business Cases Supply You with the Numbers

• Business CaseBusiness Case = the materials prepared for decision-makers to show that the proposed idea is a good one and that the numbers that surround it make sound financial sense– Most software engineers prepare detailed technical rather

than business justifications

– Many of their worthwhile proposals are rejected by management as a consequence

– Use of business cases to complement the technical case can greatly increase their chances of success

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 22: PPT

10/22/2001 Copyright RCI, 2001 22

Business Versus Technical CasesFactors (5 is best) Java C/C++- Core language features 2 4- Degree of standardization & portability 3 4- Object-oriented support 3 5- Reuse facilities (library, browser, etc.) 3 4- Web programming support 5 2- Optimizing compilers available 4 5- Bindings available 5 5- Rich libraries available 3 4- Compiler support tools available 4 5- Inexpensive visual tools available 3 3- Oriented toward your products 5 2

Score 40 43

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 23: PPT

10/22/2001 Copyright RCI, 2001 23

Business Versus Technical CasesFactors (5 is best) Java C++ - Popularity - improve resumes 5 5- Training opportunities available 5 4- Literature and books available 5 5- Consultants & subcontractors available 5 3 with language skills- Staff maintains competency in language/tools 2 4- Retooling and retraining costs 1 5- Transition costs associated with learning 1 5 curve (bring staff up to speed) ___ ___

Subtotal 24 31Combined Score 64 74

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 24: PPT

10/22/2001 Copyright RCI, 2001 24

The Business Planning Process

USC

C S E University of Southern CaliforniaCenter for Software Engineering

1. Prepare white paper

2. Demonstratetechnical feasibility

3. Conduct market survey

4. Developbusiness plan

5. Preparebusiness case

6. Sell the idea anddevelop support base

7. Get ready to execute

GQM Results

Idea or proposal

Proof ofConcept Approval to

go-ahead

Page 25: PPT

4/18/97 Copyright RCI, 1997 25

Aligning Goals as the First Step Goal - successful technology transition

Q1 - ready for use? Q2 - benefits quantified? Q3 - costs of useunderstood?

M1 - availability of tools M1 - cost avoidance in $ M1 - startup costsM2 - availability of M2 - time-to-market delta M2 - operational training M3 - quality delta costsM3 - availability of M3 - opportunity methods costsM4 - availability of infrastructure

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Use the G-Q-M Paradigm

Page 26: PPT

10/22/2001 Copyright RCI, 2001 26

Let’s Step Through the Process• Prepare white paper

– State what you are trying to do crisply

• Demonstrate technical feasibility– Let’s you prove the

idea’s value

– Let’s management see, smell and touch evidence that you can deliver as promised

• Conduct market survey– Determine the market

need for your idea

– Understand what the competition is doing and what your customers want

– Focus on market creation, not sharing

– Get to market first, be nimble and take risks to seize the opportunity

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 27: PPT

10/22/2001 Copyright RCI, 2001 27

More on the Process• Develop business plan

– Needed before idea will be funded

– Such plans summarize how you will make or save money, not how you’ll get the job done

• Prepare business case– Convince sponsor idea

makes both good technical and business sense

• Sell the idea– Package for sales/champion

• Get ready to execute– Plan the project thoroughly

– Start recruiting key staff

– Work communications and outreach

– Search out facilities to co-locate team and for demos

– Prepare your operational concepts

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 28: PPT

10/22/2001 Copyright RCI, 2001 28

Business Process Framework

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Business Planning Process

Tradeoff and Analysis Processes

Software Development Process

Analytical Methods

Models Guidelines for Decision-Making

Process The business planning process proceeds in parallel

Framework and interfaces with the software development process

“Principles, Rules and Tools for Business Case Development”

Page 29: PPT

10/22/2001 Copyright RCI, 2001 29

Nine Business Case Principles• Decisions should be made

relative to alternatives• If possible, use money as

the common denominator• Sunk costs are irrelevant• Investment decisions

should recognize the time value of money

• Separable decisions must be considered separately

• Decisions should consider both quantitative and qualitative factors

• The risks associated with the decision should be quantified if possible

• The timing associated with making decisions is critical

• Decision processes should be periodically assessed and continuously improved

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 30: PPT

4/18/97 Copyright RCI, 1997 30

Success Tactics• Address the cultural issues first - they’re the hardest

• Keep senior management informed of your progress

• Build alliances with programs and people

• Publicize successes and spread the word widely

• Mix it with the middle managers and critics

• Don’t be afraid to change in mid-stream

• Deliver something that you can brag about

• Be perceived as successful by others

• Work continuously to improve the improvement infrastructure you’ve set up

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 31: PPT

10/22/2001 Copyright RCI, 2001 31

Use Engineering Economics as its Analytical Basis

• Takes cost of money into account– A $$ today is worth

more than tomorrow due to inflation

• Takes compounding into account

• Normalizes future expenditures using current year dollars as a basis for comparison

• Lets you establish a minimum attractive rate of return

USC

C S E University of Southern CaliforniaCenter for Software Engineering

FW = P (1 + i)N PV = FW/(1 + i)N

Future WorthFuture Worth Present Value Present Value

Page 32: PPT

10/22/2001 Copyright RCI, 2001 32

Many Available Techniques

• Break-even analysis

• Cause and effect analysis

• Cost/benefit analysis

• Value chain analysis

• Investment opportunity analysis

• Pareto analysis

• Payback analysis

• Sensitivity analysis

• Trend analysis

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Analysis TechniquesAnalysis Techniques

Source: Boehm, SoftwareEngineering Economics

Page 33: PPT

10/22/2001 Copyright RCI, 2001 33

Example - Cost Benefit Analysis• Want to bring in training to learn a modern set of

methods• How would you justify the investment?

– Should you use Cost Benefits, ROI or other approach?

• How would you pay for the training? – Is this a capital, project or customer expense?

• What are the windows of opportunity and how would you capitalize on them?– Is there State funds available? Can we partner? Is there

mid-year or year-end funds available?

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 34: PPT

10/22/2001 Copyright RCI, 2001 34

Doing a Cost Benefit Analysis

USC

C S E University of Southern CaliforniaCenter for Software Engineering

• Non-recurring costs– Course acquisition ____

– Course conduct ____

• Recurring costs– Course maintenance ____

– Continuing education ____

• Tangible savings– Cost avoidance ____

– Cost savings ____

• Intangible savings– Reduced turnover ____

– Improved morale ____

Total ____

Total ____ Total Costs ____

Total ____ Total Benefits ____

Total ____

Cost/Benefit Ratio = PVPV (Total costs ($)$)/Total Benefits ($)$))

Page 35: PPT

10/22/2001 Copyright RCI, 2001 35

Getting Management Approval• Why should they invest in training instead of other

alternatives?– There needs to be a compelling business reason, else why

make the effort– This must be the most attractive option examined

• Why invest now instead of some later time?– Need to show problem is important & funds are available

• What do I have to do if I say yes to the proposal?– Must show them that their efforts will be minimal; you’ve

done all of the leg work and all they have to do is sign

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 36: PPT

10/22/2001 Copyright RCI, 2001 36

Many Supportive Tools

• Decision support systems– Tax planning and schedules

– Trade studies and analysis

• Spreadsheets– Comparative analysis

– Trade studies and analysis

• Software cost models– Parametric analysis

– Trade studies and analysis

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Software packagesSoftware packages

Page 37: PPT

10/22/2001 Copyright RCI, 2001 37

Including Estimating Models like COCOMO II - Of Course

SizingModel

EstimatingModel

RiskModel

* Benchmark analysis * Parametric analysis* Comparative analysis * Trade studies* Life cycle cost analysis * “What-if” analysis

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 38: PPT

10/22/2001 Copyright RCI, 2001 38

Business Case Information Needs• Business cases

– Recurring costs

– Non-recurring costs

– Tangible benefits

– Intangible benefits

• Benchmarks– Competitive comparisons

– Industry norms

• Metrics– Management measures

• Financial data– Inflated labor costs

– Labor categories/rates

– Overhead/G&A rates

– Past costs/performance

– Tax rates/legalities

• Marketing information– Demographic data

– Market position

– Sales forecast

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 39: PPT

10/22/2001 Copyright RCI, 2001 39

Plan to Emphasize Cost Avoidance

• Justify using cost avoidance not reduction

• Keep cost & productivity considerations separate

• Tap money when it becomes available

• Know what cost you can control and who controls the others

• Package numbers for consumption by seniors

• Don’t assume the numbers won’t be scrutinized

• Don’t assume you know what your current costs are and how they are allocated to cost centers

• Don’t confuse management by combining cost and profit in same proposal

• Don’t mix cost accounts when justifying ideas

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Things to DoThings to Do Things Not to Do Things Not to Do

Page 40: PPT

10/22/2001 Copyright RCI, 2001 40

Packaging Business Cases for Management Consumption

• Convincingly summarize the numbers at the start

• Define your terms precisely - communicate meaning using examples

• Be conservative with your numbers

• Quantify tangible benefits in monetary terms

• Don’t mix capital expenditures with project budgets

• Use ranges for cost/benefits whenever possible

• Portray the PV of your benefits in this year’s dollars

• Focus attention on the business, not technical issues

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 41: PPT

10/22/2001 Copyright RCI, 2001 41

When Communicating with Senior Managers, Remember

• They are like elephants, they never forget a number once uttered

• They will hear only what they want to hear

• Simple is better - package charts with at most five bullets

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 42: PPT

10/22/2001 Copyright RCI, 2001 42

Chapter 5 - Justifying Process Improvement

• Purpose of case– Justify investments in process improvement

• Goals of effort– Develop numbers that get management to buy into

near- and long-term investment tactics

• Constraints– Deal with the firm’s related process improvement

folklore, biases and history

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 43: PPT

10/22/2001 Copyright RCI, 2001 43

Organizational Structure

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Senior Management

Engineering Field SupportManufacturing Program Mgmt

Process GroupQA Group

Senior Staff

* Systems * Fabrication * Field service* Software * Assembly * Training* Digital design * Production * Test & evaluation

Project A

Line of BusinessManagement

* Fund functional groups* Coordinate * Facilitate

Yourhome

Aerospace firm

Page 44: PPT

10/22/2001 Copyright RCI, 2001 44

History of Process Improvement

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Maturity Level

1985 1987 1989 1991 1993 1995 1997 1999 Now

Level 3 -a customerrequirement

Reach Level 3 - corporate goal

5

4

3

2

1

Processbudgetaxed

Acquisitionfalls through

Firm positionedto be acquired

Process groupreformed

Seniorsget serious

about process

Aim- ReachLevel 4

in 2 years

Page 45: PPT

10/22/2001 Copyright RCI, 2001 45

The SEI Software CMM• Used by many to characterize the maturity of the

processes used to develop software• Important because:

– Employed as a means to benchmark firms– Acts as a framework for structuring improvements– Shown to have positive effect on productivity,

quality and cost– Makes it easier to tackle a big software job like

the one you are working on

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 46: PPT

10/22/2001 Copyright RCI, 2001 46

The Software

CMM

- Requirements management- Software project planning- Software project tracking and oversight- Software subcontract management- Software qualify assurance- Software configuration management

- Organization process focus- Organization process definition- Training program- Integrated software management - Software product engineering- Inter-group coordination- Peer reviews

- Quantitative process management - Software quality management

- Defect prevention- Technology change management - Process change management

3

2

4

5

Contains:- 5 Maturity Levels- 18 Key Process Areas- 318 Key Practices

Page 47: PPT

10/22/2001 Copyright RCI, 2001 47

CMM Lessons Learned • Takes 18 to 30 months to move a maturity level

– From Level 1 to 2 - average of 25 months

– From Level 2 to 3 - average of 23 months

– From Level 3 to 4 - average of 36 months

• Average investment to move up a maturity level is several million

• The gains attributable to early error detection and correction are substantial (20X cheaper)

• The average increase in productivity attributable to process improvement is 10 percent

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 48: PPT

10/22/2001 Copyright RCI, 2001 48

Software Improvement Strategy

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Strategy

Discipline theSoftware Process

StandardizeProducts

Professionalworkforce

Quicken use ofnew technology

* Proactive, not * Architecture- * Career paths * Project sponsors reactive based * Skill-based for IR&D* Optimizing * Massive reuse education and * Good idea* CMM-based * Open systems training programs* ISO-certified * Product lines * Distance * Technology * Components learning roadmap

Page 49: PPT

10/22/2001 Copyright RCI, 2001 49

More Background Information• Overall experience

– Workforce averages 20 years experience

• Staff capabilities and morale– Good - newcomers

more open to change

• Education & training– Myriad of training

opportunities available

• World-class facilities and environment– Undercapitalized, but

making improvements primarily to reduce personnel turnover

• Technology adoption– IR&D for software

tripled after major client criticized management

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 50: PPT

10/22/2001 Copyright RCI, 2001 50

Rules of Engagement• Let the numbers do the talking• Don’t assume that Program Managers understand

software (they are clue-less)• Justifications must be made at the project level• You must address past experience, both pro & con• Your plan must focus on near-term results• Any software processes must be compatible with your

existing management infrastructure• You must track/demonstrate accomplishment of goals

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 51: PPT

10/22/2001 Copyright RCI, 2001 51

Process Group Organization

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Manager (New)

ProcessDeveloper (Vacant)

ProcessDeveloper (Vacant)

MetricsAnalyst(New)

ProjectLiaison

(Consultant)

ProjectLiaison

(Consultant)

CurriculumDeveloper

(Part-Timer)

CurriculumDeveloper

(Part-Timer)

Page 52: PPT

10/22/2001 Copyright RCI, 2001 52

Start - Why Focus on Process?

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Why (Goal):

Questions:

Metrics:

Models:

Increase Productivity and Meet Customer Requirements

Measured What Why this how? option? option?

SLOC/hour Do Process Other ROI Nil improvement approach

COCOMO SEI Maturity Non-discounted Model ROI

Page 53: PPT

10/22/2001 Copyright RCI, 2001 53

Recommended Process

USC

C S E University of Southern CaliforniaCenter for Software Engineering

1. Involve theStakeholders

2. Develop avision and

strategy

3. Define thework to beperformed

4. Buildpartnerships

5. Promote theresults

* Expectations* Measures of success

Visionstatement

* WBS dictionary* Game plan

Positivepublicrelations

Pilot results

Page 54: PPT

10/22/2001 Copyright RCI, 2001 54

Work Breakdown Structure

USC

C S E University of Southern CaliforniaCenter for Software Engineering

• Process development

• Education & training

• Process roll-out/project support

• Process assessment

• Promotion & outreach

• Support environment

1.1 Write processes/practices1.2 Review processes/practices1.3 Improve process/practices2.1 Develop/update courseware2.2 Conduct courses3.1 Pilot processes/gather feedback3.2 Provide support to projects3.3 Deploy metrics/statistical controls3.4 Perform statistical analysis4.1 Conduct periodic assessments5.1 Promote results5.2 Publish newsletter, articles, and so on6.1 Establish web site6.2 Establish process asset library

Page 55: PPT

10/22/2001 Copyright RCI, 2001 55

Process Group Budget = $2.4M/year• Process development

– 4 employees ($700K)

• Education & training– 2 part-timers ($200K)

– $250K for seminars

• Process roll-out/project support– 2 consultants ($450K)

– Retirees with credibility

• Process assessment– $200K for outside

facilitator

• Promotion and outreach– $250K to prepare news-

letter, work with clients and attend conferences

• Support environment– $350K for web site

development

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 56: PPT

10/22/2001 Copyright RCI, 2001 56

Proposed Operational Concepts

USC

C S E University of Southern CaliforniaCenter for Software Engineering

• Process development

• Transition

• Deployment

• CM

• QA

• Distribution management

• User support

• Exploit industry experience by hiring outside assessment firm

• Pilot to demo feasibility, do things middle managers think important

• E&T JIT; dedicated project liaisons

• Steering group CCB; shared/reused assets distinction

• Use process to assure processes

• Access via web site

• FAQ; metrics; dedicated support for users

Page 57: PPT

10/22/2001 Copyright RCI, 2001 57

Your Justification Approach• Justify process budget by:

– Showing the impact of accelerating productivity improvement from 10% to 20% annually

– Looking at impact of early error detection/correction

– Assessing the impact of COTS usage strategy– Evaluating the impact of moving to an architecture-

based reuse strategy

• Show intangibles as added value

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 58: PPT

10/22/2001 Copyright RCI, 2001 58

Accelerating Productivity from 10 to 20 Percent Annually

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Year 1 Year 2 Year 3 Year 4 Year 5Current productivity(SLOC/staff-month)(10% nominal gain)

100 110 121 133 146

Accelerated gain (20%) 120 144 173 208Additional number of

SLOCs that can begenerated via

acceleration assuming600 engineers

72,000 165,600 288,000 446,400

Cost avoidance($50/SLOC)

$3.6million

$8.3million

$14.4million

$22.3million

Cumulative costavoidance

$3.6million

$11.9million

$26.3million

$48.6million

Conservative estimate of savings is $4 million/year

Page 59: PPT

10/22/2001 Copyright RCI, 2001 59

Productivity Versus Cost• Cost and productivity are related, but are

influenced by different factors• To increase your productivity, you should

address:– Staff skills/expertise, process maturity and tools

• To reduce cost, you should attack:– Overhead, scope of the job and efficiencies

• There are cases where improvements in your productivity result in increased costs

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 60: PPT

10/22/2001 Copyright RCI, 2001 60

Early Error Detection/Correction• Benefit of achieving Level 4 is a reduction in errors

by a factor of between 20 and 25% – Majority caught early in requirements and design phases

• Cost avoidance associated with early defect removal is $20/defect

• For the 12 major programs in your firm, you compute cost avoidance is 1.2 million calculated as follows:

USC

C S E University of Southern CaliforniaCenter for Software Engineering

(12 jobs/year)(10 defects1/KSLOC)(500KSLOC/job) = 60Kdefects/year(60K defects/year)($20/defect (avoidance)) = $1.2 million/year

1 As jobs enter test and evaluation; goal is 0.1 defect/KSLOC on delivery

Page 61: PPT

10/22/2001 Copyright RCI, 2001 61

Exploitation of COTS• Benefits of enterprise-wide licensing can be

substantial– At the corporate level, this includes major software

packages like DBMS

– At the project level, this includes software tools and specialized software like operating systems

• As part of your Level 4 initiative, you plan to put in a licensing process that allows you to lever your buying power and save $1 million/year

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 62: PPT

10/22/2001 Copyright RCI, 2001 62

COTS Pluses and Minuses

• Cheaper; but does not come for free

• Available immediately

• Known quality (+ or -)

• Vendor responsible for evolution/maintenance– Don’t have to pay for it

• Can use critical staff resources elsewhere

• License costs can be high

• COTS products are not designed to plug & play

• Vendor behavior varies

• Performance often poor

• Vendor responsible for evolution/maintenance– Have no control over

the product’s evolution

USC

C S E University of Southern CaliforniaCenter for Software Engineering

PlusesPluses Minuses Minuses

Page 63: PPT

10/22/2001 Copyright RCI, 2001 63

COTS Critical Success Factors• Successful firms:

– Make COTS-based system tradeoffs early– Try before they buy– Avoid modifying COTS at all costs– Reconcile products with their architectures– Emphasize use of standards and open interfaces– Understand that COTS doesn’t come for free– Plan to manage parts/technology obsolescence– Make the vendor a part of the team, whenever possible– Negotiate enterprise-wide licenses for COTS products– Influence future paths the vendor will take– Address the cultural and process issues

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 64: PPT

10/22/2001 Copyright RCI, 2001 64

COTS Success Strategies• Process

– Merge COTS life cycle into your organizational framework

– Make needed tradeoffs– Think both technical and

business issues

• Products– Fit COTS components into

product line strategies– Maintain open interfaces– Manage technology refresh

• People– Make COTS vendors a

part of your team– Increase awareness of

COTS experience– Provide workforce with

structure and information

• Institutional– Improve purchasing and

licensing processes– Maintain market watch– Capture past performance

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 65: PPT

10/22/2001 Copyright RCI, 2001 65

Architecture-Based Reuse• Architectures are the framework you use to pull your

product lines together– They are domain-specific and standards-based– They encapsulate generality and variability

• They guide selection & use of high-leverage assets– Establish the building blocks and codes

• They allow you to take full advantage of both COTS components and reusable assets– Cost to build for reuse must be factored into analysis– Benefits of reuse adhere to the 3 times rule

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 66: PPT

10/22/2001 Copyright RCI, 2001 66

Three Views of an Architecture

Technical Architecture- Information processing standards- Human-computer interface standards

System Architecture- Components and topology- Networks and connectivity- Capacity/performance

Operational Architecture - Information needs - User functions - Performance bounds

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 67: PPT

10/22/2001 Copyright RCI, 2001 67

Radar Architecture Example

Platform

Posix kernel Multi-threading executive

Activity Managers

Measurement Functions

SensorManager

Libraries

Mathematical libraries

InputsInputs

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 68: PPT

10/22/2001 Copyright RCI, 2001 68

Reuse-Based Development Paradigm

DomainAnalysis

Domain Design

Domain Model

AssetDevelopment

Requirements Software Integration Operations & Analysis Development & Test Maintenance

Software Reuse LibraryArchitecture

Project-specific deliverables

Products for sale

Scope

Requirements

Purchased products

Domain EngineeringAssets

Assets

Applications Engineering

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 69: PPT

10/22/2001 Copyright RCI, 2001 69

COCOMO II Reuse ModelESLOC = ASLOC [AA + AAF(1 + 0.02(SU)(UNFM))] AAF < 0.5 100

ESLOC = ASLOC [AA + AAF + (SU)(UNFM)] AAF > 0.5 100

Where: AAF = 0.4 (DM) + 0.3 (CM) + 0.3 (IM) SU = Software Understanding

(zero when DM = 0 & CM = 0) UNFM = Programmer Unfamiliarity AA = Assessment and Assimilation ASLOC = Adapted SLOC ESLOC = Equivalent new SLOC

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 70: PPT

10/22/2001 Copyright RCI, 2001 70

The Impact of Reuse

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Without Reuse With ReuseNominal Development Time (months) 30 23.4Nominal Effort (staff-months) 845.3 383.7Shortest Development Time (months) 22.5 17.6Shortest Development Time Effort 1208.7 548.7

Application Without Reuse With ReuseReal-time executive 10,000 500Scheduler 25,000 500Real-time data acquisition 50,000 10,000Sensor data processing 50,000 21,000Data analysis and alarms 25,000 10,000

TOTAL 160,000 42,000

Conservative estimate of savings is $10 million/year

Page 71: PPT

10/22/2001 Copyright RCI, 2001 71

Reuse Cost/Benefit Worksheet• Non-Recurring Costs

– Domain engineering - done on IR&D

– Reusable assets - project funded

– Infrastructure development - done by process group

• Recurring Costs (per year)– Architecture maintenance $200K

– Asset maintenance 500K

– Process updates 100K

• Tangible Benefits– Cost avoidance $10 million

• Intangible Benefits– Deliver 12 months earlier than the

norm

– 10 times reduction in efforts at delivery

– Architecture stable, proven and can be demonstrated to clients

– Scheduling algorithms can be optimized and improved

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Total Costs $800K Total Benefits $10 million

Page 72: PPT

10/22/2001 Copyright RCI, 2001 72

Strategy Yields Positive Returns Early Error ReductionEarly Error Reduction• Cost avoidance = $1.2M/year• Increased customer satisfaction based on quality

Exploitation of COTSExploitation of COTS• Cost avoidance = $1M/year• Improved maintenance and license leverage with vendors

Productivity ImprovementProductivity Improvement• Cost avoidance = $4M/year• Improved capabilities & capacity

Systematic ReuseSystematic Reuse• Cost avoidance = $10M/year• Faster to market• 10X quality• Just starting – expect to reap benefits within 3 years • Process can be built with reuse in mind

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 73: PPT

10/22/2001 Copyright RCI, 2001 73

Return-On-Investment Is HighTangibles

ROI = Annual Benefits Investment

ROI = $6.2M $2.4M ROI > 250% per year

Assumptions: cost avoidances on page 3realized with exception of reuse whichkicks in after we reach CMM level 4.

Intangibles• Better product quality• Quicker to market• Increased customer

satisfaction• Improved employee morale• Responds directly to

customer requirements

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 74: PPT

10/22/2001 Copyright RCI, 2001 74

When Briefing Management - Always Ask For Help

• Reaching Level 4 will take 2 years assuming things go as planned

• The major challenge is to get those in the middle on our side (bonus is a good start)

• There are a number of operational challenges– Need help in staffing process group – getting

requisitions through the system is tedious

– Need help in licensing – buyer, legal and staff support

• Must keep the momentum moving

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 75: PPT

10/22/2001 Copyright RCI, 2001 75

Case Study - Final Thoughts• Process improvement is a good investment• To get management support, a good action plan and

solid business case is needed• When justifying initiatives, cost avoidance is preferred

to cost reduction• When determining benefits, categorize them as

tangibles and intangibles• Be conservative, but make your case using the

numbers to justify the investments

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 76: PPT

10/22/2001 Copyright RCI, 2001 76

Final Points Before We Adjourn

• Numbers can be your ally when asking for money

• When asking for money, talk your management’s language not yours

• Don’t be casual about numbers, be precise

• To be successful, be perceived as successful

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 77: PPT

10/22/2001 Copyright RCI, 2001 77

You Can Be Successful

• Change only if it makes good business sense

• Don’t become enamored with the technology

• Get everyone involved - but not too involved

• Focus changes on product developments

• Look to the future, not the past (sunk costs)

• Be patient and don’t reinvent the wheel

• Do the easy things first to establish credibility

• Be satisfied with a 90 percent solution

• The sum of many small successes is a big success

USC

C S E University of Southern CaliforniaCenter for Software Engineering

GuidelinesGuidelines

Page 78: PPT

10/22/2001 Copyright RCI, 2001 78

Think Like a Business-Person• Talk like a business-person

– Translate technical jargon into business goals

• Act as a business-person– Assess both the business and technical aspects of the

proposal

– Show your bosses you can run a business operation

• Be a business-person– Focus on the bottom-line using the numbers when you

can to make decisions that are good for the firm

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 79: PPT

10/22/2001 Copyright RCI, 2001 79

Lots of Available Web ResourcesTopic Web Resources

Engineeringeconomics andbusiness cases

www.isye.gatech.edu (Georgia Institute of Technology) - The WWW virtual library of industrial engineering with information

on academic programs, conferences, courses, publications whichemphasize their engineering economics core expertise area

Computereconomics andbusiness cases

http://info.berkeley.edu/resources/infoecon (UC Berkeley) - Economics of the Internet with pointers to sites on E-Commerce, E-

Publishing, intellectual property, etc.www.computereconomics.com - IT cost management support including industry benchmarks- E-Business strategies and market forecastswww.hbsp.harvard.edu (Harvard Business School) - Access to case studies on E-Commerce and the Internet, change

management, entrepreneurship and new technologySoftwareeconomics andbusiness cases

http://sunset.usc.edu (University of Southern California) - Information on cost estimating/analysis and the COCOMO suite- Access to software downloads (COCOMO and code counters)www.sei.cmu.edu (Software Engineering Institute) - Information on their Team Software Process (TSP) and Software

Engineering Measurement & Analysis (SEMA) effortswww.software.org (Software Productivity Consortium) - Practical measurement techniques including controlled access to their

guidebooks, case studies and lessons learned reportsAddison-Wesleysite for this book

www.aw.com/softwarebusinesscases - Updates to this book, student exercises and pointers to additional

useful information

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Page 80: PPT

10/22/2001 Copyright RCI, 2001 80

Chat Session - 10/29/2001• Scheduled for 7 to 8:20 am on 10/29/2001

• Provide me your questions prior to end of the week– My email is [email protected]

• I will sort them and develop answers over the weekend

• Hope this lecture has been stimulating

USC

C S E University of Southern CaliforniaCenter for Software Engineering

THANKS AND HAVE FUN

Page 81: PPT

10/22/2001 Copyright RCI, 2001 81

Parting Remarks

USC

C S E University of Southern CaliforniaCenter for Software Engineering

Its time for IBM to perform and then talk, instead of talk and then perform

Louis Gerstner Jr., CEO IBMLouis Gerstner Jr., CEO IBM

The chief business of the Americanpeople is business (not technology).

Calvin CoolidgeCalvin Coolidge PresidentPresident

By working faithfully 8 hours a day, you mayeventually get to be a boss and work 12 hours a day.

Robert Frost, PoetRobert Frost, Poet

All managementis a numbers game John Welch, Jr.,John Welch, Jr., CEO GECEO GE

Have fun, be successful DonDon