INFO 420 Chapter 1 1 SW Project Management Nature of IT Projects INFO 420 Glenn Booker
INFO 420 Chapter 1 1
SW Project ManagementNature of IT Projects
INFO 420Glenn Booker
Chapter 1 2INFO 420
Intro
IT projects are organizational investmentsNeed to expect commitment of considerable
time, money, and peopleSome aspects of traditional project
management need to be tweaked for IT projects; take from software engineering and system analysis & design
Chapter 1 3INFO 420
Intro
Focus: reducing costs, reducing cycle timeConnect organization’s strategy to its
deployment, help improve competitiveness PM and IS evolve in parallel timelines Three generations of PM strategy
The EDP era, micro era, and network era
Chapter 1 4INFO 420
EDP era - 1960’s to early 1980’s
Central mainframe or minicomputer Automate separate tasks, e.g. inventory
mgmt, accounting, production scheduling Data processing manager Similar to early steam power use – same
process, with more power behind it
Chapter 1 5INFO 420
Micro era - 1980’s to mid-90’s
Introduction of the PC, and soon client-server computingNetwork is contained within the organization
Lost central control over MIS – IT is everywhere, changing oftenSecurity, data integrity, support issuesFast, cross-area IT projects
Chapter 1 6INFO 420
Network era - mid-1990s to now
Due to awareness of the Internet More strategic partners, alliances, vendors
Network focus is outside the organization Need scalable network architecture Digital convergence of data, AV, graphics
Creates new products and servicesNeeds new organization and strategy
Chapter 1 7INFO 420
Globalization
The omnipresence of computers and the Internet is bringing about a globalization previously unimaginableWork with anyone, any place, any time Increases both risks and rewards
IT has some budget in both good times and bad, the question is how to use it best
Chapter 1 8INFO 420
The key decision
So it boils down to: Which IT projects are worth supporting?Which will provide the most benefit and value
to the organization?
Chapter 1 9INFO 420
IT project management
So far, we’re not doing well at managing IT projects In 1968 the software development crisis
was identified In 1994, CHAOS study said 16% of IT
projects were successful, 31% cancelled before completion, and 53% completed badly
Chapter 1 10INFO 420
IT project management
More recent studies have shown improvement trend In 2006, 35% successful, 19% failed, and
46% weak Factors for successful projects, as
identified in both 2001 and 2006, includedUser involvement, clear business objectives,
and formal methodology
Chapter 1 11INFO 420
Why do we fail?
Partly a definition problem – how far from the plan is a ‘failure’? 5%? 10%? 20%?
Traits of failed or weak projects include Incomplete requirements, changing
requirements and specs, lack of exec support, technology illiteracy/incompetence, lack of resources, and unrealistic expectations
Chapter 1 12INFO 420
Why do we fail?
Communication is a key as wellThe #1 reason for project failure, and a factor
in many other causes Resource issues also include staffing,
training, tools, and facility issues
Chapter 1 13INFO 420
How help success?
Four approaches are themes throughoutA value-driven approachA socio-technical approachA project-management approachA knowledge-management approach
Chapter 1 14INFO 420
A value-driven approach
Make IT projects prove they provide value to the organization
The value the project delivers must more than offset its time, money, and opportunity costs
Chapter 1 15INFO 420
A socio-technical approach
Tools, techniques, and methodologies are not enoughNeed to consider the impact of the project on
its users, and other affected organizationsDoes anyone want the new system?Will they use it?
Chapter 1 16INFO 420
A project-management approach
Need to follow some methodology during the IT projectDon’t just wing it!What are the processes and infrastructure?What tools and controls are used?Plan appropriate resources, manage
expectations (communicate!), consider outsourcing; efficiency & effectiveness goals
Chapter 1 17INFO 420
A knowledge-management approach Have a systematic process for capturing
and sharing knowledge from past projects Record lessons learned and best practices How can we do it better next time?
Chapter 1 18INFO 420
Project management context
Our approach for project management is based on the Project Management Institute (PMI)’s Guide to the Project Management Body of Knowledge (PMBOK, 2004)
A project is a temporary effort to accomplish a product, service, or result
Chapter 1 19INFO 420
Project attributes
Time frame Purpose or goal – PM should meet or
exceed stakeholders’ needs and expectations
Ownership (mainly by sponsor) Resources; the triple constraints of scope,
schedule, and budget
Chapter 1 20INFO 420
Project attributes
Roles – project manager, subject matter experts (SME), technical experts, etc.
Risks and assumptionsRisks can be internal or external
Interdependent tasks in the project Organizational change may result Operating in a larger environment
Chapter 1 21INFO 420
Project life cycle
The project life cycle (PLC) defines the life of a project in phases
Any project should have one or more deliverables as its output(s)
Phases help control the projectProvide gates to decide whether to proceedFast tracking can be done; start next phase
early
Chapter 1 22INFO 420
PLC Phases
Define project goal Plan project Execute project plan Close project Evaluate project
Chapter 1 23INFO 420
Define project goal
Have at least one!!!How will this project provide value to its
organization? And make sure stakeholders agree Define not only the deliverables, but also
the way project success will be measured
Chapter 1 24INFO 420
Plan project
Effort (staffing levels) starts low, then rises until mid-project, then drops off
Risks are often highest initially Stakeholder input is highest initially Cost of correcting scope errors gets higher
as the project progresses
Chapter 1 25INFO 420
Plan project
Define the project’s plan: What will happen? Why? How? Who? How long will it take? How much will it cost?
What are the risks, and how will we manage them?
How did we estimate the duration and budget?
How are decisions reached?
Were we successful?
Chapter 1 26INFO 420
Plan project
Plan must define, for each project phase DeliverablesTasksResourcesTime
This defines the baseline project plan
Chapter 1 27INFO 420
Execute project plan
Now actually conduct the project! Manage project budget, scope, and
duration based on stakeholder needs Track progress against the baseline plan Keep an eye on the overall goal At the end, deliver the deliverables
Chapter 1 28INFO 420
Close project
End the project clearly Make sure all obligations have been met Document the processes used, final actual
budget and schedule data Give final report, presentation, etc. Have sponsor sign off the project
Chapter 1 29INFO 420
Evaluate project
The value of IT projects may be hard to measure – most don’t directly earn $$$
Document the lessons learned carefully What went well? Don’t forget that part! Define best practices, when possible Evaluate the team as well as the project
Chapter 1 30INFO 420
System Development Life Cycle
In contrast, the actual development of a system has its own life cycle, which takes place inside the project
The SDLC defines the phases needed to create a system, then maintain it
There are many versions of SDLC to choose from
Chapter 1 31INFO 420
Generic SDLC Phases
Planning Analysis Design Implementation Maintenance & support
Chapter 1 32INFO 420
Planning
Defines the problem to be solved, or opportunity to be taken, and outlines the goal and scope of the system
The plan for developing the system is definedShould include budget, schedule, technology,
development processes, methods, and tools
Chapter 1 33INFO 420
Analysis
Documents the existing system or processes (the ‘as is’ model)
Leads to requirements analysisMight use JAD, surveys, brainstorming,
interviews, etc. to determine requirements Define how the new system will work
(the ‘to be’ model)
Chapter 1 34INFO 420
Design
Define the high level design of the system (architecture) based on the requirements
Refine the design to produce the low level designDesigns include software, hardware, network,
databases, user interface concept, etc.
Chapter 1 35INFO 420
Implementation
Construct, test, and install the systemEasy to say, huh?
Also develop the documentation, training materials, and supporting information
Chapter 1 36INFO 420
Maintenance & support
Maintenance of a system is often a separate ongoing project
After installation, the system is in production mode for most of its lifeStill need to make improvements
(enhancements), and fix bugs (maintenance)May manage a call center or help desk
Chapter 1 37INFO 420
Retirement
Eventually, a production system becomes obsolete, leading to a new project to replace it
As part of that project, phasing out the old system will be done, until it’s completely offline
Chapter 1 38INFO 420
SDLC Examples
Implementing the SDLC can follow several types of approaches
The oldest is the structured approach, better known as the waterfall life cycle It’s simple and sequential – do each phase
completely before moving to the next oneRequirements, design, code, test, & deploy
Chapter 1 39INFO 420
Waterfall SDLC
Some versions of the waterfall model (DOD-STD-2167a, MIL-STD-498) defined very precisely how the results of each phase were documented
Waterfall depends on very clearly defined requirements and well known methodology and tools – rarely the case
Chapter 1 40INFO 420
Waterfall SDLC
Still useful for maintenance or small projects
Also good for inexperienced development teams
Can be good for shrink wrapped software development
Chapter 1 41INFO 420
Iterative system development
Need for faster development, and accommodation of changing requirements led to a variety of iterative SDLC models
Iterative approaches include: RAD Prototyping Spiral Agile RUP
Chapter 1 42INFO 420
RAD
Rapid Application Development (RAD) compresses the life cycle using special software development tools (CASE tools)
Each iteration produces more and more of the final product in usable form, until it’s completed
Chapter 1 43INFO 420
Prototyping
Generally, prototyping is used to refine or discover system requirements
Prototyping depends on close work between the developer and the customer to create a partially functional system
Then full system development takes place
Chapter 1 44INFO 420
Spiral
The spiral model (Boehm, 1988) is used to address big risks facing a projectEach spiral ‘miniproject’ is a short life cycle
devoted to resolving one key risk area After all the major risks have been
resolved, then another life cycle is used for full system development
Chapter 1 45INFO 420
Agile
Agile software development is defined loosely as: ‘An iterative and incremental (evolutionary) approach
to software development which is performed in a highly collaborative manner by self-organizing teams within an effective governance framework with "just enough" ceremony that produces high quality software in a cost effective and timely manner which meets the changing needs of its stakeholders.’
From http://www.agilemodeling.com/essays/agileSoftwareDevelopment.htm
Chapter 1 46INFO 420
Agile
Agile methods include various methodologies, such as SCRUMDSDM (Dynamic Systems Development
Method)ASD (Adaptive Software Development)XP (eXtreme Programming)
Chapter 1 47INFO 420
Extreme Project Management
Extreme Project Management (XPM) is a project management approach to go with eXtreme Programming (XP) It is designed for projects with very high rates
of requirements and environment changeChange is inevitable, so planning is iterativeHas been adapted for architectural projects
Chapter 1 48INFO 420
RUP
The Rational Unified Process (RUP), now owned by IBM, is an object oriented, iterative life cycle methodology“RUP promotes iterative development and
organizes the development of software and systems into four phases, each consisting of one or more executable iterations of the software at that stage of development.”
From http://www-01.ibm.com/software/awdtools/rup/
Chapter 1 49INFO 420
PLC vs. SDLC???
So how does the project life cycle relate to the software development life cycle?
The SDLC is conducted entirely within the PLC phase of “Execute project plan”
The structure and details of the project plan depend on your choice of SDLC
Chapter 1 50INFO 420
PMBOK
The Guide to the Project Management Body of Knowledge captures the major topics within project managementFirst defined in 1987Current version is ISBN 1933890517 (2008)
It has nine “knowledge areas”
Chapter 1 51INFO 420
PMBOK knowledge areas
Project integration management Coordinating changes to the project plan’s
development and execution Project scope management
Ensuring complete definition and completion of the project scope
Chapter 1 52INFO 420
PMBOK knowledge areas
Project time management Developing, monitoring, and managing the
project schedule Project cost management
Develop and complete project per its budget Project human resource management
Create, develop and manage the project team
Chapter 1 53INFO 420
PMBOK knowledge areas
Project quality managementCreate a quality environment to help project
meet stakeholder needs and expectations Project communications management
Ensure project communicates with stakeholders
Chapter 1 54INFO 420
PMBOK knowledge areas
Project risk management Identify and respond to risks facing the project
Project procurement managementManage procurement of products and
services from outside the organization
Chapter 1 55INFO 420
Summary
We’ve introduced the major topics in IT project managementHistory of IT project managementReasons for project failure and successOur approach for encouraging successDefine a projectProject and system development life cyclesPM body of knowledge