How to salvage a (nearly) hopeless software project

Faulty foundations, AWOL contractors, bugs piling up -- here’s what to do before taking a sledgehammer to a faltering pile of code

1 2 Page 2
Page 2 of 2

The retrofit

Increasingly common is the case in which the foundation is solid, but the techniques that produced it are dated. The technology used may have been the right choice at one time but no longer. Maybe too many dependencies are no longer supported. Or it relies on old tech that few people know how to support anymore. Can you prop up this project and keep it going, or is it time to call in the wrecking ball?

Estrada recalls working on an app where there was a push to use HTML5, which seemed like the latest and best choice. But as the project went on inefficiencies became apparent -- it wasn't ready for prime time yet.

“We redid the project in C++, and it takes a lot more effort because C++ is a much lower level,” Estrada said. “But we achieved better performance. If you create your platform correctly, you develop a process that makes it easy to add new features.”

Consultants might be a good fit here, says Estrada, where you have an isolated technology that needs updating. But there’s a caveat: He argues that bringing in consultants is typically a bad choice to fix an internal tool in need of new features. If the tool is tied into other systems, consultants won’t have the big picture or a long-term investment in the outcome.

“Business process should drive the software,” says Sweeton. “Sort out the right business process, then adapt the code to it.”

If Sweeton’s sentiments suggest a theme, there’s good reason for it. Runaway projects tend to be missing one of three elements: a clear vision from management, project managers who communicate effectively, and strong tech leadership. Projects that don’t have all three? They tend to need renovation on more than one level.

Related articles

Copyright © 2015 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2
How to choose a low-code development platform