Incompetent program managers - probably received MBA from University of Phoenix, Park University or Western Governors' University.
Greedy contractors - IBM in this case, but Booz-Allen, Lockheed-Martin, Boeing, Northrop-Grumman, and British Aerospace all have government software divisions.
Flawed processes - Use the waterfall method and draw out the process for as long as possible (already identified).
Incompetent programmers - Hired former enlisted military software engineers that learned all the languages and operating systems, but none of the theory.
Changing requirements - Added and deleted dozens of fields requiring redesign of the database, web forms, etc.
Political wrangling - The goal is to make coming to this country harder not easier!