290 likes | 504 Views
Project Tracking. Questions. Why should we track a project that is underway? What aspects of a project need tracking?. Reasons for Late Projects. overly optimistic scheduling bad estimations during proposal or planning tardy identification of schedule and budget problems
E N D
Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Reasons 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
Solution to previously listed problems • better estimation • better project tracking • better project tracking
Objectives 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
What 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
Key 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
Example 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?
Example 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?
Example 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?
Example 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?
How 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
And 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
CMM 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
CMM 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.
CMM 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.
Reality 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?
What 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
even 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
but 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
How much SQA is cost effective? Costs Software Quality
How much SQA is cost effective? Costs b Cost of SQA a Note: b = 2 x a B < 2 x A A B Software Quality
How much SQA is cost effective? SQA + Failure Costs Cost of SQA Cost of Failure Software Quality Optimal Quality Level
How much SQA is cost effective? SQA + Failure Initial Cost of SQA Costs Eventual Cost of SQA Cost of Failure Software Quality Optimal Quality Level
Real NumbersCost of Software Quality for 15 Projects at Raytheon’s Equipment Division http://www2.umassd.edu/swpi/costmodeling/papers/scoqpap1.doc
Next Time… • CMM • characteristics of the five levels • key practices • practical ways to advance to the next level