Wednesday, May 24, 2017

Price tag for fixing Phoenix pay system now tops original cost

Repair bill has risen to about $402M — more than $309.5M payroll implementation cost in the 1st place

  

The problem is actually very simple. You used "People Soft" Software.
What is People Soft ?
Imagine you write a program , compile it , and run it , and it runs just fine.
Imagine you write a program ,and it needs an "Interperter" to run it, special software that isn't part of the program , in order to run the program. Imagine that special software needs to keep getting updates, and like everyone else , occasionally those updates make a mess.
Imagine the next version of People Soft comes out , and they want you to buy it, so the old version of Peoplesoft actually stops working (Microsoft is notorious for this stunt , no wonder people disable automatic updates on windows, and then companies like People soft decide if it's good for bill gates, it's good for them !)
Imagine the Interperter is slow, and has it's own limitations, it was never really meant to handle databases that large. Large files get corrupted, you have to have back ups, and unlike Oracle , a lot of these little database programs don't do back ups.
So something gets corrupted , and the program rolls over and dies. Oopsie. Not supposed to happen, but it does.


What should they have done ?
Use a regular programming language, like COBOL (Common Business Oriented Language) to write not one program , but a bunch of programs, compiled programs that don't need an interperter. One less thing to break. Also one less thing for companies like Peoplesoft to keep milking the government for, because that's the real issue here. Peoplesoft wants to keep on getting paid even though the project is officially finished. And if the system is written in some compiled language without an interperter, the payments would stop.
And when something changes, you just change the one program that handles one situation , one case (just disability benifites for example, another might handle just leave requests). And they all work on the same set of data files, and when they make a change they make a new copy of the changed file , the old version is left behind , unchanged, to act as a back up. All nice and automatic.
The post office figured this out a long time ago , and they got it working just fine. Yes, in COBOL. Do you hear reports of Canada Post losing half a million peoples addresses ? No , you do not. (but you do hear issues of strikes, but that's another matter)
Systems do need to be re-written every now and then, the rules by which government conducts it's business does change (like when they introduced the federal sales tax , when there had been no such tax before. Lots of things had to be re-written) . Systems to suffer from "creaking" , where by they just slap together some change real quick , and the system becomes more and more inefficient over time, and will eventually need a total rewrite.
But interperters like Peoplesoft are ALWAYS the wrong way to go for any large project. They're just there to milk the government. The "ease of use" of such things, their prime selling point, is over shadowed by the fact that they can't handle that much data, or such large programs.
You need to reduce the number of things that can break in a large project. And that means interperters have to go. They should never have been even considered in a large project. Discrete small programs that just do one task and stand alone in that deed are the way to go.

 

No comments: