Belitsoft > Discovery Phase in Software Development: How Do We Do It?

Discovery Phase in Software Development: How Do We Do It?

As a Business Development Director with nearly two decades of experience, I collaborate with clients to narrow the gap in cost estimation, even for the most complex projects, using the discovery phase. Let me share how I achieve this for our clients looking to modernize their core business app.

Contents

CLIENT

Who are our typical clients?

Our typical clients predominantly hail from the US, UK, Israel, and Canada. They're companies with a workforce ranging from a handful to several hundred employees.

They possess proprietary core business application, custom-developed to automate their key business operations.

This software often has a history spanning 10-20 years. While it remains functional, the challenges it presents are growing. Typically, it starts to run slowly, experiences downtimes, reveals an absence of mobile and remote access, and is incompatible with newer features.

Compounding these problems, the original developers who built the software are often no longer accessible. Consequently, successive developers have only made patchwork solutions, ensuring temporary functionality. As these patchwork fixes keep snowballing, they inevitably create more and more constraints. Rebuilding such temporary solutions has no sense. In certain scenarios, the original software simply can't support the essential features. In others, introducing any enhancement becomes prohibitively expensive. These limitations become the company's new normal until they hit a critical impasse.

What are the typical breaking points?

1. A fresh look of a top manager as the legacy software impedes the business growth.

A newly appointed executive, business successor, or current manager may recognize the need for automation and cost-cutting. Why?

The top manager recognizes that the current software no longer offers the business a competitive edge. Questions arise: Why is the staff count so high? Why are we still using outdated tools like Access? Why can't tasks be done on mobile devices?

Upon closer examination, it becomes clear that the legacy software impedes efficient operations. Few employees grasp the intricacies of the business software ecosystem, reducing the company's competitiveness.

Realizing this, the top manager begins the search for a partner to modernize their software, ensuring it aligns with contemporary market demands.

2. The initiative of the head of department to lift barriers for their employees' daily operations.

As the client base expands, ideas for enhancements accumulate. Eventually, it becomes clear that the current software lacks compatibility with newer features, such as mobile access.

The need for experienced developers arises, prompting executives to assign them the task.

CHALLENGE

Addressing the cost estimation gap due to missing legacy software documentation and clear functionality understanding

The client has the software they want to modernize and their primary query is how much this will cost. To answer this, we first identify the best approach for modernization.

There are several modernization approaches to consider:

  • rewrite everything from scratch
  • integrate specific modules that tap into existing databases
  • develop new modules that complement the current system
  • OR even sometimes just simply support the current system

The manager starts searching for terms like "system modernization", "ERP modernization", "CRM modernization", or other queries (depending on the type of the business app). Through their search, they often discover experts like Belitsoft.

Upon reaching out to us, they typically share a brief overview of their challenges and objectives. In response, we probe with a series of questions to grasp the project's specifics.

To provide an approximate estimate of the app modernization cost, we ask a series of questions to find out the specifics of the project.

However, what happens if the client can't provide answers? They might possess outdated technical documentation, but such resources might not be reliable, especially if they depict functions no longer in use.

Without the details, any cost estimate is a shot in the dark. Clients who've sought estimates without the requisite documentation often encounter significant variances between vendors' quotes. One firm might quote $1 million, while another suggests $100,000, leaving the client bewildered by the vast difference.

We try to provide approximate figures based purely on our experience in the field. Still, there's a potential variance that could range from 1,000 to 5,000 hours.

To minimize this cost estimation gap, most vendors request technical documentation, which, unfortunately, is often absent.

So, how do we navigate such scenarios?

SOLUTION

Bridging the gaps with the discovery phase

Whatever modernization method the client prefers, the discovery phase is a must.

What do we do for you during a discovery phase?

  1. We sign the necessary documents (NDA, security, contract) to kick off the discovery phase with all the details cleared and secured in advance.
  2. Through meetings, we aim to comprehend the existing application. For this, we delve into the application, analyzing its functionality from both user and backend perspectives.
  3. Then, we analyze what the client wants in the new app and what the development team can do for the project. For that, we talk to the company stakeholder groups who work with this software. We gather feedback from users on which existing functions to retain and which to modify.
  4. We draw up all the required functionalities for modernization in a comprehensive document - Vision & Scope, detailing every aspect of the app modernization. We distill business ideas into technical language, ensuring clarity for developers. This foundational document will then serve as the basis for an accurate cost estimate.
  5. Based on the Vision & Scope document, we furnish detailed Optimistic and Pessimistic cost estimates.
  6. Should the client choose to proceed with Belitsoft for app modernization, we promptly provide a comprehensive project plan right after the cost estimation. This outlines the scope, goals, tasks, timelines, resources, and other pivotal project facets.

During my years of work, we've pitched in multiple modernization projects. So before the discovery, we can showcase sample documents and estimates to clients, if required, also provide references.

PROCESS

Breaking up the Discovery phase into transparent agile process

We explain our process to the client, shedding light on the rationale behind each step.

Structured Timeline. We segment the project into releases, further dividing these releases into sprints, which typically last 1-3 weeks.

Regular Demonstrations. At the conclusion of every sprint, we present a demo to our clients, gathering invaluable feedback.

Monitoring and Time Management. Throughout the project, we rigorously track both planned and actual hours spent. Time tracking is meticulous for both sprints and the project timeline. A detailed hour estimation accompanies the project plan.

Transparency through Reporting. After each sprint, the client gets a report on the hours spent and the explanation. This enables clients to assess if we are adhering to the initial timeline. The client decides the next steps based on actual data.

RESULT

Achieving an accurate cost estimate and minimizing risks

The Discovery phase significantly reduces the potential risk of underestimating or overestimating app modernization costs. While the cost estimation gap could be as wide as 100%, after the Discovery, can confidently narrow that down, providing you an accurate cost estimation with a possible 20% gap only.

To illustrate, consider a scenario where the initial fixed-price estimate is $50,000, but the actual cost escalates to $100,000. Such a situation presents a high risk of breaching the contract mid-project, especially if costs rise unexpectedly. Imagine the difficulty for both top managers and department heads in explaining to their superiors how a team was paid a $30,000 deposit but abandoned the project halfway.

The discovery phase eliminated this risk.

Clients benefit from the perspective of external professional consultants who bring a fresh pair of eyes. This external viewpoint is invaluable, especially when internal personnel might be resistant to change or suggest that adjustments are challenging or even impossible.

What comes next?

Typically, post-Discovery, our team is intimately familiar with the application. Having provided a competent estimate, we're primed and ready to kick off the app modernization, evidenced by these cases:

Contact us to get professional FREE consultation and give a fresh look to your business application.

Real-Life Client's Case:
Belitsoft Approach in Action

When a client comes to us, we follow all the described best practices and our time-tested approach to analyze the project, providing an accurate cost estimation and defining priorities for the development phase.

Client Background

A US-based company has been in the manufacturing market for a long time. Its owners are aware of software development processes in outsourcing, so they know quite well how to work with a remote team and set up transparent, effective communication.

Client's problem

For over 15 years, the client relied on their in-house custom CRM/ERP for order processing and production tracking, built on MSAccess + MySQL and Visual Basic.

Despite numerous updates over the years, the system, though functional, began showing signs of wear and glitches.

However, the client faced two critical risks that underscored the urgent need for application modernization.

  1. The imminent Windows update to version 11 might render the CRM/ERP non-functional.
  2. The system's legacy architecture hindered the incorporation of advanced modern features.

Proposed solution

The business owners envisioned a modern system, with web-based and mobile versions, tailored to their daily operational requirements.

Regarding technologies, the client was open to suggestions. From my experience with similar projects, there's a possibility to convert the current VB code to C# and retain essential business functions. This approach might save time and budget, but it depends on the clarity of the code. So the final decision should be taken during the Discovery phase together with the client.

Budget Considerations

I provided an initial budget range based on past engagements with similar systems. A more precise figure would be achievable post the MVP 1.0 phase priority setting. This involves mapping out essential functionalities for the new system and any potential additions for MVP 1.0.

The best way to get an accurate budget estimation is to start with a Discovery phase. To initiate this phase, I make a Discovery Proposal to the client. This is a structured guide detailing a project's background, objectives, scope, deliverables, timelines, and constraints. It outlines how the project will be implemented, using a Time & Materials (T&M) approach. This strategy emphasizes consistent budget tracking, expenditure reports, and periodic updates.

This transparency ensures the client is always informed, understands the progress, and can make decisions on any additional requirements or changes that arise. Ultimately, the Discovery phase minimizes potential budgeting discrepancies.

Key deliverables

During the Discovery, we deliver Visual & Scope (V&S) and Work Breakdown Structure (WBS) in about 60 hours.

After the Discovery, we provide a detailed cost estimation, accompanied by Statement of Work (SOW) for Discovery.

The next steps

Post-Discovery, equipped with a comprehensive understanding of the application, our team provides a precise cost estimate. With the client's approval, we then proceed with app modernization or custom development, as demonstrated in our past CRM/ERP projects:

Frequently Asked Questions

To expedite the discovery phase without sacrificing quality, we employ the following strategies:

  • Thorough Preparation. Before diving into the discovery session, we immerse ourselves in research. We gather extensive information about the project, delve into the client's industry, analyze competitors, and define user personas.
  • Time-tested process. Our discovery phase is guided by proven methodologies. Relying on our time-tested scenarios ensures we're always asking pertinent questions, ironing out crucial details, and thoroughly covering all project aspects. This approach ensures a comprehensive understanding without starting from scratch each time.
  • Client Collaboration. We strive to establish clear and swift communication with the client's stakeholders groups. This is especially true for individuals interacting with the current system and those who'll be engaged with the new one. Their insights streamline the discovery process and guide the system's enhancement.
  • Focused Prioritization. Not every detail needs to be fleshed out in the discovery phase. Instead, we concentrate on the project's most vital components, reserving more nuanced details for subsequent phases.
  • Gap reduction in cost estimation. The discovery phase aids in narrowing the gap in cost estimation for complex projects due to a clear understanding of the software's functionality.
  • Risk minimization. The discovery phase significantly reduces the risk of underestimating or overestimating the app modernization cost, ensuring that projects are not halted midway due to unforeseen expenses.
  • Gaining external insights. The discovery phase brings in external professional consultants who offer a fresh perspective, especially when internal personnel are resistant to change or find it challenging to adapt to new processes.
Never miss a post! Share it!

Written by
Business Development Director at Belitsoft
Expert in IT staff augmentation (5 dedicated development teams have been created, 500 team members have been hired).
5.0
1 review

Rate this article

Recommended posts

Portfolio

Portfolio
Proof of concept for validating the Idea of Cloud-Based Virtual Fuel Cards for a Logistics Startup
Proof of concept for validating the Idea of Cloud-Based Virtual Fuel Cards for a Logistics Startup
We made Proof of Concept and Business Analysis to help the logistics startup validate the business idea of cloud-based virtual fuel cards before starting the full-scale development process.
Migration from .NET to .NET Core and AngularJS to Angular for a Healthcare Technology Company
Migration from .NET to .NET Core and AngularJS to Angular for a Healthcare Technology Company
Belitsoft migrated EHR software to .NET Core for the US-based Healthcare Technology Company with 150+ employees.
Azure Cloud Migration for a Global Creative Technology Company
Azure Cloud Migration for a Global Creative Technology Company
Belitsoft migrated to Azure the IT infrastructure around one of the core business applications of the global creative technology company.

Our Clients' Feedback

technicolor
crismon
berkeley
hathway
howcast
fraunhofer
apollomatrix
key2know
regenmed
moblers
showcast
ticken
elerningforce
Let's Talk Business
Do you have a software development project to implement? We have people to work on it. We will be glad to answer all your questions as well as estimate any project of yours. Use the form below to describe the project and we will get in touch with you within 1 business day.
Contact form
We will process your personal data as described in the privacy notice
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply
Call us

USA +1 (917) 410-57-57

UK +44 (20) 3318-18-53

Israel +972 53-337-9957

Email us

[email protected]

to top