information technology project management...some terminologies in project management organizational...
TRANSCRIPT
Information Technology ProjectManagement
Information Technology ProjectManagement
Copyright 2012 John Wiley & Sons, Inc.6-1
Estimating Techniques -Software Engineering Approaches
Lines of Code (LOC) Function Points COCOMO Heuristics
Software engineering techniques focus on estimating the size ofthe system to be developed
Copyright 2012 John Wiley & Sons, Inc.6-2
Determinants of Estimating the Largest Deliverable ofthe Project – The Application System
Copyright 2012 John Wiley & Sons, Inc.6-3
Function Point Analysis Allan Albrecht, IBM – 1979 Synthetic metric Independent of the Technology IFPUG standards (www.ifpug.org) 5 Primary Elements Inputs Outputs Inquiries Logical Files Interfaces
Allan Albrecht, IBM – 1979 Synthetic metric Independent of the Technology IFPUG standards (www.ifpug.org) 5 Primary Elements Inputs Outputs Inquiries Logical Files Interfaces
Copyright 2012 John Wiley & Sons, Inc.6-4
The Application Boundary for FunctionPoint Analysis
Copyright 2012 John Wiley & Sons, Inc.6-5
Complexity
Low Average High Total
InternalLogical Files
(ILF)_3 x 7 = 21 _2 x 10 = 20 _1 x 15 = 15 56
ExternalInterface
Files (EIF)__ x 5 = __ _2 x 7 = 14 __ x 10 = __ 14
ExternalInput (EI)
_3 x 3 = 9 _5 x 4 = 20 _4 x 6 = 24 53ExternalInput (EI)
_3 x 3 = 9 _5 x 4 = 20 _4 x 6 = 24 53
ExternalOutput (EO)
_4 x 4 = 16 _2 x 5 = 10 _1 x 7 = 7 33
ExternalInquiry (EQ)
_2 x 3 = 6 _5 x 4 = 20 _3 x 6 = 18 44
Total Unadjusted Function Points (UAF) 200
Copyright 2012 John Wiley & Sons, Inc.6-6
General System Characteristic Degree of Influence
Data Communications 3
Distributed Data Processing 2
Performance 4
Heavily Used Configuration 3
Transaction Rate 3
On-line Data Entry 4
End User Efficiency 4
Online Update 3
Complex Processing 3
Reusability 2
Installation Ease 3
Operational Ease 3
Multiple Sites 1
Facilitate Change 2
Total Degrees of Influence 40
Value Adjustment Factor VAF = (TDI * 0.01) + .65 VAF = (40 * .01) + .65 = 1.05
Total Adjusted Function Points = FP = UAF * VAF FP = 200 * 1.05 = 210
Copyright 2012 John Wiley & Sons, Inc.6-7
Language Average Source LOC perFunction Pont
Average Source LOC for a210 FP Application
Access 38 7,980
Basic 107 22,470
C 128 26,880
C++ 53 11,130
COBOL 107 22,470
Delphi 29 6,090
Java 53 11,130
MachineLanguage
640 134,440
Visual Basic 5 29 6,090
Source: http://www.spr.com/library/0langtbl.htm
Copyright 2012 John Wiley & Sons, Inc.6-8
COCOMO COnstructive COst MOdel Developed by Barry Boehm, Has been extended to COCOMO II http://sunset.usc.edu/csse/research/COCOMOII/cocomo
_main.html
COnstructive COst MOdel Developed by Barry Boehm, Has been extended to COCOMO II http://sunset.usc.edu/csse/research/COCOMOII/cocomo
_main.html
Copyright 2012 John Wiley & Sons, Inc.6-9
COCOMO Models (Effort) Organic – Routine Person Months = 2.4 * KDSI1.05
Embedded – Challenging Person Months = 3.6 * KDSI1.20
Semi-Detached – Middle Person Months = 3.0 * KDSI1.12
Organic – Routine Person Months = 2.4 * KDSI1.05
Embedded – Challenging Person Months = 3.6 * KDSI1.20
Semi-Detached – Middle Person Months = 3.0 * KDSI1.12
Copyright 2012 John Wiley & Sons, Inc.6-10
COCOMO – Effort Example Semi-Detached
10,600 Java LOC = 200 FP * 53
Person Months = 3.0 * KDSI1.12
= 3.0 * (10.6) 1.12
= 42.21
Semi-Detached
10,600 Java LOC = 200 FP * 53
Person Months = 3.0 * KDSI1.12
= 3.0 * (10.6) 1.12
= 42.21
Copyright 2012 John Wiley & Sons, Inc.6-11
COCOMO Models (Duration) Organic Duration = 2.5 * Effort0.38
Semi-Detached Duration = 2.5 * Effort0.35
Embedded Duration = 2.5 * Effort0.32
Organic Duration = 2.5 * Effort0.38
Semi-Detached Duration = 2.5 * Effort0.35
Embedded Duration = 2.5 * Effort0.32
Copyright 2012 John Wiley & Sons, Inc.6-12
COCOMO Duration ExampleDuration = 2.5 * Effort0.35
= 2.5 *(42.21)0.35
= 9.26 months
People Required = Effort / Duration= 42.21 / 9.26= 4.55
Duration = 2.5 * Effort0.35
= 2.5 *(42.21)0.35
= 9.26 months
People Required = Effort / Duration= 42.21 / 9.26= 4.55
Copyright 2012 John Wiley & Sons, Inc.6-13
Heuristics (Rules of Thumb)
When scheduling a software task:
1/3 – Planning1/6 – Coding1/4 – Component test and early system test1/4 – System test, all components in hand
When scheduling a software task:
1/3 – Planning1/6 – Coding1/4 – Component test and early system test1/4 – System test, all components in hand
Copyright 2012 John Wiley & Sons, Inc.6-14
The seeds of major software disasters are usuallysown in the first three months of commencing thesoftware project. Hasty scheduling, irrationalcommitments, unprofessional estimating techniques,and carelessness of the project managementfunction are the factors that tend to introduceterminal problems. Once a project blindlylurches forward toward an impossibledelivery date, the rest of the disaster willoccur almost inevitably.
The seeds of major software disasters are usuallysown in the first three months of commencing thesoftware project. Hasty scheduling, irrationalcommitments, unprofessional estimating techniques,and carelessness of the project managementfunction are the factors that tend to introduceterminal problems. Once a project blindlylurches forward toward an impossibledelivery date, the rest of the disaster willoccur almost inevitably.
T. Capers Jones, 1988 Page 120
Copyright 2012 John Wiley & Sons, Inc.6-15
Brooks’ Law
Adding manpower to a late softwareproject makes it later.Adding manpower to a late softwareproject makes it later.
Copyright 2012 John Wiley & Sons, Inc.6-16
The Man Month
People PeopleTime versus number of workersperfectly partitionable task – i.e.,No communication among theme.g., reaping wheat.
When a task that cannot be partitionedbecause of sequential constraints, theapplication of more effort has noeffect on the schedule.
Copyright 2012 John Wiley & Sons, Inc.6-17
Adding People
Increases the total effortnecessary The work & disruption of
repartitioning Training new people Added intercommunication
Increases the total effortnecessary The work & disruption of
repartitioning Training new people Added intercommunication
Copyright 2012 John Wiley & Sons, Inc.6-18
What can cause inaccurate estimates?
Scope changes Overlooked tasks Poor developer-user
communication Poor understanding
of project goals Insufficient analysis
No (or poor)methodology
Changes in team Red tape Lack of project control Not identifying or
understanding impact ofrisks
Scope changes Overlooked tasks Poor developer-user
communication Poor understanding
of project goals Insufficient analysis
No (or poor)methodology
Changes in team Red tape Lack of project control Not identifying or
understanding impact ofrisks
Copyright 2012 John Wiley & Sons, Inc.6-19
Other Factors to Consider When Estimating Rate at which requirements may change Experience & capabilities of project team Process or methods used in development Specific activities to be performed Programming languages or development tools to be used Probable number of bugs or defects & removal methods Environment or ergonomics of work space Geographic separation of team across locations Schedule pressure placed on the team
Rate at which requirements may change Experience & capabilities of project team Process or methods used in development Specific activities to be performed Programming languages or development tools to be used Probable number of bugs or defects & removal methods Environment or ergonomics of work space Geographic separation of team across locations Schedule pressure placed on the team
Copyright 2012 John Wiley & Sons, Inc.6-20
How can estimates be improved?
Experience! Lessons learned Best Practices
Revision Monitor Focus on deliverables Control
Experience! Lessons learned Best Practices
Revision Monitor Focus on deliverables Control
Copyright 2012 John Wiley & Sons, Inc.6-21
Some Terminologies in ProjectManagement Organizational Process Assets Plans, processes, policies procedures, and knowledge bases
specific to and used by the performing organization Throughout the project, the project team members may
update and add to the organizational process assets asnecessary
Organizational Process Assets Plans, processes, policies procedures, and knowledge bases
specific to and used by the performing organization Throughout the project, the project team members may
update and add to the organizational process assets asnecessary
22
Corporate Knowledge Base Organizational knowledge base for storing and retrieving
information, includes: Configuration management knowledge base containing the
versions and baselines of all performing organization standards,policies and procedures and any project documents
Historical information and lesson learned knowledge base Financial information containing information such as labor
hours, incurred costs, budgets, and any project cost overruns Process measurement databases used to collect and make
available measurement data on processes and products Project files from previous projects
Organizational knowledge base for storing and retrievinginformation, includes: Configuration management knowledge base containing the
versions and baselines of all performing organization standards,policies and procedures and any project documents
Historical information and lesson learned knowledge base Financial information containing information such as labor
hours, incurred costs, budgets, and any project cost overruns Process measurement databases used to collect and make
available measurement data on processes and products Project files from previous projects
23
Enterprise Environmental Factors Conditions, not under the control of project team, that
influence, constrain, or direct the project Organization culture, structure, and governance Geographic distribution of facilities and resources Government or industry standards Infrastructure Existing human resources Personnel administration Stakeholder risk tolerance Political climate Project management information system
Conditions, not under the control of project team, thatinfluence, constrain, or direct the project Organization culture, structure, and governance Geographic distribution of facilities and resources Government or industry standards Infrastructure Existing human resources Personnel administration Stakeholder risk tolerance Political climate Project management information system
24
Cost and Staffing Levels
25
Risk and Uncertainty and Cost ofChanges
26
Predictive Life Cycle Project scope, the time and cost to deliver that scope are
determined as early in the project life cycle as practicallypossible
Example:
27
Iterative and Incremental Life Cycle Project phases intentionally repeat one or more project
activities as the project team’s understanding of theproduct increases.
Iterations develop the product through a series ofrepeated cycles.
Increments successively add the functionality of theproduct
At the end of each of iteration, a deliverable of a set ofdeliverables will be completed.
Project phases intentionally repeat one or more projectactivities as the project team’s understanding of theproduct increases.
Iterations develop the product through a series ofrepeated cycles.
Increments successively add the functionality of theproduct
At the end of each of iteration, a deliverable of a set ofdeliverables will be completed.
28
Adaptive Life Cycle (change driven oragile methods) Intended to respond to high levels of change and ongoing
stakeholder involvement. Adaptive method are also iterative and incremental but
differ in that iterations are very rapidly (with a durationof 2 or 4 weeks) and are fixed in time and cost.
Generally preferred when dealing with a rapidly changingenvironment, when requirement and scope are difficult todefine in advance, and when it is possible to define smallincremental improvements that will deliver value tostakeholder.
Intended to respond to high levels of change and ongoingstakeholder involvement.
Adaptive method are also iterative and incremental butdiffer in that iterations are very rapidly (with a durationof 2 or 4 weeks) and are fixed in time and cost.
Generally preferred when dealing with a rapidly changingenvironment, when requirement and scope are difficult todefine in advance, and when it is possible to define smallincremental improvements that will deliver value tostakeholder.
29
Project Integration Management Processes and activities to identify, define, combine, unify,
and coordinate the various processes and projectmanagement activities.
Processes:
30
31
4.1 Develop Project Charter
32
33
4.2 Develop Project Management Plan
34
35
tautan
4.3 Direct and Manage Project Work
36
37
4.4 Monitor and Control Project Work
38
39
4.5 Perform Integrated Change Control
40
41
4.6 Close Project or Phase
42
43