Professional Documents
Culture Documents
(SM)
Prepared by : Moutasem Zakkar; MBA, PMP, CMQ, PSP Email : moutasem@relemit.com Linked In : www.linkedin.com/in/mzakkar
Table Of Content
1 2 3
Introduction
Main Concepts
PSP Methodology
4
5 6 7 8
Introduction
This presentation talks about major concepts of the PSP. I have developed it during my PSP exam preparation. I passed the exam on December 2011. This is not a study material , but still it may help as a good review . I recommend Humphrey s book PSP , which is published by Addison-Wesley.
4
A Defined Process
A defined process provides :
a clearly delineated framework for planning, tracking, and managing work . a guide for doing the work correctly and completely, with the steps in the proper order . an objective basis for measuring the work and tracking progress against goals, and for refining the process in future iterations a tool for planning and managing the quality of products produced. agreed-upon, mutually-understood procedures for team members to use in coordinating their work to produce a common product . a mechanism that enables team members to support each other throughout the course of the project.
10
What is a Plan
A Plan
A basis for agreeing on the cost ,schedule and resources of the job
11
13
PSP Principles
1. To have predictable schedules, you must plan and track your work. 2. To make accurate and trackable plans, you must make detailed plans. 3. To make accurate detailed plans, you must base the plans on historical data. 4. To get the data needed to make accurate plans, you must use a defined and measured personal process. 5. To do high-quality work, you must measure and manage the quality of your development process. 6. Because poor-quality work is not predictable, quality is a prerequisite to predictability.
14
PSP Principles
use a defined and measured personal process
Quality Management
Detailed Plans
15
PSP Principles
The quality of a software system is determined by the quality of its worst components. The quality of a software component is governed by the individual who developed it.
The quality of a software component is governed by the quality of the process used to develop it.
The key to quality is the individual developers skill, commitment, and personal process discipline.
Source : PSP , Humphrey , Addison Wesley .
16
PSP Principles
Responsibility : As a software professional, you are responsible for your personal process.
You should measure, track, and analyze your work. You should learn from your performance variations.
18
19
20
Source : http://www.sei.cmu.edu/reports/09sr018.pdf
21
Size database Productivity database Resources available Size, resource, schedule data Process analysis
Tracking reports
22
Develop product
Management Support
Management will agree to you and your team mates working as a self-directed team as long as you:
strive to meet their needs regularly report on your work convince them that your plans are sound do quality work respond to changing needs come to them for help when you need it
23
24
The principal requirement: If the size measure is not directly related to development cost, it is not worth using. The size measure should be sensitive to language, design, and development practice.
26
The Estimated A & M : This is the size that we get from using a Proxy based measuring. The Projected A & M : This is the size that we get from using the PROBE method .
27
28
Type
Calculation
VS
2.34
S
5.13
M
11.25
L
24.66
VL
54.04
Data
I/O Logic
2.60
9.01 7.55
4.79
12.06 10.98
8.84
16.15 15.98
16.31
21.62 23.25
30.09
28.93 33.83
Set-up
Text
3.88
3.75
5.04
8.00
6.56
17.07
8.53
36.41
11.09
77.66
29
I/O
I/O Logic Set-up Text Total
M
VL L M L
16.15
28.93 23.25 6.56 36.41
56
37 168 7 43
904.4
1070.41 3906 45.92 1565.63 9804.42
30
Again, with sound methods, the differences will be largely due to overhead activities and estimating error.
31
Have the same people who are going to create the estimate create the original numbers for the sizes. Train the estimators so that they classify features accurately. Document the specific criteria for Very Small, Small, Medium, Large, and Very Large so that estimators can apply the size categories consistently. See the next slide for two possible ways to produce the relative size table (as per Humphrey PSP book ) .
32
33
34
Estimated Size
we use a measurement framework such as Proxy based, Functional point , and others . Estimated Size (LOC) E = Added Size + the Modified Size (of the Base Code) E = A + M or E = BA + PA .
35
36
Method C
If from Method B the absolute value of b0 is not near 0 (less than about 25% of the expected size of the new program), or b1 is not near 1.0 (between about 0.5 and 2.0) you have insufficient data or they do not correlate set b0= 0 and b1= (actual total added and modified size to date/plan total added and modified size to date).
Method D
you have no historical data, use your judgment to estimate added and modified size,
37
Method B (Linear Regression) If from Method A b0 is not near 0 (substantially smaller than the expected development time for the new program), or b1 is not within 50% of 1/(historical productivity) you do not have sufficient estimated data but have sufficient plan added and modified and actual development time data (three or more points that correlate), Method C
If from Method B b0 is not near 0 (substantially smaller than the expected development time for the new program), or b1 is not within 50% of 1/(historical productivity) If you have data on estimated added and modified size and actual development time, set b0 = 0 and b1 = (actual total development time to date/estimated total added and modified size to date). If you have data on plan added and modified size and actual development time, set = b0 0 and b1 = (actual total development time to date/plan total added and modified size to date). If you only have actual time and size data, set b0= 0 and b1 = (actual total development time to date/actual total added and modified size to date).
Method D you have no historical data, use your judgment to estimate the development time from the estimated added and modified size.
38
39
Quality Planning
Quality Planning involves :
Estimating the total number of defects that will be injected: Estimating the number of defects that will be injected and removed in each process phase Estimating the amount of time needed for design and code reviews Adjusting these parameters as needed to ensure a high quality result
40
Quality Planning
Estimating Total Defects
Planned total defects = To-date total defects/KLOC (Planned Added and Modified LOC / 1000)
To estimate defects injected and removed by phase, distribute the planned total defects injected and removed based on historical data.
Planned Total Defects To Date % defects injected in each phase To Date % defects removed in each phase
41
Quality Planning
Benchmarks
These PSP benchmarks can be used to estimate design review and code review time in a phase.
Benchmark Code review rate Defect removal rate Design review Code review
The Defect Removal Rate is sometime called Removal Efficiency Benchmark data on code review rates can be used to estimate review time: Code Review Time (Minutes) = 60 x (Planned Added and Modified Size LOC) / 200 Design Review Time is the same as Code Review time
42
43
44
Quality Indicators
Total defects per KLOC is a measure of the total defects injected during the process. Total Defects Per KLOC = 1000 x Total Defects Removed / Total Added and Modified Size (LOC)
Test defects per KLOC is an indicator of the quality of the program that you put into test.
Test Defects Per KLOC = 1000 x Defects Removed in Test / Total Added and Modified Size (LOC)
45
Defects Present = escapes + injected Defects Removed = Defects present * Phase yield
47
The cost of quality is a way to quantify the size of quality problem in language that will have impact on upper management. (Juran). Failure Cost : Total time spent in compiling and Testing Appraisal cost : The Total Time spent in design and code reviews and inspections.
48
49
For the PSP no measurement is there, since it span across multiple projects . It includes however , prototype development, causal analysis meetings, process improvement action meetings, developing coding standards, and developing design standards.
50
The LOC or pages reviewed per hour. High Review Rates always give low Yield. A Zero Yield review is a high tech way to waste time ! The PSP rule is that 100 LOC per hour is recommended . The best review rate is the one that gives 70% yields or higher.
51
Design Time to Coding Time : 1 minimum, 1.5 optimum Design Review Time to Design Time : 50% minimum, 70% maximum. Code Review Time to Coding Time : 50% minimum, 70% maximum.
52
The Ratio of the defects removed per hour in any two phase.
53
The suggested review stages are as follows. 1. 2. 3. 4. 5. Review against the requirements to ensure that each required function is addressed by the design. Verify the overall program structure and flow. Check the logical constructs for correctness. Check for robustness, safety, and security. Check the function, method, and procedure calls to ensure proper use. Check special variables, parameters, types, and files for proper use.
6.
54
56
58
Software Design
Objectives
Design Views
Dynamic Static
External
Internal
Design Templates
Four design templates are used in the PSP to cover the four design views.
operational specification template functional specification template state specification template logic specification template
These four templates provide the framework for completely and precisely recording a software design.
External
Internal
Design is an Investment
Experienced programmers do not need to produce designs to write most small programs.
Designs are needed when small programs are to be used as parts of larger systems or when quality is critical.
Based on data from 8,100 PSP programs, programmers who produced designs : spent 53% more time than those who did not wrote programs that were 46% smaller Most programmers know how to write small programs. The critical skill is for developing large programs.
63
64
65
66
67
68
At the current rate, it will take 1.85 weeks to reach the planned 28.2 EV, so they are 1.85 weeks behind schedule.
69
So the planned execution time is approximately 25 weeks We have finished 22.3 till date so we still have 100 22.3 = 77.7% to finish We already spent 7 weeks out of 25 so we have only 18 weeks . We need to work at the rate of (77.7 / 18) = 4.31 EV per week We are currently working at rate of 3.185 We need to increase it by (4.31 3.185) = 1.125 which is (1.125 / 3.185 ) * 100 = 35% So we need to work 35% more hours per week or add more team members
70
71
73
Exam Preparation
Get The necessary materials :
1. Get a Text Book , and I recommend the PSP , Humphrey , Addison Wesley, ISBN10: 0321305493. (Amazon.com Link) 2. If you have the chance attend the official training. 3. Download the Student self Study Material : http://www.sei.cmu.edu/tsp/tools/student/ 4. Download an updated version of Body Of Knowledge.
74
Exam Preparation
A Study Plan
1. Read the text book, and while reading just forget that you are preparing for an exam. 2. Work on the Self-study material.
You need to have Microsoft Access to open it. Read The guidelines on Each assignment and understand the scripts, thoroughly. The Project Plan Summary , is the most important part of the whole PSP methodology. You must understand each figure and you must try to do the calculation manually to verify that you are interpreting the figures correctly , as I did in this presentation.
75
Exam Preparation
A Study Plan
3. Read the Body of knowledge , it is a well prepared material , and the exam will be about it not about any Reference Text Book. 4. There are lots of formulas , you need to understand all of them , and you need to remember the important ones such as all of the COQ formulas .
76
Exam Preparation
What you will see in the exam
1. This is a professional exam , and a tricky exam , so you need to be well prepared. 2. You will get lots of questions about Project Plan Summary , with screenshots of actual summaries where you will be asked to interpret or verify some figures in them. 3. You will get questions about the Earned Value Management. 4. You will get lots of questions about calculating COQ.
77