You are on page 1of 8

white paper

Bringing Products to Market Faster and With Better Quality


How Saba Is Leveraging Agile Development Methodology

Salil Prasad
Before we look at how Saba is leveraging agile development business needs. This approach offers a lot of flexibility
methodology, let’s first look at what is driving the change. in implementation and easily provides a middle ground
between traditional and extreme project management. This
Why the change: Until last year, Saba had been following
helps soothe management’s fears about big changes in
traditional waterfall methodology for software development.
development practice.
This was a big mismatch between Saba’s business
environment and the development methodology it was What is Scrum? Scrum is a much more people-focused
following. Traditional waterfall methodology is suitable process than other development methods like waterfall,
for projects that are similar to the ones executed before which are typically process-focused.
or whose end state and the means to get there are very
By definition it is an iterative, incremental process for
well known. Most of the software projects do not fall in
developing any product or managing any work. It produces
that category anymore. Today’s business climate is very
a potentially shippable set of functionality at the end of
different. Requirements change very fast, and complexities
each iteration. Some of the noteworthy attributes are the
are increasing with time as well. Even if the end state may
following (as adapted from www.controlchaos.com):
be known, means to get there may not be well known.
In certain situations, even the end state may not be very • A wrapper for existing engineering practices
clear. Forcing us to clearly define all the requirements • A team-based approach to iteratively, incrementally
upfront in such a case is a risky proposition. It blurs the develop systems and products when requirements are
rapidly changing
distinction between wants and needs. Customers often end
• A process that controls the chaos of conflicting interests
up completing the requirements ambiguously under time
and needs
pressure. The end result may very well be a product that the
• A way to improve communications and maximize
customer does not need. Applying the traditional waterfall cooperation
approach in such situations is clearly a setup for failure.
• A way to detect and cause the removal of anything that
gets in the way of developing and delivering products
Saba’s environment is no different in this case. The HCM
market is new and rapidly evolving. Business rules are • A way to maximize productivity
complex and customers have varying needs. Due to
Scrum overview: In this approach, the entire project is
the complexity of the requirements, estimation is also a
broken into multiple cycles of four to six weeks each, called
challenge. As we know, the traditional/waterfall approach is
sprints. Each sprint has a predefined goal.
change intolerant. As a result, it made it even more difficult
to react to changes in requirements in the middle of releases The product or systems requirements are tracked through
and it took us longer to put the products into the hands of product backlog, release backlog, and sprint backlog.
our customers.
A product backlog is developed by the business owner and
Selection of the Scrum approach: Clearly more agility is a list of capabilities and user stories with their identified
was needed to be able to adjust to changing business use cases. It contains all outstanding requests and user
needs and ship products faster and of higher quality. stories prioritized as high, medium, or low.
However, it is a massive change, and any change has
Similar to the product backlog, the release backlog is a
risk associated with it. It is necessary to proceed with a
stacked ranked list of user stories for a single release with
mitigation plan when talking about such a large change.
the use cases identified for each user story.
Several agile methodologies were looked at, and the Scrum
approach stood out as the best suited to the company’s

3
white paper | Bringing Products to Market Faster and With Better Quality
How Saba Is Leveraging Agile Development Methodology

Sprint backlog is a breakdown of use cases, or set of population to influence was huge, and it was a challenge to
use cases to the task level addressing a user story that is make an impact. Moreover, if people do not see the benefit
planned to be addressed in the sprint. At any given point, soon, there is a tendency to start losing momentum. Thus
the team is working on the highest-priority items. the approach taken for our company was to mix agile and
traditional methods to mitigate the risk of adopting a brand-
Throughout the sprints, a daily 15-minute Scrum meeting
new approach and let people gel into this new approach.
is held. The meeting focuses on three topics only: what
Several of the engineering practices were not touched
you did, what you are going to do next, and any issues or
initially. After every sprint, we made a decision to come back
roadblocks. The Scrum master is responsible for removing
and do a mini post-mortem to see what is working, what is
any roadblocks.
not, where we need to improve, where we did better than
At the end of each sprint, the Scrum team conducts a demo before, and so on. This approach took away a lot of initial
of the work done. This provides an opportunity to collect fear and also helped mitigate the risk.
early feedback from users and make any adjustments if
Requirements analysis phase: In a traditional waterfall
necessary. It also gives a sense of accomplishment to
model, one has to spend a considerable amount of time in
Scrum team members.
understanding and refining the requirements until they are
The best part of the Scrum approach, and perhaps the rock solid and frozen. This was a challenge for Saba, as
most challenging at the same time, is that Scrum is not a well. However, in the Scrum approach one does not have
methodology that tells what to do; rather, it is a framework to be bogged down with clarifying all the requirements. We
that gives a lot of flexibility for teams to customize and start with the chunk that is clear or almost clear, build it, and
adapt according to their environment. refine it as we move along. For most of us this is a shocking
statement because we have grown so used to the traditional
Last but not least, successful implementation of Scrum
waterfall approach.
methodology requires good change control. There should not
be any scope creep during a sprint. If requirements change, Scrum meetings and monitoring progress: Saba’s
it is best to reevaluate the priorities at the beginning of the development staff is in U.S. as well as offshore, and this
sprint and address them based on the revised priority. This allows the company to take advantage of greater scalability
creates a win–win situation for the Scrum team as well as the and “round-the-clock” development cycles. Due to the
business owner. Changed or new requirements could still be multishore development environment, it becomes more
accommodated in the same release after proper evaluation compelling to adapt agile methodology as it creates a
and impact analysis on other aspects of the release. framework for greater visibility into the team’s progress. The
challenge was getting daily Scrum meetings rolling.
How Saba is leveraging the Scrum approach:
Initial rollout: We are humans and resistant to change. While multishore development is advantageous for achieving
Making a direct transition from the age-old waterfall style scalability, it also necessitates frequent cross-geo meetings.
is not an easy transition, especially when we are expected Asking for additional and daily Scrum meetings that are
to proceed when all the requirements are flushed out. at times inconvenient for one or more parts of the world is
We feel uncertain and nervous about things that have not not going to fly well. Though a slightly different approach
been tried before and hesitant to try new things. In order is needed, every change has to be carefully evaluated
for any change to be effective, it has to be accepted by all before implementing it. Restructuring the team to align
the people who are going to be impacted directly (project with the Scrum model at the early stage is clearly not the
teams) or indirectly (executives). Therefore, the size of the

4
right approach. Existing team dynamics, knowledge base, Communication challenges do not end here. In today’s
interests, and goals have to be taken into perspective. Hence, era, e-mails are the most commonly used mechanism
a balanced approach is taken for setting up the frequency for information sharing. More often than not, e-mails do
and timing of these Scrum meetings. Also, even though nothing more than create noise for most people on the
Product Management plays a “chicken” role (not allowed to recipient list. To ensure more agility, a good communication
speak during Scrum meeting), it is mandatory that they attend model is essential, and even more so with global teams.
these Scrum meetings so that they appreciate the workload To address this challenge a number of guidelines are being
and can take prompt action when needed. set. A variety of techniques from instant messaging, regular
conference calls, personal wikis, and other collaborative
Each team is thus allowed to have Scrum meetings three
tools work very well and are necessary to close the distance
times a week at times convenient for the local teams. If a
between teams that are not co-located. Instant messages
product team spans multiple geos, use cases are split up
are best for quick questions that do not require more
so that development can be done independently in sub
than two to three exchanges of messages for one topic.
teams. However, each of these sub teams needs to be in
If the exchange of messages goes beyond this limit, team
sync with each other. To facilitate that, we hold a “Scrum of
members should pick up the phone and talk. At the same
Scrum” meeting once a week in which Scrum masters from
time, trying to clarify complex problems over the phone or
each of the sub teams participate and report on progress
IM is not a good idea. Team members should create a brief
and issues. This ensures we do not overlook any integration
write-up and send it for advance reading and then follow up
issues and have overall visibility into the team’s progress.
with phone call (if not co-located) for such issues.
Scrum masters also have to report back on the status of
issues in the Scrum meetings, and this helped remove Use of collaborative tools is the key, especially where teams
issues and obstacles sooner. Issues get resolved much are in different time zones. Rather than relying on e-mails to
faster, and eventually, the team is able to knock the features pass on key information to team members, it is necessary
and functionalities down faster. This eventually helps with to use some kind of dashboard that will force the requestor
improved quality and time-to-market. to phrase what exactly is needed, who is the request being
made to, what is the expected time of completion, and who
Distant collaboration: Prompt issue resolution is crucial to
are merely on a cc list. E-mail cannot enforce these rules.
the success of the Scrum model. The model requires more
Several collaboration activities are now managed by a single
than just facilitating Scrum meetings, especially where large
online tool called TeamTrack, deployed at Saba, and it is
and multishore development teams exist. The team has
continuously being expanded to include more collaboration
to be very creative in how its members communicate with
capabilities. This tool is being used to manage integrated
each other cross-country. There are cultural issues involved
change-control process, risk and issue management,
when dealing with message interpretation. For example, a
code completion checklists, backlog management, cross-
team from one side of the world passes information to the
team dependencies, code review results, and so on. Since
other side of the world, asking for prompt action, hoping
attributes are predefined and several of these are set as
that by next day they will have a resolution. But in reality,
mandatory fields, it ensures the right information is captured
they may have left out some crucial information or provided
during the submission process.
information that is too vague. They come back to the office
hoping that the issue is taken care of, but instead, they find Addressing estimation challenges: One of the biggest
a request for additional clarifications, thus wasting another challenges a team faces is with regard to estimation. The
day. This could be disastrous in critical stages. requirements are complex and most of the time we are

5
white paper | Bringing Products to Market Faster and With Better Quality
How Saba Is Leveraging Agile Development Methodology

busy exploring newer technologies to give a richer feature Apart from this, user-facing documents also run in parallel
set and more value to our customers. Due to these issues, with feature development. The documentation team
estimations are often not accurate. In order to catch up with participates in Scrum meetings and is current with day-
lost time, the development team often takes steps that are to-day issues. The parallel documentation and ability to
not productive. stay current with the issues help the documentation team
release customer-facing documents on time and updated
In contrast, the Scrum approach forces teams to set 30-day
with known issues.
targets. The focus is shorter, and features are broken into
smaller sets of use cases and tasks, which become easier Change control: Because of so much agility and being
to estimate and manage. If there are complexities involved open to changing requirements, it becomes easy at times
due to newer technologies, issues are known immediately to be carried away with changing requirements. Hence
rather than late in the cycle, as in waterfall. Management it is essential to have a robust but lightweight change-
and the team can then take corrective action once issues control system in place. An online tool is implemented that
are escalated, which could be either to augment the staff, shares the same database as product backlog to submit
hire external resources, or adjust the scope. Because goals and manage change requests. The chosen mandatory and
are short, and because teams are able to reach goals on optional attributes that help capture necessary changes
time, over the duration of a project teams start gaining upfront without having to go back and forth when analyzing
confidence in their estimations as well. change requests. Once a change request is submitted, all
stakeholders are involved in analysis and decision-making.
Parallel development, testing, and user documentation:
If approved, the request moves to release backlog, and the
In the Scrum approach, development and testing run in
plan is updated. This helps ensure proper risk consideration
parallel. Development tasks are split up according to the
is made and scope changes are carefully managed.
24–80 hour rule. This allows better insight into the progress
and control of tasks without having to micro-manage the Sprint demos for early feedback and reinforcement:
tasks. As deliverables are checked in, they are picked up for Sprint demos are conducted at the end of every sprint.
testing immediately. When critical issues are detected, they This is an open invitation to field personnel who are
are addressed immediately. actively engaged with customer issues. They get a
firsthand chance to look at what is being developed or
Toward the end of each sprint, one week of stabilization is
what has been developed so far. This serves several
allocated. The primary focus of this week is to stabilize the
advantages. Support and Consulting groups get to see
sprint deliverables while testing is catching up on the last
the product actually functioning before formal knowledge
set of deliverables. This allows entire sprint deliverables to
transfer and training. Presales and Marketing groups get
be in a pretty stable state.
the opportunity to provide real-time feedback from what
To maintain this agility, management commitment is they hear from our customers. And also, in some cases, it
required so that resources are not pulled during a sprint allows the team to do an advance demo for customers to
execution. Also, there is more emphasis on development get early feedback.
and testing than maintaining monolithic documents.
After the sprint demo, a user acceptance test is conducted
However, while the documentation is streamlined, need for
against the functionally complete features. Feedback items
keeping it up to date is even more critical. As a result, if
are prioritized and an action plan is developed to address
there are any changes in functional requirements, the team
them in next sprint or next release as the case may be. If
immediately logs the changes and notifies stakeholders so
items stand to be of higher priority than the other items
that they are always looking at the most current version.
scoped for the subsequent sprint, the team works on those
first, and lower-priority items get deferred out as applicable.

6
Post-mortems as a way to continuously improve: At other but if managed carefully, we can reap the benefits of
the end of every sprint, we conduct a post-mortem to both. There are organizational and cultural challenges. For
look at what went well and where we can continue to example, the waterfall method is fine where team structure
make improvements. The meeting is kept very informal to is more of a managerial hierarchy, but an agile methodology
encourage active participation. An action plan is developed is insistent upon open and flat structure. Moreover, in
to apply those learnings to the subsequent sprint. This helps Eastern cultures the management culture is more autocratic
us keep refining our development and testing practices on a and value is often measured by the number of people one
continuous basis. manages. But Scrum requires a smaller and manageable
team. Thus a delicate balance has to be carefully achieved
Stabilization sprints to make the quality better: After all
for Scrum to be successful. As an example, if a team is
the development sprints are over, we enter into stabilization
used to getting detailed requirements upfront, and then
sprints. No new feature development is done in this phase. All
suddenly gets immersed in an agile environment where
critical and important bugs are addressed to ensure the end-
requirements are not detailed, this impacts relevancy,
user experience is as smooth as possible. Thorough reliability,
productivity, and quality of deliverables. Obviously there
scalability, and availability tests are done and performance
are several challenges in reaping the most out of the Scrum
issues are fixed as and when they are found. Locales are also
model in a distributed workforce, but once achieved, results
back after translations in this phase and linguistic reviews
are phenomenal. As Ken Schwaber, co-creator of Scrum
are conducted and feedback items addressed as well. These
and author of Agile Project Management with Scrum, says
sprints are of shorter duration, and each has its own set of
in one of his articles, “Scrum is not for those who seek easy
goals to help achieve measured progress.
answers and simple solutions to complex problems; it is for
Closing: Thus, we have seen how we are getting the those who understand that complex problems can only be
most out of our distributed workforce as well as an agile met head on with determination and wit.”
approach. Inherently they are not compatible with each

7
© 2007 Saba. All rights reserved. Saba, the Saba logo, Centra, and the marks relating to Saba products and services referenced herein are either trademarks or registered
trademarks of Saba or its affiliates. All other trademarks are the property of their respective owners.

Saba 2400 Bridge Parkway Redwood Shores CA 94065-1166 USA (+1) 877.SABA.101 or (+1) 650.779.2791 www.saba.com Rev. 10/07

You might also like