その質問への答えは本を埋めることができます。
主な理由の1つは、アジャイル開発が成果物に焦点を合わせていることだと思います。ここで最も緊急なことを正確に伝えることに常に焦点を当てています。
もう1つの理由は、アジャイルプロセスが従うストーリーベースの計画および推定プラクティスにより、何をいつ配信できるかについて、はるかに優れた推定値が得られることです。
ストーリーベースの計画がいかに効果的であるかの良い例は、私が働いていたプロジェクトです。数か月間(アジャイル開発を採用する前)、プロジェクトリーダーは期限内に納品できると信じていましたが、それは締め切りから約18か月でした。すべての開発者は、それはおそらく非現実的だと感じていました。アジャイル計画を開始した後、プロジェクトリーダーは状況を楽観的に評価していました。しかし、数回のスプリントの後、プロジェクトリーダーは、チームが単に予想された時間にすべての要件を提供する能力を持っていないことに気付きました。そして、それは今ではまだ締め切りから12ヶ月以上でした。
そのため、アジャイルプラクティスにより、現実がはるかに早く明らかになります。
最後に、アジャイルチームは、コード駆動型開発、頻繁なリファクタリング、継続的インテグレーション、ピアコードレビュー/ペアプログラミングなど、より良いコード品質を作成するプラクティスを採用する傾向があります。それほど焦点を合わせないでください。