Professional Documents
Culture Documents
net/publication/281444914
CITATIONS READS
3 762
4 authors, including:
Some of the authors of this publication are also working on these related projects:
Grey Wolf Optimizer (GWO): theories, variants, and applications View project
All content following this page was uploaded by Mohamed Abu Elsoud on 03 September 2015.
Abstract—Software organizations differ from other small projects during which the engineer collects
manufacturing organizations, since these software organizations measurements on defect rates, defect types, and other
depend mainly on individuals and team works rather than indicators of engineer productivity and effectiveness in order
machines or raw materials. Enhancing individuals and team to better understand and appreciate their strength and
works capabilities is the key solution to improve quality and weaknesses as an engineer.
productivity levels.
Hence, Individual engineers need a quality improvement This paper includes detailed presentations of the analyses
technique to improve their performance by bringing conducted on size and effort estimation accuracy, process
discipline to the way they develop software and manage their yield, defect density, and productivity. The paper also
work to produce quality products within budget and on schedule. includes other observations uncovered during the statistical
This paper will propose a case study showing the application and analysis and study conclusions which contain experiences of
evaluation of the Personal Software Process (PSP), which and benefits realized by first-time PSP individuals.
recommends applying some skills and methods that concerns the
individual engineer her/himself, like understating the meaning of We hope that by walking through this first-time
work quality, and how to estimate time and effort in order to be individuals’ journey of using the PSP, we illustrate how the
able to make the right project plans which contain some
PSP creates an environment where skilled engineers can apply
estimated data that are close to the actual data. Hence, in our
study, PSP will focus on two principles, improving individuals’ disciplined methods working on a cohesive and dedicated
productivity, and products and process quality. team.
After recording these data during the first week, we shown in Table 2 which categorizes the main working
have categorized and analyzed it to know exactly the activities that the engineers have frequently practiced during
percentage of time spent doing the main work activities and their first week and we have recorded them as shown in Table
the percentage of interruptions that affects the work. Here, we 2, 3, 4, 5, and 6 respectively.
have used a form called weekly activity summary like this
W_ W_ W_ Follow-up W_ W_ W_ Total
Activity
Programming Reading Juniors Browsing Email Talking Time
Date
9-Jun 5:38 0:32 0:09 0:06 6:25
10-Jun 4:59 0:31 0:51 0:09 0:13 0:23 7:06
11-Jun 4:38 0:11 0:27 0:39 0:04 0:22 6:21
12-Jun 4:16 0:39 0:44 0:44 0:02 0:16 6:41
13-Jun 4:50 1:06 0:42 0:23 0:18 7:19
Totals 24:21:00 1:21:00 3:40:00 2:14:00 0:51:00 1:25:00 33:52:00
Productivity Time
54.11% 3.00% 8.15% 4.96% 1.89% 3.15% 75.26%
Percentage
Date
9-Jun 4:51 0:11 0:32 0:05 0:10 5:49
10-Jun 1:00 1:02 2:38 1:33 0:08 0:14 6:35
11-Jun 3:03 0:14 0:19 0:03 0:05 3:44
12-Jun 3:51 0:16 0:21 0:49 0:12 0:23 5:52
13-Jun 3:44 0:18 0:57 1:52 0:27 0:28 7:46
29:46:0
Totals 16:29:00 1:36:00 4:21:00 5:05:00 0:55:00 1:20:00
0
Productivity Time
36.63% 3.56% 9.67% 11.30% 2.04% 2.96% 66.15%
Percentage
W_ W_ W_
Activity W_ Designing W_ Email Total Time
Reading Browsing Talking
Date
9-Jun 2:44 0:09 0:16 3:09
10-Jun 1:15 1:02 1:33 0:08 0:14 4:12
11-Jun 3:03 0:19 0:08 0:29 3:59
12-Jun 2:32 0:16 0:49 0:09 0:23 4:09
13-Jun 1:48 0:18 1:52 0:07 0:17 4:22
Totals 11:22:00 1:36:00 4:33:00 0:41:00 1:39:00 19:51:00
Productivity Time
25.26% 3.56% 10.11% 1.52% 3.67% 44.11%
Percentage
After categorizing these main working activities and Then, we had clarified this result using figures for
calculating the total time spent practicing them, we had to further comparisons of weekly productivity results and
know this time percentage out of the total required working presentations that will let us; the managers, professors, and the
hours all over the week, which are 45 hours weekly; 9 hours engineers themselves follow-up the organization productivity
per day over 5 days for a week, in addition to the percentage status every week.
of time spent practicing every working activity.
Then we had categorized the interruptions that
After calculating this percentage, we have reached interrupted E1, E2, E3, E4, and E5 during this week, and we
that the productivity time percentage for E1, E2, E3, E4, and had found the result is as shown in Table 7, 8, 9, 10, and 11
E5 in week1. respectively.
I_ I_ I_ Other I_ I_
Interruption I_ Talking Total Time
Browsing Breakfast Interruptions Phone Prayer
Date
9-Jun 0:49 0:12 0:16 0:24 0:50 0:19 2:50
Week 1 E2
I_
I_ I_ I_ Other I_ I_
Interruption Lunch I_ Talking Total Time
Breakfast Browsing Interruptions Phone Prayer
Break
Date
9-Jun 0:12 0:14 0:35 0:15 0:12 0:28 1:56
10-Jun 0:17 0:10 0:22 0:08 0:43 0:12 1:52
11-Jun 0:21 0:17 0:15 0:36 0:08 0:45 0:14 2:36
12-Jun 0:07 0:21 0:40 0:16 0:44 0:10 2:18
13-Jun 0:18 0:18 0:26 0:16 0:23 1:41
Totals 1:15 0:59 0:36 2:13 1:13 2:40 1:27 10:23:00
Productivity
2.78% 2.19% 1.33% 4.93% 2.70% 5.93% 3.22% 23.07%
Time Percentage
Table 10: E4’s Weekly work interruptions for the first week
Week 1 E4
Date
9-Jun 0:10 0:40 0:28 0:32 0:46 0:35 3:11
10-Jun 0:19 0:37 0:16 0:42 0:22 2:16
11-Jun 0:16 2:03 0:59 0:31 0:09 0:44 0:33 5:15
12-Jun 0:12 0:40 0:39 0:33 0:45 0:16 3:05
13-Jun 0:14 0:07 0:12 0:22 0:18 0:08 1:21
Totals 1:11:00 4:07:00 1:11:00 2:16:00 1:14:00 3:15:00 1:54:00 15:08:00
Productivity Time
2.63% 9.15% 2.63% 5.04% 2.74% 7.22% 4.22% 33.63%
Percentage
Week 1 E5
I_ I_ Total
Interruption I_ Breakfast I_ Browsing I_ Lunch Break I_ Phone
Prayer Talking Time
Date
9-Jun 0:14 2:40 0:22 0:19 0:33 1:44 5:52
10-Jun 0:22 2:37 0:19 0:06 0:43 0:44 4:51
11-Jun 0:16 2:52 0:29 0:12 0:41 0:32 5:02
12-Jun 0:17 3:02 0:28 0:09 0:36 0:17 4:49
13-Jun 0:15 3:14 0:17 0:10 0:28 0:17 4:41
Totals 1:24:00 14:25:00 1:55:00 0:56:00 3:01:00 3:34:00 25:15:00
Productivity Time
3.11% 32.04% 4.26% 2.07% 6.70% 7.93% 56.11%
Percentage
After categorizing the main working activities and engineer during the first week; we had found results as shown
interruptions, we have analyzed them to know the percentage in Figure 2
of total interruptions time and total productivity time for each
Figure 2: Productivity and Interruption Time percentage during Week1 for E1, 2, 3, 4, 5
Then, we had calculated the average productivity productivity percentage, in contrary with the average
time percentage and the average interruptions time percentage interruption time percentage which reached a 38.04%, which
during the first week for the five engineers and we had found represents a very high interruption percentage, these results
the result shown in Figure 3 which shows that the average indeed shows that there is a big need for productivity
productivity time percentage for the five engineers during the improvement.
first week is 61.67% percentage, which represents a very low
Figure 3: Average Productivity Time Percentage VS. Average Interruption Time Percentage in Week1 for E1, E2, E3, E4, and E5
After making the previous analysis, we had shown They began to do exactly what they had to do in the
the analysis results to every engineer, and everyone agreed first week, they filled-in their time recording log with their
that there is a real need for improving this productivity level, main working activities and their interruptions until the end of
and they decided that this need will be their target in the the second week, then we had to gather these time recording
second week. logs and do exactly what we had to do in the first week in
addition to comparing the second week’s results with the first
In the second week, every engineer has begun to
weeks results for each engineer, and we have got these results
focus on how to improve the productivity percentage even if
shown in Figure 4 for E1, E2, E3, E4, and E5.
they had to stay working after the original working times.
Figure 4: Productivity and Interruption Time percentage during Week2 for E1, 2, 3, 4, 5
After calculating the average productivity time it to the result of the first week, we had found the result shown
percentage and the average interruptions time percentage in Figure 5
during the second week for the five engineers and comparing
Figure 5: Average Productivity Time Percentage VS. Average Interruption Time Percentage in Week1 and 2 for E1, E2, E3, E4, and E5
This analysis shows that the average productivity The policy that the engineers have stated includes the
time percentage for the five engineers during the second week following:
is 75.67% percentage, which represents a higher percentage
The period of breakfast will be 15 minute maximum in the
than this of the first week by a factor of 14%, on the other
morning.
side, the average interruption time percentage was nearly close
to this of the first week, it was 36.39% and only decreased by • Lunch breaks will be 30 minutes maximum per day.
a factor of 1.65% which still represents a very high • Phone calls will be eliminated to be messages or if it
interruption percentage. is very urgent, then it will be eliminated to 20
This analysis also shows that if we added the average minutes maximum per day.
productivity time to the average interruptions time of the • Prayer will be 30 minutes maximum per day for both
second week, we will find that the percentage will exceed prayers during the working day.
100% with a factor of 12.05%, in the same time the average • Talking out of work scope, will be at breaks, if
interruptions time was approximately the same as the first urgent then 10 minutes maximum.
week, hence, this means that engineers had stayed at work an • Browsing for entertainment is limited to 10 minutes
extra time that the original working time in order to avoid the maximum per day.
low percentage of the average productivity resulted from the • Concerning the other interruptions like printing a
previous analysis of the first week and couldn’t get over their paper, or sudden meeting with a client … etc, their
interruptions time. time will be recorded as a normal interruption time,
but it will be neglected because as possible as we
Increasing working hours while leaving interruption can, we will try to resume this amount of time after
times constant, is not the aim of or a solution to a working the original working time of the day.
organization which aims to achieve its working cycle in a
• Browsing for work will be for an hour all over the
definite time, so after the analysis of the second week’s
working day.
results, we have arranged for a meeting with the attendance of
• Following-up juniors will be eliminated to be one
the five engineers and the management representative to show
hour distributed into two periods of the day, whether
them the second week results and to discuss some solutions or
before or after prayer breaks.
suggestions in order to overcome the interruptions problem or
at least to eliminate it. In the third week, engineers have resumed their work
exactly as they have done in the first and the second week, but
During this meeting, every engineer discussed his
focusing on their commitment to their suggested policy. The
main interruptions which cause waste of time and how he can
work and the commitment lasted all over the third week, and
overcome them, of course every individual has his own
after the end of this week, we resumed the work that we have
interruptions, but also there are common interruptions that can
done since the last two weeks.
be eliminated. Engineers thought, suggested and got
committed to a policy for them and for the organization which After gathering the time recording logs, and making our
focuses on eliminating interruptions and improving analysis, we obtained these results that are shown in figures 6
productivity, and consequently improving product quality. for E1, E2, E3, E4, and E5.
Figure 6: Productivity and Interruption Time percentage during Week3 for E1, 2, 3, 4, 5
This figure shows that in the third week E1, E2, E3, After calculating the average productivity time
and E4 indeed have committed to their suggested policy percentage and the average interruptions time percentage
which has led to an improvement in the percentage of every during the third week for the five engineers and comparing it
engineer productivity level and decreased their interruptions to the result of the first week and second week, we had found
level, except for the last engineer E5, who was under work the result that is shown in Figure 7
training, seemed to be not active in addition to her low
technical performance which led her department manager not
to depend on her work too much.
Figure 7: Average Productivity Time Percentage VS. Average Interruption Time Percentage in Week1, Week2, and Week3 for E1, E2, E3, E4, and E5
This analysis shows that the average productivity 69.24% percentage, which represents a higher percentage than
time percentage for the five engineers during the third week is this of the first week by a factor of 6.43% and lower than the
Figure 8: Productivity and Interruption Time percentage during Week4 for E1, 2, 3, 4, 5
The result of this analysis is very obvious to show the other side E5 is not active, they asked for a technical
that if the individual himself suggested or planned for his evaluation for this engineer from her head manager, and
needs time and behaved as if he is his manager, he will obtain indeed the evaluation has shown that she is technically weak
the best results, and this will become a normal habit if he got and consequently, her head manager can’t depend on her
used to do this. work, so the management department with her head manager
have decided to report her with the end of her relationship
From the fourth week’s figures, we can notice that
with the organization after finishing her probation period.
the after getting committed to a personal suggested policy,
productivity percentage has been improved for E1, E2, E3, After calculating the average productivity time
and E4, and interruption percentage has been decreased. But, percentage and the average interruptions time percentage
E5 proved that she is indeed a burden on the organization, and during the fourth week for the five engineers and comparing it
after showing these results to the management department to the result of the first week, second week, and the third
which have shown an obvious improvement for individuals week, we had found the result that is shown in Figure 9
performance and consequently the work productivity, and on
Figure 9: Average Productivity Time Percentage VS. Average Interruption Time Percentage in Week1, Week2, Week3, and Week4 for E1, E2, E3, E4, and E5
As shown in Table 12, the summary section holds which, E2 completes the plan summary form with actual time,
the rate data used to make the plan. It also provides a place to and size data from his Job Recording Log.
record the actual rate data after task completion. The top entry
To calculate the To Date value: for each phase, E2
in the summary section is Minutes/LOC (minutes per line of
should enter the sum of actual time and To Date time from
code). As shown in Table 12, E2 used his guessing as his
the most recent previous tasks, and since there is no previous
historical data from the prior similar tasks to get the rate of 5
To Date time for such previous tasks, the TO Date value will
Minutes/LOC; he might need to use a different value if the
be the same actual times.
new task seems particularly difficult and likely to take longer
than average. To calculate the To Date% value: for each phase, E2
should enter 100 times the To Date time for that phase
The next entry in the summary section is LOC/Hour
divided by the total To Date time.
(lines of code per hour). The LOC/Hour is calculated from
Minutes/LOC by dividing 60 by Minutes/LOC. The For subsequent projects, however, engineers can use
LOC/Hour rate is commonly used by engineers to analyze the data from previous tasks, like this task for example, to
development productivity. estimate the time for each phase of the new task or project.
This is the reason for the To Date% values in the task or
The program or code size (LOC) section of the
project plan summary form.
project plan summary form contains the estimated and actual
data on the task size and likely size ranges. E2 estimated the The To Date and To Date% columns in the plan
finished size of the task he planned to develop and entered it summary form provide a simple way to calculate the percent
under plan in the Total New & Changed row as shown in distribution of development time by process phase. The To
Table 12. Date column contains the total of all the time spent in each
phase for all the completed tasks. The To Date% column
Then he calculated the maximum and minimum size
holds the percentage distribution of the times in the To Date
numbers, they are useful for judging the likely time range for
column.
a development estimate.
3) Individual and Process Productivity:
The next section of the plan summary table is called
Here, we have provided the skills and practices that the
Time in Phase because it is used for data on the phases of the
engineer needs to improve his prediction, estimation
software development process. E2 calculated total planned
accuracy, and productivity.
development time by multiplying the planned Minutes/LOC
by the planned New & Changed LOC. Also, he multiplied the • Size Estimation Accuracy
minimum and maximum sizes by the Minutes/LOC to give
the minimum and maximum times respectively. Accurate size estimates are a fundamental building block
for realistic project plans. Training in PSP provides individual
The time in phase section has a row for each phase engineers with an ability to improve their skill in estimating
of the process. This row holds the planned and actual times the size of the products they produce. This ability is clearly
for each process phase. The way to do this, E2 has allocated demonstrated in the results presented here.
the total development time to the phases in proportion to the
way he has spent time on previous such tasks. He calculated Measure of Interest
these times using “Minutes” for easy calculations. Estimated Size - Actual Size / ArgMax (Estimated Size,
Then, he estimated from his prior knowledge the Actual Size)
spent time for each phase including the postmortem phase, in
Figure 12: Productivity for E2, E3, and E4 during first PSP Task and the
second one
Table 16: Defect Type Standard
The first step in managing defects is to understand he can understand these mistakes and figure out how to avoid
them. To do that, every engineer must gather defect data. Then them.
Code
4 20 code 0:01 misspelled variable
Review
When E2 started to develop his task, he prepared this Two in compile, 5 in Test so he entered a 3, 2, and 5 in these
log, and when he first encountered a defect, he entered its rows of the defects removed section. Again, the total is 10.
number in the log, the date when it was found, its type
After recording the number of defects injected and
according to the defect type standard, the phase in which it
removed, E2 completed the To Date and To Date% columns
was injected and the phase in which it was removed, its fixing
in the same way he filled the same columns with time data.
time and a brief description of the defect to later reminds him
about the error that caused the defect. 6) Quality Measures:
During the postmortem phase, E2 reviewed the • Defect Density:
defect log and counted the number of defects injected in each Defect density refers to the defects per new and changed
phase. From the Defect Recording Log in Table 17, E2 first KLOC found in a program [19]. Thus, if a 150 LOC program
counted defect 3 as injected in design so he entered 1 under had 18 defects, the defect density would be 1000*18/150 =
actual in the design row of his plan summary shown in Table. 120 defects/KLOC. Defect density is measured for the entire
The other nine defects were all injected in code, so he entered development process and for specific process phases. Since
a 9 in the code row. The total is then ten injected defects. testing only removes a fraction of the defects in a product,
Next, he counted the number of defects removed in each when there are more defects that enter a test phase, there will
phase. E2 counted three defects removed in Code Review, be more remaining after the test phase is completed.
Task1 Task2
7) Quality results and analysis:
• Defect Density E2 54.55 71.43
Figure 14: Pre-compile Defect Yield for E2, E2, and E4 during first PSP Task Figure 15: A/FR for E2, E2, and E4 during first PSP Task and the second one.
and the second one
As shown, after analyzing the appraisal and failure cost of
As shown, after analyzing defects removed and injected quality for the first and second PSP assignments for the 3
before the first compile for the first and second PSP engineers, there is a significant increase in the process A/FR
assignments for the 3 engineers, there is a significant increase values.
in the process Yield values.
8) PSP approach summary:
• A/FR The results from PSP training were impressive. These
results are summarized in Table 21 and are shown in Figure
The hypothesis to be addressed in this section is as 16. The first column describes the measure, the second
follows: column shows its value at the start of PSP training (First 3
“As engineers progress through the PSP training, their A/FR assignments for E2, E3, and E4), and the third column shows
value increases significantly. More specifically, the A/FR its value at the end of PSP training (Average for the two PSP
values below 1 generally indicate that many defects will be assignments for the three engineers) like shown in Table 21 &
found in test, while values above 1 generally indicate that few Figure 16
if any defects will be found in test, like shown in Table 20& Table 21: Summarized results
Figure 15. At the start of At the end of
Measure
Table 20: A/FR training training
E3 0.40 0.57
Effort Estimation
0.05 0.03
E4 2.65 2.14 Accuracy
Figure 16: PSP Summary Measures for the three engineers for two similar tasks
Hence, we can say that form the beginning of the VI. CONCLUSION
assigned period to the end of this period, the second PSP has
The objectives of this study were to examine the effect of
been achieved with a very acceptable improvement percentage
the Personal Software Process on the performance of software
for both productivity and quality.
engineers, and to consider whether the observed results could
be generalized beyond the study participants.
Furthermore, we are confident that the observed [7] B. Curtis, M. I. Kellner, and J. Over. Process Modeling. Communications
of the ACM, vol. 35, pp. 75-90, 1992.
improvements are due to the PSP and can be generalized.
[8] H. Krasner, J. Tirrel, A. Linehan, P. Arnold, and W.H. Ett. Lessons
learned from a software process modeling system. Communications of ACM,
vol. 35, n.9, pp. 91-100, Sept. 1992. Deming, W. E. Out of the Crisis. MIT
VII. PSP STATUS AND FUTURE TRENDS Center for Advanced Engineering Study, Cambridge, MA, 1982.
While superior technical work will continue to be [9] Juran, J. and Gryna, F. Juran's Quality Control Handbook, Fourth Edition.
required, the performance of each individual engineer will be New York: McGraw- Hill Book Company, 1988.
recognized as important. Quality systems require quality parts, [10] Fagan, M. “Design and Code Inspections to Reduce Errors in Program
and unless every engineer strives to produce quality work, the Development.” IBM Systems Journal, 15, 3 (1976)
team cannot do so. Quality management will be an integral [11] Fagan, M. “Advances in Software Inspections.” IEEE Transactions on
part of software engineering training. Engineers will have to Software Engineering, SE-12, 7, (July 1986)
learn how to measure the quality of their work and how to use
[12] Humphrey, W. Managing the Software Process. Reading, MA: Addison-
these measures to produce essentially defect free work. Wesley, 1989.
The PSP is designed to provide the disciplined practices [13] Paulk, M., et al. The Capability Maturity Model: Guidelines for
software professionals will need in the future. Improving the Software Process. Reading, MA: Addison Wesley, 1995.
While some industrial organizations are introducing these [14] Herbsleb, J., Zubrow, D., Goldenson, D., Hayes, W., and Paulk, M.
“Software Quality and the Capability Maturity Model,” Communications of
methods, we recommend a broader introduction of these the ACM, 40, 6 (June 1997): 30- 40.
disciplined methods to be started here in Egypt universities.
[15] Humphrey, W. a Self-Improvement Process for Software Engineers
Academic introduction of the PSP is currently supported with Reading, MA: Addison- Wesle, (March 2005).
courses at both introductory and advanced levels.
[16] PSP Training for Everyone Wall, Dan, Proceedings of the TSP
Several universities in the U.S., Europe, and Australia Symposium, September 17, 2007,
now offer the PSP, and several institutions in Asia are http://www.sei.cmu.edu/tsp/proceedings07.html
considering its introduction. [17] Seshagiri, G. “Making Quality Happen: The Managers’ Role, AIS Case
Study,” Crosstalk (June 2000).
While the PSP is relatively new, the early results are
promising. Both industrial use and academic adoption are [18] Humphrey, Watts S. Self-Improvement Process for Software Engineers,
Reading, MA: Addison Wesley, © March 2005, ISBN: 0321305493
increasing. Assuming that these trends continue, we
recommend that the future should see a closer integration of
the (Personal Software Process) PSP, (Team Software
Process) TSP, and (Capability Maturity Model) CMM
methods and a closer coupling of the PSP academic courses
with the broader computer science and software engineering
curricula.