Agile Business Analysis in Flow: The Work of the Agile Analyst (Part 2)
In Part 1 of “Business Analysis in Flow – The Work of the Agile Analyst ,” I talked about the new skills and attitudes business analysts need to bring to agile development. When your organization adopts this value-centered approach, you need to have, as I wrote, “a tolerance for ambiguity along with a concurrent drive for specificity and closure.”
Now it’s time to talk specifics. What exactly do BAs do in agile development? How will your activities differ from those of traditional development? Let’s take a look at agile business analysis from the perspective of the activities that make up requirements development and management, comparing traditional with agile analysis.
Setting the stage: Requirements planning activities
To set the stage for requirements, the team strives to create a shared understanding of the product by all the stakeholders.
Traditional Analysis | Agile Analysis Adaptation |
Attend project chartering sessions to define a vision, glossary, requirements risks, and product stakeholders. |
|
Review and modify a list of tasks, time, and delivery dates in a work breakdown structure plan developed by the project manager. |
|
Generate a SWAG (“S#*&-Wild-Ass-Guess”) estimate of time, effort, or cost for each requirement in the specification or user requirements document. |
|
Requirements elicitation activities
During requirements elicitation, the team identifies the sources of requirements and then discovers, derives, evokes, and elicits requirements from those sources.
Traditional Analysis | Agile Analysis Adaptation |
Plan how to elicit requirements using a variety of techniques. |
|
Plan, design, and facilitate requirements workshops over weeks (or months). |
|
Requirements analysis activities
During analysis, the team seeks to understand and define requirements so that stakeholders can prioritize their needs and decide which requirements to build.
Traditional Analysis | Agile Analysis Adaptation |
Define the scope up front by using a set of requirements models as the basis for detailed modeling. |
|
Develop analysis models for the entire set of requirements that are in scope. |
|
Ask the customer to prioritize requirements using a ranking scheme. If the customer is not available, do the ranking yourself. |
|
Requirements specification activities
Specification involves refining and organizing requirements into documentation (typically a software requirements specification). This includes the entire set of functional and nonfunctional requirements to be transformed into design, code, and tests.
Traditional Analysis | Agile Analysis Adaptation |
Write a requirements specification. |
|
Requirements validation activities
During validation, the team assesses whether the product satisfies user needs and conforms to the requirements.
Traditional Analysis | Agile Analysis Adaptation |
Set up and run meetings to review and sign off on requirements documents, and help customers run acceptance tests after the entire product’s code has been created. |
|
Communicate with developers or testers (or respond to their e-mails and calls) to explain information in the requirements document; attend or run formal requirements review meetings. |
|
Help testers create user acceptance tests, or run those tests, after the entire product has been designed, coded, and unit/system/integration tested. |
|
Requirements management activities
Requirements management involves monitoring the status of requirements and controlling changes to the requirements baseline (“a point-in-time view of the requirements that have been reviewed and agreed upon to serve as the basis for further development,” Gottesdiener 2005).
Traditional Analysis | Agile Analysis Adaptation |
Establish the requirements baseline, document change control processes, and generate requirements trace matrices. |
|
Attend or schedule change control meetings. |
|
Learning: The heart of agile success
A mantra for agile teams is “inspect and adapt.” This means regularly checking on the delivered product and the processes used. Continuous improvement (called “kaizen” in lean approaches) is essential to agile success. How do you inspect and adapt your business analysis work to learn and develop?
Traditional Analysis | Agile Analysis Adaptation |
|
|
The new world of agile analysis
So there you have it – a bird’s-eye view of how business analysts operate and add value in agile projects. As you can see, this approach calls on you to stretch your analysis muscles.
As an agile analyst, you are deeply committed to delivering business value and building the right product as soon as possible. As a member of an agile team, you are less concerned with roles and job boundaries, and more concerned with delivering as a team.
You experience the rhythm of successive elaboration and product delivery. You thrive on feedback and small, continual improvements. What’s more, you have an intense need to self-reflect, communicate transparently, improve your skills and abilities, and serve your team and customer. You thrive on the energy and joy of being in rhythm with an agile team.
Thanks!
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.
Copyright © EBG Consulting, Inc., 2009
(This article first appeared in Modern Analyst, May 2009)
Don’t forget to leave your comments below.
Ellen Gottesdiener is the Principal Consultant and Founder of EBG Consulting, Inc. She helps business and technical teams collaborate to define and deliver the product customers value and need. Author of two acclaimed books Requirements by Collaboration and The Software Requirements Memory Jogger, Ellen works with global clients and speaks at industry conferences. As an agile coach, trainer, and contributor to the agile IIBA BABOKTM agile extension, Ellen is passionate about sharing the value of agile practices for analysis, and the discipline of analysis for agile value delivery. Learn more from her articles, tweets and blog, free eNewsletter and find variety of useful practitioner resources on EBG’s web site.
References
Gottesdiener, Ellen. The Software Requirements Memory Jogger: A Pocket Guide to Help Software and Business Teams Develop and Manage Requirements. GOAL/QPC, 2005.