Legacy Migration and Modernization:
Leveraging the Value of Your Existing
Applications in a Modern Enterprise
Architecture
Bob Mastro – Vice President Health and Human Services
NYC Technology Forum, November 1, 2007
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 1
Leveraging the value of your existing
applications…
Enterprise
Architecture
Model-Driven
Architecture
Modernization
Strategy & tactics
OMG ADM
efforts
Service-Oriented
Architecture
Existing
Software
Unisys ADM
Vision and practice
ArchitectureDriven
Modernization
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 2
The field is rarely green
The Assumption
The Reality
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 3
Knowledge-Based Modernization
Critical Business Knowledge is locked
inside three sources of knowledge
Applications
(most accurate)
Documentation
Subject Matter Experts
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 4
The “legacy” application:
an asset and a liability
The moment an application goes into production, it becomes “legacy”
It’s an asset!
–
–
–
–
It’s a liability!
Functional
Customized
Well-tuned
Supports mission critical
operations
– Provides a competitive edge
–
–
–
–
–
Uses old technology
Requires hard-to-find skills
Lacks documentation
Hard to maintain
Resists change, integration,
and replacement
“You got to ac-cent-tchu-ate the positive, E-lim-i-nate the negative!”
— Song lyric by Johnny Mercer, 1944
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 5
Reduce the negatives through
modernization
Architectural “big picture” view
• Align software assets with enterprise architecture vision:
Architecture-Driven Modernization (ADM)
Ongoing management process view
• Disciplined, strategic planning for old and new applications:
Application Portfolio Management (APM)
Cost-benefit view
• Apply across all software assets:
Application Portfolio Analysis (APA)
“Home Improvement” view
• Never-ending
• Plan to spend money
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 6
Architecture-Driven Modernization (ADM)
• The process of
understanding &
evolving existing
software assets
within an
architectural
framework
• The mirror image
of Model-Driven
Architecture
(MDA)
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 7
ADM & MDA
• Modernization
begins with the
extraction and
abstraction of
knowledge from
the existing
application
• How far to
abstract? It
depends on the
type of
modernization
A
D
M
Extract,
Abstract,
and
Model
Knowledge
Computation
Independent
Viewpoint
domain
Platform
Independent
Viewpoint
M
D
A
design
Platform
Specific
Viewpoint
code
Understand
Existing
Application
“As is”
&
Evolve
New or
Renewed
Application
“To be”
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 8
EM (a.k.a. ADM) covers a broad scope
Enterprise Modernization (EM) is a discipline concerned with
• evolving existing systems to meet future needs
• identification of the gap between existing system and enterprise’s current
requirements
• preserving investments in existing systems (including proven business logic
and expertise of current staff)
• understanding existing software and other IT assets
Architecture-Driven Modernization (ADM) is the process of
understanding & evolving existing software assets for purposes of:
•
•
•
•
•
•
application portfolio management
code improvement
programming language translation
integration
platform migration
data migration
•
•
•
•
•
•
consolidation
data warehousing
reuse
package selection
service-oriented architecture
model-driven architectures
— Object Management Group ADM Task Force
3D-VE uses the terms “ADM”, “Enterprise Modernization”, “Enterprise Asset
Modernization”, “Legacy Modernization” and “IT Modernization” as synonyms
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 9
Six modernization styles
Style
Definition
Results
1. Discover
Mine knowledge and abstract
it to the right level
As-Is model at the appropriate level of
abstraction
2. Refactor
Improve application without
changing language or platform
Streamlined application with no dead
code, no database redundancy, etc.
3. Translate
Highly automated language-to- Application in the target language
language translation
replicates functionality
4. Wrap
Encapsulate cohesive
functionality in a SOA harness
Portions of original application turned
into components providing services
5. Replace
Replace applications with new
custom or packaged solutions
New, modern components that provide
services that replace the legacy system
6. Orchestrate
Orchestrate wrapped and
newly replaced services
The composite solution using existing
and new services
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 10
Unisys ADM framework
MODERNIZATION
MODERNIZATION
BUILDING
BUILDING
BLOCKSBLOCKS
Discover &
Understand
Mine
Refactor
Translate
Wrap
Replace
Orchestrate
Knowledge
Business processes
PERSPECTIVE
Business
Business info reqs
Business rules
Application
Logical data model
Application boundaries
Application logic
Realization
Physical data model
Interface definitions
Execution flows
Implementation
Program logic
“AS IS”
APPLICATION
“TO BE” APPLICATION
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 11
Abstracting knowledge to business
rules model level
Business
Rules
Business
Vocabulary
Spaghetti code,
hiding business
knowledge
“Your Application”
OMG
SBVR
Standard
[3]
Legacy asset
preservation
Business model
optimization
Forward
engineering
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 12
Mining knowledge from the outside in
Business rule
Error
Message
Report
Field
• Start with “boundary
elements” visible from the
outside of the application,
and follow paths through
the code
• Tools are essential, but...
First law of
knowledge mining
“Your Application”
Green
Screen
Field
"Only a computer can
analyze vast
quantities of code, but
only a human being
can recognize what
has business value."
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 13
The modernization journey…
…begins with mining of
knowledge from existing
applications…
…and heads towards
Service Oriented
Architecture (SOA)
SOA?
SOA what!
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 14
SOA enablement: Wrap and reuse
Service
Consumer
(Client)
Request
message
Result
message
Service
interface
Standard & visible
Service
wrapping
Back-end
systems
(Black box)
Implementation is hidden
Eligibility
Call
Multiple client
Web selfCase
applications
service
management
Determination
Center
sharing services
messages
messages
messages
Conceptual “service bus” based on messaging
messages
Reusable
services
Open
case
messages
Address
change
Calculate
budget
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 15
SOA: avoiding spaghetti on top of
spaghetti
Source: Gartner Group
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 16
Turning spaghetti code into services
“Pasta
Transformation”
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 17
SOA enables composite applications
Composite applications represent a design pattern that
combines current applications, new application logic and
application integration to provide new functionality
Composite Application
Composite
Service
Service
Service
Service
Java EE Component
Composite
Service
Service
Service
Composite
Service
Service
COBOL System
Service
Service
Service
.Net Component
SOA provides a way to assemble composite applications
in a productive and flexible manner
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 18
Part 2: The Unisys vision for ArchitectureDriven Modernization: Theory into practice
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 19
Knowledge-Based Modernization
New Business Requirements / Optimization Criteria
As-Is Business Model
(Vocabulary + Rules + Processes)
Upgrading & Optimization
Business Domain
To-Be Business Model
(Vocabulary + Rules + Processes)
Mine
To-Be SOA Application Model
(Data + Choreography
+ Orchestration)
Generate
Existing Solution
Forward Engineering
As-Is Application Model
(Data + Logic + Flows)
Reversed Engineering
ADM
Target Solution
IT Domain
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 20
Applications Wrapping – SOA
• Using Unisys tools from partners
Relativity Technologies and KDM
Analytics
• Document your legacy assets
– Expose, navigate & provide a flow of
the application logic
– Diagram all input and outputs
– Excavate architecture – identify
deficiencies (unnecessary
dependencies, lack of structure, etc.)
– Show database accesses & schema
– Discover & define application rules
• Complete inventory of all legacy assets
• Streamline applications
– Identify and eliminate dead code and
code defects
– Remove unnecessary dependencies
• Transform applications
– Break down application into modules
– Transform modules into services
– Replace presentation with HTML, Java
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 21
Example: linking rules to code
business vocabulary and rules
implementations in the code
Unisys 3D-VE Rules Modeler
Technology is embedded in KM
Links between business
vocabulary and rules and their
implementations in the code
Code implementation discovered
by 3rd-party mining tool
Inventory contains
references to the
source code
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 22
Unisys KMA for Business Rules
• Discover intellectual property using Relativity
– Reverse engineering of application code
– Mines ‘programmatic’ rules
• Create Business Rules Model using Unisys
Rules Modeler
• Maintain traceability between business rules and
program rules
• Enables a model-driven approach to forward
engineering
– Enables application re-partitioning from the
business process perspective
– Application can be restructured to optimize
performance and maintenance
– New requirements can be added at the
“to-be” modeling stage
– Can take advantage of model-driven code
generation capabilities
– Enables ‘gap analysis’ for replacement with
‘off-the-shelf’ application
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 23
Building a modernization strategy on
Unisys ADM building blocks
•The ADM approach for
a given application may
involve several ADM
building blocks.
•Discovery of existing
application knowledge
is required for all
scenarios…
… but extent of discovery
(“knowledge mining”)
and level of abstraction
varies by scenario
ADM
Building
Block
Discover
Refactor
Your Application Portfolio
App 1 App 2 App 3 App 4 App 5
√
√
√
√
√
Translate
Wrap
√
√
√
√
√
√
√
Replace
Orchestrate
√
√
√
√
The decision of what to do for each piece depends as much as on business goals, migration
logistics, and economics as on the state of the technology
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 24
Summary
• Modernization strategy:
Modernization
strategy
– Let enterprise architecture
drive your strategy
– Apply across your entire
software portfolio
Modernization
tactics
• Modernization tactics:
– Apply a combination of
modernization building blocks:
Refactor, translate, wrap, replace, orchestrate
– Mine knowledge and abstract to appropriate level
Modernization
journey
• Modernization journey:
– Begin with understanding existing software
– Head in the direction of Service Oriented Architecture
– Unisys can help, using its expertise, methodology and partnerships
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 25
Questions?
For further information contact:
[email protected]
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 26
Legacy Migration and Modernization - NYC Technology Forum
11/01/2007
Page 27
Descargar

Leveraging the value of your existing applications