This article has been updated to reflect our latest changes to workflow. We regularly reconsider our processes to work effectively and build products faster without losing quality.
Discovery Phase in Software Development and How It Makes Your Product Better
It’s barely possible to roll out a successful app or website without careful planning. There are two reasons for this: software development is becoming more complex over the years, while end-users expect a world-class experience.
With this in mind, we’ve been polishing our software development discovery phase for years. With its help, we're able to implement your product vision, create software that helps you compete on the market successfully, and deliver quality products within a set timeframe.
This article covers the software discovery process in general and explains how it works at Cleveroad.
Here’s what we’re going to talk about:
Table of contents
What Is a Discovery Phase in Software Development?
The discovery phase of a software project is a complex process of collecting and organizing project information. It takes place before product development itself.
From a business perspective, it helps to prioritize features, determine target audiences, and finalize requirements.
From a development perspective, it helps to collect tech requirements and draw up the detailed specification along with a clear development plan. Clients and developers might have different understandings of how one feature should work and be implemented from the tech side. Specification helps to avoid these problems.
Put simply, the software discovery phase helps to build an informational skeleton around a bare concept and figure out the user needs to avoid potential time and monetary losses.
Who’s involved in this process?
- Company’s representative
- Project Manager
- UI/UX designer
- QA engineer
What do you get at the end?
These two steps are included in the phase by default:
- Project specification
We perform analyses below at your request and at additional cost:
- Lean canvas
- Competitive analysis
We’re going to take a closer look at each of those points a bit later.
Components of discovery phase
The Main Steps During This Phase:
- Define business goals.
- Explore competition on the market.
- Conduct user research.
- Identify the feature set.
- Document project requirements.
- Craft a customer journey.
- Create wireframes for the project.
- Approve every milestone with you.
- Get approval from you to move on to the product development.
Why Is Software Discovery Process Necessary?
To start off, the discovery phase in software development defines all obstacles that may appear. Our main goal here is to identify possible risks, mitigate them, and reduce the final cost. Without project discovery, there are too many unknowns that may impact the development time and price.
The point is that a software development company like Cleveroad or any other has to clearly understand every aspect of the project they’re going to work on. Planning is the only way to collect and analyze requirements before development, which saves a ton of time in the future.
Check out this short guide to learn how to choose tech partners from Ukraine and verify their reliability.
During the software discovery phase, our business analyst will hold a series of meetings with you to collect and document the required information. As a result, the entire development team will be using this information throughout all development stages.
Software Discovery Phase Essentials
Before talking about the components of this phase, let’s shed light on timeframes and pricing models.
The duration of this phase entirely depends on the initial requirements and the scope of work. It’s difficult to say the exact duration, but you might expect it to last from three weeks to several months.
There are two pricing models that are applicable to the project discovery phase:
- Fixed price. In this case, you pay a pre-discussed cost for the whole discovery phase. It suits best if you know what you need in the end project. We fix your feature list and work with it only.
- Time & materials. This is a pay-as-you-go model. You pay for the time a team spends working on the phase. It’s a good choice if you need help with defining the feature list as we can’t define timeframes in this case.
Fixed price and Time & Materials
Now, let’s consider each component of the planning phase.
1. Initial Contact
That’s where everything starts. After your first contact with us, we make a so-called rough estimate based on your preliminary feature list.
It’s basically a document with minimum and maximum time and cost values. The rough estimate is free of charge. It’ll help you understand the approximate budget and make a decision to continue or discontinue the cooperation.
One of the functions of the software discovery process is to define an accurate time and cost for the whole project. So it’s impossible to tell exactly how much time and money you’d spend on a project without the discovery phase.
That’s why by the end of initial contact you’ll know an approximate, rough cost of your project.
If you agree to continue, we do the following:
- Estimate how much time and money the planning phase is going to take.
- Sign a contract.
- Initiate the discovery phase.
Note: While we’d love to deliver your product, you can make a decision to stop cooperation after the project discovery. In this case, we hand over all the materials to you. Your time and money are not wasted, though. Any other agency will require these documents to start development.
Our business analyst will be working with you during this stage to collect input data. They’ll schedule an initial call to ask questions about your business and idea.
This part has a huge impact on the entire phase. That’s why your active participation is very important. The business analyst will offer you to set up a schedule of meetings for your convenience. It usually ranges between 1 to 3 meetings a week.
Want to learn more about development? Read the article about the software development process at Cleveroad.
The business analyst asks you a plethora of questions on this stage. Here are some of them:
- Platforms you’d like to cover: mobile, desktop, cloud-based.
- Target audience: who they are, what problems they are trying to solve).
- Target countries if any.
If you’re not sure about the answer, the business analyst’s job is to help you with this.
Then come such optional steps as Competitive Analysis and Lean Canvas. In case you don’t need those, we move straight to specification.
It’s very important for further product development. All the data we got from the previous steps are used to specify the feature list and final tech requirements.
Based on research, the business analyst can suggest features to develop first (MVP) to reduce time-to-market and advanced ones for winning more users in the future.
So, specification is basically a document collecting every piece of information about the project.
- Technical, functional, and usability requirements.
- User stories, which is a short feature description told from a user’s perspective.
- Mind map, which is used to structure important data and help with outlining the project idea, schedule, and other related information.
- Flowchart, which is a visualization of how users would navigate through screens.
Note: We can’t move on to the wireframing stage until you approve those steps. Your feedback is vital at this stage and it has a direct impact on the final product’s quality. Don’t be afraid of a significant volume of documentation. We’ll split it into pieces to make it easier for you to review it and leave feedback.
Once the specification is ready, we pass it to you for review. You should either approve it or propose changes. In the latter case, we consider your comments, edit the document, and resend it to you for revision.
To make the reviewing process easier for you, we split it into parts. The business analyst takes a pre-arranged scope of functionality, documents them, and passes it over to you for review. Then, designers create wireframes following the approved part of the specification. After that, you review and approve wireframes as well. The process repeats until the whole project functionality is documented.
Following agile methodologies, Cleveroad is as flexible and open to changes as possible. But it’s better to make sure you’re out of changes by the end of the phase.
Changes made at the end of the planning phase lead to rescheduling, emerging logical gaps, and enlargement of time and cost.
Wireframes are the next step in the discovery phase of a software project. A wireframe is a schematic placement of elements on app screens. It’s monochrome and needed to craft prototypes faster and with fewer changes after the discovery phase. This is one of the UI/UX design services we provide before the development.
Please, note that wireframes are not the final product design. They’re just a blueprint of your app.
Want to learn what happens with wireframes next? Read about how the UI/UX design goes at Cleveroad.
We create wireframes to settle any questions related to design. Our team works with InVision that enables you to comment on the design and keep track of changes. In turn, we can see your feedback in real-time and make adjustments on short notice.
Note: Wireframes have to be approved before we can move any further.
This is how wireframes look like
After all three steps are completed, our QA engineers check the specification and wireframes for issues that might slow down the development. It usually takes a couple of days.
5. Detailed Estimate
That’s the final step of the phase. Software engineers, UI/UX designers, and everyone else involved study the specification and wireframes to estimate the time needed to implement each feature and build the product.
Now you have an accurate budget, specification, and wireframes. We can proceed with the approval of a development contract.
6. Competitive Analysis (Additional Service)
The name speaks for itself. The main goal here is to explore the market, find out who your competitors are, and analyze their products.
However, you should know that this step is rather needed for prioritization. We cannot guarantee that one or another feature picked during the analysis will bring your product a success.
The main objectives of this lay in the following:
- Determine competitors.
- Analyze their products to see what features they offer.
- Conduct gap analysis.
- Find out the target audience’s problems.
- Perform SWOT analysis.
A SWOT analysis stands for strengths, weaknesses, opportunities, and threats. It’s basically a document covering those four aspects mentioned. It's main task is to help you and other stakeholders to look at the real market situation and reconsider some functionality or add something new.
7. Lean Canvas (Additional Service)
Lean Canvas is basically a one-page business plan helping you to break down your idea into key assumptions.
Here are some of these assumptions:
- Unique value proposition
- Key metrics
- Customer segments
- Cost structure
- Revenue streams
It’s an informative, startup-spirited alternative to time-consuming and lengthy business plans. Though, it’s enough for understanding essentials and prioritizing.
Click on the image below to see a Lean Canvas example that spells out every assumption in more detail.
What Do You Get by the End of the Phase?
- Competitive analysis
- Lean canvas
- Detailed project estimation
We pass all the documents and wireframes to you at the end of the software development discovery phase. Now you have a full pack of documents any other software development company would require to start development.
Even if you decide to stop working with Cleveroad, you won’t have to pay other vendors one more time to go through planning.
I hope it was useful for you. But if you haven’t found answers here, don’t hesitate to reach back to us with your questions.