12
1 Planning and Estimating Xiaojun Qi

Planning and Estimating

  • Upload
    holleb

  • View
    30

  • Download
    3

Embed Size (px)

DESCRIPTION

Planning and Estimating. Xiaojun Qi. Planning and Estimating. Before starting to build software, it is essential to plan the entire development effort in detail Planning continues during development and then postdelivery maintenance Initial planning is not enough - PowerPoint PPT Presentation

Citation preview

Page 1: Planning and Estimating

1

Planning and Estimating

Xiaojun Qi

Page 2: Planning and Estimating

2

Planning and Estimating

• Before starting to build software, it is essential to plan the entire development effort in detail

• Planning continues during development and then postdelivery maintenance– Initial planning is not enough– Planning must proceed throughout the project– The earliest possible time that detailed planning

can take place is after the specifications are complete

Page 3: Planning and Estimating

3

Planning and the Software Process

• The accuracy of estimation increases as the process proceeds

Figure 9.1

Page 4: Planning and Estimating

4

Estimating Duration and Cost• Accurate duration estimation is critical

• Accurate cost estimation is critical– Internal costs: The cost to the developers– External costs: The price that the client pays

• There are too many variables for accurate estimate of cost or duration– One big difficulty is the human factor

• There are differences of up to 28 to 1 between pairs of programmers with respect to product size, product execution time, development time, coding time, and debugging time

• Critical staff members may resign during the project

Page 5: Planning and Estimating

5

Metrics for the Size of a Product

• Lines of code (LOC)• Thousand delivered source instructions ( KDSI)• File, flow, process (FFP)• Function Points• COnstructive COst MOdel (COCOMO): It

consists of three models– A macro-estimation model for the product as a whole– Intermediate COCOMO– A micro-estimation model that treats the product in

detail

Page 6: Planning and Estimating

6

Techniques of Cost Estimation• Expert judgment by analogy: Experts compare the

target product to completed products

• Bottom-up approach: Break the product into smaller components– There are process-level costs associated with the smaller

components– The independence of the classes in the object-oriented

paradigm assists the cost estimation– However, the interactions among the components and

classes complicate the estimation process

• Algorithmic cost estimation models: A metric is used as an input to a model to compute cost and duration– An algorithmic model is unbiased, and therefore superior to

expert opinion– However, estimates are only as good as the underlying

assumptions

Page 7: Planning and Estimating

7

Components of a Software Project Management Plan

• The work to be done– Project function: Work carried on throughout the

project. For example, Project management and quality control

– Activity: A major unit of work that has precise beginning and ending dates, consumes resources, and result in work product.

– Task: The smallest unit of work subject to management accountability.

• The resources with which to do it– People– Hardware– Support software

• The money to pay for it

Page 8: Planning and Estimating

8

Software Project Management Plan (SPMP) Framework

• There are many ways to construct an SPMP

• One of the best is IEEE Standard 1058.1– The standard is widely accepted– It is designed for use with all types of software

products– It supports process improvement

• Many sections reflect CMM key process areas

– It is ideal for the Unified Process• There are sections for requirements control and risk

management

Page 9: Planning and Estimating

9

Planning Testing

• The SPMP must explicitly state what testing is to be done

• Traceability is essential

• All black box test cases must be drawn up as soon as possible after the specifications are complete

Page 10: Planning and Estimating

10

Planning Object-Oriented Projects

• An object-oriented product consists of largely independent pieces

• Consequently, planning is somewhat easier

• The whole is more than the sum of its parts

• However, reuse induces errors in cost and duration estimates– Reuse of existing components during

development– Production of components for future reuse

Page 11: Planning and Estimating

11

Documentation Types and Standards• Documentation Types: Planning, Control,

Financial, Technical, Source code, and Comments within source code

• Standards reduce misunderstandings between team members

• Standards aid SQA

• Only new employees have to learn the standards

• Standards assist maintenance programmers

• Standardization is important for user manuals

Page 12: Planning and Estimating

12

Testing the Software Project Management Plan

• We must check the SPMP as a whole– Paying particular attention to the duration

and cost estimates