You are on page 1of 6

Agile Projects in the Waterfall Enterprise

by MICHELE SLIGER

26 BETTER SOFTWARE JULY/AUGUST 2006 www.StickyMinds.com


A lthough agile software development methodologies have
been around for almost a decade, interest in agile approaches has
exploded recently as companies seek better ways to compete
with their global counterparts by getting their software products to
market more quickly. The economy’s downturn and subsequent
budget cuts have led to greater interest in how to do things faster
and how to do more with less. As a result, agile methodologies—
Scrum, Extreme Programming, Lean Software Development,
Crystal, Dynamic Systems Development Method, Adaptive
Software Development, and others—have attracted many CIOs
who are looking for approaches to make product
development faster, more reliable, and more satisfying to
the end-user.

www.StickyMinds.com JULY/AUGUST 2006 BETTER SOFTWARE 27


While these promises are enticing, most expected deliverables (chunks of working The Agile-Waterfall
agile methodologies are designed for code early and often vs. documentation Cooperative
small, collocated, collaborative teams. early with code at the end). These two Large companies have clear, valid
Knowing these constraints—yet still practices have different ways of measuring reasons for requiring certain waterfall
feeling a need to respond rapidly to progress, determining success, managing activities on otherwise agile projects.
market pressures—companies with teams, organizing, and communicating. Project approval processes designed to
large and geographically dispersed IT How can they be managed as part of a weigh benefits, costs, and strategic
divisions have chosen to forge ahead, cohesive project portfolio? Can agile and alignment with corporate objectives are
making changes when necessary, to adopt waterfall methodologies coexist and still one example of a standard waterfall-
agile methodologies within their large, make the company successful? up-front requirement. Independent
historically waterfall-oriented organiza- The answer is yes. Not only can they Validation and Verification (IV&V) is a
tions. Because it’s simply impractical to coexist for the interim but they can waterfall-at-end requirement for those
“flip a switch” and have a 1,000-person coexist for the long term, since not all companies in industries that must comply
IT department start doing agile all at once, companies will choose to move every with external regulations. And waterfall-
these organizations must wade through a software development project to an agile in-tandem occurs when the system under
sometimes murky transition period when paradigm. The trick is in how they can development is so large and complex that
agile and waterfall are forced to coexist. coexist peacefully and not detract from multiple teams, often working on different
During such a transition, what’s an IT operational stability and continued project platforms, must work together to prepare
enterprise to do? Agile and waterfall are success. Every transitional environment, a release.
so utterly different—from the way projects agile or otherwise, has to deal with duality None of these requirements will cease
start (diving right into coding vs. spending until the transition is complete. Doing to exist simply because the teams are
long weeks in analysis and design) to the this with the least amount of pain and employing agile practices. Instead the teams
types of meetings held (quick, daily disruption means tightly embracing one of must learn to factor these corporate
planning meetings vs. long, weekly status the key agile tenets: “inspect and adapt.” needs into their agile procedures, and
meetings), to what we expect of the team Process reviews and the progress the teams management must begin the investigative
(self-organized vs. directed), and even the have made at the end of every iteration work of determining how to streamline
(typically one to four weeks in length) these requirements and activities so they
guide decisions on how best to proceed don’t hamper the project.
in the next iteration. This allows teams to
adjust some of the agile practices to work Waterfall-up-front
better in the current environment, knowing I counseled one team to use Alistair
Using the “barely that these agile practices may change and Cockburn’s “barely sufficient” philosophy
sufficient” guideline, become more “pure” as the environment (see the Sticky Notes for more informa-
and culture change over time. tion), in order to avoid doing more than
the team asked, Some agile purists will say that by was absolutely necessary when faced
stretching the process it’s no longer with waterfall-associated deliverables.
“Is this something truly “agile,” and in many cases they The team members had been newly
may be right. Semantics aside, it’s still christened as an agile pilot team when
that we really must about improving the overall software they found that they still had to go
delivery system, and the label we apply through the standard waterfall project
do? And if to the methodology is secondary. However, approval process to obtain the necessary
teams must be careful not to stretch agile resources and funding.
it is, then what practices so much that the teams revert Using the “barely sufficient” guideline,
to their more comfortable, waterfall the team asked, “Is this something that
is the simplest thing habits. When agile is viewed as an à la we really must do? And if it is, then what
carte menu of practices that can be is the simplest thing we can do to satisfy
adopted as the teams see fit, it’s the approval process?” Project approval
we can do critical to adhere to a diet of key was a must for the team, because with-
principles—continuous improvement out approval the project team would be
to satisfy the through time-boxed iterative deliveries disbanded and the monies and staff
and reviews, implementation of the would go to other, previously approved
approval process?” most important items first, and constant projects. But conversations with the
collaborative communication. As they financial controllers revealed that the
begin their transition, teams following documentation required for the
these principles will find ways to approval process could be streamlined
integrate agile and waterfall. and simplified, thus saving the team

28 BETTER SOFTWARE JULY/AUGUST 2006 www.StickyMinds.com


from having to do the big up-front design approved the project. waterfall at the end of each project in order
that goes against the agile philosophy. Other teams with which I’ve worked to prepare the software for production.
Based on the agreement reached with received provisional funding prior to official Passing through the required phase-
the financial managers, team members approval, so they included the project gate of the team’s production department
did the “barely sufficient” analysis approval requirements in their first two means that all documentation, meetings,
and design work required to produce a iterations as deliverables along with end-to-end system testing and compatibility
technical specification document, which requested features. You can see an example testing, and sign-offs must be planned and
they submitted with their business case of both approaches in Figure 1. carried out. The team decided to use
for approval. The design specification Don’t be afraid to put non-product story cards to represent each item on the
was a high-level overview of the system items in the backlog, especially if you production checklist and allocated an
with high-level functional specifications, want to take advantage of the high entire iteration to production readiness.
but it avoided the detailed requirements visibility it affords. Ken Schwaber, author Team members did not implement any
that would have taken the team weeks to of Agile Project Management with Scrum, new features during this iteration; instead
complete. The documents were considered calls the list of project initiation work they produced documentation for
just good enough for the review process, items the “Scrum Startup Backlog.” production, customer support, the
architecture review committee, and
systems test. (Note: This company’s system
P rojec t
test was concerned primarily with the
Approval
submitted application’s compatibility
P roc es s
To with other existing applications on the
C us tomer network—the agile team still tested its
code in each iteration.)
Figure 2 illustrates this example. If
R eleas e
team members had any time left in this
B ac klog Iteration 1 Iteration 2 Iteration 3 Iteration 4 iteration, they spent it refactoring code,
• P roject Approval
• F eature 1 installing development and test
• P roject • F eature 2 • F eature 3 • F eature 6
• F eature 2 Approval • Arch. • F eature 4 • F eature 7 system upgrades, investigating new
• Arch. Approval • F eature 1 Approval • F eature 5 technologies, and training staff.
• F eature 3
An iteration dedicated to preparing
Figure 1: Waterfall-up-front
the passage of potentially shippable code
base to another entity is useful in a wide
variety of situations: Sarbanes-Oxley
and the project was approved. Waterfall-at-end auditing, FDA approvals, and IV&V.
Once they had approval, team members Another agile team I know of in a Even if your product does not need outside
held their first iteration planning meeting large telecommunications firm discovered approval, you can use this hardening
and brought along the specification that that having to deal with waterfall-at- iteration to capture final screen shots for
they had created. From the thirteen-page end requirements meant adding an marketing and training materials, finalize
document they extracted a total of twelve extra iteration to prepare the required the release notes, conduct performance
sentences that represented the first few deliverables. This team produces and load testing, and other organizational
features they wanted to develop and then application software for internal activities. Just be sure that your team
used this information as their initial end-users, and it must switch from agile to isn’t using this last iteration solely as a
product backlog.
They set aside the specification and To
rarely referenced it during the course of the C us tomer
release. The creation of this specification
was not, however, viewed as a waste of
Produc tion / IV&V
time. Rather, team members felt they had
benefited from the shared product vision
created from the exercise of compiling the R eleas e
specification. And of course, the financial
managers on the project approval board Iteration 1 Iteration 2 Iteration 3 Iteration 4

got the information they needed to • F eature 1 • F eature 3 • F eature 5 • P roduction


• F eature 2 • F eature 4 • F eature 6 documents
determine capitalization (some companies
• F eature 7 • Arch. review
require a technical specification before • Train Help
deciding whether a project’s budget can be Desk
labeled as capital or expense) and thus Figure 2: Waterfall-at-end

www.StickyMinds.com JULY/AUGUST 2006 BETTER SOFTWARE 29


bug-fixing opportunity; that’s a signal successful than email, overseeing multiple company-sanctioned style sheets. Instead
that the team is committing to more features teams was still difficult for the waterfall the agile team members created a simple
in each iteration than it has time to test. managers. So, after another iteration UI that was functional and scalable,
review, the process was modified again to albeit not particularly attractive. At the
Waterfall-in-tandem include other key members of the waterfall end of the first release, the product was
A healthcare management company teams in addition to the waterfall project deployed internally with the agile team’s
with which I’m currently working has managers. All the teams eventually came UI. By the next release the waterfall team
multiple complex systems—systems so together for release planning meetings, had delivered, and the official screens
large they must be broken down into with a smaller set of waterfall team became part of that second release. In the
components, with each component having representatives attending iteration planning meantime, the end-users had access to
its own project teams. Data flows from meetings when needed (see Figure 3). A the needed functionality, and the agile
legacy minis and mainframes to newer, second tier of daily stand-ups was added team was praised for its efforts.
browser-based applications and then for the team leaders, as in the Ken
back again—and sometimes even on Schwaber “Scrum-of-Scrums” model. The Anomaly—Two
to something else—resulting in huge For more information on how these Separate Entities
coordination efforts to ensure successful meetings work, see the StickyNotes for a I’m aware of one organization that
system integration. link to a nicely articulated definition and has decided to keep the agile and waterfall
One of the component teams was graphic by Mike Cohn. These teams, groups completely separate, with no
piloting agile and realized that in order to waterfall and agile, used the iteration overlap at all. This particular company
coordinate milestone deliverables with reviews to inspect and adapt and thus set up its agile teams as a separate
the other teams they would have to created their own natural transition plan. organizational unit, and its internal
clients pay the department for the use of
its agile teams for a fixed period of time
To (not for a set project).
C us tomer These agile teams function as a type
of “skunk works” operation (see the
R eleas e StickyNotes for more information).
Copyrighted by Lockheed Martin, the
Team Iteration 1 Iteration 2 Iteration 3 Iteration 4 “skunk works” phrase was created by a
Agile
1943 Burbank, California, team that
M iles tones and Sync P oints had been tasked with creating the
P-80 jet fighter from scratch. Clarence
Team
Analys is …Des ign…C ode…Tes t “Kelly” Johnson, who headed the team,
Waterfall
described a skunk works operation as “a
Figure 3: Waterfall-in-tandem small group of experts who drop out of
the mainstream company operations in
include the waterfall project managers in Don’t be surprised, however, to find order to develop some experimental
the planning sessions. This realization your agile teams moving ahead of those technology or new application in secrecy
came after attempts to stay synced up via waterfall teams that aren’t inclined to co- or at speed, unhampered by bureaucracy
emails failed horribly. The agile team operate or are unable to deliver. Agile or the strict application of regulations.”
members realized they had left the teams usually figure out a way to keep These stealth agile teams evade waterfall
“collaborative” out of the “constant making progress, even without the controls thanks to the power of their ex-
collaborative communication” principle expected deliverables on which they rely. ecutive sponsors and their paying clients,
(sorry, constant emailing doesn’t count!), The agile team will stub out that missing who work together to protect and incu-
and so began inviting the waterfall project subsystem and create work-arounds, or they bate the teams so they can focus on their
managers to all their planning meetings— will simply build the module themselves. assignments. And by keeping the two
release planning, iteration planning, and In one instance, agile team members separate, management avoids dealing
daily stand-ups. Initially the waterfall decided not to wait for the waterfall user with the issues surrounding changes
project managers grumbled that all these interface (UI) design team to provide the needed in organizational structure, project
planning sessions were wreaking havoc
on their calendars. However, once they
had attended a few sessions, the managers Don’t be surprised, however, to find your agile teams
began to realize the value of the shared moving ahead of those waterfall teams who aren’t
information and the improved ease and
coordination of the work. inclined to cooperate or are unable to deliver.
Although this approach was more

30 BETTER SOFTWARE JULY/AUGUST 2006 www.StickyMinds.com


approval procedures, ongoing portfolio
metrics and management, and overall
culture that must be addressed in an ag- The KEY TO SUCCESS in each of
ile- waterfall cooperative.
Making changes—especially of this
these examples is the teams’ approach
magnitude—is never easy. But most teams to transition problems—solving problems
have told me that the hardest part is just
getting started. Once teams begin
collectively, collaboratively, and with the
adopting some of the practices, they find freedom to make decisions and changes
the rewards surprising and well worth the
continued effort. Organizations find that within the discipline of regular reviews.
being able to better respond to the Here are several recommendations to help
marketplace isn’t the only reason to
switch to agile. The cooperative and your organization develop ways for agile
collaborative nature of the approach
provides a more supportive, meaningful,
and waterfall to effectively coexist:
and exciting work environment for the
members of the team. Agile is a  Talk with waterfall stakeholders about how you’d like to work together.
commonsense approach to software Answer their questions about agile, and ask for their help in making the
development, and the success of a relationship as pain-free as possible. The executive sponsor should be
waterfall-agile enterprise lies in creating part of the initial discussion, to share her commitment to the process,
a transition plan to excellence through her dedication to removing roadblocks, and the importance of each
the cycle of inspection, adaptation, and team’s involvement.
execution. {end}
 The waterfall requirements of the project should become stories in
Michele Sliger has worked in software the agile team’s backlog. Include waterfall stakeholders in the agile
development for more than fifteen planning meetings, so that everyone understands what qualifies as
years. She currently works as an barely sufficient deliverables, what assumptions the teams are making,
agile consultant for Rally Software and what dependencies exist.
Development, where she trains software
development teams in agile methodologies.  In the review and retrospective held at the end of each iteration,
Previously a project manager at Qwest analyze the benefits and challenges you’ve just experienced and make
Communications and a consultant for recommendations on how to improve the experience in the next itera-
Fortune 500 companies, Michele was a tion. Again, be sure to include the waterfall stakeholders.
founding member of the engineering
teams at two biotech start-ups. She is a  Executive and middle management should create their own prioritized
certified Project Management Professional backlog of transition issues they need to focus on, implementing corporate
and a Certified Scrum Master. Michele is process and organizational change iteratively and incrementally.
also an adjunct faculty member of the
University of Colorado, where she  Don’t try to fix everything before you start agile adoption. Just dive right
teaches software project management to in—you’ll find a way to work within the current constraints. Use the
graduate engineering students. Email iteration reviews and retrospectives to make change recommendations
Michele at msliger@rallydev.com. and implement incremental improvements as you go. Be reasonable
about this by focusing on only the top two or three things for the next
iteration. It’s a backlog of recommendations and, like the backlog of
Sticky product features, they all can’t be implemented at once.
Notes
For more on the following topics, go to  Pay attention to behaviors and avoid reverting to old habits. For example,
www.StickyMinds.com/bettersoftware if you notice that you’re depending on the specification that you had to
 Alistair Cockburn’s Barely Sufficient create in the waterfall-up-front iteration instead of having discussions
methodology with the product owner, set the document aside.
 Mike Cohn on daily stand-up
meetings  Invite all stakeholders to participate in a project retrospective at the
end. These meetings are crucial to help identify and implement broader
 More on “skunk works”
transition changes that affect the entire enterprise.
 Further reading

www.StickyMinds.com JULY/AUGUST 2006 BETTER SOFTWARE 31

You might also like