This document discusses modernizing Java EE application server infrastructure by migrating from one application server to another. It outlines business drivers for migration like support issues and changing application server landscapes. It also covers technical challenges of migration like effort estimation, application assessment, and migration requirements. The document proposes outsourcing the migration to experts like ZSL who can help using their proven framework to ensure a successful migration project.
AI You Can Trust - Ensuring Success with Data Integrity Webinar
Modernize your-java ee-app-server-infrastructure
1. Modernize your Java EE App Server
Infrastructure
Srinivasan Ranganathan
Head Enterprise Architecture
(Aug 16, 2011)
2. Agenda
Introduction to ZSL and Practice Area
JEE Application Server Migration - Trends
Business Challenges
Technical Challenges and Best Practices
ZSL Value addition
Q&A
3. Company Overview
15+ years Global Technology Integrator & Business Solutions Provider, Headquartered
in Edison, NJ
State-of-the-art Technology Research & Development Centers in US, Canada and
India
4000 employees with offices in US, UK, Canada, France, Germany, Malaysia,
Singapore, Middle-East and India
Dedicated R&D Division to Offer Value Added R&D Services & Product Development
Services to the ISVs and SPs
Emerging Technologies Specialization with the leading technology vendors alignment
Pioneer in Industry Solutions Development (Insurance, Finance, E-Governance,
Consumer Electronics, Pharmaceutical & Telecom)
Award Winning & Proven Partnership Program “Get IT Together” Partnership for ISVs,
VARs, SPs and SIs
ISO and CMM Certified Solution Provider
4. Practice Area’s Specialization
• Legacy Application
Migration
• Application Server Enterprise
Migration Modernization
• Database Migration
• OS Migration
• Application portfolio
management
Based out of Practice
Edison, NJ Area’s
and Chennai, Specialization
India
IDEA Lab –
Value-added
R&D, Product
Development/
Engineering
5. What is Application Server Migration
Migrating from One JEE Application
Server to Another JEE Application Server
Example
Websphere Weblogic Websphere
Etc
Weblogic Websphere JBOSS
6. Business Drivers
3
Support Long term strategic objectives 4
issues
2 Changing Application
Server landscape
Architecture Changes
5
1 Cost - Increase in Licensing fees,
support or capacity expansion Acquisition
6
7. Choosing the Right Application Server
Cost – License / Deployment features
Operational cost. Scalability
Administrative Cost Industry trends.
Support Expertise available in
Stability the market
Middleware support Monitoring
8. Business Concerns
Why do I Migrate. Current application is
doing the job and its Java
Disruption in business
Effort/Cost and Time taken to Migrate
Performance SLA
ROI
Integration points
Skill required for Migration
Training
9. Migration Requirement
Functional Non Functional
Requirements Requirements
Similar or Better
Similar Functionality
Performance
Minimum Disruption while Better Deployment and
migration monitoring
Risk Mitigation. Ex -
Roll back option
Cut over plan with minimum
disruption to business
10. Technical Planning
Effort Estimation
Note – Typical Migration also
includes Java Version upgrade and
an OS Upgrade or OS Migration
11. Application Assessment
Understanding the current architecture/design
of the existing application
Deployment Architecture
Metrics Calculation – Like third party utlities ,
EJB, Servlet, Webservices etc.
Inbound and outbound interfaces
Build and Deployment
Non Functional Requirements
Future Architecture/Design needs/vision
12. Effort Estimation
Collect Metrics based on Application
assessment
• Number of
Example
Identify the migration points • All third party
vendor jar files
used
• Technology
Calculate the Effort Estimation based on the mapping after
facts migration
Add Buffer to the above estimate for unknown
risks
13. Migration
Upgrade Java
Use Tools provided by the
target application server
Solve Runtime Issues
for assisted semi
automated migration
Solve Compile Time
Look for class loading
Issues ( jar files,
issues
refactoring etc )
Solve Deployment Issues
14. Migration – Easy Ones
API
Mismatch/Interface
Mismatch
Java Up gradation Compile time issues
XML Config Migration –
Deploy time issues
Files Migration Easy Ones
15. Migration – Medium Ones
Application Refactoring.
Vendor Up gradation That is EJB converted into
Spring or POJO classes
Class Cast Exception,
Class Not Found
Interfaces to other
Exceptions , Null Pointer
application
Exception and other
Runtime Exception
Web services
16. Migration – Hard Ones
Vendor Bugs – Example icefaces and weblogic
Application throwing exception in the server side but
not affecting the application functionality. Ex – DB2
Memory leaks JDBC
Driver
issue
Application have no exception but
calculations are performed wrong. That is Session
handling
Functional Bug etc
Example Pass
by
Class Loading issues. Example – Icefaces and reference/Pass
by Value
Websphere
Other unknowns
17. Design Suggestions
Make it vendor neutral. Sometime it is not possible
Have interfaces for intermodal interaction
Modular SOA design
No Inter coupling of Modules. Switch it using callback
interfaces or clean separation of concern
Do not modernize and migrate at the same time to
reduce risk
18. Test
Complete
Functional Test Load Testing
the whole Non Functional
application. No Testing
functionality
should be left out.
Do not do just
smoke testing Performance
Testing
Fix Issues
19. Deploy and Maintain
Maintain/enhance/
Modernize the
application
Monitor the application
closely for few weeks
Train users if needed
Backup Plan
Plan your
deployment and
cutoff
20. Outsource or Do it yourself?
What are your software team capabilities
Can they handle it apart from the current work
How critical is the application to your business.
How complex is your application? Is the team
that developed the application intact
What is your Budget
Can you hire consultants for a short period in
need if you face issues
Can you test the entire application including
load , stress testing etc.
21. ZSL Offering
• Lot of experience in Application Migration and building
java application for various application servers
• Off shore / near shore for cost savings with the right
customer support
• A Consistent framework that guarantees success.
• Fixed Cost/Fixed Time for the right project
• Set of tools to assist migration/ detect migration issues
• Responsive team for Customer Support during UAT,
deployment and Production
22. Zylog Framework
Phase 1 Phase 2 Phase 3 Phase 4
Assessment Discovery Plan Migration
Application Architecture Ear and War file analysis Target Application Server Automatic Migration
and Design Configuration Analysis & Capabilities • Config Files
Deployment Architecture • web.xml Target Deployment • Code Fixes
Frameworks and • Ejb.xml Architecture Manual Migration
technology used • Spring xmletc • Config
Framework Mapping • Code with errors
Inbound and Outbound Class Loading and class Version Upgrade
Interfaces names Refactor
Non Functional Unit test and Fix Issues
Build and Deployment Code Scanning Requirements
Non Functional • Class Path Review Build Deploy Changes
Potential Migration risks
Requirements • Java Code Review Action Plan
Future Vision • JSP Code Review
Phase 7 Phase 6 Phase 5
Maintenance Deployment Test
Functional Testing Application Server Support
Integration Testing Configuration Monitoring
Performance Testing Build and Deployment Training
Capacity Planning Monitor Enhancement
Stress, Endurance Test New Development
Testing Support