- What is a software development discovery phase?
- Why does your project need a discovery (inception) phase?
- Team composition for Inception/Discovery phase
- What are inception phase stages?
- Step 1. Initiation
- Step 2. Research
- Step 3. Gathering requirements
- Step 4. Prototyping
- Step 5. Preparation for the development stage
- What happens after the Inception phase?
- Inception phase adjusted to your needs
Meet Dave. He has an idea about a mobile app, and has already spent two months and over $10K with a dev team on selecting technical solutions and building prototypes of his mobile app. Then, he hired us to develop the app using existing tech documentation and ready-made app design, which is not rocket science. The thing is, he skipped the discovery phase of the project with the previous development team and was not aware that the selected niche is overflowing with competitors who offer the same apps. Not smart. If you don’t want to be like Dave, bur rather save your time and money, consider hiring mobile developers for running a discovery phase.
In this article, we are going to share The APP Solutions experience describing the discovery phase of a software project, it’s main stages, deliverables, and explaining why it is crucial for a project’s success.
When you start a new mobile app project there is tons of work to be done. This concerns, not only selecting the best mobile app development team, but also shaping the business idea, clarifying requirements, creating technical documentation, and finding the most appropriate tech solutions. There are too many tasks for you, especially if you are not a tech person. To complete all these tasks you can hire a development team to start discovery, or as we refer to it, the inception phase.
Apart from saving your time and effort, the discovery phase in software development also brings you the following benefits:
- Predicted results. We break down your project into smaller parts called use cases and user stories to clarify how one or other features should perform and then confirm the results with you.
- Flexible project scope. With the big picture of your project at hand, you can easily change the project’s MVP scope.
- Reduce development costs. Agreed project specification, architecture, and tech solutions allow us to describe the project in more detail, prioritize tasks more effectively and schedule the development phase in a better way.
However, all projects, as well as business goals, are different. Do you need to hire us for an inception phase for your particular project? Let’s find out.
The main objectives of an inception phase are as follows:
- Clarify the project vision
For this objective, we conduct several meetings to learn more about your project, i.e., what is the goal of your app, how should it perform, how many users and user roles it requires, and so on.
- Validate your business idea
To achieve this, we examine your potential competitors and find out about which technologies and solutions they use.
- Clarify the project requirements
Now, we list the requirements for your project which include functional requirement and non-functional requirements, i.e., what your project should do and how it should perform.
- Select technical solutions
Based on the vision of the business, project requirements, and technologies. This allows us to empower your project with the most suitable system architecture and technological solutions.
Since the inception phase includes many tasks from different areas, we gather a team of specialists with specific expertise in a particular sphere. As a rule, such a team includes:
Business Analyst (BA) gathers business ideas and initial project requirements, conducts market research, analyzes competitors, collects solutions that might fit your business goals, creates technical documentation, and makes assumptions concerning possible risks.
Project Manager (PM) shapes the way the project should work, its features, validates technical solutions with developers, estimates the project cost, prioritizes features, breaks down the project into functions, and iterations.
System Architect receives your project vision from BA and PM, analyzes the project system architecture, offers the most appropriate solutions, participates in writing technical documentation, and so on.
[Example of project system architecture]
Developers offer one or other technical solutions, including third-party integrations, SDKs, and other tech elements that are vital to make your project meet your business goals.
Designer visualizes your project by wireframing each screen, creating a user flow, making prototypes, and finalizing the project design in clickable prototypes.
[Our interactive mobile app prototype. You can try it on the link]
With this in mind, let’s dive deeper and find out more about how we conduct the discovery phase of project management.
The inception phase kicks-off after you've signed an NDA, given us the project vision, and approved a rough project estimation. The inception phase includes the following software project planning activities:
During this planning phase of the software development life cycle, our business analyst schedules a call with you to clarify your project objectives and strategy, including target users, monetization models, an estimated amount of users, and project scaling perspectives.
Next, BA conducts market and competitor research to find out whether there is a place for such a project on the market and showing how many similar projects already exist.
Now, we write down technical requirements for your project, start creating project technical documentation with use cases, user stories, suitable technologies, and third-party integrations.
By using use cases of your project, our designer starts making layouts, wireframes, and prototypes while consulting with you on each result.
Now, using a technical project specification, we prioritize features to identify the MVP’s scope, i.e., the list of functions sufficient to verify your business model and estimate the time and money required to implement one or other features.
When the inception phase is over, you have several options:
- You can use technical documentation to launch the development stage with our team
- Compare our technical specification with specifications provided by other developers and select the best one
- Hire other developers to build your project using our technical documentation, since we do not set a vendor lock-in for discovery phase deliverables
We have a flexible approach toward the inception phase, which allows changes according to your current project, goals, timelines, requirements, business goals, budget, and other factors.
Not all clients who hire us for an inception phase want to build a project from scratch. Some of them have a ready-made design, technical specifications, or a live project that does now work in the way it should.
There are three main scenarios in which we provide clients with the inception phase:
- Project from scratch
In this case, the main discovery phase objective is to disprove or confirm your business idea. To achieve this, we create technical documentation so that you can build the project’s MVP.
The main deliverables are user stories, use cases, mockups, diagrams with system architecture recommendations, a list with technologies, third-party integrations, and precise estimation of project cost and length.
- Project prototype without tech specification
If you have ready-made project design and prototype, you can hire us to shape the technical side of your project, such as system architecture, user stories, and feature lists.
In this case, you will receive technical documentation that will include high-level requirements, use cases, user stories with general user flow, project system architecture diagrams, detailed project cost estimation, and project timeframes.
- Improvement of a ready-made project
Such clients have ready-made projects, but they do not meet their business goals or, work improperly. For such clients, we conduct a code review and show you ways in which the project could be improved.
We provide a list of system errors and gaps, as well as recommendations on how to fix your project.
In a nutshell, the discovery phase of software development allows us to achieve predictable results in terms of business and technological solutions, reduce risks, decrease project costs, and receive a bigger picture of your project.
If you are ready to launch an inception phase with us, drop us several lines and our sales manager will schedule a call with you.
Get in touch