Kuliah 3- Estimation.pdf
-
Upload
stefani-pangestu -
Category
Documents
-
view
226 -
download
0
Transcript of Kuliah 3- Estimation.pdf
-
8/18/2019 Kuliah 3- Estimation.pdf
1/52
Estimation
Eddy Gunawan, S.T.P, M.T.I
-
8/18/2019 Kuliah 3- Estimation.pdf
2/52
What is estimation?The project manager must set expectations
about the time required to complete thesoftware among the stakeholders, the team,and the organization’s management.
http://www.stellman-greene.com2
ose expec a ons are no rea s c rom ebeginning of the project, the stakeholders willnot trust the team or the project manager.
-
8/18/2019 Kuliah 3- Estimation.pdf
3/52
Estimation AccuracyDefinition phase
50-100% inaccurateAnalysis PhaseAccuracy of the estimation is double
-Design
About 10% inaccurate
-
8/18/2019 Kuliah 3- Estimation.pdf
4/52
Elements of a Sound EstimateTo generate a sound estimate, a projectmanager must have:
A work breakdown structure (WBS), or a list of taskswhich, if completed, will produce the final productAn effort estimate for each task
http://www.stellman-greene.com4
A list of assumptions which were necessary formaking the estimateConsensus among the project team that theestimate is accurate
-
8/18/2019 Kuliah 3- Estimation.pdf
5/52
Assumptions Make Estimates MoreAccurate
Team members make assumptions about thework to be done in order to deal withincomplete information
Any time an estimate must be based on a decisionthat has not yet been made, team members canassume the answer for the sake of the estimate
http://www.stellman-greene.com5
Assumptions must be written down so that if theyprove to be incorrect and cause the estimate to beinaccurate, everyone understands what happenedAssumptions bring the team together very early onin the project so they can make progress onimportant decisions that will affect development
-
8/18/2019 Kuliah 3- Estimation.pdf
6/52
Estimation Joke
-
8/18/2019 Kuliah 3- Estimation.pdf
7/52
Work Breakdown StructuresThe key to any plan is breaking the requiredactivities into smaller and smaller pieces.A WBS begins by listing the major components ofthe project.
breaking the project up into the major pieces is tostart with phases of software developmentLower levels of the WBS are obtained bybreaking down each piece at the level above intoits component activities
-
8/18/2019 Kuliah 3- Estimation.pdf
8/52
-
8/18/2019 Kuliah 3- Estimation.pdf
9/52
WBS Numbering SystemLevel 0 or project title, is 0.0
Each level 1 item is N.0 , ex: 1.0 , 2.0 etcEach level 2 item below level 1 item N.0 isnumbered N.1, N.2, etc.
-
8/18/2019 Kuliah 3- Estimation.pdf
10/52
WBS Numbering System Example
-
8/18/2019 Kuliah 3- Estimation.pdf
11/52
When Do You Stop?The lowest level entries are the tasks, or activitiesin the project. You can stop breaking down a taskif the following is true :
1. Some person (or group for a larger project) cantake responsibility for the task.
2. You can get a rough estimate of the effortneeded to perform the activity involved.3. You can schedule the task. Calender duration
and its precedents is clear.4. The task must be small and able to be
completed
-
8/18/2019 Kuliah 3- Estimation.pdf
12/52
WBS with estimation example
-
8/18/2019 Kuliah 3- Estimation.pdf
13/52
WBS for Software ImplementationProject
-
8/18/2019 Kuliah 3- Estimation.pdf
14/52
WBS for Software ImplementationProject (cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
15/52
WBS for Software ImplementationProject (cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
16/52
WBS for Web Design Project
-
8/18/2019 Kuliah 3- Estimation.pdf
17/52
WBS for Web Design Project (cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
18/52
WBS for Web Design Project (cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
19/52
Estimation techniques
Use of professional judgment
Use of historyUse of formulas
-
8/18/2019 Kuliah 3- Estimation.pdf
20/52
Wideband Delphi Wideband Delphi is a process that a team canuse to generate an estimate
The project manager chooses an estimation team,and gains consensus among that team on theresults
http://www.stellman-greene.com20
because it consists of a straightforward set of stepsthat can be performed the same way each time
-
8/18/2019 Kuliah 3- Estimation.pdf
21/52
The Wideband Delphi ProcessStep 1: Choose the team
The project manager selects the estimation teamand a moderator. The team should consist of 3 to 7project team members.
The moderator should be familiar with the Delphi process,but should not have a stake in the outcome of the session if
http://www.stellman-greene.com21
possible.If possible, the project manager should not be themoderator because he should ideally be part of theestimation team.
-
8/18/2019 Kuliah 3- Estimation.pdf
22/52
The Wideband Delphi ProcessStep 2: Kickoff Meeting
The project manager must make sure that eachteam member understands the Delphi process, hasread the vision and scope document and any otherdocumentation, and is familiar with the project
http://www.stellman-greene.com22
background and needs.The team brainstorms and writes downassumptions.The team generates a WBS with 10-20 tasks.The team agrees on a unit of estimation.
-
8/18/2019 Kuliah 3- Estimation.pdf
23/52
The Wideband Delphi ProcessStep 3: Individual Preparation
Each team member independently generates a setof preparation results.For each task, the team member writes down anestimate for the effort re uired to com lete the task,
http://www.stellman-greene.com23
and any additional assumptions he needed to makein order to generate the estimate.
-
8/18/2019 Kuliah 3- Estimation.pdf
24/52
Individual Preparation result
-
8/18/2019 Kuliah 3- Estimation.pdf
25/52
The Wideband Delphi ProcessStep 4: Estimation Session
During the estimation session, the team comes to aconsensus on the effort required for each task in theWBS.Each team member fills out an estimation form
http://www.stellman-greene.com25
which contains his estimates.The rest of the estimation session is divided intorounds during which each estimation team memberrevises her estimates based on a group discussion.Individual numbers are not dicsussed.
-
8/18/2019 Kuliah 3- Estimation.pdf
26/52
-
8/18/2019 Kuliah 3- Estimation.pdf
27/52
The Wideband Delphi Process
Step 4: Estimation Session (continued)The moderator collects the estimation forms andplots the sum of the effort from each form on a line:
http://www.stellman-greene.com 27
-
8/18/2019 Kuliah 3- Estimation.pdf
28/52
The Wideband Delphi ProcessStep 4: Estimation Session (continued)
The team resolves any issues or disagreements that are brought up.Individual estimate times are not discussed. These disagreements areusually about the tasks themselves. Disagreements are often resolved byadding assumptions.
The estimators all revise their individual estimates. The moderatorupdates the plot with the new total:
http://www.stellman-greene.com 28
-
8/18/2019 Kuliah 3- Estimation.pdf
29/52
The Wideband Delphi ProcessStep 4: Estimation Session (continued):
The moderator leads the team through several rounds of
estimates to gain consensus on the estimates. The estimationsession continues until the estimates converge or the team isunwilling to revise estimates.
Step 5: Assemble Tasks
http://www.stellman-greene.com29
The project manager works with the team to collect theestimates from the team members at the end of the meetingand compiles the final task list, estimates and assumptions.
Step 6: Review ResultsThe project manager reviews the final task list with theestimation team.
-
8/18/2019 Kuliah 3- Estimation.pdf
30/52
-
8/18/2019 Kuliah 3- Estimation.pdf
31/52
Other Estimation TechniquesPROBE, or Proxy Based Estimating
PROBE is based on the idea that if an engineer is building acomponent similar to one he built previously, then it will take about
the same effort as it did in the past.Individual engineers use a database to maintain a history of the effortthey have put into their past projects.A formula based on linear regression is used to calculate the estimatefor each task from this history.
http://www.stellman-greene.com31
COCOMO IIIn Constructive Cost Model, or COCOMO, projects are summarizedusing a set of variables that must be provided as input for a modelthat is based on the results of a large number of projects across theindustry.The output of the model is a set of size and effort estimates that can
be developed into a project schedule.
-
8/18/2019 Kuliah 3- Estimation.pdf
32/52
COCOMO VersionsCO (Constructive) CO (Cost) MO (Model)First version: 1981 by Dr. Barry Boehm
Now known now as “COCOMO 81”
Second version: ADA Cocomo (ADA 87);parameterized exponent reflecting moremodern practices and their economies of
scale.Current Version: Cocomo II (circa 2000)Regression formula, with data taken fromhistorical projects and current projectcharacteristics.
ocomo :
-
8/18/2019 Kuliah 3- Estimation.pdf
33/52
ocomo :Limitations as years progressed
Software reuse
Application generation programsObject oriented approaches
,translation)Rapid development
-
8/18/2019 Kuliah 3- Estimation.pdf
34/52
Other Estimation TechniquesThe Planning Game
The Planning Game is the software project planning methodfrom Extreme Programming (XP), a lightweight developmentmethodology developed by Kent Beck in the 1990s atChrysler.It is a full planning process that combines estimation withidentifying the scope of the project and the tasks required to
http://www.stellman-greene.com34
.
The Planning Game is highly iterative. The scope isestablished by having Development and Business worktogether to interactively write “user stories” written on indexcards to describe the scope. Each story is given an estimate of1, 2 or 3 weeks. This process is repeated continuouslythroughout the project.
-
8/18/2019 Kuliah 3- Estimation.pdf
35/52
Estimating ProgrammingOne formula approach that has been verysuccessful for estimating the programming phaseis a simplified function point approach
D = C x (G + J)
Where :D is the task durationC is the complexity factorG is the general experience factorJ is the job knowledge factor
-
8/18/2019 Kuliah 3- Estimation.pdf
36/52
Complexity factorTo derive complexity factor of a task :
Break it down to smallest posible repeatable functionswithin taskAdd up the complexity of each function (function points)
Function points :User input
User displayPeripheral I/ORestructuring dataCondition checkingCalculationBranchingCalling
-
8/18/2019 Kuliah 3- Estimation.pdf
37/52
Weighting Factors for ProgramComplexity
-
8/18/2019 Kuliah 3- Estimation.pdf
38/52
Weighting Factors for ProgramComplexity (cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
39/52
Productivity FactorsProductivity is influence by :
General years of experienceknowledge of the jobInterest level
Etc
-
8/18/2019 Kuliah 3- Estimation.pdf
40/52
Factors for Job Knowledge (J)
-
8/18/2019 Kuliah 3- Estimation.pdf
41/52
ExampleLet us estimate how long it would take to write a particularPASCAL program. The numbers in parenthesis arereferences to lines in the calculation below.(1)T'he program prompts the user for something, (2)readsthe user response,(3)validates it, (4)reads a record from disk. (5)calculates a
,
back to disk, (7)displays the result to the user, and (8)callsanother module (returns).(9)The programmer has two years of experience, is a goodbut average programmerwho has (10)fair knowledge of this particular application,but no knowledge of relatedapplications. (1 1)Some job knowledge is needed to do this
job.
-
8/18/2019 Kuliah 3- Estimation.pdf
42/52
Function Factor
(1) User display (simple) 2
(2) User input (simple) 2(3) Condition checking (complex) 4
(4) Peripheral input (simple) 4
a cu a on s mp e
(6) Peripheral output (simple) 4
(7) User display (simple) 2
(8) Calling (simple) 3
Total Complexity 23
-
8/18/2019 Kuliah 3- Estimation.pdf
43/52
General experience G(9) Programmer is average (2 yrs. Exp) G=1.00
Job knowledge J(10) Fair knowledge of application, no knowledge,
= .
Plugging all this into Formula :Duration = 23 x (1.00 + 0.75) = 40.25 person days
It will take particular person 40 days to design,document, code an test this program
-
8/18/2019 Kuliah 3- Estimation.pdf
44/52
Estimating The Analysis PhaseEstimating analysis is very difficult because it issuch a human oriented activity.
-
8/18/2019 Kuliah 3- Estimation.pdf
45/52
Analysis Estimating Worksheet
l k h
-
8/18/2019 Kuliah 3- Estimation.pdf
46/52
Analysis Estimating Worksheet
(cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
47/52
Example of Estimating Analysis
E l f E i i A l i
-
8/18/2019 Kuliah 3- Estimation.pdf
48/52
Example of Estimating Analysis
(cont’)
-
8/18/2019 Kuliah 3- Estimation.pdf
49/52
Ratio
-
8/18/2019 Kuliah 3- Estimation.pdf
50/52
Estimating Rule of ThumbNever ask an inexperienced person to estimateEstimate in a group if you can afford themanpowerNever force an estimate on a professional suchas programmer
Never take an average of different estimatesGranularize down to one week or lessAlways add for contingencyAlways quote a range when giving estimates tomanagers or clientUse your ‘gut feel’
-
8/18/2019 Kuliah 3- Estimation.pdf
51/52
ReferenceAndrew Stellman dan Jennifer Greene (2005),Applied Software Project Management, Edisi ke-1, O’Reilly Media Inc.2. John J. Rakos (1990), Software Project
,
Prentice Hall.
-
8/18/2019 Kuliah 3- Estimation.pdf
52/52
Tugas 2Melanjutkan tugas 1, dari vision, scope danproject plan dari tugas 1, buatlah :
1. Work breakdown structure project2. Estimasi project
Tugas dikumpulkan pada perkuliahan berikutnya.