Subscribe
Share
Trending

The discovery phase of a project, and how it helps supercharge your IT initiatives

By Victoria Shashkina, Innovation Analyst
Published on

Insights, summarized:

  • Out of all innovative IT projects implemented globally, merely 10% to 30% end up being a success.
  • A larger share of issues that cause software development projects to go awry can be prevented by introducing a discovery phase.
  • The discovery phase of a project is the first stage of a software development pipeline, whose aim is to help you morph your business idea into a fully-functional solution with a competitive edge.
  • A project discovery phase usually consists of four stages: requirements elicitation, solution design, architecting the solution, and project planning. Each stage births a set of deliverables you can use to pitch to investors and stakeholders, as well as build your development process upon.
  • A business analyst and a representative of an engineering team are usually responsible for carrying out discoveries. An outsourced discovery phase is a worthy option as well, especially if you lack experienced in-house IT talent.
  • Whether you opt for Waterfall or one of the Agile project management methodologies will influence the length and scope of your discovery.
  • In Waterfall, it is typical to plan the entire scope in advance, which can take four to eight weeks or even more—depending on the scale and complexity of your project.
  • In Agile, it is common to set up the so-called sprint 0, or the inception phase, that usually takes up to a couple of weeks or less. It is commonly followed by a discovery track that runs one or two iterations ahead of the development track.
  • The cost of a standard discovery phase starts at $30,000.

You have an innovative idea for a technology solution. As technology enthusiasts ourselves, we get the itch of wanting to turn it into a functional app right away. But diving into development without the so-called discovery phase might be fatal, especially when it comes to implementing complex or innovative solutions, such as artificial intelligence (AI) and generative AI solutions (more on that in the FAQ section).

Various studies suggest that out of all software development projects implemented globally, only 10% to 30% succeed.

And the sad fact is: the more innovative the idea, the more likely the project is to fail.

The reasons for failures vary, but they are often related to poor project planning:

IT project failures
The survey shared by DevTeam investigated common reasons for software project failures. The surveyed companies were asked to select up to three reasons why they deemed their software development initiatives a failure. The top three causes of failure were changes in an organization’s priorities, inaccurate requirements, and changes in the project’s objectives.

Our experience delivering software engineering services proves: a larger share of issues that cause software development projects to go awry can be prevented—and that’s where the discovery phase comes into play.

If you’re about to start an IT initiative and don’t want it to spin out of control, keep on reading. Below, we share how the discovery phase helps enterprises and startups roll out software solutions successfully, explain what types of projects benefit from discovery activities, and share the approximate costs of the discovery phase drawing on examples from ITRex’s portfolio.

What is the discovery phase of a project exactly?

The project discovery phase is the first stage in a software development pipeline. During this phase, you test the idea against business context, dismiss doubts, and prove assumptions about the future app.

When handled properly, the discovery phase helps you understand how exactly you can turn your business idea into a fully functional solution while providing the basis for accurate time and cost estimates.

Ultimately, introducing the discovery phase to your project helps you implement a product that matches user expectations and has a competitive edge.

Depending on the scope of work, the discovery phase may take two to four weeks for Agile projects and anything between four and eight weeks or even more for Waterfall projects. It is usually billed according to the Time and Material (T&M) pricing model.

What stages does the project discovery phase incorporate?

The discovery phase of a project usually includes four stages:

  1. Requirements elicitation

  2. Solution design

  3. Solution architecture

  4. Project planning

Requirements elicitation

At this stage, you establish a clear product vision. You also think about the strategic aspects of bringing this vision to life. For that, you take the following steps:

Identify key stakeholders and business context

Start the discovery phase of a project with interviews, questionnaires, discussions, focus groups, and observations to dive into the environment the future solution will be used in and record the needs and expectations of key stakeholders. The latter should include product owners, administrators, end users, developers, investors, and other people involved in crafting and using the future solution.

Also, don’t forget to review the existing documentation. If you already have market surveys, user interviews, or any other useful documents, you may shorten the project discovery phase by saving some time on extra research.

Define a product vision

Based on stakeholder feedback, define a product vision. Specifically, put together a high-level document that outlines the purpose of developing the product and communicates its key value for users.

Identify success metrics

As the next step in the project discovery phase, think over the criteria for measuring product performance. These could include monthly revenue, daily active users, customer lifetime value, and other factors. Product managers will rely on these criteria to monitor if the product meets the set business goals.

Identify target users

Continue with researching your target audience and creating user personas.

Identify their needs, expectations, and pain points, and think about how you could address those in the app’s user journey.

Nail down technical requirements

Morph all of the data aggregated during previous stages of the project discovery phase into a functional requirements document (FRD) or a software requirements specification (SRS), documenting both functional and non-functional (performance, usability, security, etc.) requirements for the future solution. Refer to our guide to writing an SRS for more details on how to craft a compelling document.

Craft a risk management strategy

Map out a risk prevention and mitigation strategy. This will help you identify and respond to potential risks, uncertainties, and roadblocks before they become issues.

Define project scope and timeline

At this point in the project discovery phase, you can provide a detailed estimate of the costs, resources, and time needed to complete the project. Finish the stage by crafting a full project timeline with defined milestones, deliverables, and deadlines.

After finishing the requirements elicitation stage, you’ll have the following deliverables on hand:

  • Product vision statement

  • Project scope document and, optionally, scope diagrams

  • Use cases, user stories, and user journey maps

  • Product requirements document (PRD), functional requirements document (FRD), or software requirements specification (SRS)

  • Risk management strategy

  • Project timeline

Unsure about your business idea?
We’ll test it for you!

Solution design

The goal of the solution design stage is quite self-explanatory—to design the product’s user experience and come up with its look and feel. At the design stage, you commonly do the following activities:

Craft user journey maps

Building on the target audience research and user personas, craft a high-level visual representation of a user’s experience with the product. Typically, you would need a separate user journey map for each user segment.

Continue the project discovery phase by thinking over the points of interaction between the users and the future product. Use the data you collected during the research to populate the journey map.

Design-wise, your map can be as simple as a timeline and as complex as a storyboard depicting what exactly happens at each stage.

Create wireframes and mockups

Visualize your concept by creating blueprints communicating the solution structure and design.

Build prototypes

Finish the stage by building a solution prototype—an early version of the future solution that reflects both its basic functionality and design. A prototype is a great means of giving your stakeholders a taste of what the future solution will behave, look, and feel like.

To validate the user flows and UI/UX decisions, you’ll likely go through several rounds of testing. And it’s perfectly okay. Collect stakeholder feedback at each iteration and rely on it to perfect your design.

Once the solution design stage is finished, you’ll have the following deliverables:

  • User journey maps

  • UI wireframes and UI design mockups

  • Low-fidelity solution prototype

Architecting the solution

At this stage of the project discovery phase, consider how the designed vision will be realized technology-wise. To get it all done, carry out the following activities:

Craft a technical vision

Building on technical best practices, business context, and feedback from the development team, design a technical solution for how to bring the product vision to life. Make sure your technical vision is flexible, future-proof, and aligned with the overall business strategy.

Carry out a technical feasibility analysis

As the next step in the project discovery phase, assess the details of how you’re going to deliver the solution. Consider the technology landscape, available infrastructure, resources, and budget. The end goal is to determine the viability of the proposed technical solution and ensure the project is legally and technically feasible, as well as economically justifiable.

Design solution architecture

Relying on industry best practices and building on technical requirements, design the architecture of the future solution. Built-in scalability, flexibility, and security are the features to hunt for—these help ensure you can further evolve your solution later on.

Select the optimum tech stack

The next step is to choose the optimum programming languages, frameworks, and libraries. When doing so, keep in mind that the technology choices you make will influence the future solution’s performance and scalability, the time to market, the maintainability of your software, and support costs. Make sure to carefully weigh your tech options against these factors.

Break the project scope down into deliverables and create a backlog structure

With the project scope clear and technology choices made, you can break down the workload into specific deliverables and design a project backlog. There are different approaches to structuring your backlog; we find one relying on a user story as the beacon of what should be delivered to be the most convenient.

Design a QA and testing strategy

To ensure your solution runs without a glitch, invest effort in designing a thorough QA strategy early on. Remember that well-rounded quality assurance is not limited to testing, although it is an essential part of QA. So, make sure to incorporate QA activities as early as at the planning stage and follow with the needed functional and nonfunctional testing activities.

Having finished the solution design phase, you’ll have the following deliverables:

  • Technical vision

  • Solution feasibility record

  • Solution architecture diagrams

  • Tech stack

  • Scope baseline

  • Backlog structure

  • QA and testing strategy

Project planning

The goal of the project planning stage of the project discovery phase is to define how you’ll complete the project in a set timeframe, with the available resources, and with the constraints in mind. To do so, carry out the following activities:

Draw resources, time to market, and budget estimates

Kick the stage off with drafting a resource plan, where you identify, organize, and list all resources needed to complete the project. Later, you’ll use the plan as a blueprint to ensure project work is done on time and within budget.

Outline a project roadmap

Craft a strategic overview of the project’s major elements, including objectives, milestones, deliverables, resources, and the planned timeline. At the later stages of development, you’ll rely on the roadmap as a reference guide to keep the project team on track.

Set up a project team

Based on the type and complexity of your product, the time to market, the allocated budget, and other project constraints, assemble a project team to bring your vision to life. To make sure you’ve got an optimal team composition, feel free to study our in-depth project team structure guide.

background
Searching for a skilled partner to conduct a discovery?
We’re happy to help!

Define project KPIs

Set up the metrics to track to measure your project success. These can span budget, quality, effectiveness, and timeline KPIs. Make sure every metric you introduce is SMART (specific, measurable, achievable, relevant, and time-bound.)

Set up progress-tracking tools

You don’t have to manage project data manually. Instead, go for a project management tool that will allow you to navigate data from various sources conveniently. The most popular progress tracking tools on the market are Trello, JIRA, Hive, Asana, Nifty, and others.

Set up a project infrastructure

Once core discovery activities are completed, it’s time to finish the discovery phase of a project by bringing in operations and/or DevOps teams. They’ll set up the environments for development and testing activities to take place and create a pipeline for automatic deployments.

Once the project planning stage is over, you’ll have the following deliverables on hand:

  • Project roadmap

  • Budget estimates

  • Team composition

  • Project KPIs

  • Project infrastructure plan

  • Optionally, a pitch deck for startups to present to investors.

Who’s responsible for conducting and coordinating discoveries?

With the information above, you can venture into your project’s discovery phase on your own. Another way is to turn to an experienced provider of project discovery services who will support you with the right and skilled talent. Usually, a project discovery team includes a business analyst and a representative of an engineering team, be it a solution architect, an ML consultant, or any other role relevant to the project. An extended discovery team may consist of the following roles:

  • Product owner

    A product owner is the one who has the initial product idea and is responsible for developing the product vision. As a product owner, you will be involved in product development, but your tasks will be more strategic, while the major part of analysis, design, and development will usually be handed over to other team members.

  • Project manager

    A project manager is responsible for smooth communication between stakeholders, planning the scope of work, and tracking project progress.

  • Business analyst

    A business analyst is the one who comes up with a specific plan for how to turn the initial vision into a real, functional solution. As a business analyst, you interview stakeholders, dive into their needs, and weigh those against the business context to craft a detailed SRS.

  • Solution architect

    A solution architect analyzes the requirements and designs the solution logic and architecture. They also propose tools, technologies, and methodologies to ensure you get competitive, future-proof software.

  • UX/UI designer

    A UX/UI designer is the one designing an uninterrupted and smooth user experience. They study user needs and preferences to make the future product as convenient and appealing as possible.

Additionally, your discovery team may include a DevOps engineer, a QA engineer, and a security engineer.

A DevOps engineer will be responsible for setting up the infrastructure for project activities and designing a pipeline for automated builds, if you choose to implement one.

Involve a QA engineer in discovery activities if your product is subject to stringent quality requirements. Let them evaluate the feasibility of requirements and incorporate the necessary QA activities into all stages of development.

A security engineer, in turn, will make sure your product complies with the necessary safety standards and boasts built-in protective mechanisms.

How does discovery differ in Agile and Waterfall projects?

Whether you opt for a linear project management approach, such as Waterfall, or one of the management methodologies from the Agile family, it will impact how the discovery phase is handled, too.

In Waterfall, all discovery activities are completed upfront, before development starts. A discovery phase usually takes up to eight weeks and 10% to 15% of the project budget. Upon completion, the team gets all the necessary deliverables.

In Agile, on the other hand, a discovery phase usually runs one or two iterations ahead of the development track. It usually takes a couple of weeks or less.

If you want a more in-depth look into the differences, read our article on the discovery phase in waterfall vs. agile projects.

What types of projects could benefit from the discovery phase?

We’ve sat down with Vladimir Sechko, lead BA at ITRex, to ask him about the types of projects that could benefit from introducing the discovery phase. Spoiler: any. And we’ll explain the reason for such a response later on. For now, we’ll draw on three examples from ITRex’s portfolio to illustrate when discovery activities come in handy.

Project 1. A software platform for market research and forecasting

A startup looking to create a market research and forecasting platform for retailers approached ITRex to test out the feasibility of their idea and further develop the solution concept.

Targeted at a fashion retail market, the ML-based platform would help manufacturers and retailers adjust the volume of produced and sold items to the demand in a particular place of sales interest. The prediction would be based on open-source data, including social media information.

The scope of delivery included researching data sources for the predictive model, thinking out the logic behind the predictive model, describing the future solution’s functionality, as well as laying down compliance requirements related to data collection and data storage.

A business analyst and an ML engineer were involved in carrying out discovery activities.

At the end of the discovery phase, the customer validated the feasibility of their idea, got a low-level functional solution with all the functional blocks thoroughly described and visualized, as well as learned the compliance requirements for the future solution.

The concept of the solution is now being pitched to investors, with a high likelihood of attracting the needed resources for further development.

So, we recommend carrying out the project discovery phase if:

  • Your solution has anything to do with AI, ML, and other innovative technologies

  • Your solution relies on public data, and you are not familiar with data collection requirements in the segment

  • You haven’t honed the initial vision yet and don’t know which core features to concentrate on during the first development iteration

Project 2. A back office for orchestrating B2B flows

An owner of four lines of business, including a music streaming service, an online printing and embroidery service, and an online store allowing music bands to design and sell their merchandise, wanted to develop a convenient back office to orchestrate all lines of business. The solution would allow for improving the B2B management process that used to be partially offline.

During discovery, ITRex’s business analyst studied the client’s needs and designed a functional map of the future solution. The proposed solution would help both the client’s partners and staff communicate seamlessly within a partner module.

Thus, after carrying out the discovery activities, the client got an exhaustive functional map of the future solution that was to be realized using the PHP Symfony framework.

So, go for discovery activities if the solution in question is complex and features many integrations. The discovery phase will help you single out core features to concentrate on during the first development iteration in order to start getting value upfront.

Project 3. An unconventional mobile advertising platform

A startup turned to ITRex to validate and further develop the product vision that they wanted to bring to market fast. They came up with a novel approach to advertising that had a gambling element to it. The mobile platform would allow advertisers to upload video ads for users to view in a TikTok-like way. The advertisers would also be required to set a sum they’re willing to spend on the campaign. While watching video content, random users would be shown a claim reward button that would only appear for a short time, where the reward would equal the budget set by the advertiser.

During the discovery phase of the project, we honed the client’s business idea, documented compliance requirements, selected the platform for the solution to be developed on, designed user experience, thought over the peculiarities of the rewarding algorithm, and put together anti-fraud mechanisms.

The client carried on developing the solution with the ITRex’s team.

So, opt for a discovery phase if:

  • The solution you’re developing lies in the intersection of domains like advertising and gambling

  • The solution has to be rolled out quickly. In this case, the deliverables gained during discovery would guide the development process and help avoid development mistakes

  • You are unsure about the appropriate technology and platforms

  • You are unsure about compliance and security requirements

Drawing the line, the discovery phase can be valuable for any project that aims at successful delivery. Think of discovery activities as another sanity check for your business idea.

The project discovery phase, too, helps navigate development in changing or unstable environments. With a honed vision, exhaustive requirements, and a well-thought-out timeline on hand, it is easier to adjust the course of development without losing sight of the end goal.

Discovery deliverables help lower the dependency on product owners/product managers, too. In Agile, a product manager’s mistake can be fatal. The likelihood of a strategic failure is much lower in a project that has gone through the discovery phase, where strategic decisions are considered and verified collectively.

How much does it cost to conduct the discovery phase of a software project?

The total cost of the discovery phase depends on the complexity of your project and the scope of activities to be performed.

For example, for a project with a well-thought-out vision, the core of the discovery phase would revolve around coming up with an optimal approach to its realization and drawing all the needed estimates. That totals approximately $10,000-$15,000.

Discovery activities for projects with an unclear vision feature a more expansive scope of work and are usually billed according to the Time & Material pricing model. The cost of discovery for such projects starts at $30,000 and more, depending on the required deliverables.

To sum it all up

So, if you are a startup working on the next break-through application, kicking off the development process with a discovery phase can help you:

  • Nail the value proposition, user needs, and business goals

  • Define the scope of work and get detailed time and budget estimates

  • Get a working prototype to pitch to investors

  • Get a detailed architectural solution and start looking for the right partners and vendors

  • Get a well-crafted product vision, allowing you to avoid costly modifications in the later stages of development

  • Get a higher return on investment as a result

For enterprises operating in non-IT fields, in turn, introducing a project discovery phase can bring about the following benefits:

  • Well-documented project vision and scope

  • Real stakeholder feedback to base decisions on

  • Maximized impact of in-house talent

  • Thorough understanding of time and money investments

  • User-friendly experience

  • Higher return on investment

Frequently Asked Questions (FAQs)

  • What are the specific features of the discovery phase of an AI project?

    One of the most essential steps in the discovery phase of an AI project is creating a proof of concept. A PoC allows AI solution assumptions to be validated in a controlled and economical way. The primary objective of a PoC is to ascertain whether the suggested AI solution can successfully address the highlighted problem before devoting substantial resources to full-scale development. It assists in making educated decisions by seeing any problems early and offering proof of viability, thus saving time and money in the long run.

    It’s also mission-critical to understand that AI initiatives are heavily dependent on data. So, most importantly, the discovery phase of an AI project requires assessing the quality, reliability, and availability of the data. It takes time to figure out what issues need to be resolved and whether it would be possible to use your present, possibly not-so-great data sources in a different way. You’ll have to engage a data scientist who will also check how your data sources are compatible with your future AI model and investigate potential modeling strategies based on the location, format, and accessibility of the given data.

    Next, it’s critical to recognize and address biases in AI algorithms. In order to ensure fair and impartial AI systems, the discovery phase of AI projects entails evaluating data for potential biases and developing relevant strategies.

    Another unique aspect of the AI project discovery process relates to the iterative nature of AI model development. The discovery phase establishes the framework for this iterative development process by creating early prototypes and executing experiments to verify the hypothesis.

    Furthermore, the discovery phase requires the involvement of a multidisciplinary team comprising data architects, data engineers, AI specialists, domain experts, and stakeholders that must work together on AI initiatives.

    Finally, it’s essential to ensure that your AI system can keep data secure and complies with relevant regulations and standards.

    Overall, the discovery phase of an AI project is distinguished by its focus on proof of concept, data quality, technical viability, ethical and security issues, iterative prototyping, and cross-functional collaboration.

  • How long does the discovery phase of a project typically last?

    The complexity and scale of the project will determine how long the project discovery process may take. It typically takes a few weeks to a few months for standard projects. For more complicated projects, such as those involving artificial intelligence, the discovery phase may take several months to provide comprehensive research and validation.

  • What challenges might arise during the discovery phase of a project?

    The most common challenges companies face during the project discovery process include:

    1. Uncertain project goals: unclear project objectives can result in misplaced expectations

    2. Technical limitations: The viability of the suggested solution may be impacted by limitations in knowledge or technology

    3. Data limitations: inaccurate and insufficient data compromise the predictive capability of the AI model

    4. Misaligned expectations: conflicts may arise from different expectations among stakeholders

  • How can the discovery phase of a project save time and money in the long run?

    Companies can save money, reduce the risk of costly errors and delays, and minimize rework during the development phase by conducting extensive studies and thorough planning during the project discovery process. It helps detect potential problems early on, make sure the resources are allocated efficiently, align stakeholder expectations, and create a realistic budget and schedule. In the long term, this proactive strategy ensures smoother execution and better results by laying significant groundwork for the project.

TABLE OF CONTENTS
What is the discovery phase of a project exactly?What stages does the project discovery phase incorporate?Requirements elicitationSolution designArchitecting the solutionProject planningWho’s responsible for conducting and coordinating discoveries?How does discovery differ in Agile and Waterfall projects?What types of projects could benefit from the discovery phase?How much does it cost to conduct the discovery phase of a software project?To sum it all upFrequently Asked Questions (FAQs)
Looking for a partner to carry out a discovery phase of a project?
Contact us
background banner
edge ai

If you still have unanswered questions about the discovery phase of a project or are looking for a trusted partner to kick off your initiative, contact us. Our experienced BAs will lay the groundwork for your project’s success!