Silicon Republic tells thesad story of the payroll system that went bad on the Irish Health Services Authority. Basically, it was supposed to cost EUR 8 million, and has ended up swallowing EUR 120 million so far. They will need to spend that much again to finish the project.
Why do these things go so badly wrong?
Well, it’s hard to say.
It looks like one part of the problem is software quality. The software just wasn’t tested enough at the beginning. There are undoubtedly big issues with any payroll system that can ‘accidentally’ pay out EUR 1 million into an employee’s account.
The problem with this type of error is that the problems tend to become compounded and confounded with one another as the system is rolled out and gets bigger and more complicated. It soon becomes more and more difficult to ‘debug’ the problems.
Another issue appears to have been scope. Quite often, designing something like a payroll system is like peeling an onion. There are a lot more layers than you expect. The Irish health services are very diverse. They employ many different types of employee, and the conditions vary from location to location, because the Service was managed on a local basis until a year or two ago. To give you an idea of the complexity of what we are dealing with, consider that according to a 2003 document, there are 1,300 people working on just the payroll function in the HSE (that’s excluding the IT side). These people are spread out all over the country, and operate under different policies, using different systems. That points to a system that must be very complex.
It’s easy to see how the complexity got too much for the project and was eventually overwhelmed it. It was certainly unrealistic to think that all this work could be done for EUR 8 million.
Of course that might excuse the techies, but it doesn’t excuse the people who ‘managed’ this project, either the consultants (Deloitte and IBM) or the client (Health Services Executive). They all seemed not to be paying attention to what should have been patently obvious.
It looks like they continuously ignored the fact that the system was generating serious errors and that the project was running way over-budget. They didn’t listen to reports from users that the system was causing a lot of trouble. They seemed to be under the misapprehension that the bugs would just go away when the system was fully installed. They seemed to be overly optimistic about how long it would take to complete the project. They seemed to be hoping that if they peeled just a little more skin off the onion, that they would be done.
The reality is that it doesn’t work that way. You have to get the system to work on a small scale before you have any chance of getting it to work on a big scale. You can’t allow yourself the pleasure of wishful thinking about how much work is remaining to do.
So what would I have done different? Well, I would have started by building a prototype and I would have gotten it to work well in one hospital or region before proceeding to the rest of the organization. That would have given the opportunity to find out what the business, technical and people problems were, and to resolve them.
And if the prototype had been built, it would have given the HSE a choice regarding the project that they probably didn’t even realise they had. That’s the option to say ‘Stop, no more’.
Sometimes in IT, you just have to kill a project. It upsets people, and it seems like a waste not to finish what has been started. It seems to the people who are deeply involved in the project that there are just a few more challenges to solve, and that everything will be smooth sailing after that.
But these are usually just siren songs. You have to ignore them and make the tough decision. That’s what management is all about.
Disclosure: I applied for the job of National ICT Director at the Health Services Authority about a year ago and didn’t get it. But more about that tomorrow.