There is a persistent myth in software development that thorough upfront planning eliminates downstream surprises. In practice, the opposite tends to hold: the more time spent refining a plan in isolation, the more brittle the plan becomes when it meets reality.
We have adopted a different approach across our engagements: allocate roughly half the available timeline to producing the first working version, then iterate. The initial version does not need to be complete—it needs to be honest. It should expose the real constraints: where the data is inconsistent, where the API behaves unexpectedly, where the user workflow diverges from what was documented.
The first version is a diagnostic tool. Its purpose is not to impress but to reveal. When a client sees a working interface—even a rough one—they engage differently. They correct assumptions. They identify edge cases that no requirements document captured. This feedback loop is where the actual product takes shape.
This methodology aligns well with how public-sector procurement frameworks evaluate deliverables. EU procurement directives emphasize demonstrable milestones over speculative documentation. A working prototype at the midpoint of a contract period provides verifiable evidence of progress—something that milestone reports alone cannot substitute.
On the U.S. side, SAM.gov registrations and federal acquisition processes similarly value phased delivery. The ability to show a working increment at each review point builds trust with contracting officers and reduces the risk profile of the engagement.
The remaining half of the timeline—after the first version—is where the real craft lives. Iterations tighten the fit between system and need. Performance bottlenecks surface under real load. Edge cases emerge from production data. The time-conscious approach does not shortcut quality; it sequences it. Quality emerges from feedback, and feedback requires something tangible to react to.
For organizations accustomed to waterfall-style gates, this approach can feel counterintuitive. The key insight is that the first half produces something functional enough to evaluate, and the second half produces something reliable enough to deploy. Both halves are essential. Skipping the first half is not efficiency—it is risk.

