35
PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Embed Size (px)

Citation preview

Page 1: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

PSM Whitepaper:Systems Engineering

Technical DebtBob Epps

Lockheed Martin CorporationMarch 14, 2012

Page 2: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt Observations“Agile Project Management”, Jim Highsmith, second edition

Cost

of C

hang

e (C

oC)

Years

1 2 3 4 5 6 7 8

ProductRelease

Customer Responsiveness

Actual CoC

Optimal CoC

Technical Debt

Page 3: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Management of Technical Debt”. Steve McConnell

– “ ‘Technical Debt’ refers to the delayed technical work that is incurred when technical short cuts are taken, usually in pursuit of calendar driven software schedules. Just like financial debt, some technical debt can serve valuable business purposes. Other technical debts are simply counter productive. The ability to take on debt safely, track their debt, manage their debt and pay down their debt varies among organizations. Explicit decision making before taking on debt and more explicit tracking of debt are advised”

Page 4: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Management of Technical Debt”, Steve McConnell

Summary of Kinds of DebtNon Debt

Features backlog, deferred features, cut features, and so on. Not all incomplete work is debt. These are not debt because they do not require interest payments

DebtI. Unintentional Debt. Debt incurred unintentionally due to low quality

II. Intentional Debt. Debt incurred intentionally II.A Short-Term Debt. Short Term Debt, usually incurred reactively, for tactical reasons II.A.1 Focused Short Term Debt. Individually identifiable shortcuts(like a car loan) II.A.2 Unfocused Short-Term Debt. Numerous tiny shortcuts(like a credit card)

II.B Long-Term Debt. Long-term debt, usually incurred proactively, for strategic reasons

Page 5: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Management of Technical Debt” Steve McConnell

– “ The term ‘technical debt’ was coined by Ward Cunningham to describe the obligation that a software organization incurs when it chooses a design or construction approach that’s expedient in the short term but that increases complexity and is most costly in the long term”

– There are two kinds of technical debt• Type I, Debt incurred unintentionally

– Inexperienced individuals produces error prone results

• Type II, Debt incurred intentionally– Conscious decision to optimize for the “present” rather than the

“future”

Page 6: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Management of Technical Debt”, Steve McConnell

• Type II, Debt incurred intentionally– “Short-Term” Debt (Type II.A)

» A company takes on a short term debt when it has the money; it just does not have it now.

» Short term debt is expected to be paid off frequently» Focused Short-Term Debt(Type II.A.1)» Unfocused Short-Term Debt (Type II.A.2)

• Should be avoided

– “Long-Term” Debt(Type II.B)» A company takes on strategically and proactively» Primary rationale is that the development work “today” is seen as more

expensive than the cost in the future.» Example:

• Responding to “Time to Market” pressures• Preservation of Startup capital• Delaying Development expense

– Debt Service» The “interest” charged for incurring the debt

Page 7: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Management of Technical Debt”, Steve McConnell

Communicating about Technical Debt

• Shift from Technical vocabulary to a Financial vocabulary• Use a projects Maintenance budget as a rough proxy for

its technical debt service load• Discuss Debt in terms of “money” instead of “features”• Be sure you’re taking the right kind of debt• Treat the discussion of Debt as an ongoing dialog rather

than a single discussion

Page 8: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Types of Debt“Managing Software Debt: Building for Inevitable Change”, Chris Sterling

• Technical Debt– These are activities that a team or team members choose not to do well now and

will impede future development if left undone• Quality Debt

– There is a diminishing ability to verify the functional and technical quality of software

• Configuration Management Debt– Integration and release management becomes more risky, complex and error-

prone• Design Debt

– The cost of adding features is increasing toward the point where it is more than the cost of writing from scratch.

• Platform Debt– The availability of people to work on software changes is becoming limited or

cost-prohibitive.

Page 9: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

70%

85%

95%Committed Costs

Cost to E

xtract

Defects

3X-6X

20X-100X

500X-1,000X

The Cost of Undetected Defects

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Cu

mu

lati

ve P

erce

nta

ge

of

Lif

e-C

ycle

Co

st

15%

Design

20%

Development 50%

Production/Test

100%

Operation Disposal

Concept

8%

Reference: Defense Systems Management College (DAU)Time

Page 10: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Levels of Architecture(Conceptual to Logical to Physical Mapping)

Conceptual Level

Logical Level

Physical Level

System

Elements

Components

Page 11: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Low

Moderate

Medium

High

Fidelity

Response Time

Size

Factor X

Reliability

ResourceUtilization

Maintainability

Factor Z

RequiredProposed

Is Technical Debt a System complexity factor?

Page 12: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Basic ParallelProcess

5ms

10ms 10ms 5ms 15ms

3ms 5ms

15ms

Sample of Timing Allocationto Processes

Design decision thatIncurs Technical Debt

Page 13: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Workshop Exercise # 1Identifying Technical Debt

• Development profile (Perfect World)• Defect Density profile• Development profile(Real World)• Mapping Development Profiles

Page 14: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost(Perfect World)%

Effo

rt p

er P

hase

Page 15: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Defect Insertion Defect detection & Removal

DesignDefects

IntegrationDefects

Typical Defect Profiles

ImplementationDefects

Classification of Defects

Page 16: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost(Real World)%

Effo

rt p

er P

hase

Page 17: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost%

Effo

rt p

er P

hase

Page 18: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost%

Effo

rt p

er P

hase

TechnicalDebt?

TechnicalDebt?

TechnicalDebt?

TechnicalDebt?

Page 19: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost%

Effo

rt p

er P

hase

TechnicalDebt?

TechnicalDebt?

Better or Worse?

Page 20: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

Development Cost%

Effo

rt p

er P

hase

TechnicalDebt?

TechnicalDebt?

Better or Worse?

Page 21: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Analysis Design Implementation Test Integration

COTS Integration%

Effo

rt p

er P

hase

TechnicalDebt?

Page 22: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Enabling Agility by Strategically Managing Architectural Technical Debt”, Ipek Ozkaya

– “Practices intended to speed up the delivery of value to users, however, often result in high rework costs that ultimately offset the benefits of faster delivery, especially when good engineering practices are forgotten along the way. The rework and degrading quality often is referred to as technical debt”

– “For example, through our work on architecture-centric engineering, we often encounter projects that defer modifiability requirements, specifically portability.”

Page 23: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Enabling Agility by Strategically Managing Architectural Technical Debt”, Ipek Ozkaya

– “Our current work focuses on architectural technical debt, which involves architectural decisions made to defer necessary work during the planning or execution of software projects, such as short-cuts taken in designing the structure of the system that may require rework.”

– “We are particularly interested in identifying the measureable aspects of architectural technical debt by exploring dependency analysis”

Page 24: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt “Enabling Agility by Strategically Managing Architectural Technical Debt”, Ipek Ozkaya

– “By the end of this project, we will produce a model for managing technical debt that will allow the incurrence of some debt to increase delivery tempo when needed, but prevent too much accumulation, which would impede the ability to deliver.”

Reference: “Enabling Agility through Architecture”, Nanette Brown, Robert Nord, Ipek Ozkaya; CrossTalk-Nov/Dec 2010

Page 25: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

White paper Outline

• Overview of Systems Engineering Technical Debt– Types of Debt– Technical Debt definitions– Relationship between SE Technical Debt & SE

Leading Indicators• SE Leading Indicators

– http://www.psmsc.com/Downloads/Other/SELI-Guide-Rev2-01292010-Industry.pdf

• Mapping of SE Leading Indicators to SE Technical Debt

Page 26: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

White paper Outline(continuation)• Software Technical Debt principles

transferable to Systems Engineering• Implication of Technical Debt to Program

Types– System Development– NDI Integration

• COTS• GOTS• Reuse

– Operation& Maintenance/Sustainment

Page 27: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

White paper Outline(continuation)

• Identify sources and methods of measurement of Technical Debt within the Systems Engineering Life Cycle– System Requirements Analysis– System Architectural Design– System Implementation– System Integration, Verification and Validation– System Transition(Deployment)– System Operations & Maintenance

Page 28: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

White paper Outline(continuation)

• Identification of Implication of Systems Engineering Technical Debt to Software and Hardware Elements– System Requirements– System Partitioning– System Interfaces

Page 29: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Basic ParallelProcess

5ms

10ms 10ms 5ms 15ms

3ms 5ms

15ms

Sample of Timing Allocationto Processes

Design decision thatIncurs Technical Debt

Page 30: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

White paper Outline(continuation)

• Technical Debt imposed by other disciplines to Systems Engineering– Customer– Sub Contractors– Program Management– Finance

• How to Measure & Manage SE Technical Debt– Types of Measures– Management techniques

Page 31: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Appendix• Glossary of Terms• Summary of Kinds of SE Technical Debt

– Unintentional Debt– Intentional Debt

• Short term Debt• Long Term Debt

• Summary of Types of Debt

Page 32: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt Action Plan• Draft Whitepaper annotated Outline• Solicit contributions to Whitepaper from

Workshop Participants• Solicit collaboration with appropriate INCOSE

working group

Page 33: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Workshop Participants & Other Potential White Paper Contributors

• Mike Bandor• Alejandro Bianchi• Bill Curtis• Mike Denny• Bob Epps• John Ertischweiger• Cheryl McIntyre• John Murdoch

• Alain Picard• Garry Roedler• Jim Stubbe• INCOSE Working Groups

– Affordability– Architecture– Measurement– Process Improvement

Page 34: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt Action Plan• Conduct virtual meeting with contributors to

review outline and kick-off , prior to April 2012• Conduct virtual meetings with contributors

twice a month

Page 35: PSM Whitepaper: Systems Engineering Technical Debt Bob Epps Lockheed Martin Corporation March 14, 2012

Technical Debt Action Plan• Consolidate white paper draft, no later than

end of May, 2012• Provide to PSM and INCOSE for two week

review period• Final review of updated white paper, no later

than end of June, 2012• Presentation & comments on Technical Debt

Whitepaper during July, 2012• Release Technical Debt Whitepaper no later

than September 2012