Nashville Health Care Council Launches 2015 Fellows Recruitment
Opinion: Why healthcare.gov has so many problems
1. Opinion: Why healthcare.gov has so many problems
While there are apparent programming and design errors, it's quite likely that most are the result of
requirement changes rather than incompetence.
The overall failure appears to have been one of project management on the part of the government.
If the computers have to share access to resources -- say, a database of people who have signed up --
it gets complicated. Maybe it should have looked into launching at a later date instead of October 1.
STORY HIGHLIGHTS
The new insurance exchange site, HealthCare.gov, has technical problems
Steven Bellovin: Large-scale software projects are hard; glitches are common
He says testing for errors and changing requirements contribute to delays or failures
Bellovin: Good project management is a remarkably large part of the effort
Editor's note: Steven Bellovin is a professor of computer science at Columbia University. And even
when all of the pieces are working fine, the entire system has to be tested; that can't be done until
quite late in the process.
Project management also plays a big
role. In the best of all possible worlds,
the site would have launched seamlessly
to serve the entire nation. That
apparently was one of the problems.
Using them correctly takes good
planning and management. But the
bottom line is that technical glitches are
an inescapable part of our digital life.
We see this in the private sector.
Measuring progress isn't easy, either,
which means it's hard to tell how far along you are.
The worst problem is probably that requirements change while the software is being developed. The
new Terminal 5 at Heathrow Airport outside London was saddled with software problems. When
United Airlines and Continental Airlines merged, the combined reservation system didn't work very
well at first. That means it's hard to know how many programmers to devote to the task, how much
it will cost and so on.
(CNN) -- No one should be surprised by the technical problems that have plagued the new health
insurance exchange website, HealthCare.gov, which allows millions of Americans to sign up and buy
health coverage.
2. Angry, OK. You and your spouse decide to share the preparation and cooking. It's very hard to
estimate how long a project will take. But software is hard. Failures or delays in schedule, budget
and functionality are so common as to almost be the norm, not the exception.
Steven Bellovin
Sure, the website rollout could have been handled a lot better. This was not just an Obamacare
problem. Inexperience doesn't help. If development took too long, there wouldn't be enough time to
test it thoroughly. With two people, it might be relatively straightforward to take turns, but with
three or four or more cooks, it can get crazy.
Finally, there's the "system integration" problem of combining the different components. For
example, one of the first American space probes to Venus was lost in part because of a single
missing hyphen character in a program.
Testing is the next hurdle. Disappointed, of course. Nor are tech giants immune; Windows Vista was
very late because Microsoft had myriad troubles during development.
The inherent nature of software is that it demands perfection. And politics just makes things
messier.
The Obama administration is "excruciatingly" embarrassed and is working hard to get the glitches
fixed. A system like the insurance exchanges is built in parts. It's like building a house: If the owners
suddenly decide they want a big floor-to-ceiling picture window on the second floor, it may require
rerouting water pipes. Don't wait another minute."
But the federal government has never had a fantastic track record in dealing with technology
projects. Most of the government has little experience in managing such a big, complex project, and
management is a remarkably large part of the effort; building a system like this takes far more than
just programming.
Maybe it should have hired a general contractor to supervise the 55 contractors who worked on the
website. But surprised? Don't be.
Large-scale software projects are hard. Suppose you've invited many people over for dinner, more
than you've ever hosted before. This may mean that you have to redo work you've already done, but
the effects can be more far-reaching. That may require moving the ground-floor bathroom, which in
turn could affect the kitchen layout, because the bathtub and the kitchen sink share drain pipes.
Even small errors can be disastrous. Let's hope things go more smoothly the next time around.
Follow us on Twitter @CNNOpinion.
3. Join us on Facebook/CNNOpinion.
The opinions expressed in this commentary are solely those of Steven Bellovin.
. Any project needs adequate time to make sure the software works properly and to find and correct
any flaws. Time, however, was in short supply with the launch of the online insurance marketplace.
Part of project management's job is to say "no" to many change requests, but that's not always
possible.
What if more computers are added? That's not always a solution. Computers do exactly what they're
told to do. That was in short supply here.
The contractors building HealthCare.gov couldn't control the budget or the timing for the
regulations; those were the product of Washington politics. With all the delays and warning signs,
the government could have stopped touting HealthCare.gov and teasing the public with messages
such as "5 days to open enrollment. Maybe you have sufficient counter space, but you still have only
one sink, one stove and one oven. Do the slots and tongues line up properly? Are the right parts of
the picture on the right pieces? Did all of the contractors use the same shade of green for the grass?
There are standard approaches, standard tools and standard software for building large-scale
websites. Eventually, like a jigsaw puzzle, all the pieces have to be put together