A set of software development process, procedures and methodologies, know as Agile Software Development works entirely on a different kind of strategy as compared to our legacy software development processes. In agile software development we talk about Iterations and incremental development. The focus here lies more on building of self driven & self organized cross-functional teams that are responsible for concrete evolution of requirements and solutions.
In agile software development you talk of quick outbursts of results rather than a goal set for software development team to travel on a long road to reach to their destination. Here emphasis is more on milestones that are small pieces of ultimate goal that is required to be achieved. And these small pieces are like building blocks that enable you to reduce your distance from your final destination by achieving each milestone and reducing distance to your goal block by block.
For further insight you can refer to this fantastic article.