csis 3600 systems analysis and design
DESCRIPTION
CSIS 3600 Systems Analysis and Design. Information Systems Projects/Project Plan. What is Project Management. - PowerPoint PPT PresentationTRANSCRIPT
CSIS 3600 Systems Analysis and Design
Information Systems Projects/Project Plan
What 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.
Roles 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 Team Once the project has begun, the project
manager becomes a supervisor. As a supervisor, the project manager directs the team's activities and evaluates progress.
Roles of the Project Manager continued Organizing and Scheduling the Project
Effort The project manager is responsible for
securing resources so they are available when needed.
Directing and Controlling the Project One of the most difficult and important
functions of the project manager is controlling the project. Few projects come off without problems or delays.
Project Management Process Initiating the Project Planning the Project Executing the Project Closing down the Project
3 Steps of Project Management
Create the work plan Staff the project Control and direct the project
Pitfalls 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 up
Project is over budget and team wants to make up costs
Team members are not trained or made fully aware of the task requirements so simply miss or skip them
Pitfalls continued: Poor Expectations Management that results in:
Scope Creep - unexpected growth of user expectations and business requirements
Feature Creep - uncontrolled addition of technical features
Poor 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
Did 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 . . .
Managing Expectations
The Greatest Trait for Success is the ability to Manage Expectations
The 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.
Managing Expectations continued The three most important items of project
scope include: Identifying a project champion and executive
sponsor Articulation of the statement of the problem or
opportunity including project goals Identification of project constraints
Failure to achieve consensus on these dooms a project before it even starts (Whitten & Bentley, 1999)
Expectations 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.
Expectations Management Matrix continued
Rules:You must record three X.sNo row may contain more than one X.
No column may contain more than one X.
Priorities/ Measures of Success
Max or Min
Constrain
Accept
Cost
Schedule
Scope and/or Quality
EMM Example
Priorities/ Measures of Success
Max or Min
Constrain
Accept
Cost Estimated at $20 Billion
X
Schedule – Deadline December 31, 1969
X
Scope and/or Quality1. Land man on moon2. Get him back safely
X
Priority 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.
Project – Land Man on the Moon before End of Decade and before USSR
Why EMM During the course of an average systems
development project, priorities are not stable. Various factors such as the economy,
government, politics, etc. may change During systems analysis, unanticipated business
problems are identified or requirements modified The EMM helps to deal with expectations
management. Simple tool – but sometimes simple tools
are most effective
Having a Plan Success is not pre-destined A good project starts with a good plan The 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.
Techniques for Developing Project Plans
Identification 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?
Statement of Work Work Breakdown Structure is a
hierarchical decomposition of the project into phases, activities and tasks. Summary Tasks – Related work units
combined together Primitive Tasks – Most basic unit of work
that will not be broken down any further Milestones – Events that signify major
accomplishments
Work Breakdown Structure in Outline Format
Phase (1)Activity (1.1)
Task (1.1.1)Step of the task (1.1.1.1)Step of the task (1.1.1.2)
Task (1.1.2)Step (1.1.2.1)…..
Task (1.1.3) …..Activity (1.2)…..
Phase (2)
Work Breakdown Structure as a Decomposition Diagram
W ork B reakd ow n S tru c tu re
S tep 1 .1 .1 .1 S tep 1 .1 .1 .2
Task 1 .1 .1
S tep 1 .1 .2 .1
Task 1 .1 .2
A c tivity 1 .1
S tep 1 .2 .1 .1
Task 1 .2 .1
S tep 1 .2 .1 .2
Task 1 .2 .2
A c tivity 1 .2Typ e t it le h e re
P h ase 1
S tep 2 .1 .1 .1
Task 2 .1 .1
A c tivity 2 .1
S tep 2 .2 .1 .1 S tep 2 .2 .1 .2
Task 2 .2 .1
A c tivity 2 .2
P h ase 2
Time Estimation Forward 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.
Estimating Time Estimate system size Estimate effort required Estimate schedule time required
Estimating Size Lines of Code Function Points
Inputs Outputs Queries Files Program interfaces
Estimating Effort Function of production rates – how
much work can be done Several models have evolved from
the research – most well known is the Boehm COCOMO model
Basic formula: Effort (in person months) – 1.4 *
thousands lines of code
Estimate Schedule Time Historical data can be used as a
basis Sample estimation equation:
Schedule time = 3.0 * person months1/3
Task – Time:Expected Duration
Calculated for each primitive task There is no foolproof technique for
estimating work duration.
Expected Duration continued
Suggested estimation technique:1. Estimate minimum amount of time to perform the
task or the Optimistic Time (OT)2. Estimate the maximum amount of time to perform the
task of the Pessimistic Time (PT) 3. Estimate the Realistic Time or Calculate the most
likely time (MLT) as an average of the OT and PT. 4. 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
Examples Optimistic Time = 7 hours Pessimistic Time = 19 hours Most Likely Time = avg(OT and PT)
(7 + 19)/2 = 13 hours Expected Duration:
ED = [OT + (x * MLT) + PT]/ y [7 + (4*13) + 19]/6 = 8.67
2 Primary Factors of Software Estimation SLOC (Lines of Code)
Function Points Based on the amount of functionality Advantage is more information
available early in project life cycle
SLOC Determination
Difficult due to conceptual differences
Goal is to measure the amount of intellectual work needed
User Function Types
External Input (Inputs) 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.
Function 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 types
External Inquiry (Queries) Count each unique input-output combination,
where an input causes and generates an immediate output, as an external inquiry type.
What is COCOMO
COCOMO II is a model that allows one to estimate the cost, effort, and schedule when planning a new software development activity
The COCOMO II capability for estimation of Application Generator, System Integration, or Infrastructure development
Original COCOMO was developed by Dr. Barry Boehm in 1981
Reference: http://sunset.usc.edu/research/COCOMOII/
COCOMO II Measures
In 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.
COCOMO II
Supports either SLOCOr
Function Points (Note this is true for download and
commercial versions, the Web version supports SLOC.)
Attributes 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)
Scale 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 variation
Each scale driver has a range of rating levels, from Very Low to Extra High.
Scale Drivers
Precedentedness Development Flexibility Architecture/Risk Resolution Team Cohesion Process Maturity
Cost Drivers
Capture characteristics that affect the effort to complete the project
ETSU program lists all options as cost drivers
Product Attributes
Required Reliability Database Size Product Complexity Required Reuse Documentation
Platform Attributes
Execution Time Constraint Main Storage Constraint Platform Volatility
Personnel Attributes
Analyst Capability Programmer Capability Personnel Continuity Applications Experience Platform Experience Language and Toolset
Experience
Project Attributes
Use of Software Tools Multisite Development Required Development
Schedule
Try It
Visit http://sunset.usc.edu/research/COCOMOII/
Go about ¾ of the way down and you can try it out via the Web
COSMOS – Function Point and COCOMO http://www-cs.etsu.edu/cosmos/ Use this for homework 1 question 4
Other Sources
Listing of Cost Estimation Software http://www.dacs.dtic.mil/
databases/url/key.hts?keycode=4:152&islowerlevel=1
Controlling and Directing the Project Refine estimates Match need to resources and
monitor that it happens Manage scope Manage risk Maintain quality
Quality Assurance A 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 documentation
Modeling techniques Naming standards for models, objects, programs, databases, etc. Quality check-points and sign-offs at various stages of the project Technology standards such as approved graphical user interface
components and placement Testing procedures and tolerances Acceptance criteria for implementation
Project Tracking Tools Gantt Charts Pert Charts Understand the critical path and
slack
Critical 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.
Critical 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.
Gantt Chart A 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.
Figure 3-10a -A Gantt Chart
Activity Progress Representation on Gantt Chart
Sequence of Activities Predecessor is a task that must be completed
before the start of the task in question Constraints 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.
Project Evaluation and Review Technique (PERT) Chart PERT charts represent another view of a project
schedule that emphasizes intertask
relationships.
Annotated PERT Chart Rectangle contains: Task Name Task ID and Estimated
Duration Start and End dates Red indicates task is on critical
path
Annotated PERT Chart continued
PERT including Time Completion Estimates
Note that when Te = Tl, slack time is 0. Tasks with 0 slack time are on the critical path.
Gantt vs PERT PERT 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.
Sample Base line Project Plans
Links to sample project plans are found under Lecture Notes.
Quote of the WeekTop 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 Dummies 7. 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.)