Each definition of work should be broken down into small deliverables. The concept of a Minimum Viable Product can apply to all aspects of our code. As the requirements for the monolithic application are broken down into manageable chunks, it might be possible to start coding. If a programming task is small enough to take only a couple of hours to complete, it's quite difficult to deliver something that wildly misses the mark. However, if a change is required, feedback should be given, and adjustments can be made quickly.