Originally I shared this material on Syndicode blog as a part of inner instructions for my colleagues to provide the one and only Discovery Session guide for new projects. Now I think this scope might be useful for developers community because often (despite you know how to develop something) you don't really know how to compose your proposal and deliver your commercial offer properly. I'm not saying that the way I suggest the only variant, but it proved its efficiency in the company I work in.
What is Discovery Session?
Discovery Session is a process supported by the session of meetings between the project team and client to understand the client’s business, its goals, strategy, how the operation process goes and so on. This is the act of gathering key project information so you can gain a high-level understanding of the project. In most cases, this is done by getting the answers to specific questions.
The main goal of the discovery session is to make a commercial offer.
Discovery Session will result in
- Project Specifications Document (spec) is a comprehensive description of the objectives for a development project. It contains all goals, functionality, user stories and details required for a development team to fulfill the vision of the client.
- User Experience Markup which will help you to understand the users’ flow for the project.
- Time and costs estimate for the project.
Who participates in the Discovery Session?
Project team side
- Functions: to create a WBS (work breakdown structure) and provide basic negotiations about technologies, terms, and development team size.
Product Designer/UX Designer
- Functions: during Discovery Session Product Designer responsibilities include gathering user requirements, designing UX mockups, and building navigation components.
- Example: clickable prototype
- Business Analyst
Senior Developer/Lead Developer/Software Architect
- Functions: to confirmation from the technical perspective if the performance of the idea is valid. The written confirmation might consist of an executive summary of the potential blockers during the development.
- Example: this person should create a simplified version of the technical specification with:
- data security,
- technology and components,
- database schema design,
- integrations with external services.
- Brand representative
- Project manager
Discovery Session tasks
During the Discovery Session project team representatives and the client should:
- explore the subject area;
- examine the client’s business processes;
- learn the client’s expectations from the new product;
- identify bottlenecks;
- describe high-level solutions to the expected or existed problems;
- identify priorities and form a backlog;
- create the roadmap of the project.
Here you can download the Discovery Session Cheat Sheet for Web and Mobile development by Syndicode with the list of possible features that should be implemented in the product.
Primary Discovery Session questions
- What is the business goal?
- What is the strategy for the investment? (Crowdfunding, bootstrapping, funding, etc).
- What is the project outcome? (It can be software, new processes, documents, hardware, deployment, upgrade).
- What is the project’s timeframe? (The duration can be expected, scheduled or urgent).
- What is the budget for the project? (The key cost constraints. During the project planning phase, you will create a detailed budget and cost estimate).
- Who is the project sponsor? (A person or a group that provides executive level support and resources for the project. This sponsor can influence the project).
- Who is the project customer? (These people will define how the outcome should look like during the project initiation phase and approve the final outcome the project produces. CEO/CTO/Brand manager, etc).
- Who is the end-user?
- What are the key performance indicators (KPIs)?
Discovery Session timeframe
A Discovery Session might take up to three weeks depending on the project’s complexity.
In a nutshell,
- A Designer might spend up to 80 hours,
- Business Analyst might spend up to 40 hours,
- Lead Developer could spend up to 20 hours,
- A Project manager might spend up to 30 hours.
The estimated time could be reduced by providing the project team with the client’s clear expectations and prompt feedback on every stage of the Discovery Session.
What should be included in the Projects Specification Document (spec)
Created on the base of the Discovery Session data, there should be information about technical design that includes:
- Project outcome features
- Customer journey
- Customer statuses
- Transaction statuses
- Integrations with external services
- Infrastructure with production, storage, staging, caching and monitoring details
- Technologies and components with the information on the source code repository, production, staging and development environments, CI and CD processes described
- Development process steps
- Security and privacy information including physical and data security
- Database schema design
What should be included in the Commercial Offer
A Commercial Offer (Business Proposal) should contain the information on:
- Contractor and the final agreement details;
- The goal of the project;
- Implementation and approval process;
- Team composition;
- Communication details with appropriate time and channels;
- Reports schedule;
- Payment terms;
- Conclusions with the total budget.
Discovery Session cost
Discovery Session cost depends on the rates of the particular software and design development team. Usually, rates in eastern Europe several times lower compared to the rates for the same services in the US or western Europe. Particularly, prices in Ukraine are sometimes might be even 10 times cheaper than in the US. At the same time, the quality and the skills of software engineers here are top-rated.
Thank you for reading! And have a happy Friday!