In-Class Group Exercises
A variety of demonstrations, large-group activities and small-group team exercises will refine and enhance your Agile business analysis skills. Working in small groups, you and your peers will identify, discuss and practice the tools and techniques your organization should be using to better define and communicate requirements for your Agile project. Specifically you will:
- Evaluate a variety of Agile "flavors"
- Review levels and types of requirements
- Define the roles of Agile project team members
- Practice defining personas
- Work as a team to discover and write user stories
- Review requirements elicitation and discovery methods
- Understand story decomposition and modeling with simple graphical methods
- Practice eliciting and validating information from project stakeholders
- Assess the importance and priority of product features
- Hone your problem identification, definition, and solving capabilities
- Experience effective business analysis through learning games and simulations
I. Agile Essentials
You've heard it all before: "Agile means developing software without any documentation"; "Agile means developers decide on a product's features"; "Agile is the same thing as scrum"; or possibly the most misleading concept of all: "Agile means we don't do business analysis any more and therefore we don't need BAs." Learn the truth about what Agile really is, what the variations and hybrids of Agile are, and how business analysis is critical to the success of your Agile projects.
- What is Agile?
- The Agile Manifesto and Guiding Principles
- A Variety of Agile Approaches
- Hybridizing Agile
- Which Agile is Right for You?
- Business Analysis for Agile Projects
- Practice Session: We’ll present a series of stakeholder meetings and examine the results. Once product vision, personas and user stories are defined, we’ll ask the following: “What’s missing? Can we develop from this?” Starting here, begin developing an understanding of Agile business analysis.
II. The Agile Business Analyst
As more and more projects are undertaken using Agile approaches, it's critical for a business analyst to understand the tools, techniques, skills and knowledge required to make those projects successful. In this section, we'll review some basic concepts of requirements development and revisit the underlying competencies that become more important as we move toward conversation and interaction and away from rigid process. We'll work to understand which techniques are best used on Agile projects and how to adapt them when needed. Finally, we'll evaluate the changes we need to make in our business analysis process to ensure our project's success.
- The Role of Business Analyst in Agile Projects
- BA Underlying Competencies
- Review of Requirements Basics
- It's Still About Asking the Right Questions
- Business Analysis Techniques: Some You Know and Some New Ones
- Mapping BA Techniques to Agile
- Guidelines for Agile Business Analysis
- Practice Session: The class will perform a question-generating exercise to clarify user stories from Scrum simulation. We’ll then discuss which techniques will elicit and clarify requirements and acceptance criteria for those stories.
III. The Product Vision
Successful projects begin with a clear definition of scope--the "big picture." Even Agile projects need some kind of a starting point--we may not know or see all of the details, but we should at least have a sense of the overall vision of a product or solution. This section explores how to begin an Agile project by identifying key project parameters and high-level components.
- A Framework for Assessing Business Needs and Value
- Defining the Product That Solves the Problem
- Building a Product Roadmap
- The Importancce of Release Planning
- Stakeholders, Actors and Personas
- Practice Session: Working with a hypothetical but realistic case project company, you and your team will put your analysis skills to the test as you conduct a guided assessment. You'll define and document the business environment, clearly describe the scope of the business, and perform a straightforward analysis of a proposed business opportunity. Finally, you'll assess and describe the project's stakeholders, actors and personas.
IV. The Voice of the Customer
The "customer" is the individual who gets value from the product we are building. In order to understand the required capabilities of the product, we need to consider the customer's goals and then decompose these goals into more and more detail. This decomposition eventually reveals low-level requirements and acceptance criteria for them. In this section, we'll explore this process of goal decomposition.
- Concepts--Goals, Themes and Epics
- User Stories
- Use Cases
- Story/Feature Mapping
- Story Decomposition
- Story Elaboration
- Defining Acceptance Criteria
- Storyboarding for Validation
- Practice Session: Working with our case project, you and your team will identify and develop the themes, epics and user stories that describe our customers' required capabilities. You'll use your best analysis skills to elicit additional requirements and acceptance criteria for your stories. Finally, your team will create a storyboard to validate what you think you already know.
V. Prioritizing for Business Value
Agile projects continuously assess and prioritize features and capabilities that add the most business value to customers at a particular point in time. Those that have the highest value are built and delivered in the current sprint while the remaining items are placed into the product backlog. In this section, we'll examine some concepts, tools and techniques for prioritizing capabilities and managing the backlog.
- What is a Product Backlog?
- Prioritizing Items for the Backlog
- The Importance of Sprint Planning
- Managing and Grooming the Backlog
- Practice Session: Working with your team, you'll evaluate and prioritize your user stories and create a sprint plan.
VI. Clarify with Examples: Moving Toward Behavior-Driven Development
Sometimes our customers themselves are unsure of what they really want or need a system to do for them. Here is a great opportunity for an Agile BA to use real examples to communicate how the product can serve the customer's need. In this section, we'll explore a simple yet effective technique to draw out additional requirements via examples.
- Understanding Behavior-Driven Development
- How Real Examples Bridge the Gap
- Using Analysis Models for Elaboration and Clarification
- The "Given/When/Then/And" Technique
- Practice Session: You and your team will clarify requirements for our case project using real examples.
VII. Collaboration and Continuous Improvement
Successful Agile projects depend on communication and collaboration among team members. So much of our work is done in face to face facilitated sessions where good communication, trust, and teamwork become increasingly important. As we continue to work together to deliver value to our customers, we also need to consider how we might maximize our own process so that future iterations or sprints go more smoothly.
- Creating a Safe Working Environment
- Using Collaborative Games
- The Importance of Stand-Ups and Sprint Reviews
- Retrospectives: Lessons Learned
- Toward Continuous Improvement
- Practice Session: Teams will participate in a fun and energizing game intended to demonstrate the importance of communication, collaboration and teamwork.