Académique Documents
Professionnel Documents
Culture Documents
3.1
Introduction
This edition of chapter will basically provide some more insight as to what causes the
S curve effect and how managers can minimize the effect it has on the overall
project delivery by paying attention to just a few areas at the beginning and end of a
project. However in this chapter, it will look more into the velocity of the S curve as
to what factors that contributes to the shape of the curve from the bottom to the top.
3.2
General Overview
In the S curve, the plot of features, stories, uses cases of function points complete,
can be expected to follow an S curve. The severity of the S curve effect is
dependent on many factors. Managers can minimize the effect and maximize the
productivity of their team by paying attention to the contributing factors which limit
productivity in the early and late stages of a project. The S curve effect must be
accounted for in the project plan. Velocity at the beginning and end of a project,
release of iteration will be slower than the maximum possible rate. Given knowledge
of the team, the tools environment, the requirements ambiguity, the amount of
integration needed or likely, the code quality, the ability of project managers to
communicate successfully and close issues quickly and any likely refactoring, a good
36
manager can guesstimate the S curve effect and plan for it such that the delivery
date on a project will not be missed.
The definition of velocity is basically hard to understand. From the calculus angle,
velocity is the first derivation of position, and that acceleration is the first derivative
of velocity, making acceleration the second derivative of position. In general terms,
derivative is also known as rate of change. Hence, it can be said that velocity is the
arte of change of position, and the acceleration is the rate of change of velocity.
According to Newton, acceleration is proportional to the forced applied, so the second
derivative of the position of an object is proportional to the force. Another way of
saying this is that there is a need to take the applied force and integrate twice to get
the information about the position. With this definition of velocity, this is definitely
not something that is intuitive to all.
3.3
37
In general, the prediction of the percent complete curve is normally will be done
while at some state of incompletion. In other words, there is a need to know when the
project is going to be finished. However, at any point of time, all that is in hand is that
portion of curve behind us, and some notion of velocity curve. The forces curve is
normally pretty hard to pin down quantitatively. In fact, it is often hard to understand
the velocity curve, although metrics that could indicate velocity would be very useful.
By knowing the position is actually important, but to more accurately forecast, there
is a need both actual position and actual velocity.
Today, many projects metrics focused exclusively position by asking the question of
Where are we?. Therefore, by having velocity metrics rate of change position,
another question that can be imposed here is that How fast are we going? is equally
important. Hence, if there is any ways to get to the point of being able to understand
how the velocity is changing, there would even have a more complete picture. There
is a need, therefore, to think about project metrics collection in this light.
3.4
38
fumbling around without understanding much. This corresponds to the first, flat
part of the curve, where time goes by without much progress. Then as time goes by
and there tend to be and understanding of what is going on, the progress increases,
this is reflected by the second part of the curve, which is sometimes called the
ramp. During this period, there were actually a lot of progress per unit time were
made. The task should be finished sooner would the rate could be continued in this
way. But inevitably, the third part of the curve is entered which goes flat again. What
is happening here is that it stops making dramatic progress, and the last few percent
takes a long time. This learning experience is repeatable over and over again, from
domain to domain.
In order to understand the generality of the suggested rule of thumb that follow, it is
instructive to recite many practical reasons for the shapes of each of these three
stages.
3.4.1
Stage One
Access of the work has to be opened up from zero start, with the result that the
work itself becomes progressively more available
2.
3.
Key people may be brought in to start the work, but supporting labor is
recruited locally. The recruiting and selection of local labor itself takes time
4.
With productive efficiency in mind, crews are added only as experience builds
and the work becomes available to be performed
5.
Further crews are added only as pressure builds to get the job done within the
required time frame
3.4.2
Stage Two
39
At this stage, it achieves a steady state because:1.
2.
3.
Adding more labor would over crowd the working are and reduce productivity
4.
5.
6.
Alternatively, if the work force is held at a lower level, the elapsed time to
accomplish the work will be prolonged, with consequent higher overheads
and, possibly, contract penalties to be faced.
3.4.3
Stage Three
In this stage, it almost the reverse of stage one is true. Manpower is progressively
reduced because:1.
2.
3.
Morale sometimes deteriorates as the end of the work is in sight and people
leave to join more active sites
4.
5.
The more difficult work may have been left to the end; maybe more
congested, or otherwise require only the skills of those brought in initially.
6.
Pressure to complete the last few percent dies down as management attention
turns to more critical work
7.
Latent defects may surface upon final inspection requiring re-work with no
added measurable product to show for the effort.
3.5
40
As described earlier, the typical S curve effectively consists of three stages namely
the Build Up, Steady state and Run down. Stage 1 is in fact the most critical since it is
during this stage that the unique conditions of the site are experienced, and the stage is
set for a steady, productive, and profitable the main body of the work. Stage 2 is
important because peak productivity and efficiency must be attained and maintained
without interruption for profit that actually generated. Stage 3 is important for
ensuring that the work is brought to an effective and satisfactory conclusion without
time and money being wasted. For instance, if the manpower is cut too early the
works get extended. If it is cut too late unnecessary cost is incurred in paying for
unproductive manpower.
If data over these three stages are viewed as a histogram of period resources input
over the duration of work, a first approximation empirical profile can be articulated.
That is 40% of resource input occurs in the first 50% of the time, a further 40% input
in the nest 25% of the time and the remaining 20% in the last 25% of the time. This
profile determines that peak loading will be 160% of the overall stages. If the same
data is plotted as a running total on a percentage of total scale on both axes, the result
is a typical S-curve. On well run project actual timing of this peak loading, i.e. stage
2, appears to vary by only 10-15% only.
3.6
There are good reasons why the optimal productivity cannot be achieved immediately
in S curve and why it drops off towards the end of the project. Based on the above
discussion, it shows the S curve as a resemblance of the human behavior technique.
However to be more precise, the bottom and top of the S curve is now will be
looked into.
41
3.6.1
42
3.6.1.3 Knowledge Sharing
Knowledge sharing is important to performance. A team which works well together
will share knowledge. A team which is dysfunctional and poor at sharing will under
perform. Encouraging openness and knowledge sharing and creating a means for
communicating the knowledge will improve performance of the team.
43
3.6.2
Basically, there are four factors that will be discussed here on why the production rate
tends to drop off in projects namely the increased integration effort; bug fixes;
inventory blocked due to unresolved issues; and restructuring
3.6.2.1 Integration
Increased integration effort is almost unavoidable. As a project becomes larger, code
from a new iteration must be integrated with the large existing code base. The number
of problems found during build-integration and integration testing is likely to
increase. The only way to avoid this is to never work on a large project. Hence, large
projects, even those built in smaller iterations, should anticipate this effect and allow
for it in the planning of the project buffer.
The effect of increased problems due to build-integration can be measured by
measuring the time from the start of the build until the build is declared successful.
This is the local lead time through integration lead test. The manager can then assess
what the overall downtime for the development team might be. In extreme cases, all
development until the build is declared successful. The effect on the production rate
can be calculated. The trend in the build integration time can be used to predict the
future impact of build-integration on velocity. Hence, the contribution of buildintegration to the cumulative flow diagram can be predicted.
44
3.6.2.2 Bugs
As a project matures and more code is available for system and product test, the
number of bugs reported rises. As the bug database rises, there is a tendency to
increase the mix of bugs to new client-valued functions being coded. The result is that
the overall speed of the team in maintained but an increasing percentage of the effort
is devoted towards fixing bugs. Bugs fixes are related to feature inventory which is
already shown as code complete and hence no additional value is earned on the
cumulative flow diagram by working on them.
To minimize the effect of bugs on the code complete slope and to maintain velocity, it
is vital to maintain high quality standards. Fewer bugs have a direct positive affect on
the production rate. The S curve clearly shows how and why high quality makes a
project go faster.
45
3.6.2.4 Restructuring
Restructuring will also form part of the factors which have an impact towards the
velocity if it involves features already shown as complete. When working code
already completed is being re-worked then it is not being shown as a new
productivity. For every client-valued function being re-worked, the system is losing
the possibility of a unit of new production. For this reason, according to Anderson
(2004), the preference is always to plot restructuring as new dark matter features
which are added to the total inventory on the cumulative flow diagram.
Where restructuring is unavoidable due to a change in market conditions which force
new architectural requirements upon the system or through sloppy coding which has
limited the ability of the team to deliver the full iteration, then it is vital to convey to
senior management, the true cost of the restructuring. The true cost can be calculated
from the reduction in production rate, the increase in lead time and the lost
opportunity for throughput. If the benefit from restructuring financially outweighs the
cost, then is should happen.
3.6.3
Overall Curve
46
3.6.3.2 Communication
Good communication among the team members would definitely have a very great
impact towards the success of the project. From the start of the projects, with a better
understanding among the people at site as well as in the office, this will ensure
smooth implementation of the projects and hence and have a direct impact towards
the velocity of the S curve when it is plotted.
3.7
Summary
The above discussion shows the existence of factors in the velocity of the S curve at
the beginning and end of a project which simultaneously will affect the performance
of the completion of the projects. In terms of its productivity, this was also briefly
discussed where there are good reasons why this optimal productivity cant be
achieved immediately and why it drops off towards the end of the project. This was
discussed by looking at the bottom and top of the S curve separately. Hence, from
the discussion, it showed various contributing factors as to why this different velocity
is occurring and taking place.