It would be impossible to cover the entire spectrum of business analysis tools and techniques with anything short of an encyclopedia-sized volume. In this article, we will explore a subset of business analysis techniques that we have integrated into our digital consulting at DO OK, using a methodological toolbox developed over thousands of hours working with many different clients across a wide variety of industries.
Understanding Business Analysis in Software Development - Part 3
This article is part 3 in a five-part series about business analysis, business analytics tools and techniques.
The key result is to influence through this practice the success of your product and shorten time to market thanks well-chosen tools to support your software development efforts.
During every project, business analysis tools should be selected individually for each situation depending on a number of factors, including:
Project characteristics
Length of business analysis and its scope
Tools used by the client (product owner, project manager, etc.)
Any other factors the business analyst considers relevant
Business analysts use a wide variety of data analysis methodologies, physical and digital tools & techniques for approaching different business problems. Because of the potential data sources, business requirements, and other project management need change with each situation, there is no specific set of business analysis tools which applies to every project. Here are the top three business analysis techniques that we leverage.
The Business Model Canvas is a form of visualizing your business model on a single page, developed by Alexander Osterwalder based on his book, “The Business Model Ontology.” The exercise breaks down your business model systematically, so you can focus on different segments or all of them simultaneously, including:
Key partners
Key activities
Value proposition
Customer relationship
Customer segment
Key resource
Distribution channel
Cost structure
Revenue stream
We use the canvas for business analysis in a non-linear fashion, starting with a brain dump and filling out as many business segments as possible, then working through the remaining segments to close any gaps. The business model for your company or product should be considered a signpost for informing planning and innovations but is never set in stone. Be open to changing or adjusting the model as conditions change.
Event Storming is an active, adaptive workshopping format which uses post-it notes or online collaboration platform (i.e. Miro, Google Jamboard) to outline and investigate complex business processes, application features, software design, startup ecosystems, service dynamics and more. The basic premise which Event Storming is built on is to allow cross-discipline investigation and conversations about business spaces which might otherwise be limited by silos or specialization boundaries.
Since Event Storming is such a flexible technique, you can use it to model just about anything, from a complex software development framework to your daily commute. The two biggest advantages that we see for business analysis include:
Understanding business flow at a high level
Building event-driven architecture at a design level
The goal of event storming is not documentation, but promoting a shared understanding of a specific process to help identify opportunities and risks. You can think of it as a snapshot of a current process or architecture, which could change the second you walk out of the room.
The customer journey map is used for understanding the motivations of your customers or end users. This includes emotional values like their needs, hesitations, concerns, pain points and more. Companies are getting better and better at collecting customer data, but data can’t tell you much about the customer’s actual experience with the product, their challenges, successes or failures. From the process perspective, you need to go through four phases:
Scoping: here we define your persona and customer phases
Mapping actual customer experience: we identify touchpoints, conduct user research on customer experience, to finally determine pain points or point of frictions
Improving: thanks feedback and recap we can resolve identified problems
This is where the storytelling skills of a business analyst come into play. Using a combination of visual representation of data points, analysis of product features, and customer interviews, a BA can help you create an accurate picture of a realistic customer journey. You can visualize a customer’s needs and emotional curve as they interact with the product, in order to identify potential opportunities for improvement.
Contact our business analyst now!
In addition to the analytical techniques which make up the business analysis toolbox, another key part of the job is to identify and plan appropriate work methodologies for a given project. In modern software development, most design and engineering teams favor the Agile methodology. Under Agile, the software is continually built, tested and released, on a daily or even hourly basis. This eliminates many of the obstacles in traditional development (Waterfall methodology), in which certain conditions must be satisfied in order for development to proceed.
Let’s take a closer look at the difference between Waterfall and Agile development, and some of the methodological variants of Agile which have emerged in recent years.
Waterfall methodology is the traditional approach to software development. It is highly linear, and there are set sequences in every project which represent different stages of software development. Between each sequence, there is what is known as a “stage gate”, or a point at which the approval of clients or product owners is necessary to continue the design. Without passing the stage gate, development cannot proceed.
In waterfall methodology, project scopes are sacrosanct. When changes to the scope are required, then the development plan and budget must be re-verified, which can extend delivery time and incur additional costs. This might sound like a cumbersome way to design software, but for a company’s core product (think Microsoft Office or Adobe Photoshop), slowing down the process and requiring multiple approval stage-gates may be a better approach, to ensure that the end product matches the scope as closely as possible.
Agile methodology promotes continuous iteration of development and testing (sometimes called continuous integration or continuous delivery) throughout the entire software development lifecycle. Development and testing activities take place simultaneously, unlike the Waterfall model. There are various methods in the Agile approach, and this is by no means a complete list, but here are some of the most popular:
Kanban is a popular framework for implementing agile software development, requiring real-time communication between all team members of individual capacity and complete transparency of all work being done. Development tasks are represented visually on what is called a “Kanban board,” allowing team members to see the current status of all work items at any time. Kanban is similar to the Scrum method, but with the additional focus of reducing overall project delivery time. Kanban aims to continuously improve workflow, while Scrum dispatches working software through design sprints, or set intervals of time. We used Kanban approach in our COVID-19 phony news management system, and Hack the Crisis initiative in March 2020.
Source: 4geeks.io
Scrum is a framework for a coordinated group effort to produce complex items. Scrum does not provide processes or techniques for building specific products. Instead, it is a framework within which various different processes and techniques can be employed to build an application or product within defined periods of design sprints. “Requirements volatility” is the guiding principle of Scrum, meaning the recognition that the client or product owner can and will change their minds about the project, and that other unpredictable situations and challenges may arise, for which prediction and planning cannot be applied.
Source: 4geeks.io
The Feature Driven Development (FDD) method is meant for designing and building value-driven product features. In contrast to other Agile methods, FDD sets short periods of work, or sprints, that must be carried out independently for planning, designing, and building each feature. FDD allows engineering teams to develop small feature sets in 1-2 week sprints, ensuring process consistency for development of each feature, which enables projects to be scaled up and new team members added with minimal learning curves. While Scrum is the most widely used framework, alternative methodologies such as FDD, or tailored blends of Scrum, FDD, Lean, and other development models are becoming more popular. If you need to scale your Agile development to a long-term project, or a large and constantly changing team, consider using FDD. For example, we use FDD in our Cargo Asset Tracking Software project team for our customer from the Netherlands.
Source: Lucidchart.com
The Project Management Institute (PMI) conducts a yearly “Pulse of the Profession” study in which researchers survey executive leaders from across business, government and nonprofit organizations in order to identify the most important factors of achieving project success. According to the 2020 PMI survey, poor project performance results in an average of 11.4% of investment being wasted. Additionally, the study found that organizations which undervalue project management as a strategic competency for driving change reported that projects fail outright 67% of the time.
From the study:
“Pulse data show that when it comes to value delivery, organizations that are highly mature in their capabilities outperformed those that are not, across a number of key project metrics.”
Source: PMI.org
The top three factors which executive leaders surveyed for the study identified as important to achieve success in the future were:
Organizational agility (35%)
Investment in new technology (32%)
Securing relevant skills (31%)
Organizations which are able to look at their shared values and purpose with a critical eye, aren’t afraid to pivot to embrace new technology or a changing business environment, and hire people for roles with the most relevant, up-to-date skillsets, will have a strong lead over competitors with slower, less agile business and project development processes.
Need instant help with business analysis? Contact now!
Before we finish up, we wanted to mention one other tool that we’ve had a lot of success with: Gartner's Magic Quadrant. The Magic Quadrant is a graphical tool developed by Gartner to show the current map of best companies addressing one or another challenge. The competitive analysis uses customized evaluation criteria to classify technology providers’ ability to execute and the completeness of their vision against a view of the overall market. Here, a business can use it for choosing the right BA or data analysis software.
Source: Sisense.com
This was just a quick overview of some of the business analysis tools and techniques which have proven to be the most relevant to clients and projects that we have worked with over the years. Using business analysis, startup founders and established companies can leverage the power of data to better understand their products, their businesses, and themselves.
Keep your eyes open for our next article, Benefits of Business Analysis in Software Development, for more on how business analysis provides specific, measurable benefits for software development projects.