MAINTENANCE & SUPPORT
We can help maintain existing applications, troubleshoot problems and
implement requested upgrades.
Older applications still have a firm foothold in many organizations where
they continue to play a useful role in day to day operations- until the
time comes where they may need to be modified to accomodate new needs.
Older applications may have been developed with programming tools that
are no longer available and are not supported by the original vendor.
Since legacy applications may be more difficult to update or repair,
it's important to have a plan to handle those contingencies
before they come up.
We can work with you to extend the life of older applications and
provide options in how to bring them up to date in a cost effective
manner.
Maintenance & Support
We can help you maintain your existing applications, troubleshoot
problems and implement requested improvements and upgrades. As we
learn more about your business and how your existing applications are
utilized we can work towards removing any bottlenecks and improving the
efficiency of those applications.
Legacy Applications:
There are those custom software applications that have weathered the test
of time, and in many cases continue to be very useful and essential to a
company's operations. That's until someone comes
along and asks for changes to be made and the original source code can't be
found, no documentation is available, the software tools are no longer supported
by the vendors and the original programmer is long gone. In any case upgrading most legacy applications is time
consuming, not something that most programmers enjoy doing (at least doing well)
and is costly in the sense that the effort expended may at some point need to be
written off if the decision is made to rewrite the application.
Have a plan:
OK, what to do? First off, don't wait to last minute
in evaluating your options. If you can live with the
application and if modifications are needed that cannot be easily rolled into
the application itself you may be able to develop other applications that either
feed into the legacy app or pull data from it. In a way you
may be able to work with the data before its sent to the application or
modify
it after it comes out. Sometimes these types of "wrapper"
applications, rather than being complete custom applications, can use off the
shelf products like Microsoft Excel, where the logic may come in the form of
macros or the internal language available to Microsoft Office products (VBA).
Welcome to the world of Q&D - Quick and Dirty solutions.
They do work but the longer term maintenance headache is still lurking.
Evaluate the options:
If it's time that the legacy application is retired but you still need
the functionality it provides, it's time to step back and consider the
possibilities. The first assumption is that
application is doing something that is still useful to your
organization. If not - problem
solved. Out it goes. If it's still a going concern maybe it can be
incorporated into an another, more recent custom application.
It would still be new code but maybe it can be implemented in such a way as to
reuse existing libraries and interfaces. Maybe the
possibility exists that it can be replaced with an off-the-shelf product or open
source product - with a few modifications. Then again, maybe
it's time to just let it go to that great software heaven in the ... not really
sure where legacy programs go.
Time for a rewrite?
In any case, if the direction is to rewrite the application from scratch
it may be a perfect opportunity to step back and get a more complete picture of
where it fit into your company's operations. It's tempting to
take a piece of old FoxPro code, or Visual Basic and just update it on a one to one
basis using more current development tools. Then again, it's likely
that there are the original reasons why you wanted to upgrade, such as
implementing new features, allowing more access for your customers,
improving security, etc..
The technologies have also changed. The world of
in-house stand-alone applications has shifted to the web, to the cloud and now even to mobile
platforms. In a way, you have to treat that legacy
application as if you were developing a new application. The
side benefit is that you can continue to use the legacy application while the
new application is being developed and that you can run data through both old
and new systems as a cross-check before you switch over.
Historical Data:
Don't forget - even if you rewrite the application you need to consider
the data that might have been generated from the older application.
Maybe that data can be archived and you can start fresh, but sometimes
the data itself will also need to be transitioned along with the
rewritten application.