Estimations

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 37

Project Estimations

IT-425
Prof. Dr. Ali Raza
Time Estimation
• Activity duration estimating is the process of taking information on
project scope and resources and then developing durations for input
to schedules.
• Activity duration estimates are approximations of how much time a
project task will take.
• Accurate estimates help in developing realistic project schedules
and managing resources effectively.
Duration Vs Effort
• Duration includes the actual amount of time spent working on an activity
plus elapsed time
• For example, even though it might take one workweek or five workdays to do
the actual work, the duration estimate might be two weeks to allow extra time
needed to obtain outside information or to allow for resource availability
• Effort is the number of workdays or work hours required to complete a task
• A duration estimate of one day could be based on eight hours of work or
eighty hours of work
• Duration is used to determine the schedule; effort is used to determine labor
costs
Estimation: Key
Considerations
• Complexity: The complexity of an
activity directly impacts its duration.
More complex activities typically require
more time to complete.
• Resource Availability: The availability
and allocation of resources, such as
manpower, equipment, and materials, can
significantly influence activity duration.
Estimation: Key
Considerations
• Dependencies: Activities that are dependent on other tasks or
milestones may have their durations affected by delays or dependencies
in the project schedule.
• Risks and Uncertainties: Project risks and uncertainties can impact
activity duration. It is important to consider potential delays or
disruptions when estimating activity durations.
Causes of Time Variation
• Varying skill levels—You may get a higher- or lower-skilled person
assigned to the task, causing the actual duration to vary from planned
duration.
• Unexpected events—Random acts of nature, vendor delays, incorrect
shipments of materials, traffic jams, power failures, etc.
• incomplete work.
Causes of Time Variation
• Efficiency of worker’s time—Every time a worker is interrupted, it
takes additional time to get back to the level of productivity attained
prior to the interruption.
• Mistakes and misunderstandings—Despite all of your efforts to
clearly and concisely describe each task that is to be performed, you
will most likely miss a few. This will take its toll in rework or scrapping
incomplete work.
Estimation Methods
1. Extrapolating Based on Similarity to Other Tasks
•If some tasks in your project are similar to tasks completed in other
projects, you can use recollections or historical data from those tasks to
estimate the duration of the present task.
•Project methodologies often include a project notebook that records
estimated and actual task durations. This historical data can be used as a
knowledge base for estimating task duration.
2. Seeking Expert Advice:
•When dealing with breakthrough technologies or new technologies within
the organization, outside authorities such as vendors or non-competitors
who have experience with the technology can provide valuable expert
advice.
Estimation Methods
3. Applying the Delphi Technique
• The Delphi technique involves a group estimation process. After
briefing the group on the project and task, each individual provides
their best guess for the task duration.
• The guesses are tabulated, and the results are presented to the group.
Participants with estimates in the outer quartiles explain their
reasoning, and the group members make subsequent guesses.
• This iterative process continues until a consensus is reached, and the
average of the final guesses is used as the group's estimate.
• The Delphi technique is effective when expert advice is unavailable.
Estimation Methods
4. Applying the Three-Point Technique
• Task duration is considered a random
variable. The three-point technique takes
into account the variability of task
duration.
• Each task is estimated using three values:
optimistic (best-case), pessimistic (worst-
case), and most likely. These estimates
provide a probabilistic view of the task's
duration.
• The three estimates are used to calculate a
weighted average, considering the
Estimation Methods
5. Applying the Wide-Band Delphi Technique
• The wide-band Delphi technique combines the Delphi method and
the three-point technique.
• A panel of experts provides optimistic, pessimistic, and most likely
estimates for the duration of a chosen task in each iteration.
• Extreme estimates are removed, and averages are computed for each
estimate. The resulting averages serve as the optimistic, pessimistic,
and most likely estimates of the task duration.
Elapsed Vs Productive Time
• Duration is the elapsed time in
business working days.
• Work effort is the labor required to
complete an activity. It is typically the
amount of focused and uninterrupted
labor time required to complete an
activity.
• Productive time is the percentage
of work day that can devoted to
project activity work.
Project Networks Diagram
• A project network diagram is a pictorial representation of the
sequence in which the project work can be done.
• We have identified the known set of tasks and their duration
• The planning team needs to determine the order in which
these tasks are to be performed.
• The graphic picture provides project schedule information :
1. The earliest time at which work can begin on every task
2. The earliest expected completion date of the project
Build Project Network
Diagram
• A project schedule can be built using either of the following:
1. Gantt chart
2. Network diagram
• The Network diagram can be build using:
1. Network Analysis with Activity on Arrow (AOA)
2. Network Analysis with Activity on Node (AON)
Build Project Network
Diagram
Network Analysis with Activity on Arrow (AOA)
• The node at the left edge of the arrow is the event that begins the task,
and the node at the right edge is the event that ends the task.
• Nodes are numbered sequentially, and their order has to be preserved.

• Only the simplest of dependency


relationships could be used.
• This method proved to be quite
cumbersome as networking techniques
progressed.
Build Project Network
Diagram
Network Analysis with Activity on Node (AON)
• The basic unit of analysis in a network diagram is the task.
• Each task in the network diagram is represented by a rectangle called a
task node.
• Arrows represent the predecessor/successor relationships between tasks.
Build Project Network
Diagram
Build Project Network
Diagram
• Predecessor activity - Activities that ought to be completed
immediately previous to the start of another activity are known as
predecessor activities.
• Successor activity - These are those activities that cannot be started
until one or more of other activities are finished
Build Project Network
Diagram
Rules Set
• Network diagram is logically sequenced to be read from left to right.
• A task begins when its predecessors have been completed.
• The start task has no predecessor, and the end task has no successor.
Build Project Network
Diagram
Dependency
• A dependency is simply a
relationship that exists between
pairs of tasks.
• To say that task B depends on task A
means that task A produces a
deliverable that is needed in order to
do the work associated with task B.
Build Project Network
Diagram
Constraints
• Constraints refer to specific factors that can impact the execution
and completion of a project.
• Time constraints involve the project's deadlines and the available
time to complete it.
• Cost constraints relate to the project budget and the financial
resources allocated.
• Scope constraints define the project's boundaries, deliverables, and
objectives.
• Additional constraints may include quality, resources, risks, and
legal or regulatory requirements.
GANTT Chart
• The Gantt chart is the oldest of the two and is used effectively in simple,
short-duration types of projects.
• The Gantt chart is the oldest of the
two and is used effectively in simple,
short-duration types of projects.
• To build a Gantt chart, associate a
rectangular bar with every task.
• The length of the bar corresponds to
the duration of the task and bars are
placed horizontally along a time line
in the order in which the tasks should
be completed.
GANTT Chart
• In some instances you will be able to schedule and work on tasks
concurrently.
• There are two drawbacks to using the Gantt chart.
• Because of its simplicity, the Gantt chart does not contain detailed
information. It reflects only the order imposed by the manager and,
in fact, hides much of that information. Unless you are intimately
familiar with the project tasks, you cannot tell from the Gantt chart
what must come before and after what.
• The Gantt chart does not tell the project manager whether the
schedule that results from the chart completes the project in the
shortest possible time or even uses the resources most effectively.
Critical Path Method
(CPM)
• To establish the project schedule, you need to compute two
schedules:
• The early schedule, consists of the earliest times at which a task can
start and finish.
• The late schedule, consists of the latest times at which
• The combination of these two schedules gives following
information:
• The window of time within which each task must be started and
finished in order for the project to be completed on schedule.
• The sequence of tasks that determine the project completion date
Critical Path Method
(CPM)
• The sequence of tasks that determine the project completion date is
called the Critical path.
• It is the longest duration path in the network diagram and drives the
completion date of the project.
• It is the sequence of tasks whose early schedule and late schedule are
the same.
• The tasks that define the critical path
are called Critical-path tasks.
• Any delay in a critical-path task will
delay the completion of the project by
the amount of delay in that task.
Identify CPM
• Brute Force: Identify all possible paths through the
diagram and add up the durations of the tasks that lie along
those paths. The path with the longest duration time is the
critical path.
• Computing Slack: This
method of finding the critical
path requires you to compute
a quantity known as the task
slack time.
Identify CPM
• Slack time is the amount of delay, expressed in units of time,
that could be tolerated in the starting time or completion time
of a task without causing a delay in the completion of the
project.
• It is the difference between late finish and early finish (LF –
EF).
• If the result is greater than zero, the task has a range of time in
which it can start and finish without delaying the project
completion date.
PERT
Program Evaluation and Review Technique (PERT) is a network
analysis technique used to estimate project duration when there is
a high degree of uncertainty about the individual activity duration
estimates.
PERT weighted average =
optimistic time+4×most likely time+ pessimistic time
6
Example: PERT weighted average =
(1 workday+4×2 workdays+9 workdays)/6 = 3 workdays
Instead of using the most likely time of two workdays for this task,
you’d use three workdays with a PERT estimate
Software Project Estimation
• Software project estimation is the process of predicting the effort,
time, and resources required to complete a software project.
• Decomposition techniques involve breaking down the software
project into smaller, manageable components for estimation.
• They help in understanding the complexity and scope of the project,
which aids in accurate estimation.
• They include Work Breakdown Structure (WBS), Functional
Decomposition, and Feature-Oriented Decomposition.
• By decomposing the project, estimation can be performed at a more
granular level, allowing for better planning and resource allocation.
Software Sizing
• Software sizing is the process of determining the size or volume of
the software product being developed.
• Software size is a fundamental input for various estimation
techniques.
• Sizing can be done based on different metrics, such as lines of code
(LOC), function points (FP), or story points.
• Accurate sizing is crucial for estimating effort, cost, and schedule of
the project.
• Sizing techniques vary depending on the development methodology
and project requirements.
Problem-Based Estimation
• LOC (Lines of Code) based estimation is a traditional approach to
software estimation.
• It involves counting the number of lines of code that need to be
written or modified in a software project.
• LOC-based estimation relies on historical data and assumptions
about the productivity of developers.
• It is a simple and straightforward method, but it can be affected by
variations in coding styles and languages used.
• LOC-based estimation is commonly used in projects where the
coding effort is the primary driver of the project's size.
Problem-Based Estimation
• FP (Function Point) based estimation is an alternative approach to
software estimation.
• It focuses on the functionality or business value delivered by the
software, rather than lines of code.
• Function points measure the complexity and functionality of a
software system based on user requirements.
• FP-based estimation considers factors like inputs, outputs, inquiries,
files, and interfaces to calculate function points.
• It provides a more holistic view of the software size and can be
independent of programming languages or coding styles.
Process-Based Estimation
• Process-based estimation involves estimating the software project
based on historical data and process metrics.
• It leverages data from previous similar projects to derive estimates
for the current project.
• Process-based estimation relies on identifying patterns, trends, and
correlations in historical data to make predictions.
• It takes into account factors such as team productivity, project
complexity, and project size.
• Process-based estimation can be more accurate when there is a rich
repository of historical data available.
Empirical Model Estimation
• Cost Estimation is a crucial aspect of software project estimation.
• Empirical models for cost estimation are based on statistical analysis
of historical data.
• These models use different cost drivers, such as size, complexity,
and team capability, to estimate project costs.
• Examples of empirical models include the COCOMO (COnstructive
COst MOdel) and its variants.
• Cost estimation helps in budgeting, resource allocation, and
decision-making throughout the software development lifecycle.
Empirical Model Estimation
• The COCOMO (COnstructive COst MOdel) is a widely used
empirical model for estimating software size and effort.
• COCOMO Parameters:
Empirical Model Estimation
END

You might also like