Developing a product can be an exhilarating and challenging undertaking. Each product launch is unique, involving stages such as ideation, research, and prototyping. However, there is a common process that serves as a starting point for software product development.
Additionally, it is important to view product discovery as an ongoing process that spans the entire lifecycle of the product. This includes stages such as generating ideas, validating them, testing proof of concept and prototypes, developing minimum viable products (MVPs), pre-launch preparations, and post-launch activities. In essence, the journey of discovering and refining the product should continue throughout its entire lifespan.
What is Product Development?
The development of a product involves the creation of a new product, starting from the generation of ideas and extending to its launch. The initial stages of product development entail brainstorming sessions where the idea is discussed and explored. Subsequently, the process becomes both creative and strategic, with various approaches being employed. However, without proper organization, it can be challenging to effectively combine creativity and strategy. This is where the six-step framework for product development comes into play as it helps standardize and define your work.
Stages of Product Development
Stage 1: Idea Generation
The first stage of the new product development process is idea generation. This stage involves generating a pool of potential ideas that could form the foundation for new products. The goal is not to generate foolproof ideas ready for implementation but rather to explore raw and unproven ideas that can be further refined and developed.
This should be a group discussion between all the stakeholders and different departments inside the organization, as they are experts by their experience, which opens up different perspectives and ideas to flow freely.
Real Life Example:
A report was usually sent out to a set of channel heads each morning by a support executive as his first activity every day, running a couple of SQL scripts, cleaning Excel, and emailing them. There were no issues until he was on leave for three straight days. The channel heads were not able to look into productivity and make better business decisions. Things were back to normal again until he left the job. Though the work is a minor workload, the impact on the business was huge.
During one such brainstorming discussion, UiPath came up from a place where we least expected it — Our clients!
One of our clients was furious with the delays in getting the reports from the product, he was very dependent on the support executives. He suggested to our support executive that we do certain automation with UiPath and have the reports triggered every day at 9:00am. This was a casual request raised by one of our customers, and after discussing this in the group discussion, we took it to our top 25 customers. To our surprise, everyone had this problem, and the delay could have cost us the subscription loss.
This was added to our product backlog and rolled out in the next 2 months, it not only resolved the problem but also acted as a good selling point to bring in a lot of good customers.
Stage 2: Market Research
After generating a pool of potential ideas, the next stage is market research. This stage involves screening the ideas and selecting the most promising one for further development. Market research helps businesses evaluate the potential demand, competition, and feasibility of the selected idea.
To put it bluntly, not all ideas generated are good, few could be a real game changer, and a few could eat up all your time and budget but end up not adding any value to the product. Let’s jump into an example of how to navigate this whirlpool.
- The Idea:
App localization is something that was on the roadmap, and many people in the organization wanted this, including the sales department to expand into new markets.
- Brainstorming Session:
Japan is the new market, it looked so lucrative to expand to a new region and make a presence there with a first-mover advantage. Everyone was so excited and decided to move up this feature on the product roadmap and start development on it.
- What happened next?:
For four months straight, we put in all the hard work of integrating additional languages as a JASON file and making the application ready in Japanese.
What we missed: Localization is not just about translating what is on the application to a different language, we need to do complete market research as if we are to start developing a new product from scratch for that specific customer base.
- What we should do:
1. Surveys and Questionnaires: Even after you decide to move forward with a feature set, it is important to run surveys and ask a lot of questions to the end user to understand their needs rather than give them what we have. This should be quantitative data from a large audience, not just a small group of known people.
2. Focus groups: Break down the results from the surveys to a small group of people to get quality results from discussing in depth each potential feature set and coming to a decision on which is more important to the product at this stage.
3. Development Squads: Once we choose the priority list or a module that you want to develop for squads to own, With a lean development model, build a small piece of the overall vision that you have and take it to the market for results to make the next development cycle better as an iterative process.
Stage 3: MVP development
Once the idea has undergone screening and selection, the subsequent stage involves the development of a Minimum Viable Product (MVP). An MVP refers to a simplified version of the final product that incorporates only the essential features necessary to address the target audience’s problem.
While an MVP may encompass multiple features, it is crucial for the product manager to ensure that these features are in line with the business’s vision and the evolving dynamics of the market. It is important to comprehend that the product under development should not become irrelevant in the market within a year or two. The MVP development phase typically spans from 3 to 6 months, and market research should be aligned accordingly. When it comes to
MVP development, there are several points to consider –
- Focus on solving core problems: The primary objective of developing an MVP is to address the core problems faced by the target audience. It’s important to identify the key pain points and prioritize features that directly solve these issues.
- Iterate and gather feedback: MVP development is an iterative process. It’s essential to release the MVP to a subset of users and gather their feedback. This feedback can then be used to refine and improve the product for subsequent iterations.
- Keep it simple: An MVP should be simple and straightforward, focusing on delivering the essential functionality and value. Avoid excessive complexity or unnecessary features that can unnecessarily prolong development time and make it harder to gather feedback.
- Balance between cost and value: While developing an MVP, it’s important to strike the right balance between cost and value. Allocate resources wisely, investing in features that provide the maximum value to users while keeping development costs manageable.
- Stay aligned with the business vision: A key consideration during MVP development is to ensure that the product aligns with the overall vision and goals of the business. Regularly review and assess the product’s alignment with the business strategy to avoid any deviations.
- Continuous learning and adaptation: MVP development is an opportunity to learn and adapt. Be open to feedback, embrace change, and use the insights gained from user interactions to continuously improve the product and make informed decisions for future development.
- Plan for scalability: While an MVP aims to address immediate user needs, it’s important to consider long-term scalability. Design the product architecture and infrastructure in a way that allows for seamless growth and expansion as the user base and feature requirements increase.
One of our client wanted to build a product with payroll processing and was very keen on getting a high class product out there as he is an chartered accountant himself, unknowingly he acted as a founder, product owner and the product manager all by himself, this project was given to us for development. After 6 long months with building pieces of attendance tracker, salary compliance, leave modules he realized there is something wrong and came back to us for a solution, we recommended that he only play the role of founder and translate the overall vision.
We started building just the attendance tracker where biometric integration is done with the devices and it just logs the In-time and Out-time to share an excel dump as output. There are a lot of versions that big companies won’t buy this software as the core module of leave management was not there, which was true and we bagged only 3-5 small time companies. We validated the product and kept building features for them, the best part was that due to their smaller size they were patient with the product getting evolved and helped us with prioritizing the core features. Literally paid us to drive the product towards betterment.
Stage 4: Market Strategy Planning
Once the MVP has been developed and validated, businesses need to plan their market strategy. This stage involves defining the target market, positioning the product, and determining the pricing, promotion, and distribution strategies.
Marketing strategy is certainly different for each industry. Crafting a successful market strategy in the IT industry involves a combination of understanding the market, recognizing the needs of the customers, and staying ahead of the technological curve. But the initial structure for each industry always remains the same.
Here is the example of market strategy planning in the IT industry for ChatGPT:
1. Understand the Audience:
Identified the industries and businesses that can benefit from ChatGPT, such as customer support, content creation, education, and more.
2. Highlight Unique Selling Points (USPs):
- Natural Language Processing: Company emphasized ChatGPT’s advanced NLP capabilities, highlighting its ability to understand context and provide relevant responses.
- Versatility: Showcased the versatility of ChatGPT across various applications, from customer support to content generation, tutoring, and creative writing.
3. Content Marketing:
- Blogging: Created millions of blogs across different websites discussing NLP, AI advancements, and applications of ChatGPT in different industries.
- Tutorials and Guides: Developed tutorials and guides demonstrating how businesses can integrate ChatGPT into their operations effectively.
4. Social Media Marketing:
Engagement: Engaged with the AI and tech communities on platforms like Twitter, LinkedIn, and Reddit. Participated in discussions and showcased ChatGPT’s capabilities.
5. Partnerships and Influencer Marketing:
- Partnerships: Partnered with tech-related platforms, AI communities, and educational institutions to expand their commercial version.
- Influencers: Collaborate with influencers in the AI and tech niche who can demonstrate and endorse ChatGPT’s capabilities.
6. User Engagement:
- Free Utilization: Provide free utilization of ChatGPT allowing potential users to experience its capabilities firsthand.
- Webinars and Workshops: Host webinars and workshops demonstrating how businesses can leverage ChatGPT effectively.
7. Data Privacy and Security Assurance:
- Transparency: Ensured transparency regarding data usage policies and highlighted the measures taken to protect user data and privacy.
- Compliance: Adhered to industry standards and regulations related to data protection and privacy.
By combining these strategies and staying abreast of industry trends, ChatGPT is now a leader in generative AI and NLP industry. It showcased its capabilities, and attracted a diverse user base across various sectors.
There is no standard rule book that works as a marketing strategy that fits all product and demography. We should always have a plan and not shy away from improvising. We built a content news portal for one of our customers, right from business name, branding kit and development for a particular state and language speaking audience. Though we did a lot of research in the early days, a week before launch we came to know that the name has a negative feeling among the user segment and a recent incident sparked even more negative publicity around it. Overnight we decided to rebrand the name, logo and the website to reflect something in alignment with good press. This decision we made helped us attract a good number of paid users.
Stage 5: Agile Product Development
Once the market strategy is in place, businesses can proceed with the Agile Product Development stage. This stage focuses on the actual development of the product based on the validated MVP and market insights.
This is a crucial stage that runs on an iterative loop with customer feedback and the market change, consider this a lifeline approach that runs through the product development stages where the idea becomes a functional product that can be launched to the customer base. To cover few key aspects of Agile Product Development we’ll look into,
1. Cross Functional Teams:
Individuals with diverse skill sets from business analyst, design, development, testing, project managers come together to form a cross functional team bringing unique perspective to the problem addressing their solution from the knowledge that they carry in their particular domain. This speeds up the decision making process as certain areas of the product are led by a group / individual expert leading to less blockage in the delivery.
2. User Stories & Backlog:
A bunch of user stories listed down is called a backlog and we prioritize the set of activities to be taken from this list.
User Stories are a simple note on what the feature / problem is all about with descriptive details on what is to be carried out. Many times we break down the set of activities or tasks as a story. Example of their difference is,
Story:
As a manager I should be able to view analytics on my dashboard
Task:
- Create a firebase account
- Clean up the naming on the controller files and firebase to have readable metrics
- Trigger export notification to user
3. Sprint Planning
From the above backlog, usually a set of user stories or tasks are picked to be worked on a fixed timeline. The duration is called a “Sprint” and it is set to 2 calendar weeks, but there is no hard and fast rule. Few companies have 1 week or 4 weeks as a sprint duration.
The ideal time of 2 weeks gives us a control on what we take as a development activity vs what we deliver. Any requirement change or misconception can be handled in the early stages when the duration is smaller.
Sprint provides clarity and focus to the team on what needs to be done from the team’s point of view and how the resources need to be deployed from the manager’s goal.
4. Iterative Development
Primary goal of this is to build the product in an incremental way, and have improvements on every cycle or sprint. As important as developing a feature is, we should also aim to ship the product to the market and get real time feedback.
Let’s say we are building an enterprise software product for an organization of 1000+ people, the idea was to build a HRMS. We are through with idea generation, market research and MVP – There is a clear need for such a tool. We look for competitor products and build almost 100% of the features and take it to the employees. After a month we find out that only 15% of the features are utilized and rest was not even opened, all employees want features that were not available.
The learning is that we should build features that can be shipped in a short amount of time and have room for customer feedback. A product’s fall is when it is built for the founders and investors – But the actual key played is the end user who is willing to give their time / money towards the product.
Stage 6: Testing
Once the product has been developed, it undergoes rigorous testing to ensure its functionality, performance, and reliability. The testing stage is crucial for identifying and fixing any bugs, errors, or usability issues before the product is released to the market.
Stages like unit testing, integration testing, functional testing and user acceptance testing are few rounds that are carried out before deployment. There are 2 high level categories like automation and manual testing to carry out the process.
For agile product development, testing principles follow a broad approach covering all the stages in testing mentioned above,
1. Continuous Testing
In this model testing and development are intertwined and seamlessly integrated. Automation test cases cover all the modules of the product ensuring the newly planned upgrade doesn’t impact existing functionality. This ensures product’s stability and efforts to fix the defects on each iteration
2. Test Driven Development (TDD)
Test cases are written even before we start the development, here we define the expected behavior of the feature and write the code which passes all the automation test cases. The objective is that we define the requirement clearly and very early on the development cycle.
3. Acceptance Test Driven Development (ATDD)
This is an extension of TDD, where the test cases are tied to user stories. A feature’s perspective of the end user is derived as a user story and the development is carried out to match the test case written. This ensures all the stakeholders are in agreement with the feature that goes out.
4. Exploratory Testing
Informal testing approach where the tester explores the product with his domain knowledge, random feature path and intuition to find any defects in the product. This will uncover edge cases that were not defined in the initial test cases.
Usually testing is always given the least amount of budget and time to get the activity completed, the reason being clients want to invest in areas where they can visibly see impact, like designing and development.
In 2021, we developed a customer facing product with a fraction of a team due to the budget constraint that they had, launch dates were closing in and there were a lot of additional ad hoc modules still not developed. The client chose to cut down on testing hours and managed to get the product out on the launch date with 10k+ users waiting to see the product demo. They did spend a lot on marketing to gather a huge customer base for the opening ceremony – You know what happened? The product screens broke, embarrassing themselves and the product image. 3 months later after another round of spending they got it right. We don’t have to spend money to learn from other’s mistakes but to observe and act.
Stage 7: Deployment
Deployment has become an ongoing and regular activity in today’s software development landscape. To facilitate seamless deployments, there are now CI/CD (Continuous Integration/Continuous Deployment) tools available in the market. When it comes to deployments, it is important to consider various environments such as development, QA, UAT and Production. There could be different names but the purpose of having them is the same. Each environment serves a specific purpose in the software development lifecycle and has different owners responsible for ensuring a smooth transition of functionality from one environment to another. Let’s deep dive into these environments and their respective responsibilities:
1. Development (Dev) Environment:
This environment is where the development team writes and tests code. It is a controlled setting primarily used for building and integrating new features. Developers have the responsibility of ensuring that their code functions correctly within this environment before it progresses to the next stage. Unit testing is also a part of this environment.
2. Quality Assurance (QA) Environment:
The QA environment is dedicated to extensive testing, aimed at identifying and resolving any bugs or issues. The tester/s on the project are the owners of this environment. The testing team validates the functionality of the code, conducts regression testing, and ensures that it meets the required quality standards. Collaboration between the QA and development teams is crucial for addressing identified issues.
3. User Acceptance Testing (UAT) Environment:
In the UAT environment, testing is conducted from the end user’s perspective. Users, stakeholders, or a dedicated UAT team validate the software’s functionality, usability, and overall user experience. Any feedback or issues encountered during this testing phase are communicated back to the development and testing teams for resolution.
4. Production Environment:
The production environment is where the fully tested and approved software is deployed and made available to users. It is critical to carefully manage and control this environment to ensure reliability, availability, and security. The deployment process to the production environment typically follows a comprehensive release management procedure and is coordinated by operations or system administrators.
There is a lot of fuzz around continuous deployment and a dedicated role for DevOps in recent years. Our practical observations was that having this resource on your project will significantly reduce the cost and build errors over time. One of our enterprise clients migrated to the cloud and we recommended going with CICD. Before this every time a fix was requested and the client wanted to see them in live product took at least one day post development. But after this pipeline was ready, the changes they wanted were quickly visualized which led them to give real time feedback improving their sales performance by 40% over the next year.
Stage 8: Commercialization
The final stage of the new product development process is commercialization. This stage involves introducing the product to the market and executing the marketing and sales strategies planned during the market strategy planning stage.
To determine that your innovation creates value you need to earn value from it. While “value” can be a bit nebulous and may differ depending upon the world-view in which it is being discussed, value is simply profits. The innovations that make money are the ones that last, and the ones that don’t, or don’t have a plan to, get lost.
Identifying the ways to commercialize a product involves understanding the product, market demand, and available resources. Till this point you already have your USPs(Unique Selling Points), target audience, market strategy, product, everything in hand. This is a critical step which requires a structured approach to identify potential commercialization strategies. Below are the few ways to determine the same.
1. Explore Different Commercialization Strategies based on your industry:
Direct Sales, Online Platforms, Licensing, Franchising, Subscription Model, Partnerships, Maintenance, training, or consulting services related to your product are the few common strategies.
2. Assess Feasibility and Viability:
- Cost Analysis: Calculate the costs involved in each commercialization strategy, including production, marketing, distribution, and sales.
- Revenue Projections: Estimate potential revenues considering different pricing models, market demand, and sales projections.
- Risk Assessment: Identify potential risks associated with each strategy and develop contingency plans.
3. Select the Most Viable Options:
- Shortlist Options: Based on your analysis, narrow down your options to the most feasible and potentially profitable strategies.
- Prioritize: Rank the shortlisted strategies based on their alignment with your business goals, available resources, and market demand.
4. Test and Iterate:
- Pilot Programs: Implement small-scale pilots or trials of your chosen strategies to assess their effectiveness.
- Gather Feedback: Collect feedback from customers, partners, and stakeholders during the pilot phase.
- Iterate: Based on feedback, iterate on your strategies, making necessary adjustments to improve their performance.
- Launch: Implement the chosen strategies on a larger scale.
- Monitor Performance: Continuously monitor the performance of each strategy, analyzing sales data, customer feedback, and market trends.
- Adapt: Be ready to adapt your strategies based on the changing market dynamics and customer needs.
We have to closely understand the dynamics of charging your customers, if your charge more you lose customer with dissatisfaction or competition, if you charge less you lose business profit – We gave a solution hack to one of our customer,
Have a minimum entry value for the customer to use your product, this will cover your 80% of clientele and they’ll be happy with just the basic feature offering. Charge a premium with all detailed analytics and priority support with implementing and cleaning up their data, this will cover 10-20% of your clientele. The surprising data is that these 20% users will contribute to 80-90% of your profits.
We have to closely understand the dynamics of charging your customers, if your charge more you lose customer with dissatisfaction or competition, if you charge less you lose business profit – We gave a solution hack to one of our customer,
Have a minimum entry value for the customer to use your product, this will cover your 80% of clientele and they’ll be happy with just the basic feature offering. Charge a premium with all detailed analytics and priority support with implementing and cleaning up their data, this will cover 10-20% of your clientele. The surprising data is that these 20% users will contribute to 80-90% of your profits.
Product Development FAQs
1. What’s the difference between product development and product management?
Ans. Product management takes a broader perspective, it defines the product vision, strategy, roadmap and alignment with business and customer needs. Whereas Product development focuses on technical aspects of creating a product with an engineering team.
2. Who are all a part of the product development team?
Ans. There are various roles in a product development team, based on the company size people wear multiple hats. In general we have,
- Product Manager – Product vision and strategy
- Product Owner – Customer needs & feature prioritization
- Scrum master – Facilitate development process
- Technical writers – User and recruitment documentations
- Development Team – Engineers & designers that build the product
- Testing Team – Ensures quality of the product
- DevOps Engineer – Automates deployment process
- Business Analyst – Requirements gathering for engineering team
- Data Analyst – Data driven insights for product roadmap
- Customer Success Team – Ensures customer satisfaction
3. What are the challenges that a team faces while implementing Agile Product Development?
Ans. Though we all know for a fact that Agile way of development benefits in many ways, there are numerous challenges a company needs to overcome,
- Resistance to change from team members.
- Time and resource constraints, as cross functional teams needs to be deployed in place dedicated to this.
- Availability of customer involvement.
- Overestimation and underestimation can impact the delivery.
- Technical debt, building it quickly under a sprint might cause additional cost if the development team has not fully understood the impact of the new feature.
- Implementing agile tools is a mandatory to keep track of the progress and hold everyone accountable in the ecosystem
4. What is the difference between Agile and Waterfall?
Ans. Both are widely used by organizations across the globe. If the project is well defined and stable the preference would be the Waterfall method and if it is dynamic with frequent changers Agile would be a perfect match.
Factors like organization size, project’s complexity and various other factors decide on which model suits, to analyze on few areas
Planning & Execution
- Agile is iterative and incremental with features broken down into small modules that can be delivered in a sprint
- Waterfall is sequential, from planning to completion has to be worked on a phase manner and cannot the intervened in the middle
Project control
- Agile relies on self control and distributed among team members to take decisions
- Waterfall relies on centralized control and stakeholder take decisions
Risk management
- Agile identifies and mitigates risk on a continual process, adjustments can be made as and when needed
- Waterfall addresses risk only on planning phase, adjustments made once the project is underway will be costly
5. Can we scale Agile for larger teams?
Ans. Yes, agile is not only designed for startups and midsized companies. It is scalable to large organizations as well. Few tweaks and approaches need to be modified to accommodate such needs.
6. What are some common tools and software used to support Agile Product Development processes?
Ans: Here are the most common tools:
- Jira – Create and manage user stories, track sprint progress, and visualize work on boards
- Trello – Simple yet powerful Kanban-style project management tool
- Asana – Create tasks, set priorities, and manage project timelines
- VersionOne – Provides features for release planning, backlog management, sprint tracking, and reporting
- Targetprocess – Allows teams to customize their workflow, track progress, and visualize work
- Monday.com – Work operating system that supports Agile workflows, project planning, and team collaboration
- Confluence – Create and share project documentation, sprint retrospectives, and other team-related content
- GitHub/GitLab/Bitbucket – Provide collaborative code management and issue tracking
- TestRail – Test management tools help Agile teams plan, track, and manage their testing efforts, including test case creation, execution, and reporting
7. How are user stories prioritized in a backlog?
Ans. User stories prioritization is very important for a successful Agile implementation. In short, most valuable work is addressed first. Various factors that determines the priority are,
- Business value
- Customer feedback
- Risk reduction
- Dependency on other items
- Critical bugs
- User Experience defects
- Effort and complexity
- Feedback loop from retrospective sessions
8. What is Scaled Agile Framework?
Ans. SAFe (Scaled Agile Framework) is an approach to scale agile across the organization. It primarily focuses on coordinating large groups of agile teams together for the greater benefit of the organization. These teams plan, commit and execute in a synchronized manner for larger deliveries.
9. What is a Large Scale Scrum?
Ans. LeSS (Large Scale Scrum) is a lightweight framework that extends scrum principles to large organizations. The key difference is that it emphasizes simplicity and complexity by reducing roles, titiles, ceremonies beyond scrum’s core elements.
10. What are Squads in Agile?
Ans. This is inspired from Spotify on how they scale agile to their large organization setup. Squads – small cross functional teams that operate like mini-startups. They are grouped into Tribes based on their alignment and strengths.
They also promote knowledge sharing and community building through chapters and guilds.