Lecture 12 Slides
Lecture 12 Slides
Lecture 12 Slides
1
Comparison of Agile and Traditional Plan-driven
Methodologies
Hi, with this lesson, we’re going to start a new section on a Comparison of Agile and
Traditional Plan-driven Methodologies
2
Comparison of Agile and Traditional Plan-driven
Methodologies
Here’s a brief list of what we’re going to cover in this section – there are only two key topics that
are included in this section:
• The first is the difference between Empirical and Defined Processes and Management of
Uncertainty which is probably the most important distinction to understand between an
Agile methodology and a plan-driven methodology
• And, finally we’re going to talk about the difference between the Iron Triangle that is
widely-used in plan-driven project management and the Agile Triangle
3
Empirical versus Defined
Process Control Models
In this lesson, we’re going to talk about Empirical versus Defined process control models…
4
Defined Process Control Model
Requires that every piece of work be completely understood in advance
A defined process model requires that every piece of work be completely understood in
advance. An example would be baking a cake. There’s a well-defined recipe for baking a
cake that completely defines in advance a step-by-step process of everything you need to do
in order to bake a cake. You can plan the entire effort to the extent of knowing exactly what
the ingredients are, what they will cost, and how long the process will take to bake the cake.
A defined process model is repeatable - given a well-defined set of inputs, the same outputs
are generated every time. To use the cake-baking example, as long as you follow the process
and don’t deviate from it, the cakes you bake should be very consistent from one batch to
the next
Predictable - A defined process can be started and allowed to run until completion, with the
same results every time. There is no significant judgment required to adapt the process to
make it work. In the cake-baking example, you can predict with some level of confidence
that if you have followed the recipe without deviation, your cake should come out as
expected.
5
Defined Process Control Model
Defined Process
• Predictability of results
Advantages: • Control over scope, schedule,
and costs
• Inflexible
Disadvantages:
• Emphasis on control
A defined process has the advantage of being predictable and providing control over changes in
scope, schedule and costs
But its weakness is that it is can be inflexible and not work well in environments where the
requirements are uncertain and likely to change. The emphasis on control can also create some
unnecessary overhead
6
A Defined Process Control Example
An example of a defined process control model would be an assembly line for building
automobiles or other products. There is typically a well-defined process for building
automobiles or other products and the basic process is normally repeatable and does not change
from one vehicle to the next.
7
Empirical Process Control Model
• Inspection,
• Adaptation, and
• Transparency
http://www.innolution.com/resources/glossary/empirical-process-control
An empirical process control model is a very different kind of model. It is defined as “a style of work
that leverages the principles of:
• Inspection,
• Adaptation, and
• Transparency”
It is most suited for situations where the result that is needed is uncertain and/or the process needed
to produce the result is not well-defined.
8
Empirical Process Control Model
Scrum Is An Example of An Empirical Process
Empirical Process
An empirical process like Scrum is based on continuous improvement and uses what is called an
empirical process control model. The word “empirical” means based on observation; and, in this
context, it means that both the process and the result are adjusted as needed based on
observation throughout the process rather than remaining fixed
Scrum provides a general process framework but it is a very general process framework that can
be easily adapted to different kinds of projects and within a given project it is adaptive to
projects with highly uncertain requirements.
9
Empirical Process Control Model
Scrum Is An Example of An Empirical Process
Empirical Process
• Very adaptive to uncertain or
changing requirements
Advantages: • Less overhead
• Faster time-to-market
The advantage of an empirical process like Scrum is that it is very adaptive to uncertain and
changing requirements and it may also have less overhead and faster time-to-market
The disadvantage is that because changes are encouraged rather than limited, there is less
predictability over the costs and schedule of the project
10
An Empirical Process Control Example
To use the cake-baking analogy, suppose there were some unknowns or uncertainties in the
process and we could not predict in advance what impact they might have on the final result we
would produce?
• Suppose for example, that we weren’t sure people would like the kind of cake we’re baking
or not, or
• Suppose we didn’t have all the proper ingredients and we have to make some substitutions,
or suppose the oven we’re using to bake the cake and we really can’t control the temperature
very precisely and reliably, or
• Suppose someone wants a variation in the cake recipe that has never been tried before and
we’re not sure how it’s going to come out
In all of these situations, we will probably need to take more of a trial-and-error approach to see
how the cake comes out as we’re baking it and we can’t rely on just following a predictable, well-
defined process and assuming the cake is going to come out as we expected.
11
An Empirical Process Control Example
What you would need to do is use inspection to see how the cake is coming out as it is being
baked and use adaptation to adapt the process as needed and make corrections to improve the
results as necessary, and none of this can be done without some level of transparency. You
need to be able to see the results of the process as it is in progress in order to make corrective
actions.
12
A situation with a higher level of uncertainty is best
suited for Agile or adaptive process which is based on
more of an empirical process control model
I think you can readily see that an Agile or adaptive process is based on more of an empirical
process control model while a plan-driven approach is based on more of a defined process
control model.
13
NEXT LECTURE…
MANAGEMENT OF UNCERTAINTY
14