Why a software development project will benefit from a Business Analyst

DataArt
Analyst’s corner
Published in
6 min readNov 8, 2020

“People don’t want quarter-inch drill bits. They want quarter-inch holes,” the famous business adage goes. The same applies to a software system. Every software development project benefits from a person who understands the needs of potential users and translates them into technical terms. This person is in charge of business analysis.

Only one of many business stakeholders is looking for an AWS-hosted CRM system based on microservices architecture; the rest aim to improve business efficiency by reducing customer acquisition costs. Business stakeholders often plan high-level business goals and see software as just a means to an end. Technology-wise, the paths to these goals vary, and an optimal one is not always obvious. This is where solution design and business analysis come in handy. In this article, we’ll focus on the latter, explaining why software development benefits from a dedicated business analyst.

What to look for when hiring a Business Analyst

Core tasks of a Business Analyst

An experienced BA is a detective, group coach, architect, facilitator, and arbiter all in one. He/she turns chaos and uncertainty into a functional solution that meets business goals. The person in charge of business analysis in a team bridges the gap between business stakeholders and the engineers developing the software system. BA’s core tasks are aligning stakeholders’ visions about the strategic goals and drawing up technical requirements the software system should meet to achieve those goals. Along the process, a BA also builds healthy communication between all the parties involved.

Business analysts help new booming businesses formulate strategic goals. In contrast, existing businesses often seek optimizations and transformation strategies a BA offers. Depending on the nature and stage of the project, a BA designs large scale transformations, or plans continuous improvements and implements them on a small scale.

Key skills of a Business Analyst

It goes without saying that a BA has an all-encompassing understanding of the software development lifecycle, starting with ideation, requirements elicitation, solution scope definition, and solution design all the way to implementation, quality assurance, and maintenance. He/she is an expert in change management, knowledge management, and solution performance assessment and has a high-level understanding of quality assurance strategies, data management and analytics, and skills in using BI tools. A BA is also a change expert with an analytical mind, who always remains observant. Documentation and training materials management are often performed by business analysts, too.

In addition to all IT-related knowledge, a BA should also have expertise in their business domain and at least a high-level knowledge of adjacent industry sectors.

How Business Analysts create value in a team

Engaging a business analyst may seem a costly waste to someone. Yet, with no dedicated person in charge of business analysis, the dev team will need significantly more time to figure out system requirements before the proper functionality is implemented. From the engineering team’s perspective, the key benefit of a BA is that he/she eliminates uncertainties that inevitably appear along the development process. For the business stakeholders, the BA’s benefits are (at least) two-fold: saved costs & saved time.

ROI of a Business Analyst = (Costs of the Redo Works)/ BA Rate

Investing in business analysis pays off in the long run. The key here is that, with a BA onboard, the scope of a dev team’s work is precisely identified. The BA ensures that, from the very start, the software is designed to cover most business cases, with a further roadmap in mind, future-proofing the system.

Following the Pareto Principle, which suggests that 20% of effort accounts for 80% of the results, a person in charge of business analysis helps to identify the 20% of the functionality that covers 80% of use cases. This gives the system a faster TTM.

The scope of Business Analyst’s work during the project

Business analysis is performed at every stage of the software development life cycle, from project ideation to execution and maintenance.

Business analysis is required on every stage of a software project
Source: A Guide to the Business Analysis Body of Knowledge V.3

Here is, in the most general terms, the scope of a BA’s work on each stage.

Pre-project works (Discovery/Solution Design), or the phase when the BA identifies business goals and justifies the feasibility of the project. During this phase, a business analyst:

  • understands the current state of the business, its problems, and the opportunities it lacks
  • identifies project stakeholders
  • determines business objectives the software system will serve
  • chooses the most suitable approaches to solving business problems. Sometimes it is feasible to purchase an off-the-shelf software system; sometimes it is better to develop a custom one from scratch, or go with a hybrid approach, i.e. customizing the off-the-shelf application
  • defines, at a high level, the solution’s scope and success criteria.

The project works, or the phase when active development and testing are underway. The BA helps the right solution to emerge incrementally and iteratively. During this phase, a business analyst:

  • specifies and models requirements (the most popular format in the Agile project is epics, or major components of the future system) and writes user stories into them
  • ensures that detailed system requirements are clearly defined, well-documented, and approved by the stakeholders
  • validates requirements
  • manages requirements changes
  • prioritizes the requirements
  • defines and assesses design options
  • formulates acceptance criteria
  • oversees acceptance testing.

The post-project works, or the phase when the software solution has been deployed to production and is being used by stakeholders. The BA evaluates the value and benefits the solution brought to the business. During this phase, a business analyst:

  • evaluates how the solution helps the business achieve its strategic goals
  • processes feedback of the stakeholders who tried the solution
  • creates a roadmap for future improvements (if required)
  • updates the project knowledge base.

The software developed with a dedicated BA involved in every stage is bound to bring the utmost value to the stakeholders. If the business priorities pivot, the BA repeats this effort again (and again, if needed) before the engineering team sets to work.

Audit of Business Analysis as a service

Audit of business analysis processes is another activity a BA is in charge of. Though this service is recommended for projects at any stage, it proves most effective for ongoing projects, with established processes the team follows along with SDLC. Audits of business analysis processes may be one-off or regular (e.g., quarterly, semi-annual).

An audit of business analysis processes is usually helpful for a project that outgrew a Proof of Concept stage and became a strategic initiative.

Other projects that would benefit from such an audit have the following hallmarks: the team grows rapidly, communication between stakeholders becomes complicated, business processes do not scale. On the system requirements side, the team consistently suffers from:

  • the lack of clearly defined and approved requirements before a new sprint starts
  • constant changes in the initial requirements and/or their priorities
  • gaps and inconsistencies in the requirements.

The person in charge of the audit is usually a senior BA, who captures a 360° view of business analysis on a project and draws up a detailed plan for improvement. These are a few areas the BA would audit:

  • How business analyst in the given team plans, conducts and tracks their tasks
  • How business analyst defines solution requirements
  • How system requirements are documented and communicated to the dev and QA teams
  • How the project knowledge base is maintained
  • Which tools and process are applied along with the business analysis processes.

The audit culminates in a report with a step-by-step improvement plan. Oftentimes, an audit uncovers global issues, such as lack of project vision, lack of clearly formulated goals, lack of future roadmap, etc., as well as bottlenecks and gaps in business analysis and software engineering processes.

It is hard to spot an issue in a process if you are part of it. Often, project stakeholders become less perceptive to the known issues, which seem unsolvable or not worthy of being solved altogether. An audit of business processes — like any audit — offers a detached view on the areas of underperformance and strategies to improve these and suggests proven best practices to deliver even more value.

Business analysis is a core component of a software development process, which should not be omitted or cut corners on. Enrolling an experienced business analyst in a project team is a long-term investment, which always pays off. Contact us today, and we will prove this in practice.

The article was written by Denys Gobov and originally published at blog.dataart.com.

--

--

DataArt
Analyst’s corner

We design, develop & support unique software solutions. We write about Finance, Travel, Media, Music, Entertainment, Healthcare, Retail, Telecom, Gaming & more