cse 7315 - sw project management / module 3 - product development lifecycles copyright © 1995-2004,...

71
Slide # 1 CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 January 6, 2004 SMU CSE 7315 / NTU SE 584- N Planning and Managing a Software Project Module 03 Product Lifecycles

Upload: angelica-lloyd

Post on 18-Jan-2016

219 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

Slide # 1CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03

January 6, 2004

SMU CSE 7315 / NTU SE 584-N

Planning and Managing a Software Project

Module 03Product Lifecycles

Page 2: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 2

CSE7315M03

Goal of This Module

• To examine lifecycles in general and product development lifecycles in particular

• To examine the context in which software is developed and explore key issues that affect the success of the software project

Page 3: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 3

CSE7315M03

RelationshipProduct Development Lifecycle

Software Development Lifecycle

Software Development Lifecycle

Software Development

Lifecycle

Software Development Lifecycle

Page 4: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 4

CSE7315M03

What is a Lifecycle?

Lifecycle: the period of time during which a process occurs. Generally, this begins with an initial concept and ends with a

final termination.

Lifecycle: the context of a process

Lifecycle: the top level view of a process

Page 5: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 5

CSE7315M03

Any Kind of Process Has a Lifecycle

• We are concerned with lifecycles for product development and for software development

• But first we will look at some general issues

References: SEI Models of Software Evolution: Life Cycle and Process (SEI Curriculum Module SEI-CM-10-1.0).

Page 6: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 6

CSE7315M03

General Model of a Lifecycle

• A sequence of phases or time periods

• Milestones mark the boundaries between phases

• Why is it called a cycle?

Phase 2 Phase 3 Phase 4 Phase nPhase 1 ....

Milestone MilestoneMilestone MilestoneMilestone Milestone

Page 7: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 7

CSE7315M03

A Lifecycle Example

Sophomore Junior SeniorFreshman

Exams GraduationExamsEnrollment

Exams

Page 8: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 8

CSE7315M03

Another Example of a Lifecycle

....

AdulthoodGestation ChildhoodConcept

Exploration

PubertyBirthMeeting Conception

• Not all phases are equal in length

• Not all boundaries are exact

• Not all details of each specific instance are equal, even though the same general lifecycle model may apply to each case

Page 9: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 9

CSE7315M03

Each Phase is a Miniature Lifecycle in Itself

....

AdulthoodGestation ChildhoodConcept

Exploration

.... Pre-Teen“Terrible

Twos”Infancy

Page 10: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 10

CSE7315M03

Alternative Lifecycle Concepts

Phase 2

Phase 3

Phase 4

Parallel

phases

Phase 1

Imprecise Boundaries

Adulthood SenilityPhase 2Phase 3

Phase 4

Phase 1

Overlapping phases

Repeated Cycles

Page 11: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 11

CSE7315M03

A Lifecycle is Simply a Model for Understanding Processes• There is no “right” or “wrong”

definition of a lifecycle• But they all tend to share certain

common traits, such as phases, milestones, and time periods

• For product development, we tend to incorporate additional concepts into our lifecycle models

Page 12: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 12

CSE7315M03

Elements of a Product Development Lifecycle

• Phases: Distinct periods of time during which development occurs

• Milestones: Events that mark phase boundaries

• Goals: for each phase and for the development as a whole -- what the phase is intended to accomplish

… continued

Page 13: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 13

CSE7315M03

Elements of a Product Development Lifecycle (continued)

• Exit Criteria: Conditions that must exist or artifacts that must be produced in order for the phase to be successfully completed

• Entry Criteria: Conditions that must exist before a phase can begin

Page 14: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 14

CSE7315M03

Example

• Phase: demonstration

• Goal: show whether the design works

• Entry Criterion: a design has been formulated

• Exit Criterion: the design has been prototyped, demonstrated and evaluated

Page 15: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 15

CSE7315M03

Note• It is NOT necessary that the goal be

met in a “positive” fashion. – The exit criterion says we are complete

when we have “prototyped, demonstrated and evaluated” the design

– If we determine that it does NOT work, the phase is successful• perhaps much $ is saved by leaning this

before we invest in something that will not work

Page 16: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 16

CSE7315M03

At the End of a PhaseYou Should Do the Following• Review results• Assess risks and opportunities• Decide what to do next:– Quit– Modify plans and go ahead– Go ahead– Go back and try something else

But it takes courage to quit or go back

Page 17: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 17

CSE7315M03

Example: Building an Airplane

Demonstration Phase• Goal: produce an airplane that flies

and meets certain performance requirements

• Evaluation criteria: -- Does it fly? -- Does it meet the performance

requirements?

Page 18: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 18

CSE7315M03

Example: Possible Outcomes

• Quit -- it won’t work• Add 2 years for additional research

(promising, but not proven concepts)

• Go ahead

Page 19: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 19

CSE7315M03

Phase Exit Criteria

• Artifacts that must be completed• Standards of quality for completed

products• Accessibility of completed artifacts• Decision criteria to help decide if

we should go on with the next phase

• etc.

Page 20: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 20

CSE7315M03

Results Based Schedules

• This is an emerging concept where schedules and plans are defined in terms of outcomes that must be achieved (exit criteria) rather than specific dates

• The advantage is that you don’t declare victory (or failure) because of a particular date being reached

Page 21: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 21

CSE7315M03

Beware of Distinct Time Periods Rather Than Exit

Criteria

“Complete the research in 3

years or else.”

Page 22: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 22

CSE7315M03

Possible Results of Failure to Use Exit Criteria

• Efforts to rush the work• Short cuts that overlook key risks

that need to be assessed• Attempts to give the illusion that

the research was completed in 3 years

. . . (but, maybe)• Continued funding of the program

Page 23: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 23

CSE7315M03

Phase Entry Criteria

Things you should not begin withoutExamples:• Funding• Approval• Verification that prior-phase exit

criteria are met… continued

Page 24: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 24

CSE7315M03

Phase Entry Criteria (continued)

• Access to products of prior phase– If the work was done by another

contractor, they may be reluctant or uncooperative

• Ability to understand and use products of prior phase– Languages– Tools

Page 25: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 25

CSE7315M03

Intermediate MilestonesWithin a Phase

• Remember that each phase is its own miniature lifecycle

....AdulthoodGestation Childhood

ConceptExploration

....Pre-Teen

“TerribleTwos”

Infancy

… continued

Page 26: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 26

CSE7315M03

Intermediate MilestonesWithin a Phase

• You can have sub-phases with their own goals, criteria, etc.

• These are excellent ways to track progress, mitigate risks, etc.

.... Pre-Teen“TerribleTwos”

Infancy

Page 27: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 27

CSE7315M03

The Product Development Project Lifecycle

Software for the SystemTechnical

Parts of the

System

Program or System

Page 28: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 28

CSE7315M03

Example

Software

Engineered Parts of the

Airplane (mechanical, electrical,

etc.)

Airplane (Manned Flight System)

Page 29: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 29

CSE7315M03

Parallel, “Subcontract” Cycles

System Engineering or Analysis LifecycleGoal: Define and Develop a System

Software LifecycleGoal: Build Software

Product Development LifecycleGoal: Develop, Produce and Support a

System

Page 30: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 30

CSE7315M03

Parallel, “Subcontract” Cycles

System Engineering or Analysis LifecycleGoal: Define and Develop a System

Software LifecycleGoal: Build Software

Product Development LifecycleGoal: Develop, Produce and Support a

SystemThis Module

Module

04 Module 05

Page 31: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 31

CSE7315M03

A Project Has Technical and Non-Technical Components• Technical– Engineered items, such as mechanical,

electrical and software components or sub-systems

• Non-Technical– Financial items like contracts, cash

flow, payment systems, etc.– Logistical items like parts acquisition,

installation and maintenance, etc.– …

Page 32: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 32

CSE7315M03

A Project Must Coordinate All of These Parts

• An Integrated Master Plan is a device for showing, at a top level, all of the major tasks and their exit criteria

• An Integrated Master Schedule shows, at a top level, when the various tasks (subprojects) will be performed and how they relate to each other

• More on these in a later module

Page 33: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 33

CSE7315M03

A System May Have Many Components

• Airplane– Propulsion system (engines)– Navigation system– Flight control system– Communication system– …

• Each part may be developed by different organizations as separate sub-projects

Page 34: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 34

CSE7315M03

A Project Must Coordinate All of These

• A project to build an airplane– Project to build engines– Project to build navigation system– Project to build flight control system– …

• There can be several layers of hierarchy

Page 35: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 35

CSE7315M03

General Model of a ProductDevelopment Lifecycle

Containing SWPhase 2 Phase 3 Phase 4 Phase nPhase 1 ...

.c: Software Lifecycle

b: Software Lifecycle

d: Software Lifecycle

a: Software Lifecycle

a: Software to simulate the system and select the right design

b: Software to test hardware

c: Software to test software

d: Maintenance software

etc.

Page 36: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 36

CSE7315M03

Concerns Associated with Systems Containing Software• Warranties• Maintenance• Documentation• Support• Hardware• Procedures• Standards• Contracts• etc.

These things are often ignored when discussing software

development lifecycles, but they are important for the systems of

which software is a part.

Page 37: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 37

CSE7315M03

See Appendix A• This appendix illustrates a typical

product development lifecycle for a major government project

• And it mentions a number of software related issues

• It may be “overkill” for many applications, but it illustrates important concepts that you should understand

• There might be a question on this appendix on an examination

Page 38: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 38

CSE7315M03

Appendix B

• This appendix is reference material for those doing U.S. government contracts

• It will not be on an examination

Page 39: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 39

CSE7315M03

Software Manager’s Responsibilities With Respect

To a Product Development Lifecycle

• Know what it is (what model)• Know where you are (what phase)• Know what was supposed to be

done in the previous phase• Know what was actually done in

the previous phase

Page 40: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 40

CSE7315M03

Typical Software Problems for a Final Product Development

Phase• Prototype software was developed in

the previous phase. It was intended to be “thrown away.”

• But now, to save money, that software is being planned for use in a production system

• It lacks the appropriate specifications, documentation, testing, etc.

Page 41: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 41

CSE7315M03

Some Ways to AddressThis Type of Problem

Educate program managers on the differences between prototype and production software– And the potential risks of using prototype

software in a production system• Higher failure rate• Potential liability

Institute a program to gradually replace the prototype software

Page 42: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 42

CSE7315M03

More Typical Problems for a Final Product Development

Phase• Software specifications were not

produced, even though the upcoming phase assumes they have been

Institute a specification development activity between phases

Page 43: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 43

CSE7315M03

More Typical Problems

• System requirements are still highly unstable, even though they are supposed to be firm

Use an incremental development process with increments tied to groups of requirements that must be firmed up

Page 44: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 44

CSE7315M03

More Typical Problems

• Program is staffed by people who lack experience in a final development phase -- don’t appreciate need for discipline, etc.

Educate the staff on the differencesPopulate key positions with people who

understand the differences

Page 45: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 45

CSE7315M03

Additional Notes

• Most real projects have lifecycles that are heavily tailored from the “ideal” cycles found in textbooks or research papers

• Few real project managers have bothered to document their system lifecycles very well– Many will not understand the term “lifecycle”

Page 46: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 46

CSE7315M03

Summary of Module• A lifecycle model helps us understand a

process by breaking it into distinct parts• The product development lifecycle

typically involves several phases and both technical and non-technical elements

• All phases and elements must be coordinated

• Software may be developed for many different purposes in each phase of a product development lifecycle

Page 47: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 47

CSE7315M03

END OFMODULE 03

Page 48: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

Slide # 48CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03

January 6, 2004

Appendix A

A Typical Lifecycle for a Major Government Project

Page 49: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 49

CSE7315M03

A Typical Program Lifecycle

Derived from the U. S. DoD procurement cycle for major military systems

Exit Criteria

System Requirements Specification

System Design Specifications

System Production Specifications

Successful Manufacture & Test

System Termination

Phase

Concept Exploration

Engineering Development

Final Product Development

Production and Testing

Sustaining and Maintenance

Goals

Establish Clear Requirements

Validate and Demonstrate

Design a Production Product

Manufacture and Test

Volume Production & Sales

Page 50: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 50

CSE7315M03

Concept Exploration PhaseGoal: Take an idea and “flesh it out”

to see if it will work (generally on paper)

Example: The radar on a high speed aircraft needs to be able to find nearby objects, “lock on” to them, and follow them– Example: a guided missle aimed at you– Example: another aircraft you do not

want to collide with

Page 51: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 51

CSE7315M03

Concept Exploration Phase(continued)

Problem: The mechanical systems wear out and are unreliable. Also very heavy

Concept: “Phased array radar” - electrically altering the phase of a radar wave gives “pointing and following” without physical motion

Page 52: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 52

CSE7315M03

Concept Exploration Phase (continued)

Tasks Performed: – Study the physics (research, analysis)– Simulate the concept– Determine theoretical feasibility– Develop “requirements” for a real

radar system• performance requirements, electrical

requirements, interface requirements, test requirements, etc.

Page 53: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 53

CSE7315M03

Concept Exploration Phase (continued)

Software Note: • Software may be used in

many different ways during this type of phase, such as simulation studies or to develop a prototype of a real system or to test parts of the system.

Page 54: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 54

CSE7315M03

Engineering Development Phase

• Goal: Produce a working model to prove that it works

• Example: Build a working model of the radar, demonstrating the desired performance and showing that “risky” aspects of the concept will really work

Page 55: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 55

CSE7315M03

Engineering Development Phase

(continued)• Problems: -- Can you find a material that will

handle the temperature range? -- Can the radar really match the

performance of the best mechanical systems?

• Concept: Build a working model that demonstrates one possible design and proves the feasibility of the concept

Page 56: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 56

CSE7315M03

Engineering Development Phase (continued)

• Tasks Performed:– Build the model– Test it for performance– Experiment as necessary to get it to

work– It does NOT necessarily need to meet

final product level specifications (weight, speed)

– Develop specifications for a production model (how to build a real one)• Materials, processing capabilities, etc.

Page 57: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 57

CSE7315M03

Software Notes• Possible Software in an Engineering

Development Phase:– Embedded software within the radar to

control its operation– Software to test the system– Software to instrument and analyze the

system– Software to simulate the environment of

the system– Software to do theoretical calculations

Page 58: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 58

CSE7315M03

Software Notes(continued)

• This software would probably NOT be suitable for use in the production system– Standards of quality are different (but

do exist!)– Level of documentation

A responsible software manager must explain to program management that prototype

software is not appropriate for a high quality product

Page 59: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 59

CSE7315M03

• Goal: Work out the detailed design of a production model

• Tasks Performed: -- Develop detailed design -- Build a few to see if they work -- Design the production process, if it requires anything unusual -- Produce detailed production

specifications

Final Product Development Phase

Page 60: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 60

CSE7315M03

Final Product Development Phase - Software Notes

• Similar to previous phase, but:– Results must be of

production quality– Typically, a lot of

documentation must be completed

Page 61: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 61

CSE7315M03

Other Software from aFinal Product Development

• Test sets (to test hardware)• Maintenance support• Data analysis (for field tests in

next phase)• Software development tools• other product-specific support

software

Page 62: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 62

CSE7315M03

Production and Testing Phase

• Goal: Manufacture some products and test them in a field environment

• Problem: What engineers build in a laboratory may not work so well in the production line or in the field environment

Page 63: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 63

CSE7315M03

Production and Testing Phase(continued)

• Tasks Performed: -- Build and test the manufacturing

facility -- Build and test some products -- Correct any problems

Page 64: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 64

CSE7315M03

Software Notes• Software here may include:– Manufacturing systems– Testing systems– Field testing systems– Data analysis systems

• Hardware problems may be fixed in software:– Because software is “easier to change”– But BEWARE to update the design and

requirements specifications to keep them consistent with changes

Page 65: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 65

CSE7315M03

Sustaining and Maintenance

• Goal: Manufacture in high volume; use in real applications; make incremental improvements; fix problems

• Software Note: -- There is still lots of software

work, such as incremental fixes, development of maintenance tools, etc.

Page 66: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 66

CSE7315M03

Possible Exam Question Explain the phases of a typical product development

lifecycle, giving the goals and exit criteria for each phase. Illustrate each phase with an example. Discuss at least two kinds of software that might be developed during each phase.

Page 67: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

Slide # 67CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03

January 6, 2004

Appendix B

Some Issues Related to U.S. Government Contracts(for those doing such

contracts)

Page 68: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 68

CSE7315M03

DoD Terminology for Phases and Products

DoD Products

System or Segment (A) Specification

System Design (B) Specifications

Production (C, D, and E) Specifications

Field Tests

System Operation

Phase

Concept Exploration

Engineering Development

Final Product Development

Production and Testing

Sustaining and Maintenance

DoD Phase

Concept Exploration

Demonstration & Validation

Engineering and Manufacturing Dev.

Low Rate Initial Production

Production and Maintenance

Page 69: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 69

CSE7315M03

Theory vs Practice at End of Demonstration Phase on

Government Projects

Allocation

Design Specifications

DemonstrationEfforts

Electronic Requireme

nts

Mechanical Requireme

nts

Software Requireme

nts

In Theory

Page 70: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 70

CSE7315M03

But it is Even Worse forTypical Government Projects

Software Requireme

nts

SoftwareRequirements

Analysis

SW Requirements Specifications

END OF DEMONSTRATION

PHASE

(IN THEORY)

Page 71: CSE 7315 - SW Project Management / Module 3 - Product Development Lifecycles Copyright © 1995-2004, Dennis J. Frailey, All Rights Reserved CSE7315M03 Slide

January 6, 2004

CSE 7315 - SW Project Management / Module 3 - Product Development

LifecyclesCopyright © 1995-2004, Dennis J. Frailey,

All Rights Reserved

Slide # 71

CSE7315M03

Conflicting Purposes for a Lifecycle

• Government contracting agencies and contractors tend to have very different views of the lifecycle and its purpose. For example:

-- Agency: develop specs for final production

-- Contractor: make sure we get the production contract