“Life is about not knowing, having to change, taking the moment and making the best of it without knowing what’s going to happen next. Delicious ambiguity.”
—Gilda Radner, actress and comedienne (1946–1989)
Agile is here, and it's coming soon to an organization near you-if it's not already there. As a business analyst, are you ready to make the transition to this value-centered development approach? How will your role change? What will you do differently? What will you actually do as part of an agile team? What agile analysis practices might you adapt if you're working on a traditional (waterfall-style) project?
In short, how can you make yourself more valuable to your agile team and organization using your business analysis skills and abilities?
It's about the work, not the role
Keep in mind my bias: it's not about the job role or title you have, it's about the work. So when I use the term "agile business analyst," I mean anyone who is doing the work of requirements (business) analysis on an agile team.
Some agile teams may not have a team member who is the designated business analyst, or they may have a business analyst whose only role is business analysis and requirements-related work. A variety of people who have the skills may do the work of analysis, and it may be shared among team members. That is common in small projects or when the team members have rich business domain expertise along with close, trusting relationships with their business customers.
So if you are (or will be) doing the work of agile analysis, keep reading to find out how your life will change.
With agile, value comes from the customer
On agile projects, the customer has the responsibility-and the burden-to decide which items the delivery team will build and when, and to define each item's "doneness criteria" (when it is acceptable for release). In essence, the customer is responsible for product profitability. By understanding the product's market or business need and advocating for the voice of the (end) customer, the customer embodies the core mantra of agile teams: deliver value.
For the project to succeed, the customer must conduct a mix of strategic and tactical activities. Strategic activities include analyzing the market and business case, defining the product vision and roadmap, developing requirements, adjusting the product backlog, and determining delivery plans. The customer also conducts tactical activities such as specifying the items to be delivered in each iteration, determining when each item is complete, analyzing dependencies between items, and helping the team analyze requirements stories.
To fulfill both strategic and tactical activities on an agile project, the business customer needs product development experience, along with deep domain and product knowledge. Understanding the underlying technology also helps when making "techno business" decisions throughout product development.
With all these responsibilities, in some organizations, the business customer needs help with day-to-day tactical decision making. That's where you, as an agile business analyst, come in. On some agile teams, a BA who has deep domain knowledge (and perhaps has served in a business role) serves as the tactical customer (or, in a Scrum project, the "product owner") or splits those responsibilities with the business customer. By serving as the tactical, iteration-level customer, you free the senior business customer to be the team's strategic customer. You leverage your analysis skills to help your team deliver value, one iteration at a time. You ensure each delivery aligns to the overall strategy and goals.
What is a story?
In agile development, a story is a work item that needs to be completed to deliver the product. Stories are contained and tracked in the product backlog (the catalog of all the work) and are the basis for iteration planning and development.
A story usually describes a user requirement-something of value that a user needs to do. However, some agilists use the story metaphor for other technical or team-related work, such as delivering nonfunctional requirements, setting up servers, tuning the database, cleaning up bugs, building automated tests, or finding and setting up a team workspace.
A user story is a concise, sharply defined user requirement that briefly describes something valuable the user needs to accomplish. It is usually written in this format: "As a , I want to so that ."
For example, "As a book buyer, I want to read reviews about the book I am viewing so that I can decide whether I want to purchase it" or, "As a corporate librarian, I want to find quantity discount information so that I can compare the price to another supplier's."
A story is a placeholder in the backlog requiring further elaboration-when and if it will be consumed within an iteration. For example, to use a story for iteration planning and development, its conditions of satisfaction, or "doneness", must also be clearly understood.
What will change when you're on an agile team?
Processes, products, and relationships change on an agile team. How you plan the work, deliver the product, represent requirements, share knowledge, interact with your team and customer, manage changing requirements, and document requirements will be quite different from traditional, waterfall-style projects.
In short, you will be part of a team of highly collaborative colleagues with a furious focus on delivering value, negotiating value delivery in short cycles, and helping your business partners understand what they really need-not only up front but also as the product unfolds in small, usable chunks.
Business analysts must relinquish control of the requirements, the customer relationship, and the usual requirements documentation. Why? It's because on your agile team, you deliver working, valuable software every few weeks. And you (and your team and customer) don't know exactly what the end product will be-not until you start to build it, deliver it, and get feedback on it. That's when you learn what the need really is.
That's why I like to quote Gilda Radner's phrase "delicious ambiguity." An agile project is all about suspending control for as long as possible.
Even team roles can be ambiguous. Specifics may vary, but an agile team collaborates to deliver to a committed set of requirements. Each team member is willing, even eager, to do whatever it takes to make that happen, no matter what the official job responsibilities dictate.
It's likely that you will not be the only one to elicit, analyze, and specify requirements. The team is focused on delivering "shippable" software in short cycles (iterations), so your tasks may cross over to other activities that call on your skills, capacity, and interest. For example, you are likely to identify-if not also create and execute-user acceptance tests: hands-on validation. Your soft skills and understanding of requirements dependencies make you a good candidate to facilitate planning workshops to define the product roadmap and release plans.
As an agile business analyst, you're no longer shackled to large, complex requirements documentation and templates. Instead, you will influence your business partners and teams to rethink what kind of (and how much) documentation is needed. You may deliver documentation in small chunks, along with the small, useful chunks of requirements your team delivers in each iteration (often in the form of user stories). You might pitch in to develop lightweight product, user, or support documentation.
Your work is both tactical and strategic: you need to grasp the big view (the product vision, roadmap, and release plans) while maintaining a firm footing in the now (the current iteration). Thus you need the discipline and flexibility to operate in multiple modes (the "now" of the current iteration and the "later" of upcoming iterations).
Your work will be transparent. You will get better at estimating and working with your cross-functional teammates to reliably predict how much software your team can deliver in each iteration. The visibility of iteration planning, end-of-iteration demonstrations, and retrospectives permit no hiding. You will find greater mastery by being openly accountable to your customer, the team, and yourself.
Until next time
In the second part of this article, we'll take a close look at specific business analyst activities that differ in agile projects. We'll frame these tasks in the context of traditional requirements engineering, which involves setting the stage; developing (eliciting, analyzing, specifying and validating) requirements; and managing requirements (Gottesdiener, 2005). Meanwhile, please direct your questions to me at email@example.com.
There's never been a more exciting time to be a business analyst. Are you open to the challenge? Can you adapt your skills to your agile team's steady beat of short, value-driven cycles? Can you influence your traditional team to alter your analysis practices? Stay tuned.
The author would like to thank Phil Abernathy, Susan Block, Mary Gorman, Kamal Singh, Norman Stang, and Stephanie Weiss for their helpful review and feedback on a draft of this article.
Author: Ellen Gottesdiener, Principal Consultant, EBG Consulting, helps you get the right requirements so your projects start smart and deliver the right product at the right time. Ellen's company provides high value training, facilitation, and consulting services to agile and traditional teams. An agile coach and trainer with a passion about agile requirements, she works with large, complex products and helps teams elicit just enough requirements to achieve iteration and product goals.
Ellen's book Requirements by Collaboration: Workshops for Defining Needs describes how to use multiple models to elicit requirements in collaborative workshops. Her most recent book, The Software Requirements Memory Jogger is the "go-to" industry guide for requirements good practices. In addition to providing training and consulting services and coaching agile teams, Ellen speaks at and advises for industry conferences, writes articles, and serves on the Expert Review Board of the International Institute of Business Analysis (IIBA) Business Analysis Body of KnowledgeTM (BABOKTM).
You can subscribe to EBG Consulting's offers a free monthly eNewsletter "Success with Requirements" offering practical guidance and requirements-related news. When you sign up, you'll receive a free article on essentials for scoping your requirements. You can follow Ellen on Twitter or contact her via email.
Copyright © EBG Consulting, Inc., 2009