4.2.6: Legacy Assets
Leverage Legacy Assets to Enable Evolutionary Progress Other Information:
One of the main advantages of adopting SOA as a modernization approach is the fact that it is an incremental or evolutionary
approach, rather than a wholesale replacement approach. In the more mature states, an advantage of SOA is the ability to rapidly
innovate, that is to experiment with and then adopt new business processes, much faster and more cheaply than with traditional
IT systems. The challenge is how to reach that mature state in government agencies where legacy systems are prevalent and
tightly coupled with business processes, data, and rules that support critical business and mission capabilities. Based on
a services portfolio plan and with a clear understanding of your phased approach to achieving targeted incremental releases
of capabilities, legacy assets must be assessed and factored into the analysis for service provisioning in each phase of the
plan. In the early phases, there may be no choice: legacy transactions must be wrapped to expose the services. Over time,
the four modernization alternatives—replace, consolidate, extend, and re-platform, should be considered for each legacy application.
As an initial step, sharing can be achieved by wrapping legacy transactions with service interfaces, where practical. Then,
examine service requirements over time to determine whether the wrapped transactions are able to meet future needs. Note that
wrapped transactions are still subject to the rigidities of the underlying legacy application. Most applications have an inherent
work flow definition; capture that first, then capture as many embedded business rules as possible. Many legacy systems do
not have clear architectural delineation among data, business logic, and user interface. You may need to re-factor portions
of applications to expose them as services. Business rules (logic) are typically embedded in the code and are not externalized
to a separate component such as a business rules engine. Many use older generation database technologies such as hierarchical,
networked, or file-based, where there is a lot of data redundancy, and little inherent documentation. Some legacy systems
are too old and/or complex to be fully understood and therefore when the services are developed on top of such systems, rigidity,
slow performance or maintenance problems may result. Legacy assets are key components of the existing enterprise architecture
that can demonstrably add value to the enterprise’s strategic objectives. Consider the following advice. • Reuse existing
and still relevant business rules. Use an analysis tool to better understand legacy systems and harvest these rules. Consider
the several approaches to decoupling data from business logic and user interface in legacy systems: • For a large or complex
application, use discovery tools that facilitate identification of business rules, business processes, and flows. Use tools
to perform re-factoring of legacy code to decouple and minimize the risk of developing “rogue” services. • Use, if necessary,
the alternative of custom adapters that interface with the legacy code. Use ESB adapters to access legacy code. • As a last
resort, consider using standards such as Database Access Integration Services (DAIS) to access data in a database directly
as a service [EPRI, 2001]. Top down and bottom up approaches should be used when producing services from legacy systems. Combine
both approaches, balancing what the business needs with what the current IT organization is able to support. In the top-down
approach, business processes and their flows drive what services are required that can be satisfied by legacy systems and
how these services should be orchestrated. Allow business users or their counterparts in IT to drive this approach because
of their familiarity with particular business domains. In the bottom-up approach, available services are identified by mining
legacy applications and then determining what business processes are feasible to orchestrate. IT personnel should drive this
approach. As services proliferate, ensure the utilization of adequate governance criteria in order to maximize the reuse of
developed services without compromising security and efficiency. Applying and implementing governance from the beginning will
pay rich dividends as the SOA efforts and consequently the service assets grow.
Indicator(s):
|