Presentation on theme: "CSIS 3600 Systems Analysis and Design"— Presentation transcript:
1CSIS 3600 Systems Analysis and Design Information Systems Projects/Project Plan
2What is Project Management Project management is the process of planning and controlling the development of a system within a specified timeframe at a minimum cost with the right functionality (Dennis, Wixom and Tegarden, 2002).Project Management can be seen as a job responsibility or it can be a job in and of itself.A Project Manager is not just a senior analyst who happens to be in charge. A project manager must apply a set of skills different from those applied by the analyst.
3Roles of the Project Manager Scoping the project:Project managers estimate resource requirements and formulate plans to deliver the target system.Planning Tasks and Staffing the Project TeamOnce the project has begun, the project manager becomes a supervisor. As a supervisor, the project manager directs the team's activities and evaluates progress.
4Roles of the Project Manager continued Organizing and Scheduling the Project EffortThe project manager is responsible for securing resources so they are available when needed.Directing and Controlling the ProjectOne of the most difficult and important functions of the project manager is controlling the project. Few projects come off without problems or delays.
5Project Management Process Initiating the ProjectPlanning the ProjectExecuting the ProjectClosing down the Project
63 Steps of Project Management Create the work planStaff the projectControl and direct the project
7Pitfalls of Project Management To be successful in project management, you should be aware of some of the common pitfalls that can lead to project failure:Taking shortcuts through or around the system methodology because:Project gets behind schedule and team wants to catch upProject is over budget and team wants to make up costsTeam members are not trained or made fully aware of the task requirements so simply miss or skip them
8Pitfalls continued: Poor Expectations Management that results in: Scope Creep - unexpected growth of user expectations and business requirementsFeature Creep - uncontrolled addition of technical featuresPoor People Management that results in:Mythical man-month - assigning more people to the project. There is not a linear relationship between number of people assigned to a project and time to completion.No one in charge and no one sure of the progress of the project
9Did you notice that many of the causes of failed projects are related? Scope creep causes project to get behind which causes shortcuts to be taken which causes more people to be assigned to the project which causes feature creep which causes project to be way over budget and way behind schedule which causes shortcuts to be taken . . .
10Managing Expectations The Greatest Trait for Success is the ability to Manage ExpectationsThe best way to manage expectations is to Scope the Project. If you cannot scope project expectations and constraints, you cannot manage expectations. If you cannot manage expectations, your chances for success are greatly reduced.
11Managing Expectations continued The three most important items of project scope include:Identifying a project champion and executive sponsorArticulation of the statement of the problem or opportunity including project goalsIdentification of project constraintsFailure to achieve consensus on these dooms a project before it even starts (Whitten & Bentley, 1999)
12Expectations Management Matrix An expectations matrix is a rule-driven tool for assessing the dynamics of changing project parameters.The parameters include: cost, schedule, scope and quality.
13Expectations Management Matrix continued Priorities/Measures of SuccessMax or MinConstrainAcceptCostScheduleScope and/or QualityRules:You must record three X.sNo row may contain more than one X.No column may contain more than one X.
14EMM ExampleProject – Land Man on the Moon before End of Decade and before USSRPriorities/Measures of SuccessMax or MinConstrainAcceptCost Estimated at $20 BillionXSchedule – Deadline December 31, 1969Scope and/or QualityLand man on moonGet him back safelyPriority One was the ScopePriority Two was deadline (USSR was ahead in the space race)Priority Three was cost – Cost control is a priority but we may to ‘accept’ cost overruns to achieve the scope by the required deadline.
15Why EMMDuring the course of an average systems development project, priorities are not stable.Various factors such as the economy, government, politics, etc. may changeDuring systems analysis, unanticipated business problems are identified or requirements modifiedThe EMM helps to deal with expectations management.Simple tool – but sometimes simple tools are most effective
16Having a Plan Success is not pre-destined A good project starts with a good planThe plan is based on the manager's understanding of the requirements of the target system at that point in its development.Project planning is challenging - many project plans call for unreasonably precise estimates of costs and time before a project even begins. This, and poor estimation techniques, can lead to missed deadlines and cost overruns.
18Identification of Tasks A good place to start the development of a plan is the SDLC and the organization’s Systems Development Methodology All tasks required to complete the project must be identified and then planned:How much time will be required?How many people will be needed?How much will the task cost?What tasks will be completed before other tasks are started?Can some of the tasks overlap?
19Statement of WorkWork Breakdown Structure is a hierarchical decomposition of the project into phases, activities and tasks.Summary Tasks – Related work units combined togetherPrimitive Tasks – Most basic unit of work that will not be broken down any furtherMilestones – Events that signify major accomplishments
20Work Breakdown Structure in Outline Format Phase (1)Activity (1.1)Task (1.1.1)Step of the task ( )Step of the task ( )Task (1.1.2)Step ( )…..Task (1.1.3) …..Activity (1.2)…..Phase (2)
21Work Breakdown Structure as a Decomposition Diagram
22Time EstimationForward Scheduling – Establishing a project start date and then scheduling forward from that date. Most common for IS projects.Reverse Scheduling – Establishing a project deadline and then scheduling backwards from that date. Used when a deadline is mandatory.
23Estimating Time Estimate system size Estimate effort required Estimate schedule time required
24Estimating Size Lines of Code Function Points Inputs Outputs Queries FilesProgram interfaces
25Estimating EffortFunction of production rates – how much work can be doneSeveral models have evolved from the research – most well known is the Boehm COCOMO modelBasic formula:Effort (in person months) – 1.4 * thousands lines of code
26Estimate Schedule Time Historical data can be used as a basisSample estimation equation:Schedule time = 3.0 * person months1/3
27Task – Time: Expected Duration Calculated for each primitive taskThere is no foolproof technique for estimating work duration.
28Expected Duration continued Suggested estimation technique:Estimate minimum amount of time to perform the task or the Optimistic Time (OT)Estimate the maximum amount of time to perform the task of the Pessimistic Time (PT)Estimate the Realistic Time or Calculate the most likely time (MLT) as an average of the OT and PT.Use weight factors (based on experience) for possible interruptions or delays to project the resulting Expected Duration (ED)ED = [OT + (x * MLT) + PT]/ yCommon x factor = 4Common y factor = 6
29Examples Optimistic Time = 7 hours Pessimistic Time = 19 hours Most Likely Time = avg(OT and PT)(7 + 19)/2 = 13 hoursExpected Duration:ED = [OT + (x * MLT) + PT]/ y[7 + (4*13) + 19]/6 = 8.67
302 Primary Factors of Software Estimation SLOC (Lines of Code)Function PointsBased on the amount of functionalityAdvantage is more information available early in project life cycle
31SLOC Determination Difficult due to conceptual differences Goal is to measure the amount of intellectual work needed
32User Function Types External Input (Inputs) External Output (Outputs) Count each unique user data or user control input type that (i) enters the external boundary of the software system being measured and (ii) adds or changes data in a logical internal file.External Output (Outputs)Count each unique user data or control output type that leaves the external boundary of the software system.
33Function Points Continued Internal Logical File (Files)Count each major logical group of user data or control information as a logical internal file type.External Interface Files (Interfaces)Files passed or shared between software systems should be counted as external interface file typesExternal Inquiry (Queries)Count each unique input-output combination, where an input causes and generates an immediate output, as an external inquiry type.
34What is COCOMOCOCOMO II is a model that allows one to estimate the cost, effort, and schedule when planning a new software development activityThe COCOMO II capability for estimation of Application Generator, System Integration, or Infrastructure developmentOriginal COCOMO was developed by Dr. Barry Boehm in 1981Reference:
35COCOMO II MeasuresIn COCOMO II effort is expressed as Person Months (PM).amount of time one person spends working on the software development project for one month (exclusive of holidays and vacations but accounts for weekends)Person months is different from the time it will take the project to complete; this is called the development schedule.For example, a project may be estimated to require 50 PM of effort but have a schedule of11 months.
36COCOMO II Supports either SLOC Or Function Points (Note this is true for download and commercial versions, the Web version supports SLOC.)
37Attributes Mode of the project: Organic (project is from a familiar, stable, and fairly unrestrained environment)Semidetached (project is not Organic or Embedded)Embedded (project environment is unfamiliar, tightly constrained, and unforgiving)
38Scale Drivers in COCOMO II The selection of scale drivers is based on the rationale that they are a significant source of exponential variation on a project’s effort or productivity variationEach scale driver has a range of rating levels, from Very Low to Extra High.
39Scale Drivers Precedentedness Development Flexibility Architecture/Risk ResolutionTeam CohesionProcess Maturity
40Cost DriversCapture characteristics that affect the effort to complete the projectETSU program lists all options as cost drivers
44Project Attributes Use of Software Tools Multisite Development Required Development Schedule
45Try It Visit http://sunset.usc.edu/research/COCOMOII/ Go about ¾ of the way down and you can try it out via the WebCOSMOS – Function Point and COCOMOUse this for homework 1 question 4
46Other Sources Listing of Cost Estimation Software
47Controlling and Directing the Project Refine estimatesMatch need to resources and monitor that it happensManage scopeManage riskMaintain quality
48Quality AssuranceA development process, methodology, and even a well-defined plan, do not ensure quality. Quality must be managed. Quality begins with establishing standards.Some internal standards in systems development include:Standards for project deliverables such as reports and documentationModeling techniquesNaming standards for models, objects, programs, databases, etc.Quality check-points and sign-offs at various stages of the projectTechnology standards such as approved graphical user interface components and placementTesting procedures and tolerancesAcceptance criteria for implementation
49Project Tracking Tools Gantt ChartsPert ChartsUnderstand the critical path and slack
50Critical Path and Slack Resource Critical Path is a sequence of dependent project tasks that result in shortest time to project completion. It contains no slack time. Any activity delayed will cause delay in project completion.Activities not on the critical path contain slack time. Slack time available for any task is equal to the difference between the earliest and latest completion times.Tasks with slack time can get behind schedule by an amount less than the available slack time without having an impact on the project’s final completion date.
51Critical Path and Slack Resource continued Understanding critical path and slack resources are indispensable. Emphasis can be placed on the critical path, and if necessary, resources temporarily diverted from tasks with slack time to more critical ones.
52Gantt ChartA simple horizontal bar chart that depicts project tasks against a calendar.Bars represent detailed tasks.The length of the bar represents duration of the task.The bar is positioned according to its planned start and end dates.
55Sequence of Activities Predecessor is a task that must be completed before the start of the task in questionConstraints include dependence or a task that is dependent on the start of another task (as opposed to its completion). Other constraints might include specific date for task initialization (programmer start date, etc.)Based on predecessors and constraints, determine activities/tasks and identify all required preceding activities. Activities may have 0, 1, or more preceding activities.
56Project Evaluation and Review Technique (PERT) Chart PERT charts represent another view of a project schedule that emphasizes intertask relationships.
57Annotated PERT Chart Rectangle contains: Task Name Task ID and Estimated DurationStart and End datesRed indicates task is on critical path
59PERT including Time Completion Estimates Note that when Te = Tl, slack time is 0.Tasks with 0 slack time are on the critical path.
60Gantt vs PERTPERT and Gantt charting are frequently presented as mutually exclusive tools. However, they can be used in a complementary manner.PERT is recommended for larger projects with high intertask dependency. Gantt is recommended for simpler projects.Gantt charts seem to be preferred in IS projects.Most project management tools now incorporate critical path analysis.
61Sample Base line Project Plans Links to sample project plans are found under Lecture Notes.
62Quote of the Week Top 10 Signs of IS Project Failure: 10. All software purchased is Version 1.0.9. All hardware purchased come from a discount company called Kludges "R" Us.8. Project manager is spotted reading PCs for Dummies7. Application developers think Java OLE is something to be ordered at a coffee shop.6. Network administrators question the usefulness of an ATM system that doesn't accept bankcards.5. Hardware technicians try to use RAID to cure software bugs.4. Size of database balloons reaches IWSTBTB (It Wasn't Supposed To Be That Big) proportions.3. Consultants revamp system architecture, which had been totally revamped only a month ago by a different group of consultants.2. After system is finally deployed, end users mistake their computer mouses for foot pedals.1. CIO is seen faxing resume.(as published by Cahners Publishing Company, a division of Reed Elsevier Business Information, Inc.)