We are all familiar with the role of a Business Analyst (BA) and are aware of his/her key responsibilities in software development. The International Institute of Business Analysis (IIBA), a nonprofit professional association, calls Business Analyst as “an agent of change”. It says, “Business Analysis is a disciplined approach for introducing and managing change to organizations, whether they are for-profit businesses, governments, or non-profits.”
When we think about the role of a BA, the main duties that come to our mind are:
• Requirements Gathering and Documentation
• Conveying those requirements to the team
• Being a conduit between the stakeholders and developers etc.
Though these are the core duties of a BA, he/she can help in various other areas like:
• Coordinating the pre-sales process
• Preparing user guides
• Coordination of UATs etc.
I’ve heard people saying that these are some simple tasks. But this opinion stems from their inadequate understanding of what actually goes inside the so-called ‘simple tasks’. It requires an inside-out comprehension of the business and its clients, the capacity to break down and request various perspectives of concerned stakeholders. The responsibility involves effectively encouraging the communication between the stakeholders and the development team about what to make.
Now, What About an Agile Business Analyst?
I wanted to bring some insights into the normal tasks a BA does in a traditional way of software development. When the world moved to an agile way of working which advocates cross-functional teams, BAs will obviously be confused as to where will they actually fit in. I would like to take you through some amazing ways a BA can add value in an agile software development scenario. In other words, what’s the significance of an Agile Business Analyst in an Agile software development environment.
There are debates as to if the role of a BA is that of a “Proxy Product Owner”, implying the role of helping the actual Product Owner, who is busy with a lot of other things like Product Management and ensuring profitability, etc. Let’s explore what are the best ways in which BA can help agile teams to stay creatively productive.
1. Contribute to Product Vision
The expertise of a BA could be leveraged at the product vision phase itself. The BA will be able to dig deep into the domain and specifics that are required for the product requirements like identifying the right stakeholders and timelines. The BA can act as a Business Guide to help the Product Owner to take the right decisions, BA can also step in whenever the Product Owner gets stuck because of time conflicts on other priorities.
2. Assist in Backlog Creation and Grooming
Business Analysts can help the Product Owner get stories from the models made during the needs and requirements analysis. This is practically equivalent to distinguishing the business necessities of the tasks and setting up the underlying extensions of the tasks. Backlog grooming can be a real pain for the PO. A Business Analyst can help the PO by doing a total analysis of the ‘as is’ and ‘to be’ and by advising the PO to set the right priorities to the backlog items.
By doing a thorough analysis, a BA can add the right amount of details to the user stories (like wireframes, flow diagrams, UI, etc.) before the sprint planning. This will enable the team to save a lot of time while discussing the stories in sprint planning. This will make it easy for the team to come up with the right estimation. A Business Analyst can also help with writing proper acceptance criteria and Definition of Done (DoD).
3. Act as a Subject Matter Expert
BA can be the go-to person in terms of all the queries regarding a particular story, there come the shoes of a subject matter expert (SME). BA can help clarify the doubts and concerns of the team. In instances of domain-specific help, BA can guide the team on the whys and hows.
4. Serve as the Knowledge Hub
Though agile doesn’t talk much about documentation, my take on it is that there has to be someone documenting things on the go. We cannot waste developers’ time for this. Here, a BA can help the team with the necessary documentation. This will be very handy when we shuffle team members after some sprints and when a new member is in. We all know the pain it takes to explain back and forth about the project/product. If there is a central hub that can distribute all this information for a newbie, it is the BA. If this is happening we can see a lot of productivity hike.
I have seen BAs contributing in a much broader way. This differs from organization to organization. I have seen BAs excelling as Scrum Masters since they have the business grip. It is easy for them to make sure that the teams’ outputs are aligned to the broader business strategy. BAs can be utilized to help scrum masters and product owners to run action-oriented retrospectives for team improvement.