Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
86 views22 pages

S/W Project-Planning: Atul Gupta

1. Project planning involves a set of activities like estimation, scheduling, risk identification and quality management planning to prepare for a software project. 2. Estimation is done by the project manager and involves defining the project scope, decomposing it, using historical data, and accounting for complexity and risks to determine the money, effort, time and resources needed. 3. Estimation techniques include lines of code counting, function point analysis, and process-based estimation models like COCOMO which use variables like team experience and requirements volatility to estimate effort.

Uploaded by

Harendra Singh
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
86 views22 pages

S/W Project-Planning: Atul Gupta

1. Project planning involves a set of activities like estimation, scheduling, risk identification and quality management planning to prepare for a software project. 2. Estimation is done by the project manager and involves defining the project scope, decomposing it, using historical data, and accounting for complexity and risks to determine the money, effort, time and resources needed. 3. Estimation techniques include lines of code counting, function point analysis, and process-based estimation models like COCOMO which use variables like team experience and requirements volatility to estimate effort.

Uploaded by

Harendra Singh
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

1

Atul Gupta

S/W PROJECT-PLANNING

Project Planning
2

Before project can begin Set of activities


Process Planning Estimation (Cost, Schedule, Resources) Scheduling and Tracking Risk Identification, Analysis, Monitoring, Mitigation Quality management planning Change management planning

Estimation
3

What it is?
Attempt to determine how much money, effort, time and other resources are needed

Who does it?


Project Manager

How it is done?
By defining scope Decomposition Estimating other resources Using historical data and experience Complexity and Risks are to be taken into account

Are you done ???

1. Defining Scope
4

a scope is an enclosing context What is in and what is out in the context


The functionality The features (performance, reliability, security, ) Data (inputs and outputs) Users/Stakeholders of the system

Defined by two techniques


Using a structured document Using a set of use cases

Project resources
5

Number

Software Tools

Skills

Hardware

People

Environment

Location

Project

Network Resources

OTS Components

Reusable Components

New Components

Fullexperience Components

Partexperience Components

Software Project Estimation


6

Cost and effort estimation


Most critical assessment Too many variables human, technical, environmental, political, and predicting and estimating changes Never going to be an exact science Useful options are:
Experience (Expert estimation) Use of Historical data Use of simple decomposition techniques Use empirical estimation models

Decomposition Techniques
7

1.

Software Sizing Problem


LOC based Function Point (FP) based Process (or Use case) based

2.

Make use of baseline productivity metrics


LOC/pm FP/pm

3.

4.

Estimate an optimistic, a most likely, and a pessimistic size values Compute Size = (Sopt + 4Sm + Spess)/6

LOC based estimation- An Example


8

A software package for CAD for mechanical components Preliminary statement of scope
The mechanical CAD software will accept two- and threedimentional geometric data from an engineer. The engineer will interact and control the CAD system through a user interface. All geometric data and other supporting information will be maintained in a CAD database. Design analysis modules will be developed to produce the required output, which will be displayed on a variety of graphics devices that includes a mouse, digitizer, laser printer, and a plotter.

LOC based estimation


9

S No Function 1 2 3 4 5 6 7 User interface and control facility (UICF) 2-dimentional geometric analysis (2DGA) 3-dimentional geometric analysis (3DGA) Database management (DBM) Computer graphics display facilities (CGDF) Peripheral control function (PCF) Design analysis modules (DAM) Total estimated LOC

Estimated LOC 2300 5300 6800 3350 4950 2100 8400 33200

FP based Estimation
10

Computed using an empirical relationship based on countable (direct) measures of software information domain Includes assessments of software complexity Information domain values are:
Number of Number of Number of Number of Number of external inputs external outputs external enquiries internal logical files external interface files

FP is computed as
= count-total [0.65 + 0.01 (Fi)] where Fi (I = 1 to 14) are value adjustment factors (VAFs)

FP based Estimation An Example


11

Information domain values Number of external inputs Number of external outputs Number of inquiries Number of internal logical files Number of external interface files Count-Total

Opt. 20 12 16 4 2

Like. 24 15 22 4 2

Pess. 30 22 28 5 3

Estim. 24 16 22 4 2

Weight 4 5 4 10 7

FP count 97 78 88 42 15 320

VAFs
12

Does the system requires reliable backup and recovery? Are there distributed processing functions? Is performance critical? Does the system requires on-line data entry? Is the internal processing complex? Is the code designed to be reusable? (14 such factors)

Complexity Weighing Factors


13

FP is computed as
= count-total [0.65 + 0.01 (Fi)] = 375

Process Based Estimation


14

Empirical Estimation Models


15

E = A + B (ev) c where A, B, and C are empirically derived constants, ev is the estimation variable (either LOC or FP) Some estimation models based on LOC are:
E = 5.2 (KLOC)0.91 E = 5.5 + 0.73 (KLOC)1.16 E = 3.2 (KLOC)1.05 E = 5.288 (KLOC)1.047 Walston Felix model Bailey-Basili model Boehm simple model Doty model for KLOC > 9

Estimation models based on FP include


E = -91.4 + 0.355 FP E = -37 + 0.96 FP Albrecht and Gaffney Kemerer model

COCOMO models
16

COCOMO applies to three classes of software projects:


Organic projects - "small" teams with "good" experience working with "less than rigid" requirements (ex: application programs) Semi-detached projects - "medium" teams with mixed experience working with a mix of rigid and less than rigid requirements (ex: Utility like compiler, tools) Embedded projects - developed within a set of "tight" constraints (hardware, software, operational, ......) (ex: real time systems, embedded systems, Operating Systems)

A hierarchy of estimation models Basic COCOMO


E = a (KLOC)b in person months Tdev = c (E)d in months

COCOMO models cont.


17

Basic COCOMO Estimation of development efforts


Organic : E = 2.4(KLOC)1.05 pm Semi-detached : E = 3.0(KLOC)1.12 pm Embedded : E = 3.6(KLOC)1.20 pm

Estimation of development time


Organic : Tdev = 2.5(E)0.38 month Semi-detached : Tdev = 2.5(E)0.35 month Embedded : Tdev = 2.4(E)0.32 month

COCOMO models cont.


18

Intermediate COCOMO
Use of 15 other cost drivers chosen from following domains
People Product Computer/Hardware Development environment/Project

Complete COCOMO
More detailed analysis at subsystem level

Cost Drivers
19 Ratings Cost Drivers Product attributes Required software reliability Size of application database Complexity of the product Hardware attributes Run-time performance constraints Memory constraints Volatility of the virtual machine environment Required turnabout time Personnel attributes Analyst capability Applications experience Software engineer capability Virtual machine experience Programming language experience Project attributes Application of software engineering methods Use of software tools Required development schedule 0.87 0.87 1.46 1.29 1.42 1.21 1.14 1.24 1.24 1.23 1.19 1.13 1.17 1.10 1.07 1.10 1.10 1.08 0.70 Very Low 0.75 Low 0.88 0.94 0.85 Nominal 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 High 1.15 1.08 1.15 1.11 1.06 1.15 1.07 0.86 0.91 0.86 0.90 0.95 0.91 0.91 1.04 Very High Extra High 1.40 1.16 1.30 1.30 1.21 1.30 1.15 0.71 0.82 0.70 1.65 1.66 1.56

0.82 0.83 1.10

Putnam method (Software Equation)


20

From data collected for over 4000 (mostly defense project) E = [LOC B0.333/P]3 (1/t4)
where t is the time in months, B is special skill factor, and P is Productivity Parameter that reflect overall maturity of the software process and the environment.

Typical values of P can range from P = 2000 (real-time embedded projects) to P = 28000 (common business applications) B ranges from 0.16 to 0.40 as the complexity increases

Putnam method (Software Equation)


21

A simplified model as
tmin = 8.14 (LOC/P)0.43 in months (for tmin > 6 months) E = 180 Bt3 in person months

References
22

R. S Pressman. Software Engineering A Practitioners Approach, 6th Ed. McGraw Hill, 2005.

You might also like