Regardless of the domain, all software products have a life cycle. The Product Life Cycle (PLC) is the cycle of stages that a new or redeveloped product goes through, from start to finish. Understanding how to manage that product life cycle through each stage determines the success or failure of a product.
Winning Product Canvas divides the product's lifecycle into 8 stages. These stages are unlike the Waterfall phases. They are iterative at product level, module level and even at feature level. These stages differ in subtle but important ways. By understanding the focus of each stage, you can understand the strategic activities within it.
This is the initial stage where the founder conceives the idea to solve a problem he/she identified. It’s important at this stage to take a holistic view of the problem domain and broadly explore. This is where you explore different possibilities before locking down on a focused product concept.
You should study and analyze different paths and possibilities the new solution may take. Activities include brainstorming for idea generation as well as studying competitive offerings, and research publications from the marketplace. This phase is somewhat similar to Divergence and Discover phases of the Design Thinking process.
- Product Concept Pitch Desk: Create a pitch desk (or equivalent) to present the idea to different stakeholders such as investors, partners and potential customers.
- Context/Competitor Analysis: Research into current market state, domain trends and study existing competition to understand the context.
- Commercial viability: Evaluate business/financial viability to ensure long-term continuity and ROI.
- Personas: Analysis of related user personas to understand pains, gains and the behavior of users.
- Value Proposition: The primary value that the company promises to deliver to customers. This is the declaration of intent or company's brand statement to consumers to communicate what the company stands for, how it operates, and why it deserves their sale.
- Service Blueprint & User Journey: Understand different paths a user takes to accomplish goals using the product.
- Mega Trend Analysis: Study current world & market trends to align the purpose of the product with a mega trend.
- Market Segmentation: Gather information about potential target markets and customer segments and the pros/cons of focusing on each.
During the explore stage, your team can usually come up with a vast amount of ideas and value propositions the product may offer. Success of a product has no direct relevance to the numerous features it offers. A smaller set of cohesive, targeted features are usually more effective than a large set of features.
Focus is the cycle to narrow down the attention to the most important aspects such as market segment, value proposition, brand story and the overall solution architecture.
- Business Model Design: Elaborate business context within the product, and to operate and achieve the business goals.
- MVP Identification: Identify the minimum set of features that can gain maximum learning and has low cost of implementation.
- Problem Solution Fit Testing: Validate if your solution effectively solves the customer’s basic problem.
- Low Fidelity Prototype: Translate the main features into a high-level prototype for the stakeholders to obtain feedback.
- Brand story development: Elaborate the purpose of the product’s existence from customer's point-of-view.
- Productization Blueprint: Implement product specific technical components such as multi-tenancy, licensing, standard APIs, plugins, etc.
- Technical Architecture: Underlying architecture of the platform, including hosting considerations, DevOps and tech stack selection. #TechArchitecture
- Feasibility Study: Verify if the solution is feasible to implement, operate and gain market traction with available resources.
Once the focus (niche) is defined, it’s time to delve into to the details required for solving the problem. During the immerse stage, you can consider solution's features, associated costs, timelines, etc. A lot of 'what if' analysis takes place and the base artifacts that are required for detailed planning are generated here.
- Brand Guide: Define the brand personality of the product including composition, design & visual theme, general look-and-feel, logo, name, etc.
- Data Architecture: Data architecture is composed of models, policies and rules or standards that govern which data is collected, data relationships, how it is stored, arranged, integrated, and processed. #DataModel
- Positioning Message: Positioning Message is a concrete message to test against the target market. It could be a tagline, short pitch, or an ad message. This will eventually be the way that the product is defined by consumers on important attributes.
- Engineering Estimations: Estimate the development efforts for functional and non-functional features. #CostBook
- Operational Cost: Run cost estimations on operations including infrastructure and training. #CostBook
- High Fidelity Prototype: Build a detailed prototype to demonstrate how the final product would operate and obtain feedback.
- Product Market Fit Validation: Make sure that the product is well tuned to solve the problem specifically for the identified target market.
- Product Roadmap: Prioritize and lay the features and releases in a product evolution timeline.
Once you analyze the impact of different variations during the immerse stage, you can create the initial plans for the rest of the project. Most of these plans are live documents that are kept updated right throughout the cycle.
Next you plan ahead the product development, implementation, operations without losing the ability to respond to market dynamics. It’s important to understand, this is NOT about making a 'Big Plan Upfront', but about making the base planning documents that can help with continuous planning throughout the lifecycle.
- Project Process: Set of activities and the systematic process which needs to be carried out to develop the product. This covers both engineering and delivery related disciplines. #DeliveryProcess
- Team Structure: Defines key roles, job responsibilities, boundaries, and values of the team. Simply put, everyone should understand who does what and their purpose in the team. #DeliveryProcess
- Architecture Blueprint: The architectural representation of the system's components. At the inception it could be the implementation of a feature vertically and the setup of the needed infrastructure to act as a guideline for further development. #TechArchitecture
- Delivery Pipeline: A CI/CD pipeline to automate steps in the software delivery process, such as initiating code builds, static code analysis, running automated tests, and deploying to a staging or production environment. #TechArchitecture
- Detailed Data Schema: Focuses on how to store data efficiently for retrieval, cost and performance. It also looks at data interaction interfaces (APIs) and data dimensions for analytics purposes. #DataModel
- Quality Assurance Plan: Consists of a systematic process to ensure the delivery of the product with expected quality. This includes test case formulation, verification process (regression and smoke testing), test automation and release quality management.
- Requirement Process: Process of deriving, defining, communicating, documenting, prioritizing and obtaining user feedback.
- Product Theme Integration: Represents the image of your product. This action focuses on crafting and integrating a suitable product theme and a visual element library to code with specific guidelines for developers.
- Define Key Metric Tests: Define quantitative key matrices (timeline, quality, market success) that helps to validate the achievement of business goals.
- Customer Onboarding: Define the customer onboarding process to seamlessly integrate customers across modules such as websites, demos, trials, licensing, payments, data migrations and resource provisioning.
- Digital Marketing Blueprint: A consolidated marketing plan that includes market segments, key messages, channels, lead capture, nurture, convert, up sale and referrals.
- Growth Hacking Plan: Explore low cost and smarter options to gain a rapid market reach in a short time for growth through referrals and up-sales.
- Error & Exception Handling: Proactive monitoring and log analysis of potential and of the errors occurred, to provide graceful recovery and diagnostic capability for support teams.
- IPR Management: Take actions to protect intellectual property of your business and technical innovations. Take necessary actions such as patenting, copy-rights, non-disclosure agreements and validating compatibility of third-party licenses.
- Release Management: Plan, manage, schedule and build a process to develop and release changes through different stages and environments. Techniques such as canary releases, dark launching, feature toggles, A-B testing are to be considered when testing and deploying changes to production. #DeliveryProcess
This is where you have the highest flexibility to change the solution implementation at a lower cost. Once the product passes this stage, changes become costly due to the involvement of other stakeholders such as customers. Make use of this stage to validate all the assumptions (technical, requirements, business) made during the previous stages.
Every requirement should be treated as an assumption with a plan to validate. Such validation can come in the form of MVPs, demos, user testing, architecture POCs, etc. During the build stage, consider onboarding pilot customers as testers to validate the primary value propositions.
- Architectural Runway: Incrementally prepare the architecture to support upcoming features and other requirements. Strike a balance between Big-Up-Front (BUF) and No-Up-Front (NUF). Set up architectural collaboration between the teams as the project gets bigger. #TechArchitecture
- Lead capture/CMS: Set up tooling and workflows for capturing and managing your potential customers. Invest on a Customer Relationship Management system to automate and provide a uniform experience.
- Code Quality Process: Establish a process to ensure code quality. Implement static code analysis and peer review processes.
- Test Automation Setup: Identify the high priority areas for test automation. Eg: regression tests and repetitive tests. Make the tests run on commits and deployments.
- Visitor Behavior Analysis: Build and evolve plans to analyze the patterns of potential customers to your marketing sites.
- Market Feedback Capture: Build mechanisms to continuously feed product development team with user feedback, sales team findings, competition behavior, support team findings, etc.
- Technical Dept Management: Create a process to identify and manage technical debt during the product development. Think of a time allocation for non-functional improvements in each sprint. #TechArchitecture
- Data Privacy Protection: Understand the data protection policies in target markets. Device strategies for data segregation and limiting access to production data. #TechArchitecture
- User Behavior Analysis: Build mechanisms to track and analyze the user behavior within the system with the aim of improving features and providing a better UX.
- Feature Prioritization Process: Set up a process to identify which features should go first. Specify the process to revisit the product roadmap as new knowledge becomes available. #DeliveryProcess
- Portfolio Management: Enable productization to extend your product into a portfolio. Define unified user experience, each product's UVP, integration between products, and formulation of clear message to market.
- Product Pricing Plan: Define the strategy to bill customers. Clearly communicate your strategy such as price/feature tiers, pay as you go, etc... #CostBook
- Release Gate Reviews: Define what levels of code quality, performance/load testing matrices that qualifies as passed for a production release. Implement automation or manual verification.
- User License Management: Build mechanisms for managing license agreements with users. Track usages for relevant features, license expiry, reminders, payments, etc. Implement restrictions based on price tiers and usage.
- Team Onboarding & Learning Plan: Create a quick ramp up guide on both domain, technical and process knowledge for new team members. Make them aware of their purpose and responsibilities in the team.
- Vulnerability Assessment: Implement continuous cycles for identifying, classifying, prioritizing, remediating, and mitigating of software vulnerabilities of the implemented code and third-party components. #DeliveryProcess
Once you reach this stage, all your major assumptions should be validated. Product UVP must be clear and willingness of the customers to pay for that value proposition needs be confirmed. This means most of the core features are available and tested by your early customers during the 'Build' stage.
During optimize, you tune the product further to achieve maximum performance. You also carry out testing required for it to be adapted by a bigger scale of customers. This means the product quality, stability, visual appearance, onboarding procedures, etc. should be made world-class during this stage.
- Analytics Review Process: Gather correct and current data and process them to identify patterns and make predictions. Use this to enable data driven decision making. #DataModel
- Cost optimization: Focus on reducing cost. Consider shredding unnecessary waste in platform services, tech debt backlog or team structure. Look into process improvements.
- Promotions Process: Creating a detailed plan including frequency, customer segments, market conditions, offerings, ad-word design and message.
- Customer Support: Plan and organize human resources, tools, documentation, training required, communication and troubleshooting capabilities to provide great customer service.
- Compliance & Approvals: Adapt to industry standards and certifications to design stronger, safer, more reliable products and get compliance approvals from relevant authorities and industry bodies (e.g: PCIDS, HIPAA, GDPR etc).
- Customer Contract Management: Define how to correctly manage contracts (versioning, tools etc) and SLAs for customers
- Tech Team Branding: Define a brand for the product team to have a powerful impact on team's alignment, effectiveness and engagement with each other and the rest of the organization.
- Performance Tuning Plan: Optimize system performance for best user experience, based on performance requirements and analysis on existing performance. #TechArchitecture
- Web Optimization Plan: Offsite (SEO) or onsite improvements provided for user experience so that customers will be more likely to convert to your website
- Log Indexing & Analysis: Process of reviewing, interpreting, and understanding logs to identify application health and to diagnose and rectify issues. Use this also to enable data-driven decision making.
This is where your product returns back the investment. The focus of this stage is to retain happy and loyal customers, up sell more and get referrals to grow the business. You need very stable operational processes to respond to the customer issues and inquiries. Build and tune your sales and marketing processes to capture a greater market share.
- Scalability Verification: Make sure your application scales as users grow. Explore scale up and scale out strategies while maintaining SLA obligations and efficient cost of operations. #TechArchitecture
- Continuous Improvement Strategy: Rapidly respond to market conditions and learnings to sustain competitive edge. Iteratively improve the product with improve , invent, or buy decisions aligning with business goals and timelines.
- Monitoring & Incident Management: Monitor system health, detect and alert about system malfunctions and failures. While exception monitoring deals with the problems within the product, incident management deals with the problems on the larger stack of software and hardware.
- Hot-fix Process: Define team and process arrangement to release an update to fix a critical or major error while maintaining SLA obligations in production. #DeliveryProcess
- Inbound Marketing Plan: Increase ‘quality’ traffic to the web site by pushing relevant content to the right-minded people via digital marketing channels such as search engine optimization and social media. Continue to help, support and maintain a relationship with both potential and existing customers.
- Lead Nurture Process: Start educating prospects, and build awareness of your organization and its products. Build trust and build a good relationship making it more likely that the potential client will choose you when it's time to buy.
- Referrals & Up-sales Plan: A plan that makes use of recommendations and word of mouth to grow the product's customer base through the networks of its existing customers while establishing customer loyalty. Also define how to market higher sales to existing customers (up-sales).
- Technology Revamp/Migration Plan: Roadmap for moving to better technologies to facilitate rapid response process, while boosting security, availability, performance and agility
- Public Relations Activity Plan: Strategize on how to enhance the image of the product brand and focus on influential media strategies.
- Contingency & Reliability Reviews: Plan and act the business continuity strategy to minimize business risks. Consider technical, market and environmental factors. Ensure that various drills are done in readiness. #DeliveryProcess
- Win-lose Analysis: Perform a win loss analysis on your leads to understand why you lost and what are the strong points in your application. Analyze these results with different demographics in mind.
Regardless of how well the product is built and maintained, there is always a retirement time for products. Retirement can be called upon by a major technology or user behavior change in the marketplace. At this point you re-invent the technology platform / business model / user experience to keep an edge in the market. ISVs should be watchful to identify this need so that they are able to disrupt their own business model before a competitor does.
When a next gen product is planned, it’s important to do it with minimal disturbance to the existing customers. You need to have clear and pain-free migration paths available and provide incentives/motivation for them to move-on. Long-term side-by-side operation of 2 major versions can be an extremely costly operation. For this reason, you must plan to complete migrating all your customers within a planned time span.
- End-of-life Roadmap: Identify under which circumstances to retire the product in view of migrating to the new product along with end-of-service support models.
- Data Migration Plan: Systematic plan to smoothly migrate users from the old platform to new platform without losing users’ data. Have a migration support strategy. Manage customer licenses and contracts to support migration activities.
- Platform Migration Plan: Create a strategy and an action plan to migrate all solution components from old system to the new system while running in parallel.
- Team Knowledge Transfer Plan: Create a plan to document both tacit and implicit knowledge and create a knowledge base to ramp up materials to transfer knowledge.
- Digital Data Shredding: With customer's consent to close the account, permanently delete data and provide a mechanism to export customer's data on request.
#TechArchitecture #DeliveryProcess #CostBook #DataModel