In Information Technology (IT) companies while working on the projects, one may find themselves coming directly in contact with a Business Analyst (BA) of the project. So, who is this BA and what is their importance in a project?
The simple definition of a BA is someone who analyzes an organization or business domain (real or hypothetical) and documents its business or processes or systems, along with assessing the business model or its integration with technology. Business Analyst helps in guiding businesses in improving processes, products, services and software through data analysis.
In a project, BA is the first person who gets assigned to work on building the requirements with the client. In the beginning, the client has an idea on which they want to iterate upon and this is where the BA comes into the picture. In conjunction with the client, BA initially works on either or all of the following –
- To-be process, e.g. data flow diagrams, flowcharts
- Data models, i.e. data requirements expressed as a documented data model of some sort
- Business case, a financial analysis containing shareholders’ risk and return
- Roadmap, a strategic plan
BA’s major task is to understand the business that a client has or intends to enter and get well-versed with the various nuances of that business. This helps BAs better understand the requirements of the project and relate them well in a use case. Going further, this knowledge is also shared with the developer of the project.
After the Business Requirements are chalked out, BA’s next task is to work on Functional Specification (FS) of the project which are derived from the Business Requirements. Herein, BA defines the business requirements in the form of Use cases which are helpful for the development and testing team. For the development team, this forms their baseline for project requirement as it chalks out all the happy flows and the exception flows in the project. For the testing team, the FS is also the baseline which derives their test cases for the project.
During the course of the project, BA constantly works as a bridge between the development/testing team and the client. When the team has any questions/queries related to feature development, BA is the go-to person for them to get clarifications. In most of the cases, the queries are answered by the BA, whereas in other cases, BA gets the answers to those from the client.
During testing, BA also plays a role in reviewing and approving the test cases to make sure all the scenarios are covered. They can sometimes also define the acceptance criteria for a test case scenario output.
For Project Management (PM) team, BA plays the role of defining the complexity of a feature so that the PM can gauge the time and resource needed for developing the feature and accordingly do their project planning.
In instances of onshore-offshore model, usually, the BA is always at onsite client location and here they become the face of the development team. They not only get requirements clarified with the client but sometimes also work on getting clarity from the client on ad-hoc queries related to such as – infrastructure, security, onboarding, access control, etc. BAs may not be any industry-specific as due to working on projects at a fairly high level of abstraction, BAs can switch between any and all industries.
To summarize, a BA can be called someone who paves the foundation of the project through their deep analysis and architectural skills. And, as the saying goes, if the foundation is strong the building (project in this context) is bound to be stronger.