When IBM (News - Alert) starts talking about “best practices,” it's usually a good idea to start taking some notes. IBM has been in the software—and of course, the hardware—game for a very long time, so when it starts talking about the best way to do the job, as it recently did, there's usually something valuable on hand for those who are also in the midst of developing software. This most recent round would not disappoint, and IVR expert Plum Voice was quick to cover the news.
According to IBM's Mike Perks, there are only a handful of reasons behind the failure of most software projects. Perks detailed how 80 percent of projects are unsuccessful because of just four critical failings: the projects are over budget, the projects are late, the projects are missing function or any or all of the previous three factors combined, Plum divulged in its blog.
What's more, Perks could even narrow things down further, saying that virtually any software project had about a one in three chance—30 percent—of being canceled before completion merely because the project was poorly executed.
That by itself puts up an immediate action plan for anyone starting a project: establish clear parameters in terms of budget, time frames and functionality. If those three are clear from the outset of the project, they're least likely to cause a problem when the project is being developed, and thus, will keep it out of that big 80-percent sandtrap. It's not a bulletproof plan, of course—20 percent of projects fail for another reason—but removing the root cause of 80 percent of failures will go a long way toward ensuring positive completion of a project.
To that end, IBM recommends the best of project management. In fact, Perks manages to boil down a lot of potential issues with software development to a failure of project management. Of course, Perks also asserts that not all requirements should—or even can—be known at the starting phase, but knowing what needs to be built at the basic level will go a long way in preventing failures.
It's not just project management that IBM recommends in its best practices plan, either; software developers should also keep in mind the importance of review. Three of IBM's best practices boil down to “review” on some level, including the importance of peer review—allowing other developers to examine software where applicable—as well as the importance of bug checking, regular testing and performance testing. Keeping the importance of quality control in mind will not only help to spot mistakes—which will in turn go a long way toward catching issues of performance—but also provide insight on future improvements.
IBM's best practices listing in software development is a valuable tool for developers not so much for actual development insight, but rather for establishing the proper foundation before engaging in development in the first place.
The more potential pitfalls that can be avoided before even a line of code is written, the better off the entire process becomes. IBM has the right idea here, and software developers ignore IBM's advice at their own peril. Count the cost before engaging in a software development, because an unfinished development wastes time, resources and reputation.
Edited by Allison Boccamazzo