Domain-Driven Design vs Demo Driven Development, a case for the “Yes upfront design” approach
The most popular software development project management method is Scrum. It is centered around short development cycles, a.k.a. sprints. We start coding but in small increments. At the end of each sprint, a demo of the working software is shown to the product owner and stakeholders. The stakeholders give feedback, then we modify the application, and so on until we reach the point when we can deliver working software.