cse 7315 - sw project management / module 2 – facts and myths about software copyright ©...

37
CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January 8, 2005 Slide # 1 SMU CSE 7315 / NTU SE 584- N Planning and Managing a Software Project Module 02 Facts and Myths about Software

Upload: gwen-garrison

Post on 19-Jan-2016

226 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02

January 8, 2005 Slide # 1

SMU CSE 7315 / NTU SE 584-N

Planning and Managing a Software Project

Module 02Facts and Myths about Software

Page 2: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 2

CSE7315M02

The “Super Programmer” Myth

Software is a creative and artistic endeavor. All you need to do it

right are highly creative individuals (the GURUs & Super Programmers),

whom you leave alone.

Page 3: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 3

CSE7315M02

The “Creative Genius” Myth

Creative people (like myself) need freedom, not constraints

and “discipline”

Page 4: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 4

CSE7315M02

Fact: The Essence of Art is Working in a Disciplined

Manner Within the Constraints of a Medium

• Sculptor - chisels statues out of stone, not putty– The characteristics of the stone

make it a challenge for the artist rather than a hobby for everyone

• The strength of the stone is what makes statues possible and what makes them valuable when the artist is complete

“The granite is

my enemy and my friend.”

Page 5: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 5

CSE7315M02

All Artistic Media Have Constraints

• Painter - works with a specific painting medium (oils, watercolors, charcoal, etc.)– Each medium has its challenges, possibilities

and limitations

• Musician - works with a specific instrument– A trumpet is hard to play well and it cannot

replicate the sound of a piano– But a really accomplished trumpeter can

make wonderful music

Page 6: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 6

CSE7315M02

Art Happens When You Excel Within the Constraints

We measure an artist both by creativity and by technical skill

Producing beauty within the constraints of the medium

Discipline makes this possible– Discipline enables you to focus on the things that

matter (the critical few) rather than the things that don’t (the trivial many)

Page 7: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 7

CSE7315M02

Promising Young Artists

“... have technical skills but have not yet developed insight ...”

“... have brilliantly creative ideas but cannot bring them to fruition because of a lack of discipline ...”

Page 8: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 8

CSE7315M02

Established, Respected Artist

“... plays effortlessly, with deep insight, yet with the control and discipline that can only come with experience and extraordinary talent”

“... has defied the traditional rules in a brilliant display of creativity, yielding wonderful new possibilities for the medium. ... [He] has devised a new technique that brings forth the depth of color of oils in the watercolor medium.”

Page 9: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 9

CSE7315M02

Structure and Discipline Apply to the Process for Producing the Product

• Cost-effective systems result from applying creativity and discipline to both the design of the product and the design of the system used to produce it

• Extending this to the process used to design the system is a focal point for software, since the development of software is largely a matter of design

Page 10: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 10

CSE7315M02

Example - Airplane Flight Crews

• Very well defined process• Extensive training

• Can handle unexpected, emergency situations• Can function well when individuals are replaced

on short notice (illness, etc.)

Page 11: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 11

CSE7315M02

Note

• This does not mean that they are not highly qualified

• This does not mean that they are poorly paid

• This does not mean that they are non-heroes

Page 12: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 12

CSE7315M02

Another ExampleProfessionals vs. Amateurs

• Professional baseball vs. Sandlot baseball• Professional drivers vs. Average drivers• Professional software developers vs.

Amateurs

Consider highly skilled sports teams that never win the championships

The difference is:Well defined processExtensive trainingSkill and determination

The difference is:Well defined processExtensive trainingSkill and determination

Page 13: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 13

CSE7315M02

The “Development Tools” Myth

(office version)The best development

tools are the main thing you need to get high

productivity.

Super Mega Hyper

Workstation

Page 14: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 14

CSE7315M02

The “Development Tools” Myth(home version)

My grades will be higher if you get me a faster

computer

Page 15: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 15

CSE7315M02

The “Development Tools” MythFacts

• Lack of tools is rarely the root cause of a problem. – If you don’t know what to do, a tool

will not help you– Data from real programs show that

knowledge & procedures are more important than tools

Page 16: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 16

CSE7315M02

The “Development Tools” MythFacts

• A good musician can make a poor instrument sound wonderful

• But a poor musician cannot make a good instrument sound right

Page 17: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 17

CSE7315M02

The “Development Tools” Myth

Conclusion• Good tools can make a big

difference when used by people who know what to do with them– But you have to use the right tool at

the right time and in the right place– Which means you have to know what

you are doing and where a tool can help you

– ... and why it can help you

Page 18: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 18

CSE7315M02

The Gunslinger Myth:“Planning Wastes Time – Just Do

It!”Do you want me to plan or to

build software?

Do you want a plan or a product?

This is e-commerce – we don’t have a long time to do the job!

This example is taken from Cusumano and Yoffie, Competing on Internet Time, 1998.

Page 19: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 19

CSE7315M02

The Gunslinger Myth: Another Opinion

“This is sheer b*** s*** … The way you hit the bull’s eye the first time is by planning things [properly]…”

David Stryker, shared component software manager at Netscape in 1996-97

Page 20: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 20

CSE7315M02

Planning:Netscape’s Stryker Continues

“You can’t plan everything down to the atoms. The art of planning is articulating your goals and nongoals … really clearly and picking the things that have to be planned down to the atoms … goals [must be] measurable and concrete.”

Page 21: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 21

CSE7315M02

More on Goals and Nongoals: Netscape’s Stryker Continues

“The nongoals are more important than the goals because, when you’re doing midcourse correction, which you do on a 72-hour basis, the best guidance you can get is to remember what you weren’t trying to do.”

Page 22: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 22

CSE7315M02

Some Facts about SoftwareFact #1: Software products are increasingly

more complex and therefore must be managed accordingly

• Armies of people or expensive tools will not suffice.– Studies show that complexity and management

problems grow disproportionately as size increases

– Consider biological systems -- the larger the organism, the more complex it must be in order to function

– This stems from fundamental laws of physics

Page 23: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 23

CSE7315M02

Some Facts about Software

• Talented people can only handle so much– Picasso and DaVinci could not paint the

Golden Gate Bridge• It is too large.

• Talented people have no backups– What if one of them becomes ill?– What if one of them quits?– Even if they don’t, do you want your

success to depend on a few talented but temperamental heroes?

Page 24: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 24

CSE7315M02

Strawberry Shortcake Example

• Strawberry shortcake recipe makes 4 servings

• Easy to modify for 2 or 8 servings• But what do you do for 1,000 servings?

–acquisition of strawberries, cream, flour, etc.

–adequate tools for baking, mixing, keeping cold, etc.

–proper procedures for production

–storage and serving facilities

–etc.0

20

40

60

80

100

2 4 8 16 32 64 128

Good Manageme

nt Essential

Good Manageme

nt Nonessent

ial

Page 25: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 25

CSE7315M02

Ford Clutch Story• Assignment: write a manual on how to

design a clutch• Problem: there is only one person in the

company who can design a clutch, and he is in failing health - will soon be retiring

• Additional Problem: “Mr. Clutch” has always been treated as a hero, and he does not want to lose his stature by giving away his secrets

“The first task of a new manager should be to identify all the people you cannot live without and figure out how to survive without them.”

“The first task of a new manager should be to identify all the people you cannot live without and figure out how to survive without them.”

Page 26: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 26

CSE7315M02

More Software Facts Fact #2: Software has unique characteristics

that make it more difficult to develop than many other technical artifacts

• Software has no natural physical laws– Example: with a mechanical device, increased

force will have results within specifiable limits– But software can be made to behave in any

fashion

• Discontinuities are the rule in software, whereas they are the exception in other disciplines– Interpolation, extrapolation, etc. do not always

apply to software

Page 27: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 27

CSE7315M02

How to Deal with Software’s Lack of Physical Constraints• Must understand the architecture

and design of the software in order to understand the impact of changes

• Must preserve accurate design descriptions when the software is in a maintenance mode

Page 28: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 28

CSE7315M02

Possible Exam Question

Cite and explain at least one aspect of software that makes it harder to develop correctly than other technical artifacts

Page 29: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 29

CSE7315M02

More Software Facts

Fact #3: Software development is fun

• Finding an elusive bug• Figuring out how to gain access to

obscure files• Adding an attractive feature to a new

product that is under development

Page 30: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 30

CSE7315M02

“Fun” Can Be Costly

It is too easy for software to end up costing a lot more money, taking a lot more time, and having a lot of excess baggage (unwanted features)

The manager must focus the developers’ creativity on the parts that really need creative input

Page 31: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 31

CSE7315M02

More Software FactsFact #4: Change is a constant in software

development• The hardware capabilities change frequently– Memory capacity doubles roughly every 2 years– Processor speed does roughly the same– 1950’s - Mainframe; Assembly Language– 1960’s - Time Sharing; Cobol and Fortran– 1970’s - Minicomputer; Pascal– 1980’s - Personal Computer & Workstations; Lisp and

C– 1990’s - Laptops; Information Highway; Object

Oriented, Java– 2000’s - UML, new digital devices, ???

Page 32: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 32

CSE7315M02

Fact #4 (change) - continued• The infrastructure for software development

changes with a 5-10 year horizon– languages (Assembly-Fortran-Pascal-Ada-Lisp-C-C+

+-??)• GUIs and 4GLs are becoming the dominant languages today

– tools (assembler, compiler, linker, CASE, integrated tools)

– design methods (flow chart, data flow, information engineering, object oriented methods, ...???)

– recommended procedures and methods– debugging methods– testing approaches

Page 33: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 33

CSE7315M02

Technical Obsolescence

• Technical obsolescence for software occurs roughly every 5 years, according to Yourdon and others

Page 34: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 34

CSE7315M02

Dealing with Change• The software manager must keep abreast

of change and keep his or her software staff abreast of change to avoid getting left behind– Alternative -- a career spent maintaining 30

year old Cobol programs

• But must also avoid change for change sake– Fads are common in software– Programmers like to be pioneers, but pioneers

get a lot of arrows in their backs - and their managers get crucified!

Page 35: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 35

CSE7315M02

Dealing with Change

• Some fundamental principles do not change– Human nature– Basic theory of computer science– Principles of management– The nature of software (?)

Page 36: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 36

CSE7315M02

Summary of Module

• Distinguish the software myths from the true facts about software

• Discipline plays a critical role in any artistic endeavor, including software development

• Whether artists, engineers, or something in between, software developers can benefit from processes and knowledge

Page 37: CSE 7315 - SW Project Management / Module 2 – Facts and Myths about Software Copyright © 1995-2005, Dennis J. Frailey, All Rights Reserved CSE7315M02 January

January 8, 2005

CSE 7315 - SW Project Management / Module 2 – Facts and Myths about

SoftwareCopyright © 1995-2005, Dennis J. Frailey,

All Rights Reserved

Slide # 37

CSE7315M02

END OFMODULE 02