I don't think it's because the people involved are completely insane; they see that IT projects in DoD are expensive, and the expense is seemingly due to government/DoD overhead not intrinsically associated to solving the software development problem. So if you could increase the amount of software you can deliver with the same overhead, it should be more efficient, right?
Of course, it's nearly impossible to make this work, but the real solution (significantly reduce the overhead so that it's again efficient to build smaller solutions and iterate improvements from there) is impossible to imagine in DoD.