Software and digital product development is very costly, resource- and time-consuming. Judging from almost 10 years of development experience, we come to the conclusion that although the path of each product is unique, the risks and difficulties faced within most projects are the same. Most of them can be predicted or revealed and handled in the early stages.
We’ve accumulated the expertise collected through all these years to prepare tips and guides on how to manage the software development process to avoid mistakes on the way, and help your startup get to new business tops.
Wow, great idea! Or not?
So, your product development journey always starts one day when a great idea comes to your mind, and you decide to make the world better by implementing it.
The first thing you should do is think whether and whom your future product will help. If you can see your target audience clearly – it’s a good sign. Otherwise, dedicate a fair amount of time to define your potential users before you move further. This step is vital because you need to understand your user personas to draw up a marketing approach for each of them, and know for sure what features they expect to have in your product.
Your next step is to do comprehensive research to determine the market size and highlight your main competitors. There’s a probability you realize that there’s no demand for your product on the market. In this case, make sure that your idea is flexible enough to be adapted for other user groups.
When conducting market research, you can use the data provided in free benchmarking prospects and researches, as well as the information from government databases, polls, “fact tanks” like Pew Research Center, and more.
After that, you need to get a clear vision of how your competitors behave on the market. You need to analyze them from every angle to define their strengths and weaknesses, and see how you may compete with them.
Here’s the list of the tools and techniques that are designed to simplify this process:
Proof of Concept
You have an idea supplemented with a clear vision of your place on the market. It’s time to draw up your product roadmap including several stages preceding the launch of your app.
Let’s go over the most important ones.
This stage includes vision & scope planning, as well as business requirements elicitation.
Here, we firstly recommend defining the minimum amount of features your product must have to allow your main group of users fulfil their needs with it. To identify what these features are, try working with focus groups, interviewing your potential users, running surveys to gather opinions and define your users’ preferences. Do not try to implement all the features at once – focus on the key product functionality that will attract your audience.
As a result of this phase, you’ll have the list of the essential features your product must acquire before it hits the market.
The prototyping stage must be rapid: you have to be ready to easily change and test concepts. Your product prototype doesn’t have to be perfect, but it must bring value to your target audience. Generally, you need a prototype to allow your potential clients feel and taste your product, i.e. see its appearance, try UX, etc.
Well-made prototypes, although representing being mock-ups themselves, can (and should) have stunning design. To prepare it, squeeze as much as possible from low-code development platforms and other kinds of Open Source products as much as possible, for example:
- UI Bakery – a low-code development platform based on Angular for creating MVPs, white-label apps, etc. visually. It provides you with rich customization opportunities thanks to the Design System under the hood, free ready-made templates, predefined widgets, and various UI components.
- ngx-admin – a customizable admin panel app with 21K+ GitHub stars. This Angular admin dashboard has most of the components you need for building your application.
- Draftbit – a mobile apps builder platform powerful enough to create functional apps. However, you need strong mobile development skills to use it.
- UI Kitten – an Open Source free React Native framework that allows you to create cross-platform mobile apps while saving a lot of time and effort.
Figma, InVision, and similar design tools can also help you in preparing an interactive prototype in a cost-effective way.
User testing & hypothesis validation
When your prototype is ready, let your potential users assess and test it. Collect their feedback, understand how they interact with the interface, whether they get the flow right, etc. At this stage, you should look at your future product from all angles, and there’s one most important metric that will allow you to understand how popular your product will be – a North Star Metric (NSM). In most cases, it’s a conversion rate that you should carefully and iteratively monitor.
Once you collect your user testing results and reviews (that will be great if they are critical and controversial!), sum them up, analyze, and define what should be improved in your prototype. Repeat user testing if needed, and do not give up if your initial idea fails, or some of your hypotheses do not work. Failures are better be experienced at the early stages, since thus you save a lot of development efforts.
By this stage, you’ll have a validated hypothesis and a reviewed prototype. Time to build your first minimum viable product (MVP). It’s a version of your future full-fledged product with enough features to satisfy the primary needs of your potential customers.
Our own project experience has shown that marketing may affect an MVP scope a lot. For example, we had a project with 2 main user groups – beauty salon owners and their clients. The initial idea was to build and release an app with a list of salons where users could book an appointment. We assumed that the more beauty salon clients used this app, the more beauty salon owners would start using it as well.
In reality, it turned out that clients were not interested in using the app before the salon owners opted for it. We should have primarily focused on attracting owners. As a result, we had to change the MVP scope and rework the list of the features to be included. And we had to postpone the release for 2 months.
Put only the necessary functionality in your MVP – you’ll be able to extend the number of your product features in the next releases. To define the core functions your MVP must have, you can use Pareto principle: 80% of all users will use only 20% of your features, so include only these 20% in your MVP.
In order to develop a good MVP, you need to have a drawn-up roadmap and a development process you will adhere to. What differs an extraordinary project roadmap from a mediocre one? It’s the list of risks you predict to face, the evaluation of the risk impacts, and their mitigation plan. To make sure you cover all these points, use a Risk matrix. You can learn more about it from "What's right with risk matrices?" by Julian Talbot.
Concerning the development process, we recommend using iterative agile frameworks: they will allow you to properly manage the changes you’ll need to apply during development.
It’s crucial to estimate the efforts wisely and control your progress. Hardly any MVP development process goes the way it was initially planned. What to do in such cases? Be ready to constantly restructure your roadmap to make sure it corresponds with the development progress and newly occurring risks.
And here your journey begins...
Finally, the moment of truth comes. Your product is ready for its first release. To make sure it goes smoothly – turn to a small user group to “test the waters”, do not try to dive deep from the start.
We wish we could say that that’s it, but the truth is that this is a starting point of your journey. After your product is released, arm yourself with strength and patience, and get down to a lot of iterative work to develop and make your app more feature-rich and powerful. Regularly track your analytics and work on improving your NSM to expand your startup on the market.
We hope that this article will be a helpful hand for you in your product development process.
While we’re working hard preparing the articles on other topics, feel free to leave your questions here.
Akveo is an experienced team of full-stack software experts passionate about creating reliable software and ready to accept the next tech challenge. Our expertise lets us understand the essence of our clients' business needs to deliver the best solution possible. Plus, the use of our own products in development and design allows us to reduce development time and implement new solutions faster. Check what our customers say and contact us.