When big IT projects fail: the solution could be simple
When big IT projects fail: the solution could be simpler than you think
Why does new software keep replicating the bad choices of old software? Why does the software you use at work always look awful compared to the software you use at home? Why isn’t applying for a passport as easy as making a Facebook profile?
Why does new software keep replicating the bad choices of old software? Why does the software you use at work always look awful compared to the software you use at home? Why isn’t applying for a passport as easy as making a Facebook profile?
The reason could actually be quite simple, says University of Auckland Computer Science Lecturer Paul Ralph, who will give a public lecture this coming Saturday on the importance of creativity and design in software engineering.
Dr Ralph says innovation in software design is constantly undermined by the way we write software “requirements”.
“Governments and large organisations invariably start an IT project by sending out a tender with a detailed description of the software to be built and that’s where they make their first mistake,” Dr Ralph says.
“The tender process might work fine if you are buying office chairs, but it doesn’t work so well for software projects. Experiments show that almost everything you do to nail down what is needed actually reduces creativity and leads to worse designs.”
That’s because software developers need ambiguity to innovate.
But too often, organisations obsess about drawing up detailed specifications—what scientists call “problem structuring”. People strongly (and wrongly) believe that they are helping the designers and reducing project risk by being as clear as possible.
“Unfortunately, all this problem structuring makes software worse. Software developers need to simultaneously figure out the problem and imagine novel and creative solutions.”
Governments and larger organisations need to think of software as something that is invented, rather than something that is bought, he says.
The notion of setting a price up front, for a product that doesn’t exist, is risky.
“The fact is that the total cost of larger IT projects is almost impossible to accurately forecast in advance, it will always cost more than everyone thinks.”
Although most people who push for up-front pricing and detailed specifications are just trying to help, they could be inadvertently undermining creativity, increasing risk and wasting resources, Dr Ralph says.
ends