Too Long; Didn't Read
Agile takes the agile approach to improve the old waterfall approach and make us more efficient. The agile approach is supposed to break up big batches into smaller batches and introduce “inspect and adapt” mechanisms between batches. Agile says inspecting and adapting, when done properly, makes the chicken-and-egg question redundant. Every feature should aim to serve one or more business objective, says Agile. At the end of each sprint, you should be able to ask yourself: Did the business objective move at all? How close are we to our goal? Is the opportunity big enough to justify another iteration or move on?