Stage: Build

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