The Myth of Knowing Everything Upfront in Software Development

TL;DR

You cannot know everything upfront in software development, so focus on continuous discovery and adapt as you learn. Scrum supports this by encouraging just enough planning and design to move forward, then delivering and learning from real use. Prioritise delivery and feedback over excessive upfront design to create more value.

16 June 2025
Written by Martin Hinshelwood
1 minute read
Comments
Subscribe

One of the biggest fallacies in software is the belief that you can know everything upfront. That’s why some teams try to carve out “Design Sprints” to feel more in control.

But real product development doesn’t work like that. Discovery is continuous. Ideas evolve. Assumptions break. Value emerges through use.

That’s why Scrum embraces uncertainty. Refinement is your chance to explore future work just enough to be ready, without wasting time planning things that might never happen.

Build just enough design to support delivery. Then deliver. Get telemetry. Learn. Repeat.

If you’re spending more time designing than delivering, you’re likely optimising the wrong part of the system.

Smart Classifications

Each classification [Concepts, Categories, & Tags] was assigned using AI-powered semantic analysis and scored across relevance, depth, and alignment. Final decisions? Still human. Always traceable. Hover to see how it applies.

Comments
Subscribe

What to read next

Signal Scrum Product Development

Not all surprises in product development are true unknowns

Many product development surprises stem from poor backlog management, not true unknowns. Regular refinement and reflection help teams …

Read article
Signal Product Development Product Management

Building the wrong thing is worse than fixing a bug

Most features don’t deliver value. Short feedback loops and real user input help teams avoid wasted effort by ensuring they build what users …

Read article
Video Product Development Technical Leadership

Navigating the Unpredictability of Software Development: Embrace Agile for Success

Explores how Agile principles, technical leadership, and engineering excellence help teams manage unpredictability, adapt to change, and …

Watch video
Signal Scrum Product Development

In Scrum, we don’t do UX separately

UX is integrated into Scrum, not handled separately. Design and validation happen within Sprints and backlog refinement, supporting …

Read article
Signal Scrum Product Development

Too much refinement wastes time

Balancing backlog refinement prevents wasted effort and chaos. Aim for just enough detail so developers can plan sprints confidently without …

Read article
Signal Scrum

Scrum Myth Debunked: Unfinished Work is Allowed in Scrum

Clarifies Scrum guidelines on unfinished work, explaining that items can span multiple Sprints if the Sprint Goal and Done Increment remain …

Read article