Professional Documents
Culture Documents
WHITEPAPER
I ntroduction
Since the creation of the Agile Manifesto (excerpt
right) the Agile methodology has been talked about,
taught, tweaked, adapted, reviewed, rejected,
heralded and ultimately worked its way deep into
the software development culture.
There have been multiple spin-offs of Agile since
the manifesto was first published, including Extreme
Programming, SCRUM, DSDM, Adaptive Software
Development, Crystal, Feature-Driven Development,
Pragmatic Programming and Agile-Fall, among
others. Some of these have come and gone while
others have stuck around. And though they differ
in subtle ways, they all hold the same foundational
values.
Agile Manifesto
We are uncovering better
ways of developing
software by doing it and
helping others do it.
Through this work we have
come to value:
Individuals & interactions
over processes and tools
Working software
over comprehensive
documentation
Customer collaboration
over contract negotiation
Responding to change
over following a plan
A gile Tips
1. Define and Understand At All Levels
Though Waterfall is the methodology more commonly associated with
planning, understanding and defining work and project goals is no less
important in Agile.
When embarking on an Agile project, it is extremely important to identify a
product owner. This person should understand the projects big picture, know
how sprints fit together and act as the go between for the delivery teams and
upper management. Agile has a lot of moving pieces and someone needs to
understand how they all fit together.
Once a product owner is in place, they should take the lead on establishing
overall product goals with the delivery team and helping team members
understand the objectives driving those goals. This gives teams a clear idea
of what they are working toward, and why and will help them plan their own
roadmaps.
Throughout the project, there may be various business factors that effect
the delivery teams. The competitive landscape, regulatory issues, customer
satisfaction, service level agreements, stock price, missed sales forecasts
and other outside factors can force a team to adjust their sprint order and
reprioritize features. The ability of a team to manage change and match
shifting business goals is a major benefit of Agile. Understanding that changes
may (and most likely will) happen helps teams stay on their toes and move
quickly if a change does occur. If all members of the team understand the
overall project goals, adapting should be easy.
Regression Testing
3
At the end of each sprint, it is important to test that product against preexisting pieces. While the sprint may be thoroughly tested, it is possible for
this new release to adversely affect a previously completed component. Never
forget that in the end, all sprints are working toward one common goal a
successful, high quality product.
Load Testing
At what point will your applications performance begin to degrade? How
many concurrent users can it support? Where are the bottlenecks between
your code base, database, CDN and load balancers? Without answers to these
questions, your testing could be all for naught. Load testing the completed
end product is more important than load testing each sprint. If your software
cant hold up under stress, it doesnt matter how agile your methods are.
Security Testing
It is extremely important to do security testing not only during sprints, but
also on the overall product. You want to make sure hackers cant sneak in
through the gaps after the software has been stitched together. You also want
to be sure that data isnt leaking from some unaccounted-for area that didnt
make it into any of the sprints. Be particularly careful that adequate security
testing is done in the Agile world of less documentation.
4. Capturing
Data
Meaningful
-Elisabeth Hendrickson
Founder, Quality Tree
two categories. One: the organizations are trying to do more work than they
can handle with the approaches theyre using. Two: theyre not listening to
people that matter neither to their customers, nor to their own front-line
staff, many of whom are closest to the customers.
When your car is about to go off a cliff, its a weird time to be thinking about
gas mileage and drag coefficients; better to take the right control action
look out the window and steer or use the brake until youre back on course.
Focus on data that is helpful to several departments, further the efforts of fast
moving Agile teams and help produce better applications.
5. Common Concerns
Making such a radical shift can understandably be nerve-wrecking and
management is sure to have some questions and concerns. Here are a few
common concerns about Agile, and why you shouldnt be worried.
Lack of Planning
A large part of Waterfall development is spent planning. Switching to Agile
can leave teams feeling crunched for time or lost. As we discussed in the first
tip, though, agile isnt a free-for-all.
Planning in Agile is simply segmented. Once product goals are set, a team
picks a feature to work on and plans for that feature and that feature alone.
As the teams move through the project as a whole, they may identify aspects
that were inadvertently left out of planning in the first few sprints. The nature
of Agile means missteps affect only small portions of the project and
6
Lack of Documentation
A key component of Agile is doing away with unnecessary, clunky documentation.
This, however, does not mean getting rid of all documentation. Many teams
use index cards or a gridded whiteboard to represent sprint requirements,
goals, step order and to show what each team member is working on at a
given time. Documentation is simply leaner.
A sprint is not complete until all necessary product documentation is written.
This traditional documentation isnt forgotten or done away with, its just
completed in parts rather than at the end of an entire project.
Too often, however, daily Scrums become weekly meetings, which in turn
become monthly meetings. If meeting less often works for your team great!
But the Scrum model isnt effective if meetings are inconsistent, too long or
involve unnecessary information. It helps to appoint a Scrum Master who will
lead the meetings and ensure teams adhere to a regular schedule and time
limit.
9. Being
Burnout
Agile
Without
Theres no shame in
[hybrid methods] if
thats what works. When
youre going through a
transition from Waterfall
to Agile, that may be the
best thing as opposed to
a sudden lever-pull one
day where you show up
and your desk is next
to someone else with
no walls and theres a
stack of sticky notes and
markers on your chair
with an email to report to
your first standup in
30 minutes.
on the product. Outside testing options, like crowdsourced testing, can help
teams make the most of natural gaps. By leveraging a crowdsourced testing
solution, teams can deliver software for testing on Friday and receive results
by Monday morning, compressing the development cycle without adding
pressure to in-house staff. Crowdsourced testing is a better option than
traditional outsourcing because crowdsourced models offer more flexibility,
scalability and feedback that includes valuable real world metrics (some of
that focused, important data we were talking about earlier).
Before switching to Agile, take a moment to review current practices, flag the
major issues youre hoping to correct, study and fully understand how Agile
development works and objectively evaluate if Agile will help your company.
Take your time switching and be sure all the key players are on-board.
10
If you try Agile and it simply isnt working, revert to the old method. Remember,
its about embracing what works for your company, not adhering to a
development methodology for the name alone.
11
About Applause
Applause is leading the app quality revolution by enabling companies to deliver
digital experiences that win - from web to mobile to wearables and beyond.
By combining in-the-wild testing services, software tools and analytics,
Applause helps companies achieve the 360 app quality they need to thrive
in the modern apps economy. Thousands of companies including Google,
Fox, Amazon, Box, Concur and Runkeeper choose Applause to launch apps
that delight their users. Learn more at www.applause.com.
12