開発チームの編成と機能のカプセル化を一致させた方がいいと思う。
異なるチーム間のコミュニケーションは、同一チーム内のそれよりも当然コストがかかる。隣のチームの開発範囲をカプセル化することによって、コミュニケーションコストを抑える。
規模によってチーム編成が変わる、チーム編成によって設計手法が変わる、設計手法によって進捗管理方法がかわる。開発プロセスが規模の影響を受ける理由の一つなんだろうかなぁ。最も、こんな因果関係になるほど綺麗な案件は少ないとは思うけれども。
また、詳細度による分業よりも機能による分業の方が優れてる理由にもなる。