|
Bob and Shaw have to test a particular software application and functionality
for a period of 5 days. The expectation set by the Project Manager is to execute
predefined set of test scripts for some modules. They are also given 8 hours a
day to complete the task.
Bob's deliverable after a week
- Task completed in 4 days by spending 10 hours at work every day
- 18 new bugs discovered in the software
- New test scenarios were added for the module under test since the existing
suite did not provide complete coverage
- Leveraging on past experience, a root cause analysis of the bugs
- was performed. The results were compiled and used to create a handbook on
how to avoid common bugs in the application
- Shaw's deliverable after a week
- Task completed in 4.5 days by spending 10 hours at work every day
In both cases it is obvious that the tasks were completed
ahead of time. But how can the Project Manager quantify the performance of the
Bob and Shaw?
-
Bob and Shaw completed task before time.
-
Bob's productivity is higher than Shaw during bug
verification (assuming that all the bugs for them are of similar nature).
-
Bob spends more time in providing additional benefits for
the project (client) and for the organization
Apart from the bug verification effort of Bob and Shaw, all
other activities of Bob are not quantifiable.
Lack of understanding of software project metrics is one of
the key issues faced by project managers and is one of the reasons for poor
project management. It is important to define which metrics to capture and how
to apply them in the project. This is the basis of metrics design. For instance,
if the release of the product is the driver for the project success, then a
project plan should have well defined intermediate milestones placed in sync
with the critical phases of the project and tracked. If a metric is designed to
the success criteria for every intermediate milestone, it is possible to control
the project better and steer it in right direction.
It is also found that gathering metrics for the sake of
measurement is ineffectual. Every project manager strives to deliver a
zero-defect product on schedule. The end-result is dependent on a multitude of
factors, with efficiency, skill-set and productivity of resources playing an
important role. Both quality and productivity directly depends on the
performance of the project members. That "You cannot control what you
cannot measure" is true. It is a known fact that by measuring the
performance of every activity and computing the metrics on a frequent interval,
it is possible to control the project effectively. Data points are required to
control the budget, schedule, cost, effort, quality, productivity, client
expectation, senior management expectation and team performance.
One way to do this is to use a Weighted Metric Value-added (WMV)
methodology that deploys quantitative project data and performance measures from
day-to-day project activities for successful software project management. This
method is based on task metrics covering all aspects of project activities, and
assigning a score for every activity. The scores are used to manage the project.
The objective is to help a project manager control and steer the project in the
right direction using facts and data, rather than misleading optimism.
| Sample
Project CODETEST
Information
|
Case
Study: Implementing WMV Methodology in Testing Project
Consider the example of a team involved in product testing. The
following list of activities and the various hard and soft targets
as defined by the management or delivery manager are listed below
along with the scores. |
Project
Name: CODETEST
Team Size: 10
Total Effort as calculated in theproject plan: 240
person-months
Duration of the Project: 24 months
Cost Model: Time & Material
Type of Project: Testing Project Team
# of QA Manager : 1
# of Senior Testers: 2
# of Testers: 4
# of New comers : 3 |
| Based
on the illustration in the above table, it is possible to design WMV
based on the typical project activities. This is represented in the
table below. Each activity is classified into hard target and soft
target. In this example, if the max score is 10, then based on the
weight-age of the activity, the scores can vary from 0 to 50. Based
on the task accomplished, quality, productivity, value-added
activity, innovativeness, effectiveness and efficiency of the
deliverable, the scores are scaled. |
|
The WMV approach can predict project performance, team
performance and the impact of various management decisions. An attempt is made
to emphasize the importance of adopting quantitative techniques for managerial
decision making during a software development lifecycle. Using this approach one
can measure and monitor the trends in the project quality, productivity,
benefits to the organization and the client as illustrated in this paper.
Further, this methodology helps to make better decisions on critical aspects
such as resource planning, quality of the deliverable, effort tracking or
slippage.
Task-based activities and value-added activities
Fundamentally, all software metrics are various permutations and
combinations of the following parameters
-
Time-Schedule adherence
-
People-Performance of the team
-
Quality-Delivered defects, meeting client expectations,
process compliance
-
Scope-Managing requirements churn
-
Cost-Managing the budget
-
Risk-Managing the risks
These metrics are derived from the tasks performed by the
team. Value-added activity encompasses a gamut of additional services provided
with the intention of building a long-term relationship with a client. The
cornerstone of this relationship is the confidence that the client vests in the
organization. Hence it is important to capture both the task activities and the
value-added activities from each project team member to the client on a regular
basis and use this data for planning future strategies. Value-added activities
help in understanding the potential of each member in the team and thereby it is
important for the Project Manager to quantify these activities in the project.
| CODETEST
Point Distribution |
| Activities
assigned |
Target |
Number
or
Size per day |
Score
Max = 10 |
| Bug
Verification |
Hard |
20
Test cases
10 Test cases
5 Test cases |
10
points
6 points
3 points |
| Test
Data Setup |
Hard |
3
sub-modules
2 sub-modules
1 sub-module |
10
points
5 points
2 points |
| Test
Plan |
Hard |
10
pages |
10
points |
| Test
Scenarios Generation |
Hard |
30
scenarios
15 scenarios
10 scenarios |
20
points
10 points
5 points |
| Automation
Scripts |
Hard |
>
5 Scripts
< 5 Scripts |
10
points
4 points |
| New
Bugs detected and not written in Test scenarios |
Soft |
Critical
Bug
Medium Bug
Simple Bug |
5
points
3 points
1 point |
| Book
of Knowledge |
Soft |
Project
Specific
Non – project |
10
points
6 points |
| Over
time based on client request (Quick TAT) |
Soft |
5
hrs
2 hrs |
10
points
5 points |
| Training
provided to new comers in project and for other projects at
organization level |
Soft |
Domain
Training
QA Training
Learning
QA Tools |
10
points
10 points
8 points
10 points |
| Learning
Curve |
Soft |
4
Weeks
6 Weeks
>8 Weeks |
50
points
25 points
5 points |
| Productivity
(Consolidated-Bug Verification, Test cases writing, Automation,
planning etc) |
Soft |
8
to 10 units
5 to 7 units
3 to 4 units
< 3 units |
10
points
6 points
6 points
1 point |
|
Some of the value-added, such as completing task ahead of
time, can be measured easily, but there are other activities like creating short
FAQ's for newcomers or creating a trainers' checklist which go unnoticed in
the absence of any tracking and monitoring mechanism. Thus it is very critical
for a new evaluation process to be incorporated for quantifying and capturing
these day-to-day contributions of the team members. A sample representation for
assigning score based on the metrics and activity is explained in 'Sample
Project CODETEST information' (see table in previous page).
How to track and collect data?
The foremost requirement for executing the project is to collect and track
data on schedule, effort, cost, quality and performance of the team. Effort,
quality and cost can be periodically tracked using standard in-house project
management tools. Though there is no standard guiding principle on the frequency
of tracking project data, daily tracking is recommended for best results. Daily
status tracking can be very effective in controlling projects and is widely
practiced in CMM© Level 5 organizations.
Daily Activity Report: This has the activities done on
the project and the corresponding time spent in each activity.
Daily Status Report: Some important data that can be collected from the
daily status report include:
-
task accomplished and pending
-
task planned for the next day
-
task planned for the week
-
list of issues and status of the bugs
-
soft and hard target data (can be done on weekly basis)
Lessons Learned
The Weighted Metric Value-added approach was found to be useful to measure
the performance of the project team members. It provides a yardstick and a good
handle on the consistency of performance and ability to the project manager to
work on the areas of improvement for self and the team. It also clearly
demarcates value-added activities from the mainstream project activities.
Clearly, the approach could go a long way to help project managers conduct
effective performance appraisals. However, the negative usage of metrics may
back fire on projects. The data collected must be used to improve team
performance, and not to focus on faults alone, minimizing negative team
dynamics, thereby offsetting data manipulation.
The WMV approach may have subjectivity in the beginning of the project, but
it can be fine-tuned and refined as more and more data points are tracked.
Kiran Kumar Marri, project manager, Infosys Technologies, Bangalore
Next Page : Classification of Tasks
Page(s) 1 2 3
|