Here are three key aspects of how business analytics works differently in an Agile environment:
1. The Analyst Evolves to Become a Key Player in Helping Companies Avoid Costly Software Development Problems
There are many definitions of “software architecture,” but its ultimate point is to make sure that the development of the software product winds up satisfying the system’s requirements. Successful software products generally have solid architecture, and are capable of addressing all scalability attributes required to fulfill the business need.
When business analysts work on a traditional software project, they usually employ a traditional Waterfall methodology, and therefore are expected to detail all the requirements up front, making available all the information needed by the system architect to understand and support the business goals. Agile projects, on the other hand, emphasize a different, incremental delivery of required features. In working via increments, there is often an inherent lack of full visibility into the overall requirements, which can cause issues related to system behavior, performance, scalability, maintainability, or other crucial attributes. These issues then translate into costly reworkings in order to retrofit important capabilities that weren’t identified earlier in the process.
In order to avoid these problems, analysts dealing with Agile projects must work harder to make sure the high-level requirements for the release are properly identified early on. When working with Agile, there’s an inherent risk that the team will move too quickly into development and design before the critical aspects of the solution are sufficiently understood to support the right architecture decisions.
One of the best things about using Agile approaches is that they tend to minimize unnecessary planning and documentation, but the big challenge for an analyst is to learn how to effectively distinguish an analysis effort that is “unnecessary” from what’s critical, in order to avoid the risk of wrong architecture decisions that cannot be easily undone.
2. Analyst Skills Are Critical to Ensure the Right Kind of Features
As software is released incrementally over several iterations, it’s critical to choose the right mix of features that are both high-value and immediately useful. In theory, product owners, business stakeholders, and/or end-users should be able to make the correct decisions about the features that will deliver the most value in the next release.
As stakeholders prioritize features, the analyst needs to have the ability to step forward and help them use their best judgment to decide what features make up the best-quality release. It is essential that the right questions are asked and, in this way, the analyst can elicit the best answers and help the decision-makers understand not only what features will provide the highest value, but what additional capabilities should be included in the release to augment the primary features. One of the most valuable contributions of a BA in an Agile project: ensuring that a release incorporates all the functionality that would prove truly useful to the people who ultimately receive it.
3. Test Analysis and Design Skills Are Taking a More Prominent Role
Analysts working on Agile projects are generally most effective when they have experience creating quality acceptance tests that cover all dimensions of the quality of software produced in short release cycles.
In Agile shops, test analysis and design are essential components of the requirements analysis and specification process. As part of an Agile project team, the analyst must be able to work with various constituents: the product owner, developer, tester, as well as the UI designer to define effective acceptance tests for the user stories covered in each sprint or iteration.
- Solutions to Six Common Hurdles BAs Face
- Interview Questions for IT Business Analysts
- 3 Strong Graduate Degrees for Business Analysts