Software Product Development: A 7-Stage Process From Discovery to Improvement

By Simon Kadota
Software Product Development A 7 Stage Process From Discovery to Improvement

How evidence moves an idea from user need to a secure, supportable product

A feature list can create the illusion of a product plan. It names screens and functions, but it says little about whose problem matters, whether the data and integrations can support the idea, how the product will reach users safely, or what will justify continued investment.

Software product development turns an opportunity into a working product through a series of evidence-based decisions. The work covers discovery, feasibility, design, engineering, launch, operation, and improvement. It is not a rigid relay between departments. Teams revisit earlier decisions when user research, technical tests, or production data reveal something new.

The goal at each step is to eliminate sufficient business, user or technical risk to support the next commitment. In this guide I will cover the seven stages, the evidence needed at each gate, who will be involved, the decisions that impact cost and time, and what should be contained in a credible development plan.

In this guide

  • What software product development includes and how it differs from SDLC
  • The seven stages from discovery through improvement and retirement
  • The evidence and outputs required at each investment gate
  • The roles and delivery methods that support the work
  • The factors that drive budget and timeline
  • The decisions to record before committing to a full build

What is software product development?

Software product development is the process of defining, designing, building, releasing, operating, and improving software, which creates enduring value for a defined group of users. It aligns product strategy, user research, design, architecture, engineering, security, operations, support and commercial goals.

That scope goes beyond writing and releasing code. The phases of software development and the software development life cycle are requirements, implementation, testing, deployment, and maintenance. That technical work is part of product development. Product development then adds the questions that answer whether a product should exist, who it should serve, how it will be adopted, how we will measure success, and when it should change or retire.

The difference is not a matter of form. Web sites are software products when they support persistent users, permissions, transactions, data, and continuing operations. A mobile app can still be a one-off project if the work ends with delivery and no team is accountable for its performance post-release. The differentiator is continuous product responsibility.

Use evidence gates, not a disguised waterfall.

The seven stages below are decision gates, not static hand-offs. Discovery and technical feasibility are not mutually exclusive. Architecture questions may alter the scope of the prototype. Production data can send the team back to a workflow or product positioning decision. The gate model controls that movement by recording what changed and why the next commitment is justified.

Each gate record should state:

  • Assumption: the belief carrying the most risk
  • Decision owner: the person accountable for continuing, changing direction, or stopping
  • Evidence threshold: the result that will count as enough support for the decision
  • Decision date: when the team will review the evidence
  • Possible outcomes: continue, narrow the scope, run another test, pause, or stop

The seven-stage software product development process

Each stage earns the next investment. A team can perform work from several stages at the same time, but it should not treat activity as evidence.

StageDecision and evidenceExit output
1. DiscoveryIs the problem worth solving? Use user research, workflow evidence, market context, and outcome measures.Problem statement, priority users, success measure, and risk assumptions
2. FeasibilityCan the product work within its data, integration, security, privacy, cost, and operating constraints?Architecture options, technical findings, and feasibility recommendations
3. PrototypeCan representative users complete and understand the core workflow?Tested workflow, prototype findings, and revised product decisions
4. MVPWhat is the smallest production release that can test the product case safely?Working on the first release, quality controls, and the measurement plan
5. ProductionIs the product secure, observable, recoverable, and supportable?Release candidate, operating plan, and launch recommendation
6. LaunchCan the team release, support, and drive adoption with controlled risk?Phased release, onboarding, support readiness, and production baseline
7. ImprovementWhat should improve, remain stable, or retire based on outcomes and operating evidence?Prioritized roadmap, maintenance plan, and retirement decisions

Stage 1: Product discovery

Product discovery is about identifying the problem before the team commits to a solution. It reveals priority users, the outcome they need, the current workflow, market context, constraints, and the assumptions that carry the most risk.

The GOV.UK discovery guidance makes a helpful distinction: discovery is about learning about users, context, and constraints before committing to a build. A practical discovery should address questions like:

  • Who experiences the problem, and how often?
  • What result are they trying to reach?
  • Where does the current process fail, create risk, or add avoidable work?
  • Which policies, systems, data sources, or operating rules limit the options?
  • What alternatives already exist, including the option not to build software?
  • What measurable change would make the product worth funding?

The output is not a big spec. This is a decision package containing a problem statement, priority users, current-state workflow, opportunity map, early scope, assumptions, success measures, and a research plan. When the team can articulate the reason the problem is worth further investment and what uncertainty to test next, discovery has been successful.

Project example: Quote This Project. The core uncertainty was whether homeowners and local helpers could complete one marketplace exchange without the product feeling like two disconnected systems. The product decision was to define the homeowner posting and quote-review flow beside the helper discovery and bidding flow before expanding scope. The visible outputs include a mobile-first product, role-specific workflows, a public website, and launch messaging. Post-launch evidence should track task-post completion, time to first quote, quote response rate, repeat use, and support issues. See the Quote This Project case study.

Failure to avoid
Starting with a preferred feature set, then using discovery to validate a decision that has already been made.

Stage 2: Technical feasibility and architecture

Feasibility asks if the product can work within the real constraints of the organization. The team looks at data quality, integrations, identity and access, privacy, security, expected load, hosting, third-party services, regulatory duties, ownership, and post-launch support. It should be a build vs. buy comparison where an existing tool can solve part of the problem.

Our custom software versus off-the-shelf software guide gives a deeper framework for that choice.

Architecture here is not a complete technical blueprint but a series of rational decisions at this gate. A useful record defines system boundaries, major components, data flows, external dependencies, security assumptions, expected operating conditions, and rejected options. Each option must relate to a user, business, or operational requirement.

The justification for a proof of concept is when one uncertain technical claim could derail the plan. Examples include pulling reliable data from a legacy system, meeting a response-time target, running a model on constrained hardware, or integrating with an undocumented interface. Keep the proof short. Its job is to answer the risky question, not to become an accidental production codebase.

Failure to avoid
Committing to scope, price, or delivery dates before the team has tested a critical dependency.

Testing the feasibility of an AI-enabled product? EspioLabs researches architecture, data, model performance, integrations and security constraints before a concept moves into full engineering. Explore our Research & Development capabilities.

Stage 3: Product design and prototyping

Product design turns the problem into a workflow that a person can complete. Before designing the interface, teams map tasks, information needs, decisions, permissions, error states and handoffs. A prototype allows you to test the riskiest parts without the expense of full engineering.

A weak workflow can look convincing with visual polish. It does not tell you if users know what to do, trust the information, understand the consequences of an action, or can recover from a mistake. Test realistic tasks with representative users. Record completion. Critical mistakes. Hesitation. Misunderstood labels. Confidence. Unexpected routes.

The Government of Canada Guideline on Service and Digital supports continuous user testing, iterative delivery, and accessibility from the start.

The exit decision should document what changed after testing, what risks are still present, and whether the core workflow is ready for production engineering. A prototype is proof that it can be used and understood. It doesn’t prove demand, retention, or commercial viability.

Failure to avoid
Treating stakeholder approval or polished screens as evidence that users can complete the task.

Stage 4: MVP engineering

An MVP is the minimum production scope needed to learn from real use. It is not the smallest collection of features that can be shown in a demonstration.

Pick one meaningful outcome for the user and show the whole path to get there. A booking product may require availability, confirmation, cancellation, and notifications. The first release of a portal dealing with private records may require authentication, permissions, audit history, and account recovery. The controls are included with the product, not as optional finishing work.

Quality remains in scope. The first release still requires code review, automated tests at the right levels, useful logs, error handling, secure configuration, accessibility checks, and a repeatable deployment path. A narrow scope does not mean a brittle release.

Define the learning plan next to the backlog. State the assumption that the release is testing, the behaviour or outcome that will be evidence, how long the team will observe, and what action will be taken after each possible result.

Failure to avoid
Cutting security, reliability, accessibility, or recovery controls instead of reducing product scope.

Move from concept to validated prototype. EspioLabs helps organizations test AI, machine learning and intelligent automation concepts, measure the critical assumptions and prepare successful prototypes for production. See how our R&D process works.

Stage 5: Production engineering

Production engineering puts the product into condition for real users and real failure conditions. The team establishes controlled environments, a CI/CD pipeline, configuration management, performance tests, accessibility tests, monitoring, alerting, support procedures, backups, and rollback steps.

Security must be throughout the lifecycle. NIST Secure Software Development Framework groups practices into preparing the organization, protecting software, producing well-secured releases, and responding to vulnerabilities. NIST says these practices are risk-based work that can be integrated into any development lifecycle, not a security phase at the end.

Release readiness is evident. The team needs a production baseline, named alert owners, incident triage rules, recovery targets, and a rollback path that is tested. The gate closes with a launch recommendation, known residual risks, and a plan for operation.

Failure to avoid
Shipping a technically complete release without monitoring, support ownership, recovery tests, or a rollback decision.

Stage 6: Launch and adoption

Launch exposes the product to users in a controlled environment. A pilot group, phased rollout, or feature flag can limit exposure and get feedback faster. The team should rehearse the release, verify support coverage, write user communication, and set criteria that will stop or roll back the rollout.

There is adoption work in the launch plan. Users might require onboarding, migration assistance, administrator training, documentation, or help transitioning from an old workflow. Product analytics need to track activation, successful task completion, errors, support demand, and early retention without taking any unnecessary personal data.

One deployment. Launch is when the team demonstrates that users will pick up the product, and the organization can maintain it responsibly.

Failure to avoid
Calling the project complete when the software is deployed, before users have adopted it or support teams can run it.

Stage 7: Continuous improvement and retirement

Continuous improvement uses the results of the product and the evidence of operations to decide what to change next. The team combines usage data, user research, support patterns, reliability signals, security findings, and business outcomes. Feature requests are inputs, not automatic destinations.

The product roadmap should separate growth work, reliability & security maintenance, technical debt, compliance obligations, and experiments. Every item needs a reason, an owner, and some level of success. There are decisions where you leave a stable product alone.

Retirement is part of the full life cycle. When the ongoing value of a product or feature is less than its cost in dollars, risk, or confusion, it should be retired. Retirement planning includes user communication, data export, retention and deletion, contract obligations, replacement workflows, access removal, and infrastructure shutdown, including third-party services.

Failure to avoid
Building every request, postponing maintenance indefinitely, or keeping low-value features alive because no one owns the retirement decision.

Who is involved in software product development?

The team changes with product risk and scale, but every discipline should have a named owner. One person can cover several roles in a small engagement. The responsibilities still need to be visible.

  • Executive sponsor or funder: sets the investment boundary and approves major gate decisions
  • Product lead: owns the outcome, priorities, scope, and decision record
  • User researcher and product designer: test user needs, workflows, comprehension, and accessibility
  • Technical lead and engineers: own architecture, implementation, testing, deployment, and maintainability
  • Security, privacy, and compliance leads: define controls and verify obligations based on product risk
  • Quality and accessibility specialists: test critical paths, failure conditions, devices, and inclusive use
  • Operations and support owners: monitor the product, respond to incidents, and preserve service continuity
  • Go-to-market and customer teams: prepare positioning, onboarding, adoption, and feedback channels

Which delivery method fits the work?

The evidence-gate model does not require a waterfall delivery process. It dictates investment decisions. The team can still do research, design, engineer, and release in brief iterations.

Agile principles are suitable for products where learning will alter requirements and working software can be reviewed frequently. Lean product practices help teams test assumptions before committing to large batches of work. Where regulation, safety, procurement, or fixed external interfaces require formal approval and traceability, more plan-driven controls can be appropriate.

Most product teams use a combination. They have explicit gates for funding, risk, and release and use iterative delivery within each gate. The method should make uncertainty visible, instead of pretending that all requirements are known from the beginning.

What determines the timeline and budget?

No credible team can estimate a software product from screen count alone. Time and cost depend on the uncertainty and operating responsibility attached to the product.

  • Number of user roles, workflows, permissions, and exception paths
  • Data quality, migration volume, and ownership
  • Third-party integrations and the reliability of their interfaces
  • Security, privacy, accessibility, and regulatory requirements
  • Performance, availability, recovery, and support expectations
  • Web, mobile, desktop, or device-specific release requirements
  • Administration, reporting, content management, and audit needs
  • Amount of research, prototyping, and technical proof required before engineering
  • Post-launch monitoring, maintenance, support, and improvement capacity

A useful budget separates discovery and validation, product engineering, contingency for known risks, launch work, and continuing operating costs. Milestones should purchase evidence or a working outcome, not a volume of activity.

Should you build an internal team or use a product engineering partner?

The right delivery model depends on strategic value, time pressure, internal capacity, specialist risk and the expected life of the product after launch.

FactorInternal teamProduct engineering partner
ControlDirect day-to-day prioritizationShared governance with defined decision rights
Start speedHiring and team formation can extend the start.An established team may begin sooner
SkillsFits stable, recurring product needsUseful for architecture, UX, security, or delivery gaps
ContinuityKnowledge remains close to the organization.Depends on code access, documentation,, and handover terms
Cost modelEmployment cost and management overheadScoped or capacity-based investment tied to outcomes

Many organizations use a blended model. Internal leaders retain product strategy, domain decisions, and long-term ownership. A partner supplies discovery, design, or engineering capacity, then transfers knowledge through shared repositories, architecture records, operating guides, and paired work. The contract should state who owns the code, cloud accounts, data, documentation, and release process.

For detailed procurement criteria, see how to choose a software development partner.

Need specialist R&D capacity for an advanced software initiative? EspioLabs combines applied research, data engineering, AI development and software architecture to help internal teams investigate difficult technical problems and build validated solutions. Explore EspioLabs Research & Development.

What a credible development plan should contain

A credible plan gives funders, product leaders, designers, engineers, and operators the same picture of what is known, what remains uncertain, and how progress will be judged.

Record these items before committing to a full build:

  • A problem statement tied to a measurable user and business outcome
  • Priority users, their core tasks, and the context in which they work
  • Market and workflow evidence supporting the product opportunity
  • First-release scope, explicit exclusions, and the learning goal
  • Architecture assumptions covering data, integrations, security, privacy, and scale
  • A risk register with owners, tests, evidence thresholds, and decision dates
  • Milestones tied to evidence or working outcomes rather than activity alone
  • Quality gates for security, accessibility, performance, recovery, and release readiness
  • Ownership for product decisions, code, infrastructure, data, support, and improvement
  • A measurement plan covering adoption, product outcomes, reliability, and support demand
  • A budget range with assumptions, contingency, and post-launch operating cost
  • A decision log explaining what changed, why it changed, and what would justify revisiting it

The plan should change when the evidence changes. Decision records protect continuity when people change and stop old assumptions from becoming invisible requirements.

Fund the next evidence point.

Software product development is most effective when each stage attracts the next investment. Discovery reveals the issue is important. Feasibility proves that there is a credible technical path. Prototyping suggests that users can complete the core workflow. MVP engineering proves the product case in real use. Production engineering keeps the release sustainable and secure. Launch demonstrates users can adopt continuous improvement, which dictates what needs to be invested in more and what should be retired.

The next question is not, “Can we build every feature?” It is, ‘What evidence do we need to commit further?’ That shift leads to a clearer scope, better technical choices, and a product team that can react to new facts without losing its direction.

Ready to move an AI software idea from assumption to evidence? See how EspioLabs takes advanced concepts through exploration, prototyping, validation, engineering and operationalization. Explore Research & Development.

References