Transparency Masters for Software Engineering

advertisement

Chapter 5

Software Project Planning

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

1

Software Project Planning

The overall goal of project planning is to establish a pragmatic strategy for controlling, tracking, and monitoring a complex technical project.

Why?

So the end result gets done on time, with quality!

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

2

The Steps

 Scoping —understand the problem and the work that must be done

 Estimation —how much effort? how much time?

 Risk —what can go wrong? how can we avoid it? what can we do about it?

 Schedule —how do we allocate resources along the timeline? what are the milestones?

 Control strategy —how do we control quality? how do we control change?

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

3

Write it Down!

Project Scope

Estimates

Risks

Schedule

Control strategy

Software

Project

Plan

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

4

To Understand Scope ...

 Understand the customers needs

 understand the business context

 understand the project boundaries

 understand the customer’s motivation

 understand the likely paths for change

 understand that ...

Even when you understand, nothing is guaranteed!

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

5

Cost Estimation project scope must be explicitly defined task and/or functional decomposition is necessary historical measures (metrics) are very helpful at least two different techniques should be used remember that uncertainty is inherent

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

6

Estimation Techniques

 past (similar) project experience

 conventional estimation techniques

 task breakdown and effort estimates

 size (e.g., FP) estimates

 tools (e.g., Checkpoint)

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

7

Functional Decomposition

Statement of Scope perform a

"grammatical parse" functional decomposition

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

8

Creating a Task Matrix

Obtained from “process framework” framework activities application functions

Effort required to accomplish each framework activity for each application function

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

9

Conventional Methods:

LOC/FP Approach

 compute LOC/FP using estimates of information domain values

 use historical effort for the project

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

10

Example: LOC Approach

Functions

UICF

2DGA

3DGA

DSM

CGDF

PCF

DAM

Totals estimated LOC

2340

5380

6800

3350

4950

2140

8400

33,360

LOC/pm

315

220

220

240

200

140

300

$/LOC

14

20

20

18

22

28

18

Cost

32,000

107,000

136,000

60,000

109,000

60,000

151,000

Effort (months)

7.4

24.4

30.9

13.9

24.7

15.2

28.0

655,000 145.0

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

11

Example: FP Approach measurement parameter number of user inputs number of user outputs number of user inquiries number of files number of ext.interfaces algorithms count

40

25

12

4

4

60 weight x x x x x x

3

4

7

7

4

5

=

=

=

=

=

=

569

160

125

48

28

28

180 count-total complexity multiplier feature points

.84

478

0.25 p-m / FP = 120 p-m

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

12

Tool-Based Estimation project characteristics calibration factors

LOC/FP data

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

13

Empirical Estimation Models

General form: effort = tuning coefficient * size exponent usually derived as person-months of effort required either a constant or a number derived based on complexity of project usually LOC but may also be function point empirically derived

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

14

Estimation Guidelines estimate using at least two techniques get estimates from independent sources avoid over-optimism, assume difficulties you've arrived at an estimate, sleep on it adjust for the people who'll be doing the job —they have the highest impact

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

15

The Make-Buy Decision

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

16

Computing Expected Cost expected cost =

(path probability) x (estimated path cost) i i

For example, the expected cost to build is:

= $429 K expected cost = 0.30($380K)+0.70($450K)

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

17

Download