8.1 dr. honghui deng associate professor mis department unlv mis 746 is project management
Post on 19-Dec-2015
223 views
TRANSCRIPT
8.1
Dr. Honghui DengDr. Honghui Deng
Associate ProfessorAssociate Professor
MIS DepartmentMIS Department
UNLVUNLV
MIS 746 IS Project Management
8.2
Session 8.Session 8. IS Project Estimation and Planning IS Project Estimation and Planning
8.3
Session 8. Why IT project planSession 8. Why IT project plan
• Is it clear what the project is supposed to deliver?Is it clear what the project is supposed to deliver?• Is it clear who will be working on the project?Is it clear who will be working on the project?• Do you have a breakdown of activities?Do you have a breakdown of activities?• Is it clear when deliverables are due?Is it clear when deliverables are due?• Do you have established communication channels? Do you have established communication channels? • Are you clear who the stakeholders are?Are you clear who the stakeholders are?• Do you have milestones and due dates for them?Do you have milestones and due dates for them?• Do you know what resources are available?Do you know what resources are available?• Do you know what to do if you run into obstacles?Do you know what to do if you run into obstacles?• Do you know what to do if you need more cooperation from Do you know what to do if you need more cooperation from
functional areas?functional areas?
• Are you aware of project risks and their impact? Are you aware of project risks and their impact?
8.4
Session 8. IT project planSession 8. IT project plan
• In its simplest form, a project plan should In its simplest form, a project plan should clarify clarify whatwhat the project is about and the project is about and howhow it it will be accomplished. will be accomplished.
• It helps It helps coordination, communicationcoordination, communication, and , and negotiationnegotiation. .
• Planning is often avoided, arguments Planning is often avoided, arguments include: include: – “It is time consuming.”– “The project is too small to warrant a plan.”– “Plans do not often get implemented.”
– “ We need action not planning.”
8.5
Session 8. Characteristics Session 8. Characteristics
• Positions the project in a broad perspective. Positions the project in a broad perspective. • Must be comprehensive and inclusive of Must be comprehensive and inclusive of
important dimensions.important dimensions.• Must guide execution. Must guide execution. • Must start with the project scope that defines the Must start with the project scope that defines the
project outcome.project outcome.• Must guide activities that accomplish what is Must guide activities that accomplish what is
described in the project scope statement. described in the project scope statement. • Must be treated as a living document.Must be treated as a living document.• Must be adhered to by all stakeholders especially Must be adhered to by all stakeholders especially
the project manager and team members.the project manager and team members.
8.6
Session 8. Project planning processSession 8. Project planning process
• Confirm Executive ApprovalConfirm Executive Approval
• Understand Project RequirementsUnderstand Project Requirements
• Reflect on IssuesReflect on Issues
• Identify MilestonesIdentify Milestones
• Identify PhasesIdentify Phases
• Identify Activities Within PhasesIdentify Activities Within Phases
• Identify Tasks within ActivitiesIdentify Tasks within Activities
8.7
Session 8. Project planning processSession 8. Project planning process
• Confirm Executive ApprovalConfirm Executive Approval– All sources of power and influence that could
impact a project must be identified.
– Executive support must be secured.
• Understand Project RequirementsUnderstand Project Requirements– All requirements of the project must be
identified. – Requirements must be linked to business
needs.
8.8
Session 8. Project planning processSession 8. Project planning process
• Reflect on IssuesReflect on Issues– The project manager is ultimately responsible
for the fate of a project.– Issues to address include:
• Strategic Items - long term viability of a projectStrategic Items - long term viability of a project• Tactical Items - day to day operations of projectTactical Items - day to day operations of project• Resourcing Items - human, technology and other Resourcing Items - human, technology and other
physical resourcesphysical resources• Acceptance Criteria - to assess deliverablesAcceptance Criteria - to assess deliverables
8.9
Session 8. Project planning processSession 8. Project planning process
• Identify MilestonesIdentify Milestones– Milestones are clearly defined events
that have significant importance.– A milestone should lead toward the
successful completion of a project.– A milestone is typically accompanied
by a deliverable, which can be defined, measured and demonstrated.
8.10
Session 8. Project planning processSession 8. Project planning process
• Identify PhasesIdentify Phases– Project phases allow large projects to
be divided into manageable pieces.• Based on prioritized list of user Based on prioritized list of user
requirements.requirements.
– Phases are constructed to implement deliverables in a priority order that serves those functions that have the highest needs • Risk to business units must be minimized Risk to business units must be minimized
in all situations.in all situations.
8.11
Session 8. Project planning processSession 8. Project planning process
• Identify Activities within PhasesIdentify Activities within Phases– Each phase should be divided into activities
so that each activity produces a single deliverable.
– An activity is defined by a start date and time, an end date and time, and with resources allocated to it.
• Identify Tasks within ActivitiesIdentify Tasks within Activities– You can further break down activities into the
distinct tasks that are necessary to fulfill the activity.
8.12
Session 8. Project planning constraintsSession 8. Project planning constraints
• The constraints applicable to most The constraints applicable to most projects are: projects are: – Budget– Time– Resources• Human Skills, IS hardware/software, Human Skills, IS hardware/software,
overhead requirements.overhead requirements.
8.13
Session 8. Project planning constraintsSession 8. Project planning constraints
• BudgetBudget– A Budget is generally assigned to a project
during the proposal stage.– Budgetary limitations are also applied at other
levels of a project, such as the design phase.– Budget amounts are sometimes shifted
between phases to shift project priorities.
8.14
Session 8. Project planning constraintsSession 8. Project planning constraints
• TimeTime– A project starts and ends on specific target
dates.• Sometimes the start and end dates are Sometimes the start and end dates are
flexible.flexible.– The project duration is usually divided into
shorter times for different phases, activities and tasks.
– PERT/CPM is a good estimating tool for time constraints.
8.15
Session 8. Project planning constraintsSession 8. Project planning constraints
• ResourcesResources– Human Skills• Required skill-set for the project.Required skill-set for the project.• Required skills can sometimes overlap Required skills can sometimes overlap
among people.among people.
– IS Hardware/Software• It is important to plan for the availability of It is important to plan for the availability of
technology ahead of time.technology ahead of time.• It project manager must ensure that correct It project manager must ensure that correct
hardware/software combination has been hardware/software combination has been selected and ordered in a timely manner.selected and ordered in a timely manner.
8.16
Session 8. Project planning constraintsSession 8. Project planning constraints
• ResourcesResources– Various resources are applied to a
project.– Some are only required at specific
times while others are required for the duration of the project.
– If timing is critical, resource availability must be carefully planned in response to time constraint.
8.17
Session 8. Project planning pitfallsSession 8. Project planning pitfalls
• Every project has unique aspects that Every project has unique aspects that make the planning process unique and make the planning process unique and problematic.problematic.– Following a generic recipe is not possible and
should be avoided.– Experience from past projects must be well
understood and carefully used otherwise it may prove counter productive.
• Human nature is another pitfall Human nature is another pitfall – People have the tendency to do the easier
tasks; often without realizing it.
8.18
Session 8. Project planning pitfallsSession 8. Project planning pitfalls
• Factors that cause projects to fail Factors that cause projects to fail include:include:– Lack of good project plan– Requirements not understood by the
project team– Insufficient funding– Unrealistic expectations of
stakeholders– Lack of project management and
leadership skills
8.19
Session 8 Session 8. Project planning toolsSession 8 Session 8. Project planning tools
• Gantt ChartsGantt Charts
• Work Breakdown Structures (WBS)Work Breakdown Structures (WBS)
• Critical Path Method (CPM)Critical Path Method (CPM)
• Program Evaluation and Review Program Evaluation and Review Technique (PERT)Technique (PERT)
• Microsoft ProjectMicrosoft Project
8.20
8.21
Session 8. Session 8. Gantt ChartGantt Chart
Video 04 Gantt ChartVideo 04 Gantt Chart
8.22
Session 8. Project planning and successSession 8. Project planning and success
• Acts like a road map for execution.Acts like a road map for execution.• Used as means of primary communication Used as means of primary communication
with all stakeholders.with all stakeholders.• Reflects acceptance by all stakeholders.Reflects acceptance by all stakeholders.• Reflects collective efforts.Reflects collective efforts.• Requires broad involvement.Requires broad involvement.• Identifies exceptions and contingencies.Identifies exceptions and contingencies.• Provides flexibility due to unpredictable Provides flexibility due to unpredictable
nature of some events and activities. nature of some events and activities.
8.23
Session 8. Project planning and successSession 8. Project planning and success
• It clarifies what needs to be done before the work It clarifies what needs to be done before the work startsstarts
• It makes work manageable by breaking down the It makes work manageable by breaking down the project into phases project into phases
• It defines the confines of each work unit in terms It defines the confines of each work unit in terms of time and budgetof time and budget
• It clarifies who is responsible for a task It clarifies who is responsible for a task • It gives perspective and links work units to the It gives perspective and links work units to the
overall project overall project • It links the project to organizational goals and It links the project to organizational goals and
objectives objectives • It is a source of reference for clarifying issuesIt is a source of reference for clarifying issues• It provides a base for performance evaluationIt provides a base for performance evaluation• It provides a base to monitor progressIt provides a base to monitor progress
8.24
Session 8. Project planning and successSession 8. Project planning and success
• It provides a base for measuring successIt provides a base for measuring success• It provides a base for establishing communication It provides a base for establishing communication
channelschannels• It helps to create realistic expectations. It helps to create realistic expectations. • It helps to generate support for the project. It helps to generate support for the project. • It provides boundaries for triple constraints: cost, It provides boundaries for triple constraints: cost,
time, requirementstime, requirements• It provides the project manager with the It provides the project manager with the
opportunity to demonstrate administrative and opportunity to demonstrate administrative and leadership skillsleadership skills
• It provides the project manager with the It provides the project manager with the opportunity to set standards and describe opportunity to set standards and describe expectations expectations
• It reduces uncertaintyIt reduces uncertainty
8.25
Session 8. ChallengesSession 8. Challenges
• While not cast in stone, a plan must While not cast in stone, a plan must provide a sense of provide a sense of stabilitystability, , continuitycontinuity, and , and focusfocus..
• Early adaptorsEarly adaptors rely on self-training and rely on self-training and their expectations are often changed.their expectations are often changed.
• Reluctant users Reluctant users may know the business but may know the business but are often hesitant to apply new technology are often hesitant to apply new technology in their work.in their work.
• Expectation gapExpectation gap – between technology – between technology potential and its actual benefits.potential and its actual benefits.
• Knowledge gapKnowledge gap – between individuals who – between individuals who know the business and those who know know the business and those who know the technology.the technology.
8.26
Session 8. ChallengesSession 8. Challenges
• The technology may become mature in the The technology may become mature in the future and be able to meet future and be able to meet currentcurrent expectations, but it is not fulfilling those expectations, but it is not fulfilling those expectations now. expectations now.
• Sometimes users are not prepared to wait; Sometimes users are not prepared to wait; they expect the best features now. they expect the best features now.
• Sometimes users develop false Sometimes users develop false expectations because of expectations because of over sell over sell phenomenon by the internal developers or phenomenon by the internal developers or external vendors. external vendors.
• A good project plan helps form realistic A good project plan helps form realistic expectations.expectations.
8.27
software estimationsoftware estimation
Charles R. SymonsCharles R. SymonsSoftware Sizing and Estimating: Mk II FPASoftware Sizing and Estimating: Mk II FPA
Wiley [1991]Wiley [1991]
Session 8. EstimationSession 8. Estimation
8.28
software production software production cyclecycle
• DESIGNDESIGN
• DEVELOPMENTDEVELOPMENT
• productionproduction not hardnot hard
• MAINTENANCEMAINTENANCE
recognized as a difficult taskrecognized as a difficult task
8.29
• SYSTEM SIZESYSTEM SIZE a variable in a variable in – DESIGN– DEVELOPMENT–MAINTENANCE
• components of system sizecomponents of system size– amount of information processed– technical requirements– performance drivers (objectives)
software production software production cyclecycle
8.30
objectivesobjectives
• COSTCOST minimizationminimization
• TIMETIME minimizationminimization
• QUALITYQUALITY assure that productassure that product
performs to specificationsperforms to specifications
8.31
size measuressize measures
• source lines of codesource lines of code+ concrete measure- what lines?- logical or physical?- housekeeping?- different across languages
• most commonly usedmost commonly used• some economy of scalesome economy of scale
8.32
Albrecht’s Function Point Albrecht’s Function Point Analysis MethodAnalysis Method
AIMSAIMS– consistent measure–meaningful to end user• function points should be easier to function points should be easier to
understand than lines of codeunderstand than lines of code
– rules easy to apply– Can estimate from requirements
specification– independent of technology used
8.33
Albrecht’s systemAlbrecht’s system
• count count – external user inputs– enquiries– outputs– master files delivered (internal & external)
• get points for every useful activityget points for every useful activityfunction pointsfunction points==
information processing size information processing size xx technical complexity adjustment technical complexity adjustment
8.34
Albrecht’s SystemAlbrecht’s System
complexity tablescomplexity tables– data elements referenced
• 1-41-4• 5-155-15• 16 or more16 or more
– file types referenced• 0 or 10 or 1• 22• 3 or more3 or more
table of table of SIMPLESIMPLE, , AVERAGEAVERAGE, , COMPLEXCOMPLEX
8.35
Albrecht complexityAlbrecht complexity
1-4 data 5-15 data 16+ data
0 or 1 filetypes
SIMPLE SIMPLE AVERAGE
2 filetypes
SIMPLE AVERAGE COMPLEX
3+ filetypes
AVERAGE COMPLEX COMPLEX
8.36
Albrecht functional Albrecht functional multipliersmultipliers
SIMPLESIMPLE AVERAGEAVERAGECOMPLEXCOMPLEX
external inputexternal input x 3x 3 x 4x 4 x 6x 6external outputexternal output x 4x 4 x 5x 5 x 7x 7logical internal filelogical internal file x 7x 7 x 10x 10 x 15x 15ext interface fileext interface file x 5x 5 x 7x 7 x 10x 10external inquiryexternal inquiry x 3x 3 x 4x 4 x 6x 6
add up, get total unadjusted function add up, get total unadjusted function pointspoints
8.37
Albrecht Technical Complexity Albrecht Technical Complexity AdjustmentAdjustment
14 general application characteristics14 general application characteristicsdata communicationsdata communications on-line updateon-line update distributed functionsdistributed functions
complex processingcomplex processing performanceperformance re-useabilityre-useability
heavily used configurationheavily used configuration installation easeinstallation ease transaction ratetransaction rateoperational easeoperational ease on-line data entryon-line data entry multiple sitesmultiple sites
end user efficiencyend user efficiency facilitate changefacilitate change
not presentnot present = 0= 0 average influenceaverage influence = 3= 3
insignificant influenceinsignificant influence = 1= 1 significant influencesignificant influence = 4= 4
moderate influencemoderate influence = 2= 2 strong influencestrong influence = 5= 5
TCA = TCA = 0.650.65+(+(0.010.01x(x(total degree of influencetotal degree of influence))))
8.38
Symons’ Symons’ complaintscomplaints
• Albrecht methodAlbrecht method– alternative counting practices– weights used are questionable– large systems under-weighted• (XEROX 1985: rapid drop in productivity (XEROX 1985: rapid drop in productivity
with increasing system size)with increasing system size)
– range of points too narrow
• but but MUCH BETTER THAN SLOCMUCH BETTER THAN SLOC
8.39
Mk II Function Point Mk II Function Point AnalysisAnalysis
• modification of Albrechtmodification of Albrecht• use same Technical Complexity use same Technical Complexity
AdjustmentAdjustment• extend general application extend general application
characteristics to 19 or morecharacteristics to 19 or more• weights adjustedweights adjusted• Information Processing Size Information Processing Size
changed the mostchanged the most
8.40
logical transactionslogical transactions
logical transaction = logical transaction = – unique input/process/output
combination triggered by unique event of interest to the user
– or need to retrieve information• create a customercreate a customer• update an accountupdate an account• enquiryenquiry• produce monthly summary reportproduce monthly summary report
8.41
Mk II FPA summaryMk II FPA summary
• obtain general understanding of the systemobtain general understanding of the system• construct a model of primary entitiesconstruct a model of primary entities• identify logical transactionsidentify logical transactions• score degree of influence of all 19 general score degree of influence of all 19 general
application characteristics (plus client application characteristics (plus client specific)specific)
• obtain total project work-hours, calibrateobtain total project work-hours, calibrate• calculate function pointscalculate function points
8.42
comparisoncomparison
SLOCSLOC AlbrechtAlbrecht Mk II Mk II FPAFPA
accepted standard accepted standard nono yesyes yesyes
clarityclarity potentiallypotentially some subjectivesome subjectiveobjectiveobjective
structured?structured? nono nono yesyes
easy to use?easy to use? yesyes nono nono
automatable?automatable? yesyes nono yesyes
use for estimating?use for estimating? sometimessometimes yesyes yesyes
8.43
Estimation ExampleEstimation Example
SLOCSLOC
Function PointFunction Point
8.44
Source Lines of CodeSource Lines of Code
• NEED DATABASE of past NEED DATABASE of past experienceexperience
AVERAGESAVERAGES efforteffort 33 months33 months
costcost $361 (thousand)$361 (thousand)
documentationdocumentation 1194 1194 pagespages
errorserrors 201201
defectsdefects 5252
peoplepeople 44
KLOCKLOC 20.54320.543
8.45
Implementing LOCImplementing LOC
• Estimate structured lines of codeEstimate structured lines of code 10,00010,000• averages proportional to LOC averages proportional to LOC 10/20.543 10/20.543 = 0.487= 0.487
efforteffort 33 months33 months 0.4870.487 == 1616
costcost $361 thou$361 thou 0.4870.487 == $177,000$177,000
documentationdocumentation1194 pages1194 pages 0.4870.487 = = 581 pp.581 pp.
errorserrors 201201 0.4870.487 == 9898
defectsdefects 5252 0.4870.487 = = 2525
peoplepeople 44 0.4870.487 == 2 people2 people
8.46
Function Point CalculationFunction Point Calculation
1 - get count-total1 - get count-total
number of features times complexitynumber of features times complexity
2 - get F2 - get Fii
rate 14 factors (0-5), totalrate 14 factors (0-5), total
3 - FP 3 - FP = count-total = count-total [0.65 + 0.01 [0.65 + 0.01 F Fii ] ]
4 - multiply historical averages (4 - multiply historical averages (623623) per FP by ) per FP by this FPthis FP
8.47
1 - get count total 1 - get count total
Complexity WeightingComplexity Weighting
simplesimple averageaverage complexcomplexproductproduct
# user inputs# user inputs __ __ 3 + __ 3 + __ 4 + __ 4 + __ 6 6 = ___= ___
# user outputs# user outputs __ __ 4 + __ 4 + __ 5 + __ 5 + __ 7 7 = ___ = ___
# user inquiries# user inquiries __ __ 3 + __ 3 + __ 4 + __ 4 + __ 6 6 = ___= ___
# files# files __ __ 7 + __ 7 + __ 10+__ 10+__ 15 15 = ___= ___
# external interfaces# external interfaces __ __ 5 + __ 5 + __ 7 + __ 7 + __ 10 10 = ___= ___
8.48
1 - get count-total1 - get count-total
Bank accounts record system involvingBank accounts record system involving
3636 user inputs user inputs simplesimple complexity complexity
55 user outputs user outputs averageaverage complexity complexity
2020 user inquiries user inquiries simplesimple complexity complexity
4040 files accessed files accessed simplesimple complexity complexity
33 external interfaces external interfaces averageaverage complexity complexity
8.49
1 - get count-total1 - get count-total
Complexity WeightingComplexity Weighting
simplesimple averageaverage complexcomplex productproduct
3636 user inputs user inputs 3636 3 + __ 3 + __ 4 + __ 4 + __ 6 6 = = 108108
55 user outputs user outputs __ __ 4 + 4 + 55 5 + __ 5 + __ 7 7 = = 2525
2020 user inquiries user inquiries 2020 3 + __ 3 + __ 4 + __ 4 + __ 6 6 = = 6060
4040 files files 4040 7 + __ 7 + __ 10+__ 10+__ 15 15 = = 280280
33 external interfaces external interfaces __ __ 5 + 5 + 33 7 + __ 7 + __ 10 10 = = 2121
TOTALTOTAL 494 494
8.50
2 - get F2 - get Fii
F1F1 require reliable backup & recovery?require reliable backup & recovery? SignificantSignificant 44F2F2 data communications required?data communications required? ModerateModerate 22F3F3 distributed processing functions?distributed processing functions? SignificantSignificant 44F4F4 performance critical?performance critical? AverageAverage 33F5F5 run on existing, heavily utilized environment?run on existing, heavily utilized environment? EssentialEssential 55F6F6 require on-line data entry?require on-line data entry? EssentialEssential 55F7F7 on-line data entry from multiple operations?on-line data entry from multiple operations? IncidentalIncidental 11F8F8 master files updated on-line?master files updated on-line? No influence No influence 00F9F9 inputs, outputs, files, or inquiries complex?inputs, outputs, files, or inquiries complex? IncidentalIncidental 11F10 internal processing complex?F10 internal processing complex? IncidentalIncidental 11F11 code designed to be reusable?F11 code designed to be reusable? AverageAverage 33F12F12 conversion and installation included in the design?conversion and installation included in the design? AverageAverage 33F13F13 system designed for multiple installations in different orgs?system designed for multiple installations in different orgs? No influence No influence 00F14F14 application designed to facilitate change and ease of use?application designed to facilitate change and ease of use? No influence No influence 00 = =
3232
8.51
3- Calculate FP3- Calculate FP
FP = count-total FP = count-total [0.65 + 0.01 [0.65 + 0.01 FFii ] ]
= = 494494 [0.65 + 0.01 [0.65 + 0.01 3232 ] = ] = 479.18479.18
8.52
4- Multiply by Historical4- Multiply by Historical
• Estimated FPEstimated FP 479.18479.18• averages proportional to avg averages proportional to avg 479.18479.18//623 623 = 0.77= 0.77
efforteffort 33 months33 months 0.770.77 == 25.425.4
costcost $361 thou$361 thou 0.770.77 == $278,000$278,000
documentationdocumentation1194 pages1194 pages 0.770.77 = = 918 pp.918 pp.
errorserrors 201201 0.770.77 == 155155
defectsdefects 5252 0.770.77 = = 4040
peoplepeople 44 0.770.77 == 3 people3 people
8.53
8.54
Session 8. Discussion question Session 8. Discussion question
• It is suggested in this chapter that an It is suggested in this chapter that an ‘action’ oriented system development ‘action’ oriented system development approach is often concerned with short-approach is often concerned with short-term objectives and sometimes at the term objectives and sometimes at the expense of long-term goals. Does this expense of long-term goals. Does this mean that action is not necessary? What mean that action is not necessary? What is your interpretation? is your interpretation?
8.55
Session 8. Discussion question Session 8. Discussion question
• List and describe skills necessary List and describe skills necessary for developing a good information for developing a good information system project plan. What kinds of system project plan. What kinds of skill are necessary for planning skill are necessary for planning Technical skills? Organizational and Technical skills? Organizational and Business skills? Business skills?
8.56
Session 8. Discussion question Session 8. Discussion question
• What makes an Information System What makes an Information System Project plan different from other Project plan different from other plans such as constructing a plans such as constructing a bridge, planning a conference, bridge, planning a conference, planning a holiday, or developing a planning a holiday, or developing a new degree program? new degree program?