Business Analysis (BA) in Software Development: 7 Key Techniques
In this post, we'll talk about the role of business analysts in software development and the key business analysis tools and techniques in the agile environment that allow to speed up an IT project start.
BA role in software development is hard to overestimate. IT business analyst performs a wide range of functions.
- analyzes business needs, processes and environment specifics,
- researches competition, customers and market situation,
- studies business’s goals and stakeholders’ expectations,
- collects and documents the scope and requirements for the future system,
- offers feature prioritization to roll out the system as fast as possible,
- manages communication between stakeholders and design and engineering teams during project implementation,
- translates project changes, requirements and technical details to the parties throughout the whole agile development process,
- figures out how to present a project idea effectively.
This is a non-exclusive list. Traditionally, a person performing a business analyst role has a lot on the plate, including a long list of documents to prepare before the project kicks off. Usually, it takes weeks if not months to complete the analysis.
In agile development, however, a software business analyst needs to speed up and help roll out the project as soon as possible. Iterative project development implies that the teams and stakeholders get the results fast, test the first versions of a software product and quickly adapt to changing requirements.
Therefore, in these conditions, analysts should choose the most suitable business analysis methodology.
In general, any BA process requires the use of 3 common business analysis techniques.
Once we get to know our client and understand their business, we start the BA process with a stakeholder interview. This technique implies one or more Q&A sessions with the key decision-makers and domain experts.
At this stage, we can study the client’s major business goals, motivation and scope of the project, learn what stakeholders know about their users, competitors, market situation.
Additionally, interviews allow getting more detailed information about project aspects: deadlines, milestones, collaboration tools, workflow preferences. Moreover, stakeholders can shed light on the possible project constraints — technical, financial, organizational.
As a result, conducting one or more interviews enables a better understanding of the client’s goals, future system users, infrastructure and market environment, as well as technological capabilities.
Competitor audit is a good business analysis technique that helps us get more knowledge about the client’s domain, market and make a profound digital product analysis of existing solutions.
At this stage, we create a list of existing and potential competitors, both direct and indirect ones. For this purpose, we use the data from stakeholder interviews, online search and keyword analysis, “zoom-out” to related markets for similar solutions. Then, we define assessment criteria and perform the analysis of the competitors’ systems — consider main and domain-specific features, systems’ strengths and weaknesses, content, brand-related and technical aspects, user journeys.
The goal of a competitive analysis is not to copy any of the competitors’ concepts. On the contrary, after evaluating a wide range of existing solutions, we focus on the client’s unique proposition and help enhance the system’s strong points. Moreover, this business analysis technique allows to avoid the repetition of the others’ UX mistakes.
Domain knowledge gathering
Interviewing domain experts and studying a particular industry or area of business are important parts of software business analysis. At this stage, we perform an in-depth domain analysis using search, related articles and other domain-specific materials, consult with the stakeholders to get a better view of the client’s environment.
In particular, an IT business analyst studies functional domain specifics, for example, how things work in a certain field — finances, eCommerce, hospitality, etc. At the same time, a tech-savvy analyst gathers data on technical domain specifics — what technologies, frameworks, platforms, data solutions and other digital tools are typically used in a certain industry.
As a result, this information allows to better articulate requirements and choose relevant tools and services for future system development.
These are the basic techniques for business analysis in IT. However, there are many more techniques that help an IT analyst fulfill different goals and kick off the project as fast as possible. The use of these techniques generally depends on business analysis requirements and project objectives.
For improving existing digital systems
Systems may work not in the way they are expected to. If the goal of the project is to improve the user experience of a given website or app or enhance other user metrics, such as conversion, data analytics is one of the best software analysis techniques to use.
Modern web and mobile systems are often integrated with Google Analytics or similar tools able to collect and store valuable user interaction data. Analyzing this data is the right way to identify the faults in user experience and design, find unused or misused features, discover the dead ends in user journeys.
To get these insights, we implement software product analysis using different analytics tools and databases. Then, we extract this data, analyze it, study events, find patterns in user behavior and eventually use these insights to find the ways we can improve user experience and increase the system's usability. In other words, by interpreting real user interaction data, we can set up the requirements and prioritization for a system enhancement project.
We rely on the data from Google Analytics and databases to monitor the usage of different features and determine the strategy for custom high-load system development for Printique*. This data was extremely informative when we started to fully redesign the wizards on the website.
In particular, the data helped us identify rarely used features in the system and prioritize the redesign. We figured out which of the rarely used features were essential and planned their redesign to make sure we provide better visibility and usability for these features. When it comes to the least important features, we decided not to include them in the first-tier scope of work.
For process automation
Many companies use digital technologies to automate processes, from single operations such as taking orders or customer support to full-scale business automation. Certain BA techniques help visualize processes and therefore demonstrate how a new digital system could drive automation to a company.
Flow diagrams are widely used to show multi-scenario processes with simplified schemes and graphic elements. A complex diagram can illustrate different user journeys, data flows and the work of varied system functionality on one page.
On one side, this visualization helps business analysts confirm major features, determine priorities and identify possible issues and dead ends in processes. On the other side, flow diagrams are one of the easiest ways to translate complex system processes into an easy-to-understand scheme and communicate the system to stakeholders — decision-makers and development teams.
Research Track is a great example of the solution developed with the help of flow diagrams. This complex system has many user scenarios. In a nutshell, it collects data on field-specific topics from various sources and provides editors with these data batches. Editors then assess and index this data and create annotations for scholars and students.
In order to build the Research Track system, we had to recreate detailed flows of data extraction, processing and representation for end users. Flow diagrams were the best choice of a software BA tool for this purpose.
For personalizing systems to a certain target audience
Personalization is one of the best ways to ensure customer engagement and retainment. Therefore, more and more companies today diversify their online products and services for different target audiences, personalize interfaces to various users, and even build stand-out digital products for certain demographics. For this purpose, an IT business analyst performs an empathy map analysis.
This business analysis technique requires in-depth study of a certain target group. IT analysts take into consideration a wide range of factors — behavioral patterns, user needs, beliefs, motivations, issues — to work out the requirements for a future digital system.
Business analysts together with stakeholders map important user information across various sections:
- think and feel (describe customer’s fears, hopes, motivations, dreams, important things)
- see (describe customer’s aesthetic preferences, environment, vision)
- hear (describe customer’s feedback, opinion, opinions of the others that matter, other influencing factors)
- say and do (describe customer’s terminology, typical actions, behavior, give quotes)
- pains (obstacles, frustrations, challenges)
- gains (goals, needs, focus, success experience)
Image credit: Solutions IQ
Thus, empathy map creates the image of a certain persona. As a result, this business analysis technique allows to better understand target audience and customize system design and functionality to a specific customer segment.
Focus on Lymphoma is a bright example of how system usability and user satisfaction depend on prior analysis. Before building this app for cancer patients, we filled in an empathy map and found out that the majority of future users were relatively old and non-tech savvy mobile users.
Using this data, we designed a mobile app with highly intuitive elements, enlarged typography and very transparent user flows so that to address our target audience's needs. In this case, we went for a usability-first approach, sometimes at the expense of the latest design trends. As a result, the app won multiple design awards and was featured by Apple as one of the Best New Medical Apps on the Store.
Read: How to build an app for learning disabilities patients
For building a new digital product or service
New product development requires time and effort invested into business software analysis. Therefore, an IT analyst usually uses many different software business analysis techniques to collect the requirements and build a strategy for new system development.
However, a product vision board is a particularly important technique in this case. This technique is created specifically to communicate product vision between project stakeholders.
Product Vision Board
This business analysis technique is focused on creating a high-level description of the future product or service with the major goals in mind.
To build a product vision board, we combine the conceptual view of different product aspects:
- vision (major goal that describes why the product or service should be built in the first place)
- target group (high-level description of the related market and users or/and customers)
- needs (value proposition for the new product or service)
- product (several important features of the product that address the needs)
- business goals (business benefits from the new product or service)
Once filled in, a product vision board is a great tool to analyze different aspects of product vision, find challenges, estimate risks, determine priorities for the future product strategy and development. It is simple to communicate ideas and basic product concepts and can be modified on the go until all the risky assumptions are eliminated and a product vision is clear enough for further research.
Moreover, a product vision board can be extended to add other important aspects of business analysis in software development — competition, revenue streams, monetization and cost factors, channels.
Agile business analysis is an essential part of a software development cycle. It precedes and has a huge influence on the next step — UX design process.
You see that the toolkit for business analysis in software industry is impressive. There are many business analysis techniques, deliverables and instruments. Undoubtedly, some of them work better for certain project objectives than others.
Experienced IT business analysts are the ones who can select the optimal techniques and tools and thus drive efficiency and speed to a software development project.
We have over 11 years of experience in software design and development and regularly use these and other techniques and tools during research and discovery as well as post-launch iterations. If you are working on a new digital product or looking for opportunities to improve your system, we can help. We have skilled BA and UX experts, designers and engineers with a broad tech stack and domain competence. Contact us and tell us in a few words what you are looking and we will get back to you with our ideas right away.