PCEHR: What really went wrong

by Charles Wright on January 25, 2012

Anyone with the slightest idea of large-scale software development would have been staggered by the surpassing silliness contained in yesterday’s piece in the Medical Observer, in which “ehealth consultant” David More trots out his analysis of the problem which has brought the desktop software side of the PCEHR project to a temporary halt.

According to More, it would have been terribly easy to avoid trouble: “Had they planned properly they would have had a consistent data model for all the sites and they would have noted that there was this issue [at the outset],” he said. “It just reflects incompetence, frankly. If they knew what they were doing they would have addressed these problems before they started.”

The only illumination one could gain from that is that More simply had no idea of the cause of the problem, no inkling of a solution, and insufficient humility to admit that in truth, he’s not much of an ehealth expert. It really is long past time lazy journalists scratched him out of their sadly tattered contact books.

The very idea that you can anticipate every problem before you begin a hugely complex IT project and construct a data model that uncovers every deviation is ludicrous.

The very nature of software development is that it’s a process of getting things right. The recipe is largely the following: Develop, test, identify bugs, fix them. Endlessly repeat.

What happened in this particular case is that the wave site developments were a dynamic operation, with the developers constantly engaging with NEHTA staff to identify problems and challenges. As issues arose, NEHTA made changes to the specifications to address them. In parallel with that, the specifications were being run through further quality assurance testing.

As the work proceeded through 2011, NEHTA kept the sites informed about the changes that were being implemented to resolve their concerns, allowing them to integrate them in the work.

What when wrong, essentially, was that in October, the change log was finalised. The list of issues NEHTA provided at that point of things that would be fixed in November omitted a number of new items that had been included in response to feedback or problems, or new issues that were still to be identified during testing in November.

That meant developers working on the October change log would have had to upgrade their software later to reflect the changed specifications.

NEHTA decided that rather than have that happen, it was better to call a halt, have everyone build to the November specifications, and deploy the software once.

The main impact is that they deploy later than expected. Rather than February it’s more likely to be May. Of course this will be worked out between NEHTA and the sites, but it’s the sort of rational reaction coming from sites, rather than the sort of hysteria coming from some commentators.

Anyone who’s actually involved in doing ehealth, as opposed to just talking about how others should do it, will know that you have feedback loops on early versions of specs to later ones. They will also know that keeping a complete change log is essential. That is how you address this sort of issue before the project starts. Data models have nothing to do with it.

{ 8 comments }

Tony McNamara January 26, 2012 at 12:30 am

You say :
The very nature of software development is that it’s a process of getting things right. The recipe is largely the following: Develop, test, identify bugs, fix them. Endlessly repeat.

Correct.
But, and this is the crux – software development is based on the data modelling.

So Mr Mores, far from being the unworldly fellow you try to paint him, is correct.

Stephen Skehan January 26, 2012 at 2:59 pm

I also take issue with the original article and it’s author for its emotive language, but I believe you are being a little harsh on Mr Mores in this case.

“The very nature of software development is that it’s a process of getting things right. The recipe is largely the following: Develop, test, identify bugs, fix them. Endlessly repeat.”

The critical former steps that you are missing here are discovery, analysis and design. If these steps are executed with appropriate rigour prior to the commencement of solution development then the results will always be benificial in terms of cost, quality and schedule. An accurate and comprehensive data model is only one product of these process steps. However, if this is what Mr Mores is implying by planning then I would tend to agree with his sentiment.

Charles Wright January 26, 2012 at 5:06 pm

I’m not debating the merits of data models. The suggestion that there is no consistent data model is quite gratuitous.

David More January 26, 2012 at 6:08 pm

Charles, kindly tell us just what the common data model is that all the Wave Sites have implemented.

Look forward to spluttering, gasping and obfuscation – as we all know many of the Wave sites are based on different systems that do not have a common underlying data model.

I have been saying for over a year this distributed pilot approach is a dead duck and I am being proven right.

David.

Andrew McIntyre January 27, 2012 at 7:30 pm

Charles, perhaps if you let us know what software development experience you had it might make your argument more convincing?

It would also be nice to see a list of software developed by Nehta that is in any real world use today. After a billion dollars I would expect the see a long list, but I can’t think of a single thing they have developed that is in real use.

Paul Karen January 29, 2012 at 8:36 pm

Dear Charles
Perhaps you should write a letter to Medical Observer and take this issue directly up with them, rather than crucifying David More in your blog (with its limited readership).
Obviously you have more information from NeHTA than you are letting on and thus you would get a wider audience by publishing in MO.
Who knows, Charles, MO may even employ you as their “eHealth consultant” if and when NeHTA tires of your assistance.

Bill January 30, 2012 at 11:12 am

I’m a software developer and have NEVER seen a specification that didn’t change while the software was being implemented.

Brendon Wickham January 30, 2012 at 4:46 pm

I agree Bill. From the description given in the various news articles, the problem does not appear to be anything to do with data modelling. If, as they’ve said, the problem was caused by different versions of specifications, then the data modelling for the functions they are implementing must already be complete. It would not be possible to develop specifications without the modelling.

Comments on this entry are closed.

Previous post:

Next post: