spot spot
Discovery stage: how it helps start software project successfully | C.S.S.

Discovery stage: how it helps start software project successfully | C.S.S.

Discovery stage: how it helps start software project successfully | C.S.S.
Andrii Kuranov

Author:

Andrii Kuranov

Content Manager

Category: Сustom Software Solutions
5 min read

You have an idea. You decided to make it a reality. You have found the best software development company in the world with an excellent portfolio, rich experience and expertise in your industry. You visited its website and left your contacts. You go to bed knowing that tomorrow the company representatives will contact you. You close your eyes, but you can't sleep. You have questions swarming in your head, and the most important one is "What happens next?" In fact, the fear of uncertainty is absolutely normal, but that doesn't make it any less unpleasant. Not to worry! In this article, we will help you to get rid of this feeling once and for all by providing you with a detailed insight what Discovery phase means and why it is essential in our Custom Software Solution. Meet Angelina Tarashevska, Head of Project Management Office, who will accompany us on this journey.

In software development, the Discovery stage plays a particularly important role, as it is the initial stage that determines the whole project’s development process. At this stage the transformation of an idea into a product begins, and the price of an error is especially high, but all the risks can be leveled with the help of expertise and complex analytical work. Let's make an ultimate breakdown of this stage to understand what is going on there!

 

What is a Discovery stage?

 

Discovery is a phase of the software development process where a company gets acquainted with the ideas, goals, needs and requirements of a potential client. Having analyzed the client's business and studied their competitors, based on the received data, the software development company drafts a proposal with rough estimates, budget, and necessary resources, as well as a model of cooperation and development strategy. Be aware of the fact that at the beginning of this stage the company (i.e. us) should suggest and consequently sign various types of NDAs (non-disclosure agreement, intellectual property protection and non-disclosure of trade secrets).

This phase consists of:

Planning

The substep at which we establish contact with potential clients and get familiar with their needs, analyze their business and make a product creation strategy based on an assessment of the potential client's business goals and requirements.

Discovery itself

The substep at which we get feedback from the clients on the planning, take into account their suggestions, and finally approve the strategy for the creation and development of the future IT product.

But let the pro answer this question. Angelina, here you go!

Q: What is happening at this stage? What is the starting and ending point and what happens between them?

A: It all starts with a potential client coming to us, thinking of ordering a solution. The goal of the Discovery stage is to understand what exactly he or she needs and how to do it best. That’s what actually happens. Once a business analyst is assigned, they develop a plan for this phase. The very first step of the said plan is to investigate and systematize the information that was brought by the business development manager and highlight the points that need clarification and further discussion. Consequently, the analyst can draw up a plan of communication where it's specified when and how we will communicate with stakeholders to acquire the needed information. When all data is collected and the picture is getting clearer, the business analyst creates a PBS (Product breakdown structure) The purpose of the PBS is to outline the deliverables to be developed and, consequently, do a rough estimation of the project.

Head of PMO is a kind of a mastermind constantly overseeing all projects at all stages. However, there are other actors in this phase. Let's take a look at them.

  • Business development manager - the first person the client talks to. Their tasks include establishing initial cooperation with the client, finding points of contact between the company's services and the client's requirements, collecting initial requirements for the business analyst, and accompanying the client throughout the whole project (unless an account manager takes the helm). Also business development manager is responsible for signing an NDA and other important documents.
  • Business analyst - the leading role at this stage. The responsibilities of the business analyst include identifying the customer's business objectives, thinking through solution concepts and forming requirements. Also business analyst performs formalization and specification of requirements along with a general analysis of the market and the client's competitors to determine recommendations for the product.
  • System architect - a key technical specialist who is responsible for shaping the architecture of future software. At the Discovery stage he advises all project participants on the technical part and helps to provide an approximate estimate of the terms and cost.

 

How do we perform a discovery stage?

 

The Discovery stage at MassMedia Group consists of many points and below we will show them all one by one.

 

.1 Getting information from business development manager

 

So, the idea owner contacts our company by phone, Skype or email, gets in touch with our business development manager and says that they need software. During the initial conversation, the business development manager collects basic information about him and his potential project: name, country, industry, the main idea of the project, and contact information of the client.

 

.2 Formation of the project brief

 

Then the business development manager forms a brief on the project and includes all the received information in a beautifully structured form. The brief is handed over to the business analyst, who will further collect the requirements, needs, additional information, and form the product concept.

angelina
Angelina Tarashevska
“A comprehensive analytical work is carried out. Some information is transmitted at the start by business development managers, other is collected by a business analysts, part of the information is obtained during meetings with the client. When gathering requirements, a business analyst must first assess how much information he has and what is missing and yet to be discovered. Then he performs analysis on competitors, the market, and the processes that take place on the client's side, to be sure that the software will really cover some of the needs of his business.” - Head of PMO

.3 Holding a meeting

 

After all the above, a meeting is held with the client. The following mandatory elements are included:

  • receiving information from the client on all questions;
  • requesting documents, screenshots, sample reports, job descriptions, etc. (if necessary);
  • the report of how the work will be carried out;
  • agreement with the client on the next rally, establishing a convenient information channel and time for communication.

Q: How long does this stage usually take? How many meetings are usually held from the beginning to the end?

Angelina: This is strictly individual for each project. On average, it takes from a week to a month.

A few more words on proper scheduling, planning, and communication with a client from Angelina.

.4 The concept of the product and its framework

 

So, a business analyst with a brief in his hand starts searching for information. He, as mentioned above, analyzes similar applications, examines the market for such applications, compares it with the information obtained during the previous steps, and assigns meetings with the client, during which some details can be clarified that otherwise would not be available. In the process of all this, the business analyst fills out a document, while transferring some information from brief. The document contains the following elements:

  • basic information about the clients (information received from the business development manager);
  • their needs and problems;
  • basic requirements and vision of the end product;
  • information about the existing system and its gaps;
  • assumptions and limitations;
  • market and business analysis;
  • stakeholder identification;
  • identification of risks.

Let’s take a closer look at every item above:

 

.4.1 Basic information about the client

The main information from the client and data that is not included in the PBS, but is essential for understanding the project. This includes the client's name, country, contact info and client details that are important.

Needs and problems

The client's needs have a description of the main goal he wants to achieve or the problems to be leveled off. In this case, the primary goal can be divided into smaller tasks to be achieved.

It is also necessary to make sure that the goal set is realistic and really helps to solve the problem.

Basic requirements and vision of the end product

Here it is worth specifying what kind of result the client expects to get and what are his requirements and vision of the end product. Determination of product features and properties that require additional attention.

The information on existing system and processes

Determining how the existing IT infrastructure and business processes work and identifying gaps in it, namely their list, why they arise, what is the best way to overcome them.

Assumptions and limitations

Here it is necessary to determine what are the limitations on the part of the current system or the client (time, budget, technology, wishes).

Market and scope analysis

Research of the market, its specifics, legislative restrictions, major market leaders and players.

Identification of stakeholders

Various information about stakeholders. This item includes:

  • identification of stakeholders or their groups;
  • identification of their impact;
  • identification of their level of interest;
  • figuring out whether interests of individual users or groups do not conflict with each other;
  • identification of who makes the final decision;
  • identification of the need for reporting, its volume and frequency.

Identification of risks

Here business analyst begins to identify the main risk groups, the possibility of their occurrence and ways to overcome or reduce them. Sometimes a rating system for risks is formed. Worth noting, that identification of risks also continues at subsequent substeps.

 

.4.2 Identification of users

At this point, it is necessary to determine

  • user groups;
  • their basic requirements;
  • their functional responsibilities.

.5 PBS Formation

 

angelina
Angelina Tarashevska
“In essence, PBS is a graphic representation of the features implementation order. In fact, you're drawing the deliverables that the client should get. You need it to understand what's being developed. You can write 40 pages of text, or you can quickly depict what will be done and show the client: here, it will all be like this and this. It can be done as a tree, a diagram, we've settled on a table, for example.” - Head of PMO

Based on the existing information, the PBS (Product breakdown structure) template is filled in and there are information gaps that need to be clarified with the client. Questions for specification of the initial information can be generated both from BA and developers who carry out an estimation according to PBS.

Let’s illustrate what PBS is by the example of a barbecue party :)

pbs-representation

As you can see, large features are split into smaller parts - deliverables. In this way, a clear representation of the entire process is ultimately achieved.

 

.6 Formation of clarifying questions and identifying the need to obtain documents

 

Further business analytics should form a number of clarifying questions. Also BA has to identify the need to obtain documents, screenshots, sample reports, job descriptions, etc.

Q: Has it ever happened that there was no technical possibility to implement the client's idea? What should one do in this case?

Angelina: It happens sometimes. First of all, you have to clarify why the client wants this solution at all. Moreover, we are preparing a PoC to determine both the physical feasibility of the idea. Then you should find a compromise or alternative. Otherwise, you can always discuss an issue like this with a client and find how to implement it in another way.

All in all, a final meeting is held where we show our work, PBS, approximate budget and project duration, show the roadmap for the prototyping stage, clarify if everything is alright , and if so - sign a contract. To sum up, the importance of the Discovery stage should not be underestimated. It is directly determined by the extent to which the team and the client are committed to it. Here in MassMedia Group, we are used to provide a maximum commitment and much more.

 

What will you get in cooperation with MassMedia Group at this stage?

 

  • A full-fledged technical partner that explores the business needs of a potential client, its market and competitors, and offers the best solution based on its own expertise. At the same time, we guarantee security, transparency and reliability of cooperation.
  • Getting a "personal IT consulting service" - advice on planning, defining needs, solutions, contract, flow, support during working hours and when needed a few hours after.
  • High-quality level of communication - answers to operational questions, collection of feedback, technical advice, during working hours and when needed a few hours afterwards.
  • Customer service - attitude towards the client as a partner, prompt response to client's questions.
  • Monitoring of the requirements process and reliability of cooperation.
  • Taking into account the client's wishes and comments when determining the requirements through CSI collection and analysis.

***

Remember, this stage can be the beginning of another cool success story. That this is where an abstract idea begins to take shape on the way to becoming something truly meaningful. The main thing is to find professionals that will be deeply committed starting from this stage and up to the grand finale. And then Design and Prototyping stage takes part. Read about it in our next article!

Frequently Asked Questions

What is a Discovery stage?

Answer:

Discovery is a phase of the software development process where a company gets acquainted with the ideas, goals, needs and requirements of a potential client. Having analyzed the client's business and studied their competitors. Based on the received data, the software development company drafts a proposal with rough estimates, budget, and necessary resources, as well as a model of cooperation and development strategy.

Who is involved in Discovery stage?

Answer:

Business development manager - the first person the client talks to. Their tasks include establishing initial cooperation with the client, finding points of contact between the company's services and the client's requirements. Business analyst - the leading role at this stage. The responsibilities of the business analyst include identifying the customer's business objectives, thinking through solution concepts and forming requirements. System architect - a key technical specialist who is responsible for shaping the architecture of future software.

What is the main objective of Discovery stage?

Answer:

When all data is collected and the picture is getting clearer, the business analyst creates a PBS (Product breakdown structure) The purpose of the PBS is to outline the deliverables to be developed and, consequently, do a rough estimation of the project.

What is the final point of Discovery stage?

Answer:

All in all, a final meeting is held where we show our work, PBS, approximate budget and project duration, show the roadmap for the prototyping stage, clarify if everything is alright , and if so - sign a contract.