software project management approaches and software project management best practices activities covered by software project management ppt
Software Requirements & Project Management "A project gets a year late one day at a time."
"Anything that can be changed will be changed
until there is no time left to change anything."
"Furious activity does not necessarily equate to
progress and is no substitute for understanding."
"People under pressure do not think faster."
"The nice thing about not planning is that failure
comes as a complete surprise rather than being
preceded by a period of worry and depression."
"Any project can be estimated accurately (once
http://en.wikiquote.org/wiki/Project_management Lecture Overview
how should we manage the process which produces
a software product?
does improving the process improve the product?
process, phases and tasks, activities
a selection of software life cycle models
Software_development_process Project Management
is the discipline of defining and achieving
targets while optimizing the use of
resources (time, money, people, materials,
energy, space, etc) over the course of a
project (a set of activities of finite
duration). Project Management Activities
1. Planning the work
2. Estimating resources
3. Organizing the work
4. Acquiring human and material resources
5. Assigning tasks
6. Directing activities
7. Controlling project execution
8. Reporting progress
9. Analysing the results based on the facts
achieved The 5 Variables of Project Control
5. Risk Project control variables (1)
time - amount of time required to complete the project.
Typically broken down for analytical purposes into the
time required to complete the components of the project,
which is then further broken down into the time required
to complete each task contributing to the completion of
cost - calculated from the time variable.
Cost to develop an internal project is time multiplied by
the cost of the team members involved. When hiring an
independent consultant for a project, cost will typically be
determined by the consultant or firm's hourly rate
multiplied by an estimated time to complete. Project control variables (2)
quality - The amount of time put into individual tasks
determines the overall quality of the project. Some tasks
may require a given amount of time to complete
adequately, but given more time could be completed
exceptionally. Over the course of a large project, quality
can have a significant impact on time and cost (or vice
scope - Requirements specified for the end result. The
overall definition of what the project is supposed to
accomplish, and a specific description of what the end
result should be or accomplish.
risk - Potential points of failure. Most risks or potential
failures can be overcome or resolved, given enough time
and resources. Phases or Tasks
A project can be broken down into phases,
or tasks to be done.
Each phase is defined by its
reports. 8 Phases of the SW Lifecycle
Boehm Software Engineering Economics
Plans & Requirements
Code and Unit Test
Integration and Test
Operations and Maintenance
Verification & Validation
Project Office functions
Configuration management and quality
Manuals What’s the difference between
activities and phases ?
Activity: a set of tasks performed towards
a specific purpose B&D,p707
Phase: A set of tasks performed over
time; defined by its start and end points
The same activity may occur in different
phases of a software life cycle SW Lifecycle Models
Boehm’s Risk Spiral model
Evolutionary (Incremental) Development
Synchronize-and-stabilize Waterfall Model Issues
To be effective there must be a review
step at each phase (shown as ovals) to
check for completion.
In theory we should not proceed down the
waterfall until the phase is "complete".
Problem: real projects don’t work this way
– “change is the only constant” Boehm’s Spiral Model
Essence: process contains several cycles,
starting from the centre; at each iteration the
tasks involve more detailed knowledge and
Focus on addressing risks incrementally, in
order of priority
Distance from origin represents cost
accumulated by the project
Angle from the horizontal represents the type of
activity (e.g. risk, risk analysis, testing) Spiral Model: Key Assumptions
Assume sufficient flexibility to adapt and
change after each analysis spiral
Sensitive to having a thorough risk
assessment at each cycle.
Requires confidence in the project
managers to carry it off, and to maintain
the confidence of both the development
team and the client A Requirements Capture
Where does these leave both the customer and
the developer? They both think they know what
is required but either do not know how to do it or
cannot be sure of what is really required.
This might be described as the software