A deadline is a forecast, not a law of physics
Software work contains unknowns, but that does not make every missed date unavoidable. Most slips come from a small set of causes that can be seen and managed before the final week.
Software Delivery
Software estimates are uncertain, but late projects are not random. Six recurring causes explain most deadline damage: requirements, decisions, scope, estimates, risk and dependencies.

Co-Founder & CEO | 17 Aug 2021 | 5 min read

Software work contains unknowns, but that does not make every missed date unavoidable. Most slips come from a small set of causes that can be seen and managed before the final week.
The first version of a brief is rarely enough. Walk through the core workflows with the people who perform them, identify exceptions and write down what is explicitly out of scope. Missing requirements do not disappear; they reappear as rework.
A team can wait three days for a business answer and still look ‘on schedule’ until the delay reaches the critical path. Give the project a decision owner and agree how quickly blocking questions will be answered.
New requirements are normal. Pretending they are free is not. When scope grows, change one of three things deliberately: the date, the budget or what else ships in the same release.
An estimate made before the team sees the real API, data or edge cases should not remain sacred six weeks later. Update the forecast as uncertainty falls. A changed estimate is useful information, not evidence that planning failed.
App-store review, data migration, vendor approval, security testing and unfamiliar integrations are not random events. Identify them early, test the highest-risk assumptions first and keep buffer where uncertainty is real.
Design, copy, legal review, third-party APIs, client-side data and internal IT can all block delivery. Give each dependency an owner, due date and fallback. A project plan that tracks only developer tasks is incomplete.
Plan in smaller increments, review working software often and move high-risk work earlier. You will not make software perfectly predictable. You will make bad news arrive while there is still time to do something about it.
We use cookies for site functionality, analytics, and marketing measurement. Read our Cookie policy.