Vasu Patel logoVasu Patel
← From Idea to Production: the SDLC
All chapters in this track
  1. 01Chapter 1: Why the SDLC Matters
  2. 02Chapter 2: An Honest Comparison of SDLC Models: Waterfall, Iterative, Agile/Scrum, Kanban, Lean, Spiral, DevOps
  3. 03Chapter 3: Choosing and Adapting a Model for Team Size, Domain, and Risk Tolerance
  4. 04Chapter 4: Requirements Gathering and Analysis
  5. 05Chapter 5: The Design Phase and Its Connection to HLD/LLD
  6. 06Chapter 6: Implementation Practices That Keep a Project Healthy
  7. 07Chapter 7: Testing Strategy Across the Pyramid
  8. 08Chapter 8: Documentation Across the Lifecycle: Specs, ADRs, Runbooks
  9. 09Chapter 9: Release and Deployment: CI/CD, Versioning, Blue-Green and Canary Releases, Feature Flags
  10. 10Chapter 10: Operations and Maintenance: On-Call, Monitoring, Incident Response
  11. 11Chapter 11: Measuring Delivery Health: Cycle Time, Deployment Frequency, Change Failure Rate, MTTR
  12. 12Chapter 12: Case Study: The SDLC in a Five-Person Startup
  13. 13Chapter 13: Case Study: The SDLC in a Large Enterprise Team
  14. 14Chapter 14: Worked Example: Choosing a Process for a New Team
  15. 15Chapter 15: Common Interview Questions About the SDLC

Chapter 3 of 15

Chapter 3: Choosing and Adapting a Model for Team Size, Domain, and Risk Tolerance

Why this matters

Chapter 2 gave every model a fair, honest hearing in isolation. This chapter covers the actual skill: mapping a real team's specific size, domain, and risk profile onto a genuinely appropriate process — and, just as importantly, recognizing that most real teams end up with a deliberate hybrid, not a pure, textbook implementation of any single named model.

Team size as a factor

[SENIOR INSIGHT] Process overhead that's negligible at one team size can be genuinely burdensome at another, in both directions:

  • Very small teams (2-5 engineers): formal Scrum ceremonies (a dedicated sprint planning meeting, a separate sprint review) can feel like pure overhead when the entire team already talks constantly and has full shared context — a lightweight Kanban board with informal, frequent check-ins often fits better, since the coordination problem formal ceremonies solve barely exists at this scale.
  • Large teams/organizations (50+ engineers across multiple teams): the coordination problem is real and severe — without some formal structure (sprint boundaries providing synchronized planning checkpoints across teams, or a scaled framework layering coordination on top of individual teams' own Scrum/Kanban processes), cross-team dependencies become invisible and unmanaged until they cause a very expensive, late-discovered integration problem.

Domain as a factor

[BEGINNER] The nature of the software itself changes which model's trade-offs are actually acceptable:

  • Regulated domains (medical devices, aviation software, financial systems with audit requirements) often have externally-imposed documentation and traceability requirements that push toward Waterfall-like upfront rigor, or at minimum require significant formal documentation layered onto whatever iterative process is otherwise used.
  • Consumer products with fast-evolving requirements (a social app iterating based on user behavior data) fit iterative/Agile approaches well, specifically because the requirements genuinely aren't knowable far in advance — Waterfall's upfront-complete-requirements assumption would be actively counterproductive here, not just mismatched.
  • Infrastructure/platform work (internal tools, core libraries used by many other teams) often benefits from Kanban's continuous-flow model, since this work is frequently driven by unpredictable, continuously-arriving requests from internal consumers rather than a plannable roadmap.

Risk tolerance as a factor

[IN PRACTICE] A startup validating an unproven product idea has fundamentally different risk tolerance than a bank processing real financial transactions — and this difference should directly inform process choice, not just team size or domain alone:

  • High risk tolerance, need for speed (an early-stage startup testing product-market fit): favors lightweight process, fast iteration, and accepting some technical debt and process informality as a deliberate, reasonable trade-off for speed — Chapter 12's case study covers this concretely.
  • Low risk tolerance, high cost of failure (a payment system, a medical device, critical infrastructure): favors more rigor — more formal testing (Chapter 7), more careful release practices (Chapter 9's canary/blue-green deployments), and accepting slower delivery as a reasonable, deliberate trade-off for safety.

The honest reality: most teams run a deliberate hybrid

[SENIOR INSIGHT] Very few real, functioning teams run a textbook-pure implementation of any single named model from Chapter 2 — and this isn't a sign of doing it "wrong." A common, genuinely effective hybrid: Scrum's sprint cadence and ceremonies for planning and stakeholder communication, combined with Kanban's WIP limits and continuous-flow board visualization for how work actually moves day to day within a sprint ("Scrumban") — taking Scrum's predictable external rhythm and Kanban's internal flow-management strength together, rather than treating the two as mutually exclusive choices. Similarly, a fundamentally Agile/iterative team building a component with genuine regulatory documentation requirements might run Waterfall-style formal sign-offs specifically for that one component's compliance-relevant documentation, while the broader team continues iterating normally elsewhere.

A framework for choosing and adapting

[BEGINNER] Rather than picking a named model off a list, work through these questions in order:

  1. How well-understood are the requirements upfront, and how much will they realistically change based on feedback? Well-understood and stable → more Waterfall-like is viable. Expected to evolve significantly → favor iterative/Agile.
  2. What's the cost of a late-discovered mistake? Low cost → favor speed and lighter process. High cost (regulatory, safety, financial) → favor more upfront rigor and formal risk analysis (Spiral-like).
  3. How many people/teams need to coordinate? Small, co-located team → lightweight process suffices. Large, multi-team → some formal coordination structure is needed to keep dependencies visible.
  4. What's the nature of the incoming work — plannable in advance, or continuously arriving and unpredictable? Plannable → Scrum-like sprints fit. Continuous/unpredictable → Kanban-like flow fits.
  5. Combine elements deliberately, and name the reasoning — don't just default to whatever the last team you were on did, and don't feel obligated to pick one pure model when a reasoned hybrid genuinely fits better.

Common mistakes

  1. Adopting a process because it's popular or because a previous team used it, rather than reasoning through the specific team's size, domain, and risk tolerance.
  2. Treating a hybrid approach ("Scrumban," selectively formal documentation for one regulated component) as an illegitimate compromise rather than recognizing it as often the genuinely correct, deliberate answer for a real team's mixed needs.
  3. Applying a large-organization's coordination-heavy process to a very small team, or a small team's lightweight, informal process to a large, multi-team effort — process overhead needs to scale with actual coordination complexity in both directions.
  4. Not revisiting a process choice as a team's context changes — a process that fit a 5-person startup well may need real adaptation once the team grows to 50 people or the product moves into a regulated market.

Discussion / interview questions

  1. "How would you choose an SDLC approach for a new team, rather than just defaulting to Scrum?" Strong answer: Works through requirements stability, cost of a late mistake, coordination complexity, and the plannable-vs-continuous nature of incoming work — then chooses (or deliberately combines) elements from Chapter 2's models based on the actual answers, rather than defaulting to whichever model is most familiar or popular.

  2. "Why might a very small team find full Scrum ceremonies burdensome, while a large organization might need even more structure than standard Scrum provides?" Strong answer: A small, co-located team already has constant informal communication, making formal ceremonies redundant overhead; a large, multi-team organization has a real, severe coordination problem that even standard single-team Scrum doesn't address, often requiring additional cross-team coordination structure layered on top.

  3. "Is running a hybrid process (like 'Scrumban') a sign a team hasn't properly adopted a real methodology?" Strong answer: No — most genuinely effective real teams run a deliberate hybrid combining elements that fit their specific context (e.g., Scrum's planning rhythm with Kanban's flow visualization) rather than a pure, textbook implementation of one named model; this is a legitimate, often superior choice, not an incomplete adoption.

  4. "How should risk tolerance influence a team's choice of development process?" Strong answer: High risk tolerance and a need for speed (early-stage product validation) favors lightweight process and faster iteration, accepting some technical debt as a deliberate trade-off; low risk tolerance and high cost of failure (payment systems, safety-critical software) favors more rigor in testing, release practices, and possibly formal risk analysis, accepting slower delivery as the deliberate trade-off instead.

Chapter summary / cheat sheet

  • Team size, domain, and risk tolerance should each inform process choice — process overhead that's negligible at one scale/context can be genuinely burdensome (or dangerously insufficient) at another.
  • A framework for choosing: assess requirements stability, cost of a late mistake, coordination complexity, and whether incoming work is plannable or continuous — then choose or combine elements accordingly.
  • Most real, effective teams run a deliberate hybrid ("Scrumban," selective formal rigor for one regulated component) rather than a pure, textbook implementation of a single named model — this is legitimate, not a failure to properly adopt a methodology.
  • Revisit process choices as a team's context changes — a process that fit well at one size/stage may need real adaptation as the team or product's context evolves.