In a large-scale, well-managed IT project, there are three key roles that need to be filled by three different people who are each talented, qualified, tough-nosed, and given commensurate authority. Actual titles may vary a bit, but the roles themselves are well-known:
Project Manager. This person manages the personnel (and sub-organizations) on the entire project; she also manages the project schedule and feature list, determining what functionality will be available in the first and then subsequent releases of the system under development. She negotiates with the customer over both schedule and functionality, but is unflinchingly honest in explaining the system’s current status and how long it will take to deliver an acceptable version.
Chief Architect. This person is responsible for the conceptual unity (to use Fred Brooks’s phrase) of the overall system under development. She is responsible for ensuring that all the various components (and developers) of the system adhere to the necessary set of design and implementation principles so that the system will function as designed.
Director of Quality Assurance. This person is responsible for the full range of quality assurance activities that surround the project. More importantly, she is the gatekeeper, the one — and the only one — who allows the system under development to move into alpha, beta, candidate, and deployment stages.
The three need to work together, and the Project Manager is ultimately responsible for the tough calls — such as dropping a feature or deferring some number of defects to be fixed until after launch.
As far as I can tell — from the documents that have come out in the seven weeks since its disastrous launch — none of these three roles existed (or, at least, were filled by competent and qualified people) in the Healthcare.gov project.
Much has been revealed already about the wretched, late, and missing testing of Healthcare.gov, not to mention the decision to push Healthcare.gov into full public release in spite of clear indications that it was not ready for prime time. The fact that so many major defects have been found after the fact likewise indicates a profound lack of SQA efforts and the almost certain lack of a QA Director, or at least one with appropriate skills and authority.
There has been no indication that the project ever had a true chief software architect; Henry Chao, who actually has the title of deputy chief information officer, has been pointed to in some articles as being the chief architect, but CIO and chief software architect are vastly different roles, and Chao’s LinkedIn profile gives no indication of actual software engineering and architecture talents.
Now, the latest documents to come out show that the project lacked a overall project manager as well:
The consulting firm suggested that some of the project’s troubles occurred because there was “no single empowered decision-making authority,” or person in charge, who could make changes or define what constituted success.
One industry source close to the project, who spoke on the condition of anonymity to discuss the matter frankly, said this lack of an overarching project leader complicated the system’s development because contractors received “absolutely conflicting direction between the various entities within CMS.”
Once again, I find myself saying: is there anything on this project that was done right?
UPDATE [1103 AM MST]
Just saw this video clip of Chao testifying before Congress. I am staggered by his admissions here about how much of the overall system is not built yet, including the payment system:
(Even though Chao appears to be saying that there’s 60 to 70% left to build, I think his later comments reflect that he meant that the overall system was 60-70% done.)
Note that payments must be made by December 15th in order for coverage to start by January 1st.