software project management
DESCRIPTION
Software Project Management. Review INFO 638 Glenn Booker. Project Limits. Projects are limited in scope, as defined by one of these: A functional specification A Software Requirements Specification Use cases and their documentation A Statement of Work (SOW) - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/1.jpg)
INFO 638 Lecture #10 1
Software Project Management
Review
INFO 638Glenn Booker
![Page 2: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/2.jpg)
INFO 638 Lecture #10 2
Project Limits Projects are limited in scope, as
defined by one of these: A functional specification A Software Requirements Specification Use cases and their documentation A Statement of Work (SOW) A Mission Needs Statement (MNS)
(government term)
![Page 3: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/3.jpg)
INFO 638 Lecture #10 3
The Triangle Projects generally get stuck facing a
triangle Cost Time (schedule) Features and/or quality
At most, two of these points can be controlled Which one can you tolerate flexibility?
![Page 4: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/4.jpg)
INFO 638 Lecture #10 4
TPM Life Cycle Wysocki has five major phases in
the TPM life cycle Scope the project Develop the project plan Launch the plan Monitor/control project progress Close out the project
![Page 5: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/5.jpg)
INFO 638 Lecture #10 5
Risk Management Guide Need to create a list of possible risks Describe each risk briefly Estimate the probability of the risk
happening Should be between 0 and 100%
Estimate the loss if the risk occurs How much effort will it take to recover
from the risk?
![Page 6: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/6.jpg)
INFO 638 Lecture #10 6
Risk Management Guide Multiply probability times loss to get
the impact of each risk Impact = probability * loss
Sort risks in descending order of impact; keep the top 10 (typically) This is prioritizing the risks
For each significant risk, assign a risk owner to look for the risk occurring
![Page 7: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/7.jpg)
INFO 638 Lecture #10 7
Procurement Management Procurement has its own life cycle,
which runs parallel to part or all of the project life cycle Solicit RFI (optional; and not in text) Solicit RFPs Get responses Select Vendors Manage contracts Close out contracts
![Page 8: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/8.jpg)
INFO 638 Lecture #10 8
Role of the POS The POS is a communications tool
among the project manager, their development team, the customer, and the project manager’s boss (upper or senior management)
The POS is a concise statement of the project, and a summary of its justification to continue
![Page 9: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/9.jpg)
INFO 638 Lecture #10 9
Parts of a POS The POS has five major sections
Problem/opportunity Goal Objectives Success criteria Assumptions, risks, obstacles
Each is typically a few paragraphs long
![Page 10: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/10.jpg)
INFO 638 Lecture #10 10
Work Breakdown Structure (WBS) The WBS gives structure to the set of
activities in a project It expands on the POS by describing
activities in more and more detail, until you get down to the smallest level of task you need to define for your project The WBS is a really big ‘to-do’ list
![Page 11: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/11.jpg)
INFO 638 Lecture #10 11
WBS Approaches There are three major approaches
to structuring a WBS Noun-type approaches (subsystems) Verb-type approaches (life cycle phases) Organizational approaches (who or
where performs work)
![Page 12: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/12.jpg)
INFO 638 Lecture #10 12
WBS Numbering Tasks and activities are often given
unique identification numbers to help do cost accounting and generate status summaries In Microsoft Project, you can add a
column called WBS which will automatically follow this numbering
![Page 13: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/13.jpg)
INFO 638 Lecture #10 13
After the WBS Once the rough scope of tasks has
been defined in the WBS, we need to estimate each task in terms of duration and effort From effort we’ll get the cost of each
task, and eventually the project After estimation, can start to organize
the project schedule
![Page 14: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/14.jpg)
INFO 638 Lecture #10 14
Creating a Good Estimate There are six techniques for
estimating the duration and effort of a task Similar activities Historical data Expert advice Delphi technique Three-point technique Wide-band Delphi technique
![Page 15: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/15.jpg)
INFO 638 Lecture #10 15
Estimating Resources While ‘resources’ often refers to
people on a project, it may refer to People Facilities Equipment Money Materials
![Page 16: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/16.jpg)
INFO 638 Lecture #10 16
Organization Chart Since we need to define the types of
staff needed to perform each task, this feeds into developing the organization chart of the project The roles needed for performing tasks
should all appear on the org chart It’s called a Resource Breakdown
Structure in the text (p. 108)
![Page 17: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/17.jpg)
INFO 638 Lecture #10 17
Project Network Diagram Can present the project schedule in
three major forms Gantt chart, showing bars for each task
under a timeline Pert chart, with activity on arrow (AOA)
notation CPM chart, with activity on node (AON)
notation The latter two can show critical path
![Page 18: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/18.jpg)
INFO 638 Lecture #10 18
Critical Path A key output is the critical path, which
can be defined as The longest duration path in the network
diagram, or The series of tasks whose early and late
schedules are the same dates, or The set of activities with zero slack
![Page 19: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/19.jpg)
INFO 638 Lecture #10 19
Management Reserve At the project level, try to keep a little
reserve of time (padding) to allow for likely schedule slips Don’t do this on individual tasks – tends
to bloat the schedule 5-10% is a good schedule reserve So a 6-month project might try to finish
6-13 work days early 6 months = 26 weeks = 130 work days
![Page 20: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/20.jpg)
INFO 638 Lecture #10 20
Leveling Resources Then need to add up the planned
resources and look for potential problems Over committing people Resources inconsistent with project
priorities Lack of management to monitor the
project resources Lack of accounting for employee
turnover
![Page 21: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/21.jpg)
INFO 638 Lecture #10 21
Work Packages Earlier we defined a project as having
activities, which are broken into tasks A way to describe and manage the
tasks within an activity are work packages
The work package describes the tasks to be accomplished, relevant dates, and who will do the work
![Page 22: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/22.jpg)
INFO 638 Lecture #10 22
Critical chain vs. critical path The critical path is the longest
duration through the project Doesn’t consider the resources needed
for tasks along the critical path Critical chain is the longest path
through the project, considering both task dependencies and resource constraints
![Page 23: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/23.jpg)
INFO 638 Lecture #10 23
Joint Project Planning Joint Project Planning (JPP) uses a
goldfish-bowl approach to conducting early analysis of a project
Its scope is typically to define the POS and/or PDS For software, this might include
defining the system scope and key requirements, and/or developing high level system design
![Page 24: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/24.jpg)
INFO 638 Lecture #10 24
JPP All significant stakeholders in a
project need to attend JPP JPP sessions are typically held off-site
to avoid distractions JPP follows a specific agenda to reach
specific goals for the session, e.g. develop a POS, describe the WBS, etc.
![Page 25: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/25.jpg)
INFO 638 Lecture #10 25
Monitoring Progress By now you have been able to create
a detailed project plan, including task definitions, estimates of duration, & assignment and leveling of resources
Then the project actually starts Now you need to monitor what really
happens, and control the future of the project
![Page 26: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/26.jpg)
INFO 638 Lecture #10 26
Control and Risk Controlling a project is closely linked
to risk management You want to minimize the risk that the
project won’t finish successfully Successfully generally means “
on time and within budget” To do so, you need measurements to
help decide if the project is on track
![Page 27: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/27.jpg)
INFO 638 Lecture #10 27
Controls Without good controls, a project will
wander like a 6-year-old on summer vacation
Controls allow us to Track progress – what has been
accomplished? Detect variance – have we departed from
the plan? Take corrective action – fix it!
![Page 28: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/28.jpg)
INFO 638 Lecture #10 28
Progress Reporting System Some form of progress reporting
system needs to be established Want timely, complete, clear, and
accurate status reported Avoid adding too much to overhead to
create the status reports Results are readily available Warns of problems with time to fix them
![Page 29: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/29.jpg)
INFO 638 Lecture #10 29
Variances Variances are the difference between
actual events and the project plan Positive variances are often good
They mean you are ahead of schedule or under budget
But could mean the schedule has slipped, and little has been accomplished
![Page 30: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/30.jpg)
INFO 638 Lecture #10 30
Displaying Status There are three major ways to display
the status of a project graphically Gantt chart Milestone trend chart Cost schedule control chart
![Page 31: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/31.jpg)
INFO 638 Lecture #10 31
Cost Schedule Control Cost schedule control refers to the
system used by the many agencies called earned value or C/SCSC
We have already defined a project plan with tasks and resources
Each task therefore has some defined dollar value (its resources times their hourly rate)
![Page 32: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/32.jpg)
INFO 638 Lecture #10 32
Cost Schedule Control To use Cost Schedule Control, we
need to define when we get ‘credit’ for accomplishing each task Only when the task is done Half at the task start, and half at finish Etc.
The total planned value of work done on the project typically forms a long S curve over time
![Page 33: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/33.jpg)
INFO 638 Lecture #10 33
Change Control A change control process is needed to
manage changes to the scope of a project Describes the activities needed to
analyze a problem, estimate how much work it is to resolve, determine its priority, fix it, and incorporate it into a system change with other problem fixes
The names of the organizations which perform each of the steps may vary
![Page 34: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/34.jpg)
INFO 638 Lecture #10 34
Escalation Escalation here means how a problem
can be resolved Little problems might be resolved by the
project manager Bigger problems might be resolved by
getting additional resources from your organization
Huge problems might need cooperation from your customer to resolve
![Page 35: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/35.jpg)
INFO 638 Lecture #10 35
Motivation Key for a good manager to recognize
is that different things motivate different people And what motivates one person might
change over time One person might be thrilled to get an
award for their contribution to a project, another might prefer a check, and a third might want an extra two days vacation
![Page 36: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/36.jpg)
INFO 638 Lecture #10 36
Motivation The big motivational factors for most
people are: Opportunity for achievement Opportunity for advancement
Might include technical supervision Recognition Increased responsibility The work itself
![Page 37: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/37.jpg)
INFO 638 Lecture #10 37
Management and Motivation Many of the motivational factors can’t
be controlled by a first line manager Key for managers to focus on are
Provide challenging work Recognize your people’s work Design their job to provide a variety of
skills needed, clearly identifiable and significant tasks, allow autonomy, and provide feedback
![Page 38: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/38.jpg)
INFO 638 Lecture #10 38
Contract Issues Many management issues involve
contractual concerns A good resource with more detail is
On Time Within Budget, E.M. Bennatan, 3rd ed., ISBN 0-471-37644-2, Wiley, 2000.
The key contractual vehicles are RFI, RFP, and RFQ For zillions of examples, go to
www.firstgov.gov and search on those acronyms
![Page 39: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/39.jpg)
INFO 638 Lecture #10 39
Contract Terms The terms of payment are clearly
defined in any contract Often payments are based on meeting
specific milestones in the project Rules for handling contract early
termination, and normal closeout of the contract are also defined
![Page 40: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/40.jpg)
INFO 638 Lecture #10 40
Team Rules Any team needs some rules to
function effectively How will decisions be made? How do you solve problems? How do you resolve conflicts? How & when does the team meet? How does the team interact
with other projects? The customer? Who defines the answers to these?
![Page 41: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/41.jpg)
INFO 638 Lecture #10 41
Closeout Normal closeout of a project typically
involves six steps Get client acceptance Ensure system installed Ensure documentation delivered Get client signoff Post-implementation Audit Party!
![Page 42: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/42.jpg)
INFO 638 Lecture #10 42
Adaptive Project Framework Adaptive Project Framework (APF)
uses selected portions of traditional project management (TPM) Focus is on planning just-in-time, rather
than planning the entire project from the start
APF is client-focused, and expects constant change
![Page 43: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/43.jpg)
INFO 638 Lecture #10 43
APF Structure APF uses five phases
Version Scope Cycle Plan Cycle Build Client Checkpoint Post-Version Review
Planning is based on functionality, and is kept high level until each cycle
![Page 44: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/44.jpg)
INFO 638 Lecture #10 44
APF Core Values APF is based on six core values, which
help define how APF thinks Client-focused Client-driven Incremental results Continuous questioning Change is progress Don’t speculate
![Page 45: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/45.jpg)
INFO 638 Lecture #10 45
Version Scope This phase sets the stage for the
project Prepare the POS, much like done
in TPM Define the vision of what the product will
be Define the overall budget and schedule
(timebox) of the project Define the WBS to the 2nd or 3rd level
![Page 46: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/46.jpg)
INFO 638 Lecture #10 46
Number of Cycles Once we have a handle on the project
objectives and scope, need to establish the preliminary number of time boxes, and how long they are Try fixed duration for all time boxes; may
tweak later Might use development time of the most
complex cycle to set the time box size Consider client attention span too
![Page 47: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/47.jpg)
INFO 638 Lecture #10 47
Cycle Objectives Finally, prepare objective statements
for the first few cycles Tell customer what they should
expect from each cycle (deliverables) Keep focus on business functions and
value to the customer
![Page 48: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/48.jpg)
INFO 638 Lecture #10 48
Cycle Planning Cycle planning is performed like in
traditional project management (TPM), but there are key differences In APF, the planning is done in detail only
for the next cycle – not the entire project at once
APF planning may or may not use project software; it could be done with more informal tools
![Page 49: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/49.jpg)
INFO 638 Lecture #10 49
Cycle Build It is assumed that Cycle Plan is done
by one person or part of the team Cycle Build requires the whole team’s
presence to refine the schedule if needed
Identify specific resources for each task, and ensure conflicts are resolved and workload is balanced
![Page 50: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/50.jpg)
INFO 638 Lecture #10 50
Build Cycle Functionality Start building the functionality
promised for this cycle, following the plan just developed
During the cycle, daily stand-up meetings are used for status Stand up so it doesn’t drag on forever
Monitor the system scope & their priorities, and issues identified
![Page 51: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/51.jpg)
INFO 638 Lecture #10 51
Build Cycle Use a Scope Bank to keep track of
requirements, and an Issues Log to record and track significant problems
![Page 52: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/52.jpg)
INFO 638 Lecture #10 52
Client Checkpoint The Client Checkpoint focuses on
two major activities Review of the quality of work done
in the existing cycle Need planned and actual functionality
added to the system in this cycle Adjust schedule for the next cycle
accordingly Need the Scope Bank
![Page 53: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/53.jpg)
INFO 638 Lecture #10 53
Go back to Cycle Plan phase After the client checkpoint, loop
back to the cycle plan phase, until this version of the product has been completed Notice that we didn’t do detailed
planning during the client checkpoint for this reason – it’s followed by the planning phase
Stop loop when done with Version
![Page 54: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/54.jpg)
INFO 638 Lecture #10 54
Post-Version Review There are three activities in the
Post-Version Review Determine if the project has met
its business objectives Review lessons learned Look for APF process improvements
![Page 55: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/55.jpg)
INFO 638 Lecture #10 55
APF Variations APF can be used for quick proof-of-
concept projects Sometimes an APF project will reveal
major scope problems; have to adjust severely, or kill the project
![Page 56: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/56.jpg)
INFO 638 Lecture #10 56
Extreme Project Management Extreme Project Management (xPM) is
similar to APF, but is better suited to projects with poorly defined goals You don’t know what the objective is
It isn’t the same as Extreme Programming (XP), which is part of the Agile family of development methods
![Page 57: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/57.jpg)
INFO 638 Lecture #10 57
Extreme Projects Extreme projects are generally fast,
innovative, and ill defined High speed – must be developed quickly High change – must respond to fast
changes in the project requirements High uncertainty – must be able to
handle rapid and unexpected changes in project direction and focus
![Page 58: Software Project Management](https://reader036.vdocument.in/reader036/viewer/2022062520/56815d9b550346895dcbbfd2/html5/thumbnails/58.jpg)
INFO 638 Lecture #10 58
xPM vs. APF xPM and APF have a lot in common The main differences are
xPM has unknown project goals xPM has more variability in project
scope, budget, and time xPM has more variability in cycle
duration and number of cycles