chapter 1 the product. 2 product what is it? who does it? why is it important? how to ensure it...

11
Chapter 1 Chapter 1 The The Product Product

Upload: tabitha-oconnor

Post on 03-Jan-2016

220 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Chapter 1Chapter 1The The

ProductProduct

Page 2: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

2

ProduProductct

What is it?What is it? Who does it?Who does it? Why is it important?Why is it important? How to ensure it be done right?How to ensure it be done right?

Page 3: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

What is What is Product?Product?

Computer software is the product that software engineers design and build.Includes • programs • documents • data ...

Page 4: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Software Software CharacteristicsCharacteristics

software is engineeredsoftware is engineered software doesn’t wear outsoftware doesn’t wear out software is custom builtsoftware is custom built

Page 5: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Failure Curve for Failure Curve for HardwareHardware

“Wear out”

Failurerate

Time

Infant mortality

Page 6: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Idealized & Actual Failure Idealized & Actual Failure Curve Curve

for for SoftwareSoftware

idealized curve

change

actual curve

Failurerate

Time

increased failurerate due to side effects

Page 7: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Software Software MythsMyths Management mythsManagement myths

Myth:Myth: We already have a book … We already have a book … Myth:Myth: My people have .. newest computers My people have .. newest computers Myth:Myth: If we get behind schedule, … more If we get behind schedule, … more programmers …..programmers …..

Myth:Myth: If I decide to outsource … If I decide to outsource … Customer mythsCustomer myths

Myth:Myth: … a general statement … … a general statement … Myth:Myth: … continually change … flexible … … continually change … flexible …

Practitioner’s mythsPractitioner’s myths Myth:Myth: … get it to work, our job is done. … get it to work, our job is done. Myth:Myth: … “running” … no way of assessing its … “running” … no way of assessing its quality.quality.

Myth:Myth: Software engineering … slow us down. Software engineering … slow us down.

Page 8: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

The Cost of The Cost of ChangeChange

Definition Development After release

1x

1.5-6x

60-100x

Page 9: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Software Software ApplicationsApplications system softwaresystem software

real-time softwarereal-time software business softwarebusiness software engineering/scientific engineering/scientific

softwaresoftware embedded softwareembedded software PC softwarePC software AI softwareAI software Web Apps (Web Web Apps (Web

applications)applications)

Page 10: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

Software Poses Software Poses ChallengesChallenges

How do we ensure the quality of the software that we produce? How do we meet growing demand and still maintain budget control? How do we upgrade an aging "software plant?" How do we avoid disastrous time delays? How do we successfully institute new software technologies?

Page 11: Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?

11

Who does Who does it?it?

Programmer is an individual concerned with the details of implementing, packaging, and modifying algorithms and data structures written in particular programming languages.

Software Engineer is a programmer additionally concerned with issues of analysis, design, verification, and testing documentation software maintenance, and project management.