An alternative way of looking
at these components of a legacy system is as a series of layers as shown in figure
below. Each layer depends on the layer immediately below it and interfaces with
that layer. If interfaces are maintained, then we should be able to make
changes within a layer without affecting either of the adjacent layers. In
practice, however, this simple encapsulation is an over-simplification, and
changes to one layer of the system may require consequent changes to layers
that are both above and below the changed level. The reasons for this are:
· Changing
one layer in the system may introduce new facilities and higher layers in the
system may then be changed to take advantage of these facilities. For example,
a new database introduced at the support software layer may include facilities
to access the data through a web browser and business processes may be modified
to take advantage of this facility.
· Changing
the software may slow the system down so that new hardware is needed to improve
the system performance. The increase in performance from the new hardware may
then mean that further software changes which were previously impractical
become possible.
It is often impossible to
maintain hardware interfaces, especially if a radical change to a new type of
hardware is proposed. Major changes to the application software may therefore
be required.
Fig:
Layered model of a legacy system
1.
Business
processes: These are processes that are used in
the business to achieve some business objective. An example of a business
process in an insurance company would be issuing an insurance policy; in a
manufacturing company, a business process would be accepting an order for
products and setting up the associated manufacturing process. Business
processes may be designed around a legacy system and constrained by the
functionality that it provides.
2. Application software: The application system that
provides the business services is usually composed of a number of separate
programs which have been developed at different times. Sometime the term legacy
system means this application software system rather than the entire system.
3. Support software: The legacy system may rely on a
range of support software from the operating system and utilities provided by
the hardware manufacturer through to the compilers used for system development.
Again, these may be obsolete and no longer supported by their original
providers.
4. Hardware: Legacy systems may have been written for hardware that is no longer
available, that is expensive to maintain and that may not be compatible with
current organizational IT purchasing policies.
No comments:
Post a Comment