download

Knowing What You’ve Got: Reverse
Engineering for Your Legacy
Applications
By Jacqueline Payne
Modern information technology systems must be evolutionary. Since they are required to meet
shifting industry, business and regulatory demands, financial services systems must be flexible
and adaptable. Unfortunately, since most financials services firms were early adopters of
technology, their application portfolios include legacy systems that can date back 20 years.
Figuring out how to modernize and rationalize these systems is a large undertaking and the
biggest challenge in IT today.
Last month, our series focused on portfolio analysis(1) which is the process of reviewing your
application portfolio with an eye towards modernization. Following such an analysis, existing
legacy applications are identified which your firm may keep or convert.
Legacy systems fulfill an important function and often serve as the foundation on which other
systems run. But given the age and incomplete documentation of these systems, your
organization may not have a full picture of your legacy infrastructure. This lack of knowledge
makes it difficult to convert legacy platforms into evolutionary IT systems. It also makes it
impossible to minimize maintenance costs for legacy applications.
Reverse engineering—the scientific process of understanding legacy systems—is the solution.
This process allows your company to have a clear picture into a specific legacy application,
providing complete transparency and full documentation. Knowing what you have helps your
firm build a modern IT system that supports quick product and service launches and is cost
effective to maintain.
Why Undertake a Reverse Engineering Effort?
Reverse engineering is a crucial step in upgrading and renovating your legacy application
portfolio. It lays the groundwork to effectively modernize your systems to work seamlessly
with new applications. Once modernized, your evolving IT system can continuously meet
changing business requirements, stay at the cutting edge of technology, quickly comply with
regulatory requirements and support geographical expansions.
Note 1: Application Portfolio Analysis: Creating Order from Chaos by Aparna Umakant Katre, December
2004.
WWW.KANBAY.COM
©2005 Kanbay Incorporated. All rights reserved. Kanbay and the Kanbay logo are registered trademarks of Kanbay Incorporated.
Other trademarks are the property of their respective owners.
Knowing What You’ve Got: Reverse Engineering for Your Legacy Applications
Technical Documents
Processing Structure Description Document:
Lists purpose and execution details of a process
cycle (transaction); explains the sequential flow
of a process and details the inputs and outputs.
Control Structure Hierarchy Document:
Depicts program logic and linkages to other
called programs; includes HIPO (Hierarchical
Input-Processing-Output) diagram.
By reverse engineering your legacy systems, your
organization will have that most valuable of business
resources—information. If you choose to keep a
legacy application, your maintenance and
enhancement efforts will be streamlined.
With detailed information on your applications, you
can—
»
Cut the time to market for new products and
systems that need to incorporate functionality
from existing legacy systems
»
Reduce the analysis effort by 50% and the overall
application maintenance effort by 20%
»
Cut the total ‘in-system’ time for a maintenance
request by up to 70%.
»
Channel investments into areas with maximum
impact
»
Reduce dependence on knowledgeable and critical
resources
»
Perform faster knowledge transfer for new
employees or maintenance teams
»
Enable the delivery of a proprietary maintenance
solution, which helps organizations to maximize
their returns from legacy systems
Physical Data Flow Diagram: Illustrates
program data flow; captures details of data fields
being manipulated and program data elements
(as separate from the database data elements).
Physical Data Definition Diagram: Shows
relationship between tables and segments;
includes data dictionary information for data
within each table or segment.
Business Linkage Description Document:
Explains purpose and provides technical details
for third party business or tool interfaces.
The Legacy Conundrum
Over time, legacy systems have gained an incredible depth of business knowledge and
functionality, but very poor documentation. It is crucial that this embedded knowledge is
codified to ensure business continuity and build the necessary flexibility to respond to changes
in the business and regulatory ecosystem.
Business continuity is impacted by the inability to adapt and modify existing systems and
develop new systems. For legacy applications, business risk is higher due to the diminishing
pool of knowledge workers able to manage and maintain these systems. Additionally, legacy
system product vendors are sometimes unable to provide continued support to customers.
This state of legacy systems has several implications that include—
»
High cost of product maintenance and customer service
»
High turnaround time to service customer request
»
Inability to effectively maintain and customize systems to meet market demands
In order to update and renovate business critical software systems, proper documentation is a
must. Reverse engineering for legacy systems creates the documentation necessary to build
the future state of your company’s IT system. A reverse engineering effort analyzes your
legacy system to—
»
Identify its components and interrelationships
WWW.KANBAY.COM
©2005 Kanbay Incorporated. All rights reserved.
Page 2
Knowing What You’ve Got: Reverse Engineering for Your Legacy Applications
»
Create system representations in another
form or a higher level of abstraction
»
Create a physical representation of your
system
Business Semantics Document: Provides
Identify critical components that need to be
reviewed to implement a business change
their interrelationships; this entity
»
Today, a number of tools and service providers
can generate documentation from a given legacy
code. But automated tools only get you so far.
While they can provide a blueprint of your
system, your real need is to gain an
understanding of your systems so you can
modernize or streamline maintenance. A true
reverse engineering process captures both the
program flow and generates documentation on
business rules embedded in the code. These
business rules represent the true assets in any
information system and allow you to evaluate
legacy applications in light of your business,
your technology and your industry.
For legacy applications, deliverables for reverse
engineering should include both business and
technical documents as shown in the sidebars.
Business Documents
details of business entities in the system &
relationship diagram may be depicted at a
process level if application level depiction is
too cluttered.
Business Process Flow Diagram: Explains
business processes as implemented in the
application and resource flow (physical or
informational) along each process.
Work Flow Diagram: Depicts the work
product and intra-/extra-organizational unit
involved; presents information one level
lower than the business process flow
diagram.
Business–Data Entity Correspondence
Document: Consists of code and data
definitions to be reviewed in case of
business changes; the list should be
accurate to about 90%.
Conclusion
As your firm strives to meet compliance and market challenges, it’s imperative that there is a
full understanding and transparency into legacy systems. Reverse engineering is an important
step in developing the future state of your portfolio by providing the knowledge necessary to
maintain or modernize your existing legacy applications. From such knowledge comes the
flexibility to meet the changing business and technical demands of today’s market.
ABOUT THE AUTHOR
Jacqueline Payne is Kanbay’s leading expert in mainframe and mid-range systems and has over 15
years experience in planning, developing, executing, and managing complex technology projects. Her IT
experience is divided between the consulting arena and corporate world and includes both mainframe and
distributed platforms. Prior to joining Kanbay, Jaqui created and led the enterprise application integration
practice for Satyam and worked as a delivery manager and director of operations at Fujitsu Consulting.
WWW.KANBAY.COM
©2005 Kanbay Incorporated. All rights reserved.
Page 3