9 Product Development Phases That Make Your Life Easier: Based On A True Story, My Story
How many project managers does it take to change a lightbulb? Only one, but you’ll require a scope change to get them to turn it on.
Let's put it bluntly, most people aren't good at planning. People are strong in improvisation and the ability to gather at a critical moment, producing amazing results. But life shows that a team of programmers on such an ideology will not go far. Heroic efforts at one time cannot compensate for indifference at another. Let's sort out which product development process steps are the key ones and what happens to the project and your budget if you overlook them.
Defining business goals and setting up product development process
Before going anywhere, you need to set a goal. Otherwise, your path will turn into a walk - good for health, but completely ineffective. When you start developing a product, you must clearly define what goals you are pursuing. Let's take an example.
Bill came up with the idea to create a restaurant reservation service. Bill knows that such a solution is in demand, many bars and restaurants implement such services on their own, but the quality is poor. Therefore, Bill and a partner decide to create their own restaurant reservation service and then sell it as a SaaS. In the process of discussing this idea, new and new features come to mind. You can connect payment systems, you can create a service that will predict the likelihood of booking a table or calculate the optimal time to visit a particular restaurant.
Bill comes with this abundance of ideas to the vendor, they make him count on all the voiced features. When Bill gets the long-awaited offer, the development cost equals the cost of a decent ranch. And if it is clear how to build a business on a ranch, then what to do with a table reservation service, which may be completely unclaimed, raises many questions.
What advice do we have for Bill? Correctly set business goals correlate the amount of investment in an idea and ways of implementation. If you and I were Bill, we would start by describing the entire project. This is called the Product Design Phase or Discovery Phase. This phase is aimed at collecting all the requirements for the project, their description, visualization, and costing. Having studied the results of this phase, we can build for ourselves a plan for the implementation of our idea. The next step is usually building the MVP. Or it could be complete product development.
The further development of events and the fate of your project depends on how you set a goal at an early stage. In addition, you need to understand how these goals will be measured.
The goal of building a restaurant reservation service sounds good, but it doesn't tell us at all when we’ll know we’ve achieved it and how we will measure success. The correct and measurable goal is to launch the first version of the table reservation service into production by March 2022.
Сreating roadmap and priority scope in product development plan
We have decided that we need clear and measurable goals. Now that we have set a goal, we need to come to it somehow. If my team brings an idea, I always say - well, let's do it, but first show me the plan. Everyone in my top management team has their own graveyard of ideas. “I didn't want to do that idea anymore, boss.”
Let's go back to Bill. The goals are set. The goals are measurable. This is a strategy. But the strategy is dead without tactics. The roadmap answers the question - in what sequence we will implement our next steps, and prioritizing the scope allows us to decide what functionality we need and at what stage. These two things are closely related.
Poor Bill decided that he, as a mastermind, could himself prioritize the scope and create a roadmap for the product. Well, let's see where this story takes us. The most important functions for MVP were chosen: login, registration, several roles - restaurant and visitor, adding a schedule for the restaurant, the booking window itself, and connecting the payment system. Looks feasible, agree.
Let's assume that this is how the application was developed.
The first users came to the system. And Bill wondered how many restaurants and users there are in his system, how many reservations were made in the last month. It would be useful to know these metrics and build marketing based on the data in the application. Only this information is not available anywhere in the application. And Bill is forced to go into the database and manually calculate these indicators.
Disclaimer: Do not try to repeat these steps yourself. Everything you hear now has been done by professional stuntmen.
An attentive listener will ask - what about the payment module? But nothing. Its use has not been well thought out and the need for its implementation has not been assessed.
What would we do if we were Bill? Drew up a roadmap with an experienced PM and prioritize a scope in the product development timeline with BA. These people have the expertise and understanding of how software products work. Here is a little insight. A mature service company provides not only development services, but it also advises the client on how best to achieve his goals.
The right tactics will help you reach your goal in the shortest possible way. Fewer hours means less hole in your budget.
Defining technology stack and tools for product creation process
And now we get to the most technical part. Choosing the technology stack and the tools to use can be boring. But trust my experience - choosing wisely at the beginning will save money in the future.
Why do I pay so much attention to the choice of technology? It would seem that this is a purely technical thing and business owners may not delve into this. But this is only at first glance.
Let us turn our eyes to Bill again. His service is supposed to be easy to use and should require a minimum of user interaction. It can be implemented both as a website and as a mobile application. We primarily think about the convenience of our end-user. Let's say Bill decided to make a mobile app. And we suddenly open Pandora's box. Bill intends to implement the application for two operating systems - Android and iOS and write in native languages. So far, everything looks logical. Only the cost of realizing the age is doubled. Do you think there could be an alternative? My answer is that there is always a choice.
What would we do if we were Bill? Choose wisely. I will share with you life hacks on the choice of technologies for the process of product development:
- The technology must match your products. There are different types of languages that are good for certain tasks. For example Python. It is the most requested language in the AI world. Can AI tasks be done on .Net? Sure. Only the efficiency and quality of such a solution can leave much to be desired.
- Development of technology. Since the world does not end after the release of the service to production, you should think about the support. How much technology develops and updates are important parameters to choose from. There is such a language called Cobol. It appeared 62 years ago. Nice language. Often used in the banking system. Only there is a nuance - the developers of Cobol are about the same as the language itself. It does an excellent job with its functions and the systems that are written on it work great. But there are few innovations and changes in it. Therefore, all modern systems strive to select new languages that will respond to the needs of the market.
- Market volume. Yes, you heard right. How many specialists know how to write in the chosen language. Our friend Bill will be very sad if only 1000 people can support his application.
When choosing technology and tools, remember that you will live with this choice for the next 5 years.
Сreating resource plan and team onboarding plan
It's all about people. At the end of the day - your success depends on people. Over the 17 years of our company's life, we have gone through all the stages of working with people. We know the cost of poor hiring, we know the cost of choosing someone who is not the right fit for the project. As a service provider, we understand that a good team that works harmoniously will lead our clients to success. Now I will speak from the perspective of a person whose business is based on the human factor. When looking for a person to join a company, we check not only his hard skills. This is important. But it can be taught. But how much a person can work in a team, communicate, how flexible he is and how to work for a result - this is much more difficult to teach.
I'll tell you with an example. When a new project comes to us, from the very beginning we choose the team that is most suitable for our client in terms of hard and soft skills. We have worked out the processes of team onboarding into a new project or an existing one. This is especially important for a running business. One of our advantages is seamless integration into the client's team.
The first thing we start with is to study the team's processes and, on this basis, build an onboarding plan. To integrate seamlessly. We study code, architecture, the culture of coding. We always start with bugs. The developer will be able to better understand the system if he fixes it.
In situations when the new product development process starts from scratch, the whole team is not needed from the first day. The beauty of working with vendors is getting the right people on board at the right time. And it saves money great. When an in-house team is assembled, your task is to provide the guys with work. You don't want to pay them for the bench. Working with our clients, we build a resource plan in such a way that the right specialists are connected at the right time.
The wrong team will not be able to deliver the expected result and will burn money. It is important to remember that the business owner wants to see the result, not the process.
Planning stages of new product development and metrics are your best friends
Imagine you decide to drive from coast to coast. What needs to be taken into account - to plot a route - a roadmap development already familiar to us, after that we need to choose what we want to see on the way, perhaps Aunt Betty has been waiting for us for a long time - this is our old friend, a prioritized scope. It won't be so fun to drive alone - we take a team. We discussed it above. Now the most important thing is to make a plan and define for ourselves the metrics that we need to track. How much we want to travel in a day, where we will spend the night, how much time we will spend in one place or another. As you may have guessed, this is our action plan. Last, but not least - let's estimate how much gasoline, food, overnight stays, and souvenirs will cost us.
Proper project planning allows you to achieve your goals optimally. Let's remember Bill. If the work on its service is poorly planned, then the function of entering the application can be done for the first 2 months, and try to keep up with the rest of the functionality in the remaining month.
As project managers like to say: "The first 90 percent of a project schedule takes 90 percent of the time. The last 10 percent takes the other 90 percent of the time."
A cool project manager will be able to properly plan the work on your application, form your expectations and make delivery on time. Work on any project is always in the iron triangle - Scope, Cost, and Time. These three concepts are also important to project metrics. How long will it take to develop the selected scope and how much will it cost as a result.
Competent planning will save you nerves and nerves. The right development plan will lead you to success in the most optimal way. Metrics for your project are a health check, without which you cannot get to any coast.
IT product development processes are the road to success
The past year has shown us that we live in an environment of great uncertainty. Literally in one day, the world changed. Those who had processes were able to adapt easily. I'll tell you about the example of our company.
One day we had to switch from the office to the remote mode. We had one day to distribute equipment to people, help with logistics and delivery and, of course, calm them down.
In the first week, we started redesigning all our processes to work remotely. We created new processes for work, processes for life-work balance on the fly. We managed to do this easily and relatively quickly because we know that the right processes are the key to success.
Let's remember Bill. It seems he got bored without us.
When Bill was building his product, he was not told about the importance of processes and product development steps. The SDLC has been conceived to achieve optimal results. The processes behind these four letters will allow any project to be done efficiently and in accordance with expectations.
Our friend was not told that the architecture of the entire application will depend on how the requirements are worked out at the Product Design Phase. Bill didn’t know that it’s not a good idea to insist on adding new functionality in the middle of a sprint. Or refuse to test to cut costs.
In the early stages, Bill tried to manage the project and the development process himself. This is his brainchild. His ideas. He knows the best. And we will modestly keep silent about the unwisely spent money.
Let me share with you how we do delivery in Ardas.
Any software product development process begins with the Initiation phase. We get to know the project, get to know the client, select the most optimal team for him. We think over when it is correct to connect this or that specialist. At this stage, we work out the requirements, begin to create project documentation, and set up processes and routines within the team. There are important rituals in Scrum that help us manage projects transparently. We hold weekly meetings where we show the results of our work and talk about our plans for the next week. If difficulties arise, we discuss them with the client, thereby working with expectations. At the end of each sprint, we conduct a demo of the work performed, collect feedback and make corrections if necessary.
Before the start of development, we always draw up a plan and present it to the client. Each of our steps is described, put on a Gantt chart, and communicated transparently. When building this plan, we always take into account the client's business goals. We synchronize with marketing activities. The task of the project manager in the early stages is to establish communication and trust with the client. We also share our business expertise.
Our many years of experience help our clients to implement their plans.
During the development phase, we closely follow our delivery plan. We work with blockers, pitfalls, and risks. Our company is a trusted partner, not just a vendor.
The right processes with the right people can work wonders. It is much easier to customize a process that works well than to create it from scratch every time.
Define, plan, implement and review
Each project has 5 main stages - Project Initiation, Project Planning, Project Execution, Project Monitoring and Controlling, Project Closing.
All successful projects are united by one strategy - we must determine what we are doing, plan correctly, implement it efficiently and on time, and at the end make a review of the work done.
In Scrum, this happens every sprint, which allows for agile development, responding to the needs of the market and the client, following market and demand trends.
This approach reduces the cost of a mistake to one sprint. This approach can be followed in other areas as well. A business without constant reviewing what it does cannot survive.
I will share small life hacks for each item.
- Define. I talked about this at the very beginning. Define your goals correctly. Even if it's a hypothesis. Take one that is easy to test. This will help you quickly pivot if needed. This is where MVP comes to the rescue. Correctly chosen features for the first version of the product will show how the market reacts to it. Will users love it? We did research in our company - an MVP can cost from 70 to 140k. But a lot depends on your appetite.
- Plan. A properly constructed plan will help you optimally achieve your goal. The project manager is the very guide who will lay the route to your goal. The cost of poor planning is your time and money. At Ardas, we have PMO, which accumulates best practices, compiles guidelines for our PMs, and constantly works to find optimal solutions for project management. And of course, he collects the best jokes about PMs.
- Implement. Implementation is the most exciting part of the process. When the idea takes on forms and meanings. It is important to choose professionals who can implement the idea in the best possible way. It is important to monitor the quality and that the expectations coincide with reality.
- Release. This should be a triumphant part of your project. If all the stages have been thought out correctly before, then from this moment your child takes the first steps and slowly begins to return all the money spent on it.
- Review. Constantly analyze what was done and how to choose lessons learned for yourself. It is much easier to fix something from the very beginning than to try at the very end later. Always give honest feedback. Do not be shy. Telepathy is out of fashion this fall.
After all that has been said, I would like to say a few words to our friend Bill.
I am Andrew, the CEO at Ardas. We develop and bring the most ambitious ideas of our clients to life. For 17 years of work, I have defined 9 stages of new product development process that allow you to create projects of high quality.
- First things first. You need to start with correct and measurable goals. They are the foundation of everything. Determine what you want to do, estimate the costs, and hit the road.
- Choose the right people. Team, vendor, consultants. Anyone who influences the result should have the same values and approaches.
- Build the right team. In development, you will need BA, PM, architect, designer, tester, DevOps, and, of course, developers. If you remove someone from this excellent company, the result will suffer, and you will suffer.
- Expect the unexpected. You know he’s out there - Murphy and his law stipulating that anything that can go wrong will go wrong. Most projects, especially lengthier and more complex projects, aren’t completed on time or within budget. Not in Ardas. But you need to be prepared.
- Keep the team in the loop. Always inform the team about changes.
- Measure success. There are always indicators and KPIs that say everything is going according to plan or not.
- Maintain a flexible strategy. Stuff happens. Avoiding a problem in the project and hoping that it will simply disappear has a nasty habit of snowballing into an even worse problem. If something is out of our plan we need to change.
- All changes will take additional time, budget, and effort.
- Learn from your mistakes. Be wise and borrow experience from professionals.