Migrating Enterprise Applications Between J2EE Application Servers

watermelonroachdaleInternet and Web Development

Jul 30, 2012 (5 years and 3 months ago)

406 views

Copyright
@ 2005 Infosys Technologies, Inc.

16 February, 2005

Web Services Edge 2005 East

Migrating Enterprise Applications
Between J2EE Application Servers

Ajit Sagar


Enterprise Editor, Java Developer’s Journal

Founding Editor, XML Journal

Senior Technical Architect, Infosys Technologies, Inc.

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
2

16 February, 2005

Facets of Migration

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Summary

Contents

Why Migrate?

Migration Concerns

Migration Requirements

Stakeholder Perspectives

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
3

16 February, 2005

Why Migrate?

New strategic partnerships

Product/Vendor upgrades

Increasing demands of businesses

Rapid technology changes

Performance requirements

Improved service to customers

Market pressures from competing vendors

Cost

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
4

16 February, 2005

Migration Concerns

Will the integration with
other components,
products change?

How can I achieve
migration without
impacting my current
customers?

How much will it
cost? How long will it
take?

What technology /
business benefits
will I get after
migration?

My current application
works fine. Why do I need
to migrate?

Where will I get
skills / training for
the migration?

How will I accommodate
the migration effort in my
schedule?

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
5

16 February, 2005

Migration Requirements

Functional

Similar or better functionality

Minimum disruption to existing business services

Non
-
Functional and QoS

Similar or better performance

Standardization around IT strategy

Cost
-
effective solution

Rollback option

Minimum downtime of applications

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
6

16 February, 2005

Stakeholder Perspectives

Business Owners

Business impact

Cost

Downtime

New features

Technical Services

Performance and capacity planning

Deployment process

Skills needed to set up new environments

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
7

16 February, 2005

Stakeholder Perspectives

Enterprise Architecture Team

Architecture roadmap

Standards and governance

Application Team

Effort required to migrate

Required skills to migrate

Design based on new features

Additional work in an already busy schedule

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
8

16 February, 2005

Stakeholder Perspectives (contd.)

Application Server Vendor

Backwards compatibility

Product roadmap

Competitive advantage

Third Party Vendors

Compliance with new APIs

Program Management

Risk mitigation

Project management for analysis, planning, execution

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
9

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Summary

Contents

J2EE Evolution

The App Server Market

Role of App Server Vendors in
the Organization

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
10

16 February, 2005

J2EE Evolution

Before Java 2, Java was simple

Complexity due to segregation into J2SE/J2ME/J2EE

Complex packaging and deployment

Some key upgrade drivers:

JSP 0.9
-
1.1

JDBC 1.x
-
2.0

Servlets 1.x
-
2.3

EJB 2.0

MDBs in EJB 2.0

Web Services support

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
11

16 February, 2005

App Server Market

A few years ago, there were 20+ major app server
vendors

Now, for large organizations, there are:

IBM WebSphere

BEA WebLogic

Oracle Application Server

JBoss

Sun One

The differentiation is in terms of technical capabilities,
packaging,

corporate relationships, and cost

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
12

16 February, 2005

App Server Market (contd.)

Implementations and optimizations were done ahead
of API releases

Some App Servers were late to adopt to the latest
J2EE releases

e.g., IBM included EJB 2.0 support more than a year after
BEA

App Server vendors solution stack includes offerings
supplementary to Java

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
13

16 February, 2005

Role of App Server Vendors

Licensed product

Licensed product + consulting

Licensed product + technical services

Licensed product + infrastructure management

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
14

16 February, 2005

Contents

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Case Studies

Upgrade

Cross App
-
Server Migration

Cross Hardware/OS
Migration

Cross Software Platform
Migration

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
15

16 February, 2005

Upgrade

Phasing out support for previous versions

Compliance with latest J2EE standards

Standardization to consolidate version of Java APIs
across the organization

Typical upgrade timeframe is every 12
-
18 months

Example


WebSphere 3.5 to 5.1 upgrade

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
16

16 February, 2005

Cross App Server Migration

Vendor solution stack offerings

Cost advantage

Examples


migration to Sun One, migration to JBoss

Consolidation to one application server for all
applications

Corporate agenda/partnerships

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
17

16 February, 2005

Cross Hardware/OS Migration

Migration to cheaper hardware

Example


migration to Linux/Red Hat, migration to Windows
3K servers

Migration to higher performance hardware

Migration to “one
-
stop shop”

Example


IBM, Sun

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
18

16 February, 2005

Cross Software Platform Migration

Migration from mainframe to J2EE application server

Migration from .NET to J2EE application server

Migration from PowerBuilder to J2EE application
server

This can be categorized as a rewrite/re
-
architecture, and not migration

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
19

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Case Studies

Application Footprint

J2EE Migration
Considerations

Integration Components

Third Party Vendors

Contents

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
20

16 February, 2005

Application Footprint

J2EE APIs

Messaging

Security/SSO

Portal

Legacy

Reporting

Other Internal Applications

Workflow

External Applications

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
21

16 February, 2005

J2EE Migration Considerations

Packaging


IDE specific, vendor specific

IDEs

Authentication and Authorization mechanism

Off the Shelf Components

System Interfaces

Third
-
party libraries

Persistence Mechanisms

Changes to specifications

Use of proprietary technologies

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
22

16 February, 2005

J2EE Components and APIs

JSPs

Servlets

EJBs

JDBC

POJOs

JMS

Web Services APIs

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
23

16 February, 2005

Integration

Security

In
-
house frameworks and components

Integration with legacy systems

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
24

16 February, 2005

Third Party Vendors

Compatibility with target application server

Compatibility with target hardware/OS


Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
25

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Summary

Contents

Characteristics of Enterprise
Applications

Large Scale Migration
Challenges

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
26

16 February, 2005

Characteristics of Enterprise Applications

Varying levels of complexity

Enterprise Applications are distributed applications

Involve varying versions of technologies and APIs

Unique integration requirements


Integration with third party packaged products

Integration with in
-
house frameworks and
components

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
27

16 February, 2005

Characteristics of Enterprise Applications

Application teams have differing levels of expertise

Can require communication between heterogeneous
hardware/software platforms

Typically involve multiple stakeholders

Dependencies between applications in a portfolio

Usually have stringent SLAs

Complex testing requirements

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
28

16 February, 2005

Large Scale Migration Challenges

A structured migration attempts to apply a “one shoe
fits all” approach

Different application teams see different
benefits/challenges

Schedule and functional dependencies make overall
planning very complex

Infrastructure planning is inherently complex

A substantial investment is required for the migration

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
29

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Case Studies

Contents

Migration Phases

J2EE Migration Methodology

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
30

16 February, 2005

Migration Phases

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
31

16 February, 2005

J2EE Migration Methodology

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
32

16 February, 2005

J2EE Migration Methodology Highlights

Leverages tools available from the vendor

Incorporates phased approach for migration

Enables better planning and scheduling

Provides end
-
to
-
end migration solution

Aids in migrating portfolios of J2EE applications

Substantially mitigates migration risk


Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
33

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Case Studies

Contents

Migration Approach

Migration Analysis

Prioritization

Cost

Migration Scheduling

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
34

16 February, 2005



Migration Approach

Infrastructure
Set up

Program
Management

Testing
Services

Technical
Migration

Perform unit
testing for
components

Prepare
migration
strategy

Migrate code

to new
environment

Integration, UAT, stress
and regression testing

Develop sizing
and scheduling
estimates

Collect Information
on Testing
processes, Tools

Project management, Risk management, Resource management, Knowledge management, Change management and
Leadership, Quality & Metrics Management

Understand As
-
Is
and To
-
Be
Infrastructure

Program Managed Application Server Migration Tracks

Perform IDE
testing for
application

Analysis, Planning &
Scheduling

Code Migration &
Deployment

Testing and
Release

Transition and
Warranty

Deploy code

in new
environment

Define testing
strategy & plan

Complete DRR
request and
deployment map

Verify availability of
target environments

Review and
Standards

Prepare review documents, participate in review check points and work with standards groups,
to align the application architectures with technology standards within the organization.

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
35

16 February, 2005


1

2

3

4

5

6

7

2

3

4

5

7

3

3


2

3

4

5

6

7

2

3

4

7

A

B

C

G

D, J

E

F

H

N

I,L

M

K

Risk

Time

Activities

1 => Application SMEs
not known

2 => Migration effort
not known

3 => Schedule and
functional
dependencies not
analyzed

4 => Infrastructure
requirements not
determined

5 => New feature
benefits not evaluated

6 => Application
Characteristics not
known

7 => Alignment with
standards not
assessed

R
i
s
k
s

A => Identify application stakeholders

B => Prepare sizing template

C => Feedback and finalization of responses

D => Analysis of data collected

E => Prepare a feature cost vs. benefit analysis

F => Analyze third party tool dependencies

H => Analyze integration dependencies

I => L => Prepare Training Plan

M => Get Stakeholder buy
-
in

N => Finalize strategy and migration plan

Activities



A structured approach mitigates the risk of migration and
optimally leverages the features of the new platform

Migration strategy,
planning, & execution

Migration Analysis

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
36

16 February, 2005

Project Inception

Preparation of application
inventory and templates

Information Gathering

Team interviews and data
collection

Analysis

Sizing, estimates. and
schedule

Prepare and finalize
application inventory

Refine pre
-
defined sizing
and analysis templates
to for enterprise
application migration
needs

Review & Publication

Estimates Review,
publication and
presentation to
stakeholders

Meet with subject matter
experts for each
application to capture
application
characteristics in the
templates

Analyze and estimate
testing and training
efforts for the
development and
production environments

Meet with application
teams to refine the
process for estimating
the effort

Prepare migration
cookbook for WAS
migration specific to
target environment

Produce migration
estimates based on
dependencies on Java
architecture
components, 3
rd

party
libraries and products,
and integration
requirements

Refine and enhance
sizing and effort formulas
and factor in each
application’s business
constraints to prepare
initial schedule

Collect information on
existing strategy for
individual applications

Present migration plan to
key stakeholders

Factor in per
-
application
project costs and overall
PMO costs

Migration
Estimates and
Analysis
Workbook

Application
characteristics

Executive
presentation

Migration
estimates,
schedule
,
Analysis
Workbook
, and
Migration
Cookbook

Determine the future
states for the APIs and
third party versions
based on enterprise
architecture standards

ACTIVITIES

TASKS

OUTPUT

Detailed Planning Activities

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
37

16 February, 2005

Example
-

Migration Analysis Workbook

Sizing
Schedule
Cost
Project
Dev
Architects
Project
Mgt.
Program
Mgt.
1
App Inventory
Contains
information and contacts
for the applications that are hosted on WAS versions prior to
v5.x. The information includes the application description, contacts, WAS version, etc.






2
Project Estimates
Contains the
overall project estimates
for the migration in terms of efforts in hours and the costs
in USD





3
Project and PMO Cost
Contains formulas for estimating
project overheads
including Project management and other
resources per application, PMO resources, and external parties




4
Schedule
Gives a
high level schedule
for migrating all the applications at a program level. This contains a
macro activated through a button to recalculate the timelines in case some of the application
information is changed in the other sheets

5
Schedule Parameters
Presents the parameters used to determine the schedule. These include the estimates of elapsed
times from the code migration, testing efforts, etc.




6
Technical Information
Contains
technical characteristics of the applications used for sizing
the migration effort. This
includes the Java APIs used, build tools, Java Architecture Team components, integration with
other teams such as SSO,EMI, etc., third party libraries used in the application, etc.




7
Other Information
Contains
application constraints and dependencies
such as schedule dependencies between
applications, scheduling constraints and preferance, functional dependencies between
applications, training requirements, etc.


8
Code Migration Estimate
Analyses the information captured in Worksheet 1 and applied estimation and sizing formulas
from Worksheets 9 and 10 to provide a
sizing (in hours) for migrating application code.
This
includes some tasks that may not be common across all applications, and are termed as
"Specific Efforts"




9
App Specific Efforts
The efforts (in hours) for some tasks that are not common across all applications are captured in
the Code Migration Estimate. This sheet provides
details on the application specific efforts
for
those hours.





10
Testing Estimate
Contains the estimate for the
testing effort
for the different environments (E0[WSAD], E1, E2,
And E3. The testing encompasses the effort from unit testing through deployment






11
Estimation Formulas
Contains formulas used for calculating the estimates in worksheets 2, 6, and 8.

12
Formulas
Contains
formulas for sizing code migration
for J2EE Components and for determining applciation
complexity. These are used by spreadsheet 6 - "Code Migration Estimate."

Applications WAS 5.1 Migration - Table of Contents
WORKSHEET
DESCRIPTION
#
USED FOR
AUDIENCE
This sheet provides the table of contents for the entire workbook.
Please use the "Audience" section of this sheet to determine if the worksheet on that row is of
interest to you or not.
This workbook constitutes a
framework for WAS
migration analysis and
estimation. It consists of
templates to capture the
various facets of an
enterprise level migration
involving applications
owned by multiple
portfolios/LOBs

The contents of this
analysis and estimation
workbook can be
customized for the client,
based on the requirements
and the scope of the
engagement. Worksheets
can be added or deleted
from this workbook

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
38

16 February, 2005

3.5x

2.03

4.0x

Recommended
Enterprise Architecture
Components may not
be used

MQ

Development Environment

VAJ

WSAD

Source Code

VAJ

CVS

IDE

App Server Versions

Run Time Environment

Sun Solaris, UNIX

APIs

Servlets

1.x

2.1

2.2

JSPs

0.9

1.0

1.1

EJBs

1.0

1.1

JDK/JRE

1.2.x

1.3.x

5.1

Recommended JAT
Components used

MQ

Development Environment

WSAD 5

Source Code

CVS

IDE

App Server Version

Run Time Environment

Intel, Linux

APIs

Servlets

2.3

JSPs

1.2

EJBs

MDB

2.0

JDK/JRE

1.4

CURRENT STATE

FUTURE STATE

J2EE 1.3

UDB 7.x

Sybase

UDB 8.x

Sybase

WebSphere Upgrade
-

Transition

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
39

16 February, 2005

Technical Complexity

Business Criticality

App 1

App 5

App 4

App 3

App 2

App 7

App 6

Quadrant 4

Technical Index = Low

Business Index =Low

Quadrant 1

Technical Index = High

Business Index = High

Quadrant 2

Technical Index = Low

Business Index = High

Quadrant 3

Technical Index = High

Business Index = Low

Migration Prioritization


Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
40

16 February, 2005

Cost Estimates

SUMMARY


Application Migration Effort (code migration and testing) =
20,939 hours


Total cost =
USD 9,240,640


Largest cost = Application 7 (USD 2,304,834)


Smallest cost = Application 15 (USD 71,831)


High hours (due to benchmarking requirement) = Application 29 (2,380
hours)

NOTES


External costs for are not factored in


Updates from some applications may change the estimates


Application Migration includes code migration and testing


Project and PMO costs include training

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
41

16 February, 2005

Migration Schedule

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
42

16 February, 2005

Contents

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Summary

Migration Frameworks

Migration Tools

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
43

16 February, 2005

Migration Aids

Automated migration tools

Migration Service Offerings

Training

Migration guides

Migrating to WebSphere V5.0 An End
-
to
-
End Migration Guide

Migrating J2EE applications into Weblogic product family


Migrating J2EE applications into Sun Java System application
server product family

Moving a WebLogic Server Application into WebSphere Studio

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
44

16 February, 2005

Migration Frameworks

Analysis and Estimation frameworks

Planning and Execution frameworks

Benchmarking frameworks

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
45

16 February, 2005

Why Migrate?

How We Got Here

J2EE Migration By Any Other Name …

Migrating J2EE Applications

Migrating Enterprise Applications

Migration Methodology

Migration Planning

Migration Aids

Summary

Contents

Migration Best Practices

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
46

16 February, 2005

Migration Best Practices

1.
Program manage your migration

2.
Prepare your arsenal

3.
Invest in a planning phase

4.
Communicate and educate

5.
Get everyone working towards the same
goal

Copyright
@ 2005 Infosys Technologies, Inc.

Web Services Edge 2005 East

Slide
47

16 February, 2005

Migration Best Practices (contd.)

6.
Prepare questionnaires and templates for
gathering migration requirements

7.
Consider the least common denominator in
a plain vanilla migration

8.
Invest in specialized training for migration

9.
Wade the waters before jumping in

10.
Always leave a back door open


Copyright
@ 2005 Infosys Technologies, Inc.

16 February, 2005

Web Services Edge 2005 East

Thanks

Ajit Sagar


ajitsagar@sys
-
con.com

http://www.ajitsagar.javadevelopersjournal.com