Software Project Discovery Phase

Learn everything about IT discovery in outsourced software development projects: how it helps you save costs, how long it takes, what deliverables are, and when you absolutely do and don’t need it.

Once upon a time…

…a client contacted Anadea for Android app development. They had a project description and a set of features they wanted. The client was ready to start development ASAP until they had an initial discussion with a team.

Shortly after, the client decided to discuss the project with Business Analysts prior to starting the development process. The discussion revealed many questions, answering which could really help make a better product.

The most significant gap to be filled was defining the app’s potential audience, i.e., user personas. However, user personas are only one part of a broad range of actions called the Discovery Phase.

What is the discovery phase?

The discovery phase in agile is a stage where business analysts, together with the development team, explore and identify the goals, requirements, constraints, and risks of the project. This phase is critical in ensuring that the project is set up for success from the very beginning.

Business analysts engage in collaboration with the client to understand their vision, objectives, and business requirements. It may involve workshops, interviews, and consultations to gather information, brainstorm ideas, and validate assumptions.

How long is it? Normally, the initial discovery is completed in 3 to 6 weeks, which is, in terms of software development that takes months, a reasonable investment.

Important? Crucial!

Here's why more and more of our clients are becoming interested in the discovery phase in their projects and the significant benefits they're seeing.

Clarifying project requirements

The discovery phase ensures that the development team, business analysts, and client reach a mutual understanding of project requirements. This consensus significantly reduces the risk of misunderstandings and costly rework later on.

Identifying and mitigating risks

A thorough analysis of the client's existing systems and infrastructure allows potential risks or issues to be identified early on. Addressing these preemptively prevents delays, reduces costs, and contributes to the project's overall success.

Setting realistic timelines and budgets

This stage helps the development team to formulate a detailed project plan with realistic timelines and budgets. This ensures that the project remains financially feasible and can be completed within an acceptable timeframe.

Avoiding unnecessary rework

Project discovery allows the identification and resolution of potential issues before they become major obstacles. This proactive approach prevents costly rework, ensuring the project is completed to the client's satisfaction.

Ensuring design alignment

The clarified requirements allow us to ascertain if current wireframes/mockups fully correspond with the project scope, ensuring complete design alignment.

Getting ready for investments

The discovery phase of a project results in a comprehensive set of documents that you can confidently present to potential investors if you are seeking investment.

When do I really need it? What if I don’t?

We’d be fooling people by saying that everyone, no exception, needs a discovery phase. Because every project is unique, and surprise! Requirements and goals are unique too. Sometimes discovery is a must, but in some situations, it can be redundant.

We propose you a simple way to find out whether you need this service by taking a simple test.

Test 1

Mark statements that are true

At least one item is true for you? We recommend you take some time and work with business analysts before passing on to development. You can book a free consultation here.

This improvised test would suggest that in all the other cases you don’t need a discovery phase. However, let’s take a closer look at specific cases when you don’t need it - just to be on the safe side. The rules stay the same: something is true for you - perhaps you can go without a full-fledged discovery.

Test 2

Mark statements that are true

More to know about the discovery process

Fact #1: Discovery goes in cycles

Anywhere you go to learn about the custom software development process, step #1 in the pipeline will be “Discovery Phase,” and that will be the only time you see those words.

Many people are used to thinking about discovery as something BAs do only once at the beginning of the project, however, discovery is a systematic process that can go in cycles.

In big projects, where changes in requirements are practically unavoidable, it’s much easier to break down the development into two/three-month iterations and do a discovery for each iteration. Given that, the BAs are involved not exclusively in the first couple of weeks - they are always there to address always-emerging changes.

Fact #2: Discovery ≠ Advisory

Everything listed above as crucial benefits of the discovery phase is the result of you and us working together. This is what we achieve in close collaboration, by discussing everything done and to be done.

However, one thing we can’t affect in any way is the business decisions you make. In the process of discovery, we don’t give advice on what audience to choose, which of its problems to solve, what the goal of the product will be.

What we do is help you prioritize features, distinguish an MVP, and come up with the most optimal solution given the ideas and goals you already have.

Fact #3: It starts with zero sprint

Discovery or no discovery - whatever you choose for your project, work will be initiated with a zero sprint.

The zero sprint encompasses prioritization of the scope, defining the design concept, and planning of the backlog for the first two weeks of development (because two weeks is what a regular sprint, i.e. development iteration, takes).

It is needed so that we can pass to the development well-prepared for the first sprint and with the development environment already set up if the team is already assembled.

Fact #4: We communicate everything

No matter how well we know our job and how autonomous we are, achieving the result you expect is only possible as long as you and our team communicate regularly. We recognize that as a business owner, your schedule can be extremely busy, making it challenging to find time for sync-ups. And still, regular meetings is what helps you as the client, BAs, and developers stay on the same page and address any issues immediately, thus avoiding any rework and misunderstanding.

That’s why we ask for a commitment of 3-5 hours of your time per week, whether we're in the initial project management discovery phase or any other development stage.

Steps in the discovery process

Collecting requirements

The team starts by gathering requirements, using analytical skills to understand the client's goals and constraints. This step involves brainstorming sessions, interviews, and exploration of new ideas.

Identifying user personas

This step focuses on understanding the end-users of the product. The team defines user personas to understand their needs, goals, and behaviors, which helps shape the project's design and functionality.

Evaluation

The team then reviews the client's existing software systems and infrastructure. This allows the identification of improvement areas and gaps that should be taken into account in the new software to ensure smooth integration.

Risk analysis

This important step involves identifying potential challenges that could impact the project's success. The team considers technical, operational, and financial risks, as well as those related to timeline and budget, and develops strategies to mitigate these risks.

Technical feasibility

The team consistently evaluates the feasibility of the project, identifying any technical or financial obstacles that need to be addressed to ensure the project's viability.

User insights and project planning

Lastly, the team uses the knowledge and insights gained to create a detailed project plan. This outlines the stages of the software development lifecycle, including defined timelines, budgets, and discovery phase deliverables.

Oh, about deliverables…

Deliverables of the discovery phase

Vision document. This key document outlines the overall strategic goals, objectives, and direction for the project.

Functional decomposition. This diagram provides a high-level list of features for each role. It's instrumental for approving scope, facilitating quick estimation, and prioritizing tasks.

First discovery phase document template

Discovery phase document template

Requirements specification. We'll prepare a comprehensive list of use cases describing the functions to be developed, including basic, alternative, and exceptional flows, actors, and business rules. Approved use cases can be transformed into designs, serving as the basis for development. View example

Wireframes. For certain use cases or user stories, we create wireframes, especially for reports or complex features. They ensure that both the business analyst and client agree on the requirements. These wireframes display all necessary elements but not the actual design.

UX validation. Our UX designer will cross-verify the created requirements with the wireframes provided by the client. Additional wireframes may be generated if the existing ones do not cover the entire planned scope.

UI mockup creation. We will design the user interface, showcasing what the user interaction will look like.

Architecture scheme. Our Solution Architect will review the requirements for implementation feasibility and conduct preliminary research on any internal systems to be integrated. The output will be an architecture scheme suggesting the technologies to be used.

Second discovery phase document template

Discovery phase document template

Database structure (ERD). For complex projects with multiple entities, we will design an Entity Relationship Diagram that outlines the structure of your database.

Product backlog estimation. Based on the created requirements, our development team can provide project estimates segmented by phases.

Roadmap. This strategic tool outlines the project’s key goals, deliverables, and deadlines, guiding all stakeholders throughout the project lifecycle.

What about that client from “Once upon a time”?

Ah, yes. In fact, they’re doing great! BAs’ work on project discovery, particularly user personas, transformed the approach to future development immensely - for the better. Once user groups were identified, new features were proposed to answer the demands of those specific users - because an app for everyone is the app for no one.

ebook

But we know you don’t tolerate marketing buzzwords, you want detail. And we have something to share!

If an eBook and a video about how we defined user personas for a Smart Reminder app sound good to you, please click the button below.

You’ll learn what the client had in the beginning and what they got after Anadea’s BAs involvement. And how they got it done.

ebook

What’s next?

We’ll be happy to help you with anything related to your custom project idea, because that’s what we do: translate good ideas into brilliant products. Whether you need additional information about our business analysis service, custom software development, or anything else, feel free to contact us - our experts will get back to you shortly.

Have questions?

Anadea logo

Contact us

Whether you’re looking to build an MVP, create a web design for your site, develop a mobile app or complex IT system - tell us about your project. We will give you a quote and advice.

attention
attention
attention