560 likes | 708 Views
MIS 746 IS Project Management. Dr. Honghui Deng. Associate Professor MIS Department UNLV. Session 8. IS Project Estimation and Planning. Session 8. Why IT project plan. Is it clear what the project is supposed to deliver? Is it clear who will be working on the project?
E N D
MIS 746 IS Project Management Dr. Honghui Deng Associate Professor MIS Department UNLV
Session 8. Why IT project plan • Is it clear what the project is supposed to deliver? • Is it clear who will be working on the project? • Do you have a breakdown of activities? • Is it clear when deliverables are due? • Do you have established communication channels? • Are you clear who the stakeholders are? • Do you have milestones and due dates for them? • 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 need more cooperation from functional areas? • Are you aware of project risks and their impact?
Session 8. IT project plan • In its simplest form, a project plan should clarify what the project is about and how it will be accomplished. • It helps coordination, communication, and negotiation. • Planning is often avoided, arguments 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.”
Session 8. Characteristics • Positions the project in a broad perspective. • Must be comprehensive and inclusive of important dimensions. • Must guide execution. • Must start with the project scope that defines the project outcome. • Must guide activities that accomplish what is described in the project scope statement. • Must be treated as a living document. • Must be adhered to by all stakeholders especially the project manager and team members.
Session 8. Project planning process • Confirm Executive Approval • Understand Project Requirements • Reflect on Issues • Identify Milestones • Identify Phases • Identify Activities Within Phases • Identify Tasks within Activities
Session 8. Project planning process • Confirm Executive Approval • All sources of power and influence that could impact a project must be identified. • Executive support must be secured. • Understand Project Requirements • All requirements of the project must be identified. • Requirements must be linked to business needs.
Session 8. Project planning process • Reflect 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 project • Tactical Items - day to day operations of project • Resourcing Items - human, technology and other physical resources • Acceptance Criteria - to assess deliverables
Session 8. Project planning process • Identify 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.
Session 8. Project planning process • Identify Phases • Project phases allow large projects to be divided into manageable pieces. • Based on prioritized list of user 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 in all situations.
Session 8. Project planning process • Identify 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 Activities • You can further break down activities into the distinct tasks that are necessary to fulfill the activity.
Session 8. Project planning constraints • The constraints applicable to most projects are: • Budget • Time • Resources • Human Skills, IS hardware/software, overhead requirements.
Session 8. Project planning constraints • Budget • 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.
Session 8. Project planning constraints • Time • A project starts and ends on specific target dates. • Sometimes the start and end dates are 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.
Session 8. Project planning constraints • Resources • Human Skills • Required skill-set for the project. • Required skills can sometimes overlap among people. • IS Hardware/Software • It is important to plan for the availability of technology ahead of time. • It project manager must ensure that correct hardware/software combination has been selected and ordered in a timely manner.
Session 8. Project planning constraints • Resources • 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.
Session 8. Project planning pitfalls • Every project has unique aspects that make the planning process unique and 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 • People have the tendency to do the easier tasks; often without realizing it.
Session 8. Project planning pitfalls • Factors that cause projects to fail 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
Session 8 Session 8. Project planning tools • Gantt Charts • Work Breakdown Structures (WBS) • Critical Path Method (CPM) • Program Evaluation and Review Technique (PERT) • Microsoft Project
Session 8. Gantt Chart Video 04 Gantt Chart
Session 8. Project planning and success • Acts like a road map for execution. • Used as means of primary communication with all stakeholders. • Reflects acceptance by all stakeholders. • Reflects collective efforts. • Requires broad involvement. • Identifies exceptions and contingencies. • Provides flexibility due to unpredictable nature of some events and activities.
Session 8. Project planning and success • It clarifies what needs to be done before the work starts • It makes work manageable by breaking down the project into phases • It defines the confines of each work unit in terms of time and budget • It clarifies who is responsible for a task • It gives perspective and links work units to the overall project • It links the project to organizational goals and objectives • It is a source of reference for clarifying issues • It provides a base for performance evaluation • It provides a base to monitor progress
Session 8. Project planning and success • It provides a base for measuring success • It provides a base for establishing communication channels • It helps to create realistic expectations. • It helps to generate support for the project. • It provides boundaries for triple constraints: cost, time, requirements • It provides the project manager with the opportunity to demonstrate administrative and leadership skills • It provides the project manager with the opportunity to set standards and describe expectations • It reduces uncertainty
Session 8. Challenges • While not cast in stone, a plan must provide a sense of stability, continuity, and focus. • Early adaptors rely on self-training and their expectations are often changed. • Reluctant users may know the business but are often hesitant to apply new technology in their work. • Expectation gap – between technology potential and its actual benefits. • Knowledge gap – between individuals who know the business and those who know the technology.
Session 8. Challenges • The technology may become mature in the future and be able to meet current expectations, but it is not fulfilling those expectations now. • Sometimes users are not prepared to wait; they expect the best features now. • Sometimes users develop false expectations because of over sell phenomenon by the internal developers or external vendors. • A good project plan helps form realistic expectations.
Session 8. Estimation software estimation Charles R. Symons Software Sizing and Estimating: Mk II FPA Wiley [1991]
software production cycle • DESIGN • DEVELOPMENT • production not hard • MAINTENANCE recognized as a difficult task
software production cycle • SYSTEM SIZE a variable in • DESIGN • DEVELOPMENT • MAINTENANCE • components of system size • amount of information processed • technical requirements • performance drivers (objectives)
objectives • COSTminimization • TIME minimization • QUALITY assure that product performs to specifications
size measures • source lines of code + concrete measure - what lines? - logical or physical? - housekeeping? - different across languages • most commonly used • some economy of scale
Albrecht’s Function Point Analysis Method AIMS • consistent measure • meaningful to end user • function points should be easier to understand than lines of code • rules easy to apply • Can estimate from requirements specification • independent of technology used
Albrecht’s system • count • external user inputs • enquiries • outputs • master files delivered (internal & external) • get points for every useful activity function points= information processing size x technical complexity adjustment
Albrecht’s System complexity tables • data elements referenced • 1-4 • 5-15 • 16 or more • file types referenced • 0 or 1 • 2 • 3 or more table of SIMPLE, AVERAGE, COMPLEX
Albrecht functional multipliers SIMPLE AVERAGE COMPLEX external input x 3 x 4 x 6 external output x 4 x 5 x 7 logical internal file x 7 x 10 x 15 ext interface file x 5 x 7 x 10 external inquiry x 3 x 4 x 6 add up, get total unadjusted function points
Albrecht Technical Complexity Adjustment 14 general application characteristics data communications on-line update distributed functions complex processing performance re-useability heavily used configuration installation ease transaction rate operational ease on-line data entry multiple sites end user efficiency facilitate change not present = 0 average influence = 3 insignificant influence = 1 significant influence = 4 moderate influence = 2 strong influence = 5 TCA = 0.65+(0.01x(total degree of influence))
Symons’ complaints • Albrecht method • alternative counting practices • weights used are questionable • large systems under-weighted • (XEROX 1985: rapid drop in productivity with increasing system size) • range of points too narrow • but MUCH BETTER THAN SLOC
Mk II Function Point Analysis • modification of Albrecht • use same Technical Complexity Adjustment • extend general application characteristics to 19 or more • weights adjusted • Information Processing Size changed the most
logical transactions logical transaction = • unique input/process/output combination triggered by unique event of interest to the user • or need to retrieve information • create a customer • update an account • enquiry • produce monthly summary report
Mk II FPA summary • obtain general understanding of the system • construct a model of primary entities • identify logical transactions • score degree of influence of all 19 general application characteristics (plus client specific) • obtain total project work-hours, calibrate • calculate function points
comparison SLOC Albrecht Mk II FPA accepted standard no yes yes clarity potentially some subjective objective structured? no no yes easy to use? yes no no automatable? yes no yes use for estimating? sometimes yes yes
Estimation Example SLOC Function Point
Source Lines of Code • NEED DATABASE of past experience AVERAGES effort 33 months cost $361 (thousand) documentation 1194 pages errors 201 defects 52 people 4 KLOC 20.543
Implementing LOC • Estimate structured lines of code 10,000 • averages proportional to LOC 10/20.543 = 0.487 effort 33 months 0.487= 16 cost $361 thou 0.487= $177,000 documentation 1194 pages 0.487= 581 pp. errors 201 0.487= 98 defects 52 0.487= 25 people 4 0.487= 2 people
Function Point Calculation 1 - get count-total number of features times complexity 2 - get Fi rate 14 factors (0-5), total 3 - FP = count-total [0.65 + 0.01 Fi ] 4 - multiply historical averages (623) per FP by this FP
1 - get count total Complexity Weighting simpleaveragecomplexproduct # user inputs __ 3 + __ 4 + __ 6 = ___ # user outputs __ 4 + __ 5 + __ 7 = ___ # user inquiries __ 3 + __ 4 + __ 6 = ___ # files __ 7 + __ 10+__ 15 = ___ # external interfaces __ 5 + __ 7 + __ 10 = ___
1 - get count-total Bank accounts record system involving 36 user inputs simple complexity 5 user outputs average complexity 20 user inquiries simple complexity 40 files accessed simple complexity 3 external interfaces average complexity
1 - get count-total Complexity Weighting simpleaveragecomplexproduct 36 user inputs 36 3 + __ 4 + __ 6 = 108 5 user outputs __ 4 + 5 5 + __ 7 = 25 20 user inquiries 20 3 + __ 4 + __ 6 = 60 40 files 40 7 + __ 10+__ 15 = 280 3 external interfaces __ 5 + 3 7 + __ 10 = 21 TOTAL 494
2 - get Fi F1 require reliable backup & recovery? Significant 4 F2 data communications required? Moderate 2 F3 distributed processing functions? Significant 4 F4 performance critical? Average 3 F5 run on existing, heavily utilized environment? Essential 5 F6 require on-line data entry? Essential 5 F7 on-line data entry from multiple operations? Incidental 1 F8 master files updated on-line? No influence 0 F9 inputs, outputs, files, or inquiries complex? Incidental 1 F10 internal processing complex? Incidental 1 F11 code designed to be reusable? Average 3 F12 conversion and installation included in the design? Average 3 F13 system designed for multiple installations in different orgs? No influence 0 F14 application designed to facilitate change and ease of use? No influence 0 = 32