Any software development project should start with an IT product discovery phase. This is the only way to succeed quickly and without extra expenses and challenges.
Because let's face it: our plans are far from always being implemented exactly according to our initial idea. The results are often lower than expected or completely different, and not in a good way. In the end, we're deeply disappointed and don't get the profit we hoped for.
Does it sound familiar? We guess the answer is yes. After all, most businessmen have encountered a similar problem during their careers at least once.
Fortunately, the situation can be easily corrected with the help of the discovery phase for startups. The main thing here is to find the right approach and not make a mistake when choosing an expert team.
Perhaps you have some questions? Say, what is a product discovery phase, to begin with? Why do you need it? How to initiate the entire process. What technology is used?
We're ready to satisfy your curiosity.
It also enables project teams to identify and address potential challenges and roadblocks early on in the development process, which can save time and resources in the long run. Moreover, involving stakeholders in the discovery phase can lead to better communication, collaboration, and shared understanding of project goals and objectives.
The key components of any discovery phase, should include market research, competitor analysis, creating user personas, and defining project requirements. By following these steps, developers can gain a better understanding of the target audience, identify user needs and requirements, and define the product's features and technical requirements.
By investing time and resources into the discovery phase, development teams can lay the foundation for a successful project, ensuring that the final product meets stakeholder expectations, is delivered on time and within budget, and ultimately achieves its intended goals and objectives.
What is a Discovery Phase?
So, what is the discovery phase of a project development life-cycle?
Strictly speaking, such a phase precedes the creation of digital platforms, whether it’s a website or an application; it’s aimed at identifying the basic requirements for the project, analyzing and adjusting businesses' goals, and making expert recommendations regarding the best way to implement the client’s idea. In fact, it’s an important step towards the future success and prosperity of a startup.
Okay, you have an app idea... But what to do next? If interested, follow the link.
Now you have the discovery phase definition, but why is this stage so crucial?
What is the purpose of the discovery phase?
You probably know firsthand that sometimes in the process of developing software you have to fix its functionality, add new features or abandon the ones already agreed upon... and so on through the list! And if the requirements are described a bit vaguely, and no one has a clear understanding of the final product, the project may come to a standstill.
It seems to be the time to think about engaging a business analyst. Do you agree? Although it’s even better to do so at the very beginning, and not when the situation is finally confused, and all the deadlines are missed.
Why is it happening?
Startup owners often think that other experts can fulfill the duties of business analysts: for example, a product manager, a salesperson, or even a QA engineer. But this is far from the truth!
Each role has its own areas of responsibility. And PM, forced to take on the management of project requirements, may miss something very important due to lack of time or adequate qualifications. As a result, there will be a misunderstanding of the key idea, its incorrect execution, unjustified time and money costs, and other problems which could have been avoided. When the vision and number of details of the product are not clear, project management can’t solve everything, misunderstandings and issues can occur. You should choose tactics including other project team members.
That's why you need to hire a discovery phase in software development. The team of the opening stage will be able to provide a competent solution and satisfy clients' and customers' requests and to give feedback on each of the phases.
However, first things first.
When do you especially need a product discovery phase?
Let's list the main points when the discovery process is not just desirable, but it's of paramount importance:
-
No complete idea of the final product. Yes, you're likely to know what you want to get, but, in fact, your idea often turns out to be a bit vague and elusive, and you don’t know where to start in order to put your concept into practice. In such a situation, the best solution is to perform the discovery phase at the start of the project.
-
Many responsible and interested people. If your project has several stakeholders, your requirements may begin to contradict each other. That’s a normal situation, which won’t cause problems if you hire business analysts. They’ll help you understand what is really important for the most effective project implementation.
-
Too complicated projects, another case where you need to initiate a discovery phase in software product development. And a complex project implies a lot of requirements for the final product, too saturated market, a lot of competitors, and so on.
-
Long-term projects. In nature, here we're talking about a variation of the previous item because any long-term project is complex and requires a special approach.
-
Success is crucial. Surely, successful goal attainment is always important, but there are times when too much is at stake and the slightest mistake may lead to bankruptcy.
What is discovered in the process?
At the start of the project, you'll be tormented by questions whose answers are important to achieve success. You'll ask them yourself again and again... But it would be more effective to address these questions to specialists in the project discovery phase area.
We're referring to such questions as the following:
And the above example shows only a small part of the questions needed to be answered as completely as possible.
By the way, speaking of getting answers... Isn't it time we move on to the specifics?
What activities are included in the project discovery phase?
All the steps during the Discovery phase will help you to determine the scope of work, time frame, and plan for completing the tasks of the project. It will also help ensure that the customer's expectations are satisfied and that he or she receives a quality software product developed for his or her business model needs.
Actually, there may be more activities than listed, we’ll name only 7 main ones:
-
Analysis of the company itself. Surely, you, as a business owner, are well aware of the structure and hierarchy of your own company, but you don't understand the basics of the discovery processes. Therefore, you'll have to share your knowledge about the organization’s nature with those who understand them. Such information will help the business analysts hired by you to perform the task in a much better way.
-
Stakeholder interviews. Let's say, the Discovery Phase team has figured the company structure out but this isn’t enough to proceed. It's also important to talk (in person or remotely, through Skype or Viber) with all interested parties, including CEOs, senior managers, and so on. Such interviews are aimed at compiling key performance indicators and selecting the necessary metrics by which it’ll be possible to determine whether the project has achieved its goal.
-
Examination of available corporate documentation. Each company has some non-classified documents or reports. Business analysts must carefully study them in order to “soak up” the corporation spirit and understand the essence of the activities of a particular organization. It’ll help in the future when developing the project.
-
Three-stage study:
-
Market research. It all starts with researching the market in which your company operates. Discovery Phase experts must study the market situation and determine its latest trends: only in this case, they'll be able to give you qualified advice on the efficient implementation of your project.
-
Competitive analysis. All in-demand projects have competitors. And your idea is unlikely to be an exception to the rule. So, it's vital to understand who they are, your rivals, what they offer the user, what their pros and cons are, and so on.
-
Analysis of the target audience. Your site or application will constantly interact with the user. And it is he, the user, who is going to bring you profit (whose format depends on the monetization model you’ve chosen). Therefore, you need to know…
-
Who is your average user?
-
What are his preferences and needs?
-
Which digital design would he prefer?
-
How is he going to interact with your web or mobile platform?
-
and so on!
-
-
-
Analysis of similar studies. Sometimes it’s useful to research existing studies: just to understand what other Discovery Phase specialists are providing the companies with. Instead of repeating what has already been done by someone, it’s better to direct energy to improve and adjust the present strategy.
-
"Think as a User" research. The expert team should analyze when, how, and under what circumstances the intended digital platform will be most in handy. What would make the user go to a specific site, download the application? Moreover, the study doesn't imply only theorizing. Sometimes one needs to visit several stores and talk with buyers-sellers (if we're speaking of an online store) or go to a few restaurants and discuss the problem with its staff and visitors (when it's about a website or mobile app focused on the restaurant business).
-
Work on the strategy. The main purpose of the discovery phase is a step-by-step formulation of a strategy of actions targeted at bringing the idea to life. What's more, the task should be performed with financial and time benefits in mind. In other words, it makes no sense to hire a team of business analysts if they don’t help you save money and time when developing software.
Tools we use for the discovery phase of a software project
Some of these tools (they’re also called artifacts) are being presented during the discovery process itself, some become part of the final presentation. So look through this project discovery checklist:
-
Mind Map. It’s an interaction diagram visualizing project needs and indicating roles, modules, and integrations. It helps to understand the scope and boundaries of the project, build internal relationships, and track inconsistencies and duplicate requirements.
-
User Story. User stories are a tool for transforming business requirements into functional ones. The user story explains the actions of the consumer when interacting with the site or application. The main idea is to determine what problem each feature solves.
-
BPMN Chart. BPMN demonstrates a higher level of detail of requirements and visualizes the way the platform works: where it receives data from, how the user comes to his goal, what the main scenarios of interaction with the system are, and so on.
-
Request-Response Model. The model is also being used during the discovery phase in software development. Here we're dealing with a document specifying the main requirements for integration with third-party services: what exactly the system being created should request from a certain service and what it gets in response.
-
Diagram of Non-functional Requirements. When forming the diagram in question, it's important to prioritize business-critical non-functional requirements and establish how they affect the complexity and cost of project development.
-
Design concept. It is a question of a conceptual idea that underlies the design of a future site or application.
-
Swot Analysis aimed at identifying the strengths and weaknesses of your project. SWOT stands for:
-
Strengths: your strengths, unique features, competitive advantages, and more;
-
Weaknesses: project weaknesses, potential vulnerabilities, etc .;
-
Opportunities: namely, what will help your project scale and grow effectively?;
-
Threats: threats able to harm your startup.
-
What will you get after the opening phase?
So, the work of business analysts is completed, and you’re ready to proceed to the software development stage... but what do you have at this point? Shortly put, what are project discovery phase deliverables?
-
List of functional requirements. It contains everything related to the operation and functionality of the application or site, including:
-
recommended features;
-
suitable third-party solutions;
-
necessary performance;
-
security tips;
-
and so on.
-
-
Detailed UI/UX concept. We're talking about the concept of the technical design of the web or mobile service. Such a concept ideally consists of 2 parts:
-
Wireframes. A rather rough sketch giving a preliminary idea of the future UI/UX infrastructure. It helps you understand which screens you need to include in your interactive prototype.
-
Clickable Interactive (or Invision) prototype. It may not look exactly like the final product, website, or mobile app, but it’s quite detailed and realistic and demonstrates all the necessary interactions. An Invision prototype helps you test the real user experience before starting development.
-
-
A coherent development & design plan. The plan is a phased scheme of actions required to find the best implementation of the software idea.
-
Top Management Plan. It’s not about the developers of the system, but about the project managers. The plan is designed to help them keep track of deadlines, budget limits, etc.
-
A rough estimate of the project implementation cost. The purpose is to give an understanding of what costs the project may require. Assessment involves a breakdown of the development process into stages and technologies: prototyping, UI/UX, backend & frontend, mobile platforms, testing, launching, etc.
How long does a typical discovery phase take and what experts are needed?
Now let's discuss the specialists who should work on the discovery process, and how much time their work takes (on average, of course). So…
-
Consultant, a specialist who is skilled in communication and able to get talking business representatives. His task is to build relationships with a client, precisely, with you, your company. Indeed, mutual understanding is the main condition of success.
-
Business analyst. A business analyst works to identify, analyze, and record the main project requirements. He thinks through the logic of the system and offers the optimal construction of relationships. In other words, he turns business goals into functional and non-functional requirements.
-
UI/UX expert working on a software design concept.
-
Architect or Technical Specialist. He analyzes the artifacts of the discovery phase discussed earlier in the article to make sure the designed business logic is technically feasible. In addition, he offers the best architectural solution.
-
A project manager who explains to company representatives how effective work on the project should be built and how responsibilities must be distributed among specialists.
In matter of the timing of the discovery phase in software development, it all depends on the specifics of the project. Usually, work lasts from a couple of weeks to a month.
Key benefits of a discovery phase
Why does your project need a discovery phase? We’ve already answered this question, at least partly, but let's go through it point-by-point again.
Benefits of a discovery phase include:
-
the ability to avoid numerous business risks at the start;
-
elicitation of requirements and conditions to meet the desired launch date;
-
adaptation of the project to the company's budget;
-
wise planning based on real facts of expert research;
-
formation of closed business processes;
-
efficient use of time, human and financial resources;
-
the ability to immediately test the product on end-users;
-
optimization and even reduction of development costs;
-
establishing a balance between the business value of the client, market demand and the interests of the end users of the product;
-
an additional advantage for the client is that having received a clear technical description of the project management stages, a work plan, and eliminating budget overruns as a result of the project analysis, it will be easier for him to obtain financing from potential investors.
How Much Does it Cost to Start the Discovery Phase?
The main goal of the development estimate is to give an understanding of what costs the implementation of the current vision of the system will require.
-
hours to create;
-
participants: analysts and developers. Designer and tester if necessary. Controlled by the project manager and agreed upon by the technical specialist;
-
requirement: Required artifact.
An estimate involves different technologies: backend, frontend, mobile, testing, analytics, and design. Each technology is evaluated by a specialist. Therefore, the appropriate specialist is responsible for evaluating his part.
It may seem that discovery increases the complexity and cost of the entire project. But in fact, it has become cheaper and more manageable. You can take out part of the analytics work from development and transfer it to discovery.
If you look at discovery through the eyes of a client, then the discovery phase helps:
-
include the expected development time and budget in the requirements in order to adapt the project to the client's capabilities;
-
It is easier to budget and plan because post-design development evaluation is based on facts, not pre-sales fantasies.
-
formulate a closed business process;
-
immediately test end users and collect the first feedback.
A positive side effect of discovery is that the client and the contractor come to a common understanding of the system being developed and establish contact, which is so important in the next stages of work.
The Project Discovery Phase Checklist
Here at Agilie we have prepared the checklist with the list of Discovery phase delivery elements.
It will help you to be on the same page with your contractor and verify the results of the Discovery stage.
Summary
Now you see how a product discovery phase can help your business. We'll just add that choosing an expert team should be based on the evaluation of the experience and qualifications of its members. The ideal solution is if the company you hire is ready to provide a full range of services, including the creation of the digital system itself.