Thursday, March 30, 2006
Add On Or Start Fresh?

I was involved with a project last year that brought to light a major decision that needs to be made early in a project’s initiation.

Do we build onto our existing application, or start from scratch?

As developers we always would like to start with a clean slate, but web projects are often part of ongoing operations and legacy systems greatly influence the how they are planned. There are times to extend systems in place and times to begin anew. Too many times companies throw good money after bad. Let’s look at some things to consider.

How Old Is It?

Spend resources to maintain systems first. If the platform, application, database, infrastructure or hardware is deprecated, or even a few versions old perhaps it’s time for an overhaul before thinking about adding onto it. Whether it’s lack of money, downtime, or human resources it's important to keep your core systems up to date. Technology changes fast. If too much time passes between upgrades it is more costly and difficult to bring things up to date.

How Compatible Is It?

The system should still have significant market share. One year Sun as the best solution and five years later Microsoft is the market leader. Software manufactures are making compatibility improvements with every version, but interoperability may still be difficult to achieve. It makes little sense to spend development dollars on utility software to connect outdated or obscure systems with new ones. This adds tremendous costs to project budgets and the problem still isn’t fixed. It’s impossible to predict the future, but try to choose a platform that will be around.

Does It Suit Your Needs For The Future?

Never build something for today, build it for tomorrow. By the time a project is finished it may already be outdated so it is important to build ahead, or at least plan ahead. Your web server may handle the load today, but what happens when your company doubles in size, or you want to add e-commerce?

What Are The Alternatives?

It may not be necessary to abandon the system entirely. Upgrading to the current version may be enough. Are there products offered that are clearly better for your needs, or are there more cost effective solutions? Should I build, buy or lease? Do due diligence. Explore options. Compare solutions. It takes work to make the best decisions. The less expensive route now may cost more in the long run. Get help doing the homework and making quantified analysis. It pays to put off a project to do it right rather than making this situation worse by employing any less than best practices.

Project Management

James Bielefeldt | 3/30/2006 4:09:12 PM (Central Daylight Time, UTC-05:00)