Title: Project Tracking
1Project Tracking
2Questions...
- Why should we track a project that is underway?
- What aspects of a project need tracking?
3Reasons for Late Projects
- overly optimistic scheduling
- bad estimations during proposal or planning
- tardy identification of schedule and budget
problems - noticing too late that we are late
- tardy reactions to important events
- bad risk management
Galin page 401
4Solution to previously listed problems
- better estimation
- better project tracking
- better project tracking
5Objectives of Project Tracking
- Short Term
- early detection of irregular events
- Long Term
- creation of preventive actions
- improvement of estimation accuracy
modified from Galin page 402
6What do we need to track?
- Project Schedule
- are we hitting the milestones on time
- what about the "critical path" milestones
- Risks
- what might happen
- how likely is the problem
- what can/should we do
- Resources
- Humans
- Budget
Galin section 20.1
7Key Aspects of Continuous Risk Management
- Identify Continually asking, what could go
wrong? - Analyze Continually asking, which risks are
most critical to mitigate? - Plan Developing mitigation approaches for the
most critical risks - Track Tracking the mitigation plan and the risk
- Control Making decisions based on data
- Communicate Ensuring a free-flow of information
throughout the project
Carnegie Mellon SEI
8Example 1
- You notice that design, implementation, and
testing of the database component is running
about a week behind. - Instead of one week for each of the three tasks,
the database tasks will take a total of four
weeks. - However, the database can be a week late because
it is not on critical path. - Any potential problems?
9Example 2
- Task Testing the Database
- Estimated Duration
- 3 days
- Required Resources
- the database requirements specs
- the implementation (source code)
- real data from customer
- test person that has a DB Test certificate
- Any Special Scheduling / Tracking Issues?
10Example 3
- Initial Unit Testing reports indicate a bug rate
of 4.5 / KSLOC. - Should you be concerned?
- Further checking finds
- Average initial bug rate is 3.1 per KSLOC
- StdDev of 0.5
- weighted rate is also higher than average
- What actions should be taken?
11Example 4
- Well into development, you get an email
indicating changes in the interface requirements
are necessary based on a demo of the prototype
done for the customer. The changes will require
a good amount of recoding. - Any SQA tasks necessary?
12How do we track projects?
- Use tools!!!
- a tool can track the critical path
- a tool can track the budget
- a tool can alert you to potential resource
conflicts - Status Reports
- both formal and informal
13And of course, Follow Up
- Audit the Tracking Procedures
- are we really seeing what is going on
- are the progress reports reporting the important
info - are we tracking what needs to be tracked
- are we talking to the right people
14CMM on Project Tracking
- "The purpose of Software Project Tracking and
Oversight is to provide adequate visibility into
actual progress so that management can take
effective actions when the software project's
performance deviates significantly from the
software plans." - Goals
- Actual results and performances are tracked
against the software plans. - Corrective actions are taken and managed to
closure when actual results and performance
deviate significantly from the software plans. - Changes to software commitments are agreed to by
the affected groups and individuals.
adapted from http//www2.umassd.edu/swpi/sei/tr25f
/tr25_l2c.html
15CMM on Project Tracking
- Ability to Perform
- A software development plan for the software
project is documented and approved. - The project software manager explicitly assigns
responsibility for software work products and
activities. - Adequate funding and resources are provided for
tracking the software project. - The software managers are trained in managing the
technical and personnel aspects of the software
project. - First-line software managers receive orientation
in the technical aspects of the software project.
16CMM on Project Tracking
- Activities performed
- A documented software development plan is used
for tracking the software activities and
communicating status. - The project's software development plan is
revised according to a documented procedure. - Software project commitments and changes to
commitments made to individuals and groups
external to the organization are reviewed with
senior management according to a documented
procedure. - Approved changes to commitments that affect the
software project are communicated to the members
of the software engineering group and other
software-related groups. - The size of the software work products (or size
of the changes to the software work products) are
tracked, and corrective actions are taken as
necessary. - The project's software effort and costs are
tracked, and corrective actions are taken as
necessary. - The project's critical computer resources are
tracked, and corrective actions are taken as
necessary. - The project's software schedule is tracked, and
corrective actions are taken as necessary. - Software engineering technical activities are
tracked, and corrective actions are taken as
necessary. - The software risks associated with cost,
resource, schedule, and technical aspects of the
project are tracked. - Actual measurement data and replanning data for
the software project are recorded. - The software engineering group conducts periodic
internal reviews to track technical progress,
plans, performance, and issues against the
software development plan. - Formal reviews to address the accomplishments and
results of the software project are conducted at
selected project milestones according to a
documented procedure.
17Costs of SQA
18Reality Check...
- Is all this QA work really worth the effort and
costs, - what are the benefits?
- what are the costs?
- and how do you prove it is worth it?
19What are the SQA Costs
- Contract Reviews
- SRS Reviews
- Design Reviews
- Code Walkthrough Checklists
- creating the checklists
- training people to use the checklists
- filling out the checklists
- reviewing the checklists data
- auditing the checklist process
20even more SQA Costs
- Tools o' Plenty
- progress tracking tool
- estimation and scheduling tools
- testing tools
- Metrics
- time spent creating forms and gathering the data
- time spent analyzing performance data
- Yadda yadda yadda
- etc
- etc
- etc
21but don't forget to ask
- What are the costs of not conducting SQA?
- accurate proposal accurate time estimate
happier customer - better SRS fewer changes to design
- better design easier to maintain
- better unit testing better beta test
22How much SQA is cost effective?
Costs
Software Quality
23How much SQA is cost effective?
Costs
b
Cost of SQA
a
Note b 2 x a B lt 2 x A
A
B
Software Quality
24How much SQA is cost effective?
SQA Failure
Costs
Cost of SQA
Cost of Failure
Software Quality
Optimal Quality Level
25How much SQA is cost effective?
SQA Failure
Initial Cost of SQA
Costs
Eventual Cost of SQA
Cost of Failure
Software Quality
Optimal Quality Level
26Real NumbersCost of Software Quality for 15
Projects at Raytheons Equipment Division
http//www2.umassd.edu/swpi/costmodeling/papers/sc
oqpap1.doc
27Next Time
- CMM
- characteristics of the five levels
- key practices
- practical ways to advance to the next level