A Business Analyst is one of the most important team members on both Waterfall and Agile projects. Software developers need structured, detailed, small, feasible, testable, and clear tasks. A Business Analyst writes requirements for developers in a way they actually need them.
Main tasks and responsibilities
In a nutshell, Business Analysts identify customer business problems and find the most effective technical solutions. To do this, they should have knowledge in the subject area or investigate the domain from both technical and business sides.
Although stages of Business Analyst activity could be a bit different on Waterfall and Agile projects, they could be described as follows:
- Identify customers’ needs, understand the business problem they want to solve. Communicate with the client to clarify any questions about the product that should be developed.
- Transform the business idea into technical requirements for the future product. Different techniques of business analysis can be used: business process models, diagrams and schemes, user interface prototypes, workshops as well as brainstorming with the software development team. Describe each technical requirement as use cases or Agile user stories and wrap them up into SRS (software requirements specification). Validate requirements with both software engeneering team and Product Owner.
The range of tasks can be described in simple words: working with requirements.
A Business Analyst role on Agile projects
There is an opinion that a Business Analyst is not necessary for Agile projects.
This is true for the Product Owners who are passionate, patient, and can speak with developers in the same ‘language’.
In fact, most of the Product Owners don’t have the patience and time to communicate with the software development outsourcing team morning to evening and Monday to Friday and define “acceptance criteria” and “definition of done” for each user story.
As a result, a Business Analyst is a must on most of the Agile projects. They are often called ‘proxy Product Owners’ which means that Business Analysts are bridging the gap between the team and the Product Owner on the client-side.
Main duties of a Business Analyst
- Analysis of a customer’s business needs;
- Communication with stakeholders, developers, QA and end-users if necessary.
- Software requirements analysis (different methodologies and notations could be used - wireframes, surveys, brainstorming, traceability matrices, analysis of existing documentation and competitors);
- Problem domain analysis and improvement suggestions;
- Drawing up requirements documents;
- Requirements formalization (separation of business, user, functional and non-functional requirements as well as business rules, assumptions, and limitations);
- Requirements management (processing of change requests, analysis of risks, and description of the impact on existing requirements);
- Requirements transmission between the developers and the client.
A portrait of a good Business Analyst
A good Business Analyst is a communicative person who has good English, a team player who can understand the actual needs of the business and the domain, and can write clear and unambiguous requirements.
Analytical thinking and problem-solving skills are crucial. It is also important to be a hard-working, honest and conscientious team member to become a good Business Analyst. And finally, a person in this position should have an agile mind to quickly adapt to any project.
The main advantage of Business Analyst is the possibility to fathom the essence: to understand how it’s arranged, which parts relate and interact with each other and then convey difficult things with simple, but useful models and visualizations.
Business Analysts are fond of beautiful problem-solving plans which are logical, simple and scalable solutions for difficult issues.
Business Analysts often need to explore large amounts of information in a short time. Besides working on their own projects, they need to feel the pulse of new methodologies and study basic principles of new software platforms, mobile applications, and web services.
A typical working day of a Business Analyst
- A strong coffee! :)
- Analysing Email correspondence;
- Daily stand-up meeting with the software project team including Product Owner;
- Working with the analysis tools: charts, diagrams, models and prototypes. In Belitsoft, we use Lucidchart and Draw.io.
- Working with wireframing and design tools. In Belitsoft, we love Axure RP, Figma and Balsamiq.
- Working with the requirements: collection, writing of requirements specification; In Belitsoft, we love Jira & Confluence.
- Developers and QA consultation;
- Learning something new.
Although bringing good ideas into the project could be limited due to terms and budget, it’s the Business Analyst who often suggests the most reasonable and scalable solution.