A description of X-2E Modernize, the heart of the X-Analysis CA 2E 
Modernization Module. X-2E Modernize works directly from the Synon 
model to automatically convert your application to Java or RPG Free. 
X-2E Modernize 
Automated Conversion of CA 2E (SYNON) Applications to Java or RPG Free 
using Fresche Legacy’s X-2E Modernize 
What’s Inside 
X-2E Modernize
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Some Highlights: 
ff Creates MVC Design Model from recovered 
interactive program legacy designs in CA 
2E Model 
ff Screens/Functions 
ff Data Layer/Internal Routines 
ff Business logic/Action Diagrams 
ff Generates MVC code from recovered CA 
2E designs as RPGLE-Free, Java JSF/Angular 
JS, Hibernate, Spring, DAO 
ff Works over user-defined application areas 
or individual programs 
ff Compares Original and Recovered code 
ff Transforms RPG batch logic into Java or 
RPGLE-Free 
ff Creates Hibernate configuration files and 
JPA package from recovered relational 
model 
ff Fully automates and integrates 
documentation with X-Analysis 
ff Creates platform-independent UI/View- 
Controller meta-data (functions) from 2E 
Functions 
ff Builds Java data migration package from 
legacy data model 
Since its introduction, CA 2E (Synon) has become the most suc-cessful 
4GL tool on the IBM i platform. The CA 2E development 
environment combines a rich and precise model of designs 
and specifications with powerful code generation capabilities. 
Even with this powerful set of features, many companies now 
face real pressure to modernize their business applications 
beyond the scope and capability of what CA 2E can offer. The 
challenge is to move forward without discarding decades 
of investment in design, evolution and fine tuning stored in 
the CA 2E model. Fresche’s X-2E Modernize is the solution 
for modernizing any CA 2E application. X-2E Modernize 
automatically re-factors and generates an MVC Web 
application using OO methods in Java or RPG Free (Flex & 
Silverlight UI soon to be added). Fresche’s X-2E Modernize takes 
advantage of CA 2E application architecture to automatically 
convert applications. Since CA 2E forces users to organize 
code into screen designs, action diagrams, business logic and 
database components, X-2E Modernize uses this internal 
2E model to extract design information in a structure that 
maps cleanly into a modern MVC/OO/RESTful architecture. 
X-2E 
Modernize 
X-2E Modernize: 
The complete, automated 
solution for conversion to 
CA 2E (Synon) applications can easily be converted to Java or RPG Free using X-2E Modernize Java or RPG Free 
Entities & 
Relationships Functions CA 2E Internal 
Routines 
Action 
Diagrams 
Analysis 
Data Model 
Diagrams 
Data Flows 
DDL/XML/UML 
Screen Designs 
& Data Mapping 
Screen Actions 
Business Rules 
Graphical 
Documentation & 
Impact Analysis 
Business Rules 
Analysis & 
Graphical 
Structure Charts 
DDL Database 
Web UI as: 
Angular JS 
JSF 
ASPx 
5250/OA 
Re-Usable 
Modules as Free 
Format RPG & 
SQLLE 
Event Driven, 
Business Logic 
Modules as Free 
Format RPG 
Modernize 
Modernize
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Whatever the approach to modernization, design recovery is the first 
step. With this understanding, developers can quickly identify the 
business rules and reusable designs embedded in core business 
Design Recovery: The basis for modernization 
Documentation 
X-Analysis 
Word/Open Office/Excel 
UML 
XML 
DDL 
Java 
RPG Free 
Current Potential 
LANSA 
Oracle ADF 
Silverlight 
Extracted 
Functions/UI 
Recovered Design 
Refactored 
Action Diagrams 
or Business Logic 
Data Model 
modernize or re-develop a system. Reusing existing designs programmat-ically 
can provide a dramatic productivity gain in rebuilding an application. 
Why start from the CA 2E (Synon) 
Model? 
It is only possible to convert CA 2E (Synon) 
applications by working from the CA 2E 
model into the target architecture and 
code. Conversion processes that attempt 
to translate the 2E-generated RPG code 
will result in volumes of unnecessary, 
unrecognizable and unmaintainable code. 
In automated reengineering projects, the 
2E information (and not the RPG) is parsed 
by X-2E Modernize to recover knowledge 
chunks and reassemble them into a new 
system. Several reasons why you should not 
attempt to directly convert the 2E-generated 
RPG code: 
ff You will be converting approximately 
10 times more code 
ff The new code will not follow a modern 
architecture design 
ff No one will recognize the new code and 
it will be extremely difficult to maintain 
ff You are likely to have difficulty with 
scaling and performance 
ff Generating from the RPG is not a viable 
long term investment 
processes. They can also 
restructure code, remove 
dead code and create re-usable 
components that 
can be enabled as services 
within a service-oriented 
architecture (SOA) or any 
modern application archi-tecture. 
Design Recovery is very 
valuable for documen-tation 
and application 
support purposes, but 
the real benefits come 
when the recovered 
design can be used to
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
The X-2E modernization process includes two stages: Component 
Generation and Application Generation. 
COMPONENT GENERATION 
The Component Generation stage includes: 1. Database Modernization; 
2. Business Logic Rebuild; 3. UI/Print Functions. Components are sum-marized 
at right, and described below. 
Modernization Process 
1. Database Modernization 
The data model for a legacy application as deduced by X-2E can be used to modernize 
the database and database access as well as provide valuable information for analysis 
and documentation. Once you have a modernized database, you gain a number of 
advantages: 
ff Openness/Standards compliance: Using industry-standard SQL means that many 
different tools and applications on multiple platforms can easily access and use your 
modernized database. 
ff Portability: Because the database is defined in purely SQL terms rather than in 
a proprietary file format, it becomes portable — i.e., it is now viable to consider 
moving the database to another platform. 
ff Improved performance: IBM’s data retrieval efforts have been concentrated on SQL 
access rather than file-based access for many years. 
ff Ability to use modern Object Relational Mapping (ORM) software such as Hibernate 
for rapid application development in Java and other modern languages. 
ff Reduced dependency on System i-specific skills such as DDS, which may lead to cost 
savings and reduced risk. 
ff Data Integrity: Journaling is available for SQL access just as it has always 
been for file-based access. Constraints and referential integrity can be 
implemented directly at the database level where they are unavoidable 
rather than at the program level. Database triggers allow code to be run 
before or after records are added, updated or deleted, providing an easy way 
of enforcing compliance, audits, validations and applying business rules. 
ff Database modernization also uses the advanced design extraction directly 
from the CA 2E model, making use of long field names, constraint logic and 
all relevant database abstractions, either kept on IBM i or migrated onto 
other DBMS systems. 
Database 
Modernization 
DDS to DDL Conversion 
Data Quality Analysis 
ORM Framework Gen-(Hibernate) 
OO VO layer with Web service wrapper 
Re-factor into event-driven model OO mapping 
Business rules database 
Business Logic Model generated as Java, RPG Free 
Web Service Layer 
Screen formats/layouts/fields/files/attributes 
Screen actions flow 
ORM mapped to UI 
Conditional field/UI/flow logic 
Business 
Logic Rebuild 
UI/Print 
Functions
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Modernization Process - Cont’d. 
2. Business Logic Rebuild 
After recovering the Data Model, the next step is to extract the logic 
that gives the application its particular characteristics. The generic 
term for such logic is Business Rules. The challenge is to extract or 
“harvest” these rules from the legacy code. 
Once harvested, these rules need to be narrated and indexed, thus 
providing critical information for any analyst, architect or developer 
charged with rebuilding a legacy application. The task of harvesting 
business rules manually is a highly skilled, labor-intensive, and costly 
exercise for any organization. 
X-2E Modernize accomplishes this task by automatically scanning 
the RPG and COBOL programs and the 2E model programmatically. 
It then separates out rule code from the body of the application and 
identifies, indexes, narrates, and stores business rule logic code into 
a structured, usable repository. In the final part of the process, it 
supplies appropriate textual narratives to describe these harvested 
rules. 
Once the rules are derived, they can be viewed in summary form, as 
shown above at right. 
The business rule repository can then be used programmatically to 
generate new code (migrated logic - see at right). At the same time, 
the built-in documentation, which cross references where-used ob-jects 
and annotates capabilities, may be used by new developers as 
the necessary input for re-specification exercises, whether for new 
applications or for modifications to the current system. 
View the business rule 
summary at a glance 
Generate new code 
from the business 
rule repository, or 
use the built-in docu-mentation 
(including 
full cross-referencing 
and annotated capa-bilities) 
to create new 
specs.
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Modernization Process - Cont’d. 
3. UI/Print Functions 
The screens of a legacy application are a classic example where the design is useful in 
a modernization context, and the code is not. The sheer number of screens in a legacy 
application presents a logistical problem in recreating them manually. X-2E Modernize lets 
you see what the legacy screen looked like without having to run the application, which is a 
great time saver for people not involved with the original application. 
View individual screens 
without running the 
application 
Design new screens in a 
GUI designer 
View the code at any 
time
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
Rebuilding the UI 
X-2E Modernize extracts User Interface design information as 
described above and stores it as metadata in the X-2E repository. 
This is used as reference documentation for rebuilding UIs 
manually or for programmatically regenerating new View and 
Controller artifacts in the new technology. X-Analysis currently 
generates a JSF / Facelets UI version or a newer AngularJS UI with 
RESTful Web Services. The design metadata can also be used to 
generate new interfaces. 
X-2E Modernize 
Modernization Process - Cont’d. 
3. UI/Print Functions - Cont’d. 
Screen designs of legacy applications are not just about look and feel; there are 
attributes and embedded logic that are relevant no matter what technology is used 
to implement them in a modernized system. Among these attributes are: 
ff Formats/Layouts - Some screens may benefit from amalgamation or redesign, 
but table edits and non-transaction type screens will largely remain the same, 
even if not identical in layout. 
ff Actions - Whether from sub-file options, command keys, or default enter actions, 
these often represent an important part of the usefulness of an application 
design. The mechanisms used to offer or invoke these calls may change, but 
where they go logically and what parameters they pass will largely remain 
consistent. 
ff Fields/Files/Attributes - What fields are on what screens, and where the data comes 
from is a requirement in any system development. Attributes of a field can also 
help determine what type of controls might be used in a modern UI. For example, 
a Boolean type might be implemented with a check box, a date with a date prompt. 
Again, these are simple enough to edit in modern IDEs, but the volume associated 
with any large legacy application modernization can make this work prohibitive. 
ff Data Model Mapping - Validations and prompting mechanisms that ensure 
referential integrity in legacy applications can also be vital to extract. This is both 
to implement referential integrity and to provide design information for building 
modern prompt or selection controls such as drop-downs or lists. 
Summary 
screen laid out 
in grid pattern 
Why AngularJS? 
The oldest and most mature of all JS MVC frameworks, 
AngularJS is managed by Google and is best suited for 
thick client business Web applications. It is built around 
best design principles and supports scalability, main-tainability 
and modularization.
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Modernization Process - Cont’d. 
APPLICATION GENERATION 
The modernized Web application based on MVC architecture can be generated after all the components 
are available. X-2E Modernize generates the sort of application that would have been written by hand 
by a professional application architect and team of coders without losing the essence of the original 
design or functional value. This is all done automatically into the IDEs of the language chosen by the 
user during generation. The new application is easier to enhance and maintain, and as such naturally 
attracts a wider, more-readily available resource pool for future development and maintenance. 
2E Model 
Function 
Action 
Diagrams 
Data Model 
Extracted 
Functions 
Refactored 
Action 
Diagrams 
Explicit Data 
Model 
View 
Controller 
Extracted 
Business Logic 
Class 
ORM 
Generic Data 
Base I/O 
Classes 
Modern 
Database 
X-2E 
Repository 
Rebuilding the UI - Cont’d. 
X-2E Modernize helps you generate screens in the format that 
fits your workflow. 
Edit pop-up 
window
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
X-2E Modernize 
Modern and Maintainable Code Base 
Because X-2E Modernize converts code by first converting the 2E model to RPG in an MVC/OO/RESTful pattern, this intermediate code can also be viewed and compared 
to aid in understanding how the conversion took place. The Java code is then generated from the intermediate code as MVC JEE JSF / AngularJS, Spring/Hibernate applica-tion 
code base using modern coding standards for optimum maintainability. 
Characteristics of the converted code 
ff MVC design pattern – Model-View-Control-ler, 
as in a Model layer of components that 
contains business logic, a View layer that 
contains the outward presentation, and a 
Controller layer that handles events in the 
other layers and directs process flow. 
ff Object Orientation – organization of code 
into objects (classes), and those classes con-taining 
functions. The functions are either 
callable from other classes, or protected 
so they can only be called from within their 
own class. 
ff RESTful interaction – the most important 
point about REST is that server components 
have no inherent knowledge of session 
state. Session information that needs to 
be preserved between work flow activities 
(screens) is preserved and represented 
from client-side memory, or via session 
management functions within the applica-tion 
server software. 
X-2E Modernize lets you easily compare RPG and 
converted code side-by-side
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
At A Glance... 
X-2E Modernize Summary of Functionality 
ff Creates MVC Design Model from recovered interactive program 
legacy designs in CA 2E Model 
ff Screens/Functions 
ff Data Layer/Internal Routines 
ff Business logic/Action Diagrams 
ff Generates MVC code from recovered CA 2E designs as RPGLE-Free, 
Java JSF/AngularJS, Hibernate, Spring, DAO 
ff Works over user defined application areas or individual programs 
X-2E 
Modernize 
X-2E Modernize 
The complete, automated solution for conver-sion 
to Java or RPG Free. 
Fresche Legacy: 
ff Compares Original and Recovered code 
ff Transforms RPG batch logic into Java or RPGLE-Free 
ff Creates Hibernate configuration files and JPA package from 
recovered relational model 
ff Fully automates and integrates documentation with X-Analysis 
ff Creates Platform independent UI/View-Controller meta-data 
(functions) from 2E Functions 
ff Builds Java data migration package from legacy data model 
US: 
9245 Laguna Springs Drive, 
Suite 200 
Elk Grove, CA, 95758 
1.800.361.6782 
Canada: 
995 Wellington, Suite 200 
Montreal, CAN, H3C 1V3 
514.747.7007 
1.800.361.6782 
India: 
Atrauli, Gaurabagh, 
P.O. Gudumba, Kursi Road, 
Lucknow 226026 
Uttar Pradesh, INDIA 
+91 522 3251473
Fresche Legacy: X-2E Modernize Share this information: IT Can Make You Smile 
About Fresche Legacy 
As a leading expert in legacy management and modernization, Fresche Legacy helps enterprise organizations transform their business 
to improve financial performance, increase market competitiveness, remove risk and add business value. Our team of experts has 
successfully completed hundreds of transformation projects within the most complex enterprise environments, helping organizations 
future-proof their business by modernizing their business processes, technologies, infrastructure, and methodologies. Committed to 
100 percent customer satisfaction, Fresche Legacy’s services and solutions span the complete legacy modernization spectrum from 
concept to maintenance, and include Discovery Services, Modernization Solutions, and Application Management Services & Transfor-mation. 
For more information about our company, visit us on the Web at www.freschelegacy.com 
X-Analysis Professional is the foundation of the full X-Analysis toolset, a suite of productivity tools for your IBM i applications. Following 
is a brief description of the other modules in the suite: 
How to get on board: X-Analysis products are available as a complete package or as individual 
modules. At Fresche Legacy, we work closely with you to assess your needs and recommend the best 
solutions. To get started, contact us using the information below: 
www.freschelegacy.com |info@freschelegacy.com | 
1.800.361.6782 (US, Can) | 00 800 361 67 82 0 (Belgium, France Germany, UK) 
FL-DS-XAnalysis-CA_2E_Mod-EN-11122014 
Application Process Mapping: Business 
rule and relational data model extraction and 
documentation of application processes and 
flows. 
Audit, Quality and Change 
Management: Auditing of core application 
functionality - including design, quality and 
complexity - to identify and change problematic 
areas in the application. 
Data and Test Management: Analysis of 
data quality; data archiving, data subsetting 
and data masking. Test data automation and 
management. 
X-Analysis Professional: The foundation 
tool, with all of the basic functionality. 
Application Modernization: RPG, COBOL 
and CA 2E (Synon) automatically converted to 
Java. 
Database Modernization: Automated 
conversion of DDS to DDL, including creation of 
constraints, long field names and views. 
Open Systems Analysis: Cross-referencing 
and documentation of Java, C#, PHP, VB/VB.NET 
and PowerBuilder. 
CA 2E Analysis: Everything required to analyze and 
document CA 2E applications.

X-2E Modernize

  • 1.
    A description ofX-2E Modernize, the heart of the X-Analysis CA 2E Modernization Module. X-2E Modernize works directly from the Synon model to automatically convert your application to Java or RPG Free. X-2E Modernize Automated Conversion of CA 2E (SYNON) Applications to Java or RPG Free using Fresche Legacy’s X-2E Modernize What’s Inside X-2E Modernize
  • 2.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Some Highlights: ff Creates MVC Design Model from recovered interactive program legacy designs in CA 2E Model ff Screens/Functions ff Data Layer/Internal Routines ff Business logic/Action Diagrams ff Generates MVC code from recovered CA 2E designs as RPGLE-Free, Java JSF/Angular JS, Hibernate, Spring, DAO ff Works over user-defined application areas or individual programs ff Compares Original and Recovered code ff Transforms RPG batch logic into Java or RPGLE-Free ff Creates Hibernate configuration files and JPA package from recovered relational model ff Fully automates and integrates documentation with X-Analysis ff Creates platform-independent UI/View- Controller meta-data (functions) from 2E Functions ff Builds Java data migration package from legacy data model Since its introduction, CA 2E (Synon) has become the most suc-cessful 4GL tool on the IBM i platform. The CA 2E development environment combines a rich and precise model of designs and specifications with powerful code generation capabilities. Even with this powerful set of features, many companies now face real pressure to modernize their business applications beyond the scope and capability of what CA 2E can offer. The challenge is to move forward without discarding decades of investment in design, evolution and fine tuning stored in the CA 2E model. Fresche’s X-2E Modernize is the solution for modernizing any CA 2E application. X-2E Modernize automatically re-factors and generates an MVC Web application using OO methods in Java or RPG Free (Flex & Silverlight UI soon to be added). Fresche’s X-2E Modernize takes advantage of CA 2E application architecture to automatically convert applications. Since CA 2E forces users to organize code into screen designs, action diagrams, business logic and database components, X-2E Modernize uses this internal 2E model to extract design information in a structure that maps cleanly into a modern MVC/OO/RESTful architecture. X-2E Modernize X-2E Modernize: The complete, automated solution for conversion to CA 2E (Synon) applications can easily be converted to Java or RPG Free using X-2E Modernize Java or RPG Free Entities & Relationships Functions CA 2E Internal Routines Action Diagrams Analysis Data Model Diagrams Data Flows DDL/XML/UML Screen Designs & Data Mapping Screen Actions Business Rules Graphical Documentation & Impact Analysis Business Rules Analysis & Graphical Structure Charts DDL Database Web UI as: Angular JS JSF ASPx 5250/OA Re-Usable Modules as Free Format RPG & SQLLE Event Driven, Business Logic Modules as Free Format RPG Modernize Modernize
  • 3.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Whatever the approach to modernization, design recovery is the first step. With this understanding, developers can quickly identify the business rules and reusable designs embedded in core business Design Recovery: The basis for modernization Documentation X-Analysis Word/Open Office/Excel UML XML DDL Java RPG Free Current Potential LANSA Oracle ADF Silverlight Extracted Functions/UI Recovered Design Refactored Action Diagrams or Business Logic Data Model modernize or re-develop a system. Reusing existing designs programmat-ically can provide a dramatic productivity gain in rebuilding an application. Why start from the CA 2E (Synon) Model? It is only possible to convert CA 2E (Synon) applications by working from the CA 2E model into the target architecture and code. Conversion processes that attempt to translate the 2E-generated RPG code will result in volumes of unnecessary, unrecognizable and unmaintainable code. In automated reengineering projects, the 2E information (and not the RPG) is parsed by X-2E Modernize to recover knowledge chunks and reassemble them into a new system. Several reasons why you should not attempt to directly convert the 2E-generated RPG code: ff You will be converting approximately 10 times more code ff The new code will not follow a modern architecture design ff No one will recognize the new code and it will be extremely difficult to maintain ff You are likely to have difficulty with scaling and performance ff Generating from the RPG is not a viable long term investment processes. They can also restructure code, remove dead code and create re-usable components that can be enabled as services within a service-oriented architecture (SOA) or any modern application archi-tecture. Design Recovery is very valuable for documen-tation and application support purposes, but the real benefits come when the recovered design can be used to
  • 4.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize The X-2E modernization process includes two stages: Component Generation and Application Generation. COMPONENT GENERATION The Component Generation stage includes: 1. Database Modernization; 2. Business Logic Rebuild; 3. UI/Print Functions. Components are sum-marized at right, and described below. Modernization Process 1. Database Modernization The data model for a legacy application as deduced by X-2E can be used to modernize the database and database access as well as provide valuable information for analysis and documentation. Once you have a modernized database, you gain a number of advantages: ff Openness/Standards compliance: Using industry-standard SQL means that many different tools and applications on multiple platforms can easily access and use your modernized database. ff Portability: Because the database is defined in purely SQL terms rather than in a proprietary file format, it becomes portable — i.e., it is now viable to consider moving the database to another platform. ff Improved performance: IBM’s data retrieval efforts have been concentrated on SQL access rather than file-based access for many years. ff Ability to use modern Object Relational Mapping (ORM) software such as Hibernate for rapid application development in Java and other modern languages. ff Reduced dependency on System i-specific skills such as DDS, which may lead to cost savings and reduced risk. ff Data Integrity: Journaling is available for SQL access just as it has always been for file-based access. Constraints and referential integrity can be implemented directly at the database level where they are unavoidable rather than at the program level. Database triggers allow code to be run before or after records are added, updated or deleted, providing an easy way of enforcing compliance, audits, validations and applying business rules. ff Database modernization also uses the advanced design extraction directly from the CA 2E model, making use of long field names, constraint logic and all relevant database abstractions, either kept on IBM i or migrated onto other DBMS systems. Database Modernization DDS to DDL Conversion Data Quality Analysis ORM Framework Gen-(Hibernate) OO VO layer with Web service wrapper Re-factor into event-driven model OO mapping Business rules database Business Logic Model generated as Java, RPG Free Web Service Layer Screen formats/layouts/fields/files/attributes Screen actions flow ORM mapped to UI Conditional field/UI/flow logic Business Logic Rebuild UI/Print Functions
  • 5.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Modernization Process - Cont’d. 2. Business Logic Rebuild After recovering the Data Model, the next step is to extract the logic that gives the application its particular characteristics. The generic term for such logic is Business Rules. The challenge is to extract or “harvest” these rules from the legacy code. Once harvested, these rules need to be narrated and indexed, thus providing critical information for any analyst, architect or developer charged with rebuilding a legacy application. The task of harvesting business rules manually is a highly skilled, labor-intensive, and costly exercise for any organization. X-2E Modernize accomplishes this task by automatically scanning the RPG and COBOL programs and the 2E model programmatically. It then separates out rule code from the body of the application and identifies, indexes, narrates, and stores business rule logic code into a structured, usable repository. In the final part of the process, it supplies appropriate textual narratives to describe these harvested rules. Once the rules are derived, they can be viewed in summary form, as shown above at right. The business rule repository can then be used programmatically to generate new code (migrated logic - see at right). At the same time, the built-in documentation, which cross references where-used ob-jects and annotates capabilities, may be used by new developers as the necessary input for re-specification exercises, whether for new applications or for modifications to the current system. View the business rule summary at a glance Generate new code from the business rule repository, or use the built-in docu-mentation (including full cross-referencing and annotated capa-bilities) to create new specs.
  • 6.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Modernization Process - Cont’d. 3. UI/Print Functions The screens of a legacy application are a classic example where the design is useful in a modernization context, and the code is not. The sheer number of screens in a legacy application presents a logistical problem in recreating them manually. X-2E Modernize lets you see what the legacy screen looked like without having to run the application, which is a great time saver for people not involved with the original application. View individual screens without running the application Design new screens in a GUI designer View the code at any time
  • 7.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile Rebuilding the UI X-2E Modernize extracts User Interface design information as described above and stores it as metadata in the X-2E repository. This is used as reference documentation for rebuilding UIs manually or for programmatically regenerating new View and Controller artifacts in the new technology. X-Analysis currently generates a JSF / Facelets UI version or a newer AngularJS UI with RESTful Web Services. The design metadata can also be used to generate new interfaces. X-2E Modernize Modernization Process - Cont’d. 3. UI/Print Functions - Cont’d. Screen designs of legacy applications are not just about look and feel; there are attributes and embedded logic that are relevant no matter what technology is used to implement them in a modernized system. Among these attributes are: ff Formats/Layouts - Some screens may benefit from amalgamation or redesign, but table edits and non-transaction type screens will largely remain the same, even if not identical in layout. ff Actions - Whether from sub-file options, command keys, or default enter actions, these often represent an important part of the usefulness of an application design. The mechanisms used to offer or invoke these calls may change, but where they go logically and what parameters they pass will largely remain consistent. ff Fields/Files/Attributes - What fields are on what screens, and where the data comes from is a requirement in any system development. Attributes of a field can also help determine what type of controls might be used in a modern UI. For example, a Boolean type might be implemented with a check box, a date with a date prompt. Again, these are simple enough to edit in modern IDEs, but the volume associated with any large legacy application modernization can make this work prohibitive. ff Data Model Mapping - Validations and prompting mechanisms that ensure referential integrity in legacy applications can also be vital to extract. This is both to implement referential integrity and to provide design information for building modern prompt or selection controls such as drop-downs or lists. Summary screen laid out in grid pattern Why AngularJS? The oldest and most mature of all JS MVC frameworks, AngularJS is managed by Google and is best suited for thick client business Web applications. It is built around best design principles and supports scalability, main-tainability and modularization.
  • 8.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Modernization Process - Cont’d. APPLICATION GENERATION The modernized Web application based on MVC architecture can be generated after all the components are available. X-2E Modernize generates the sort of application that would have been written by hand by a professional application architect and team of coders without losing the essence of the original design or functional value. This is all done automatically into the IDEs of the language chosen by the user during generation. The new application is easier to enhance and maintain, and as such naturally attracts a wider, more-readily available resource pool for future development and maintenance. 2E Model Function Action Diagrams Data Model Extracted Functions Refactored Action Diagrams Explicit Data Model View Controller Extracted Business Logic Class ORM Generic Data Base I/O Classes Modern Database X-2E Repository Rebuilding the UI - Cont’d. X-2E Modernize helps you generate screens in the format that fits your workflow. Edit pop-up window
  • 9.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile X-2E Modernize Modern and Maintainable Code Base Because X-2E Modernize converts code by first converting the 2E model to RPG in an MVC/OO/RESTful pattern, this intermediate code can also be viewed and compared to aid in understanding how the conversion took place. The Java code is then generated from the intermediate code as MVC JEE JSF / AngularJS, Spring/Hibernate applica-tion code base using modern coding standards for optimum maintainability. Characteristics of the converted code ff MVC design pattern – Model-View-Control-ler, as in a Model layer of components that contains business logic, a View layer that contains the outward presentation, and a Controller layer that handles events in the other layers and directs process flow. ff Object Orientation – organization of code into objects (classes), and those classes con-taining functions. The functions are either callable from other classes, or protected so they can only be called from within their own class. ff RESTful interaction – the most important point about REST is that server components have no inherent knowledge of session state. Session information that needs to be preserved between work flow activities (screens) is preserved and represented from client-side memory, or via session management functions within the applica-tion server software. X-2E Modernize lets you easily compare RPG and converted code side-by-side
  • 10.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile At A Glance... X-2E Modernize Summary of Functionality ff Creates MVC Design Model from recovered interactive program legacy designs in CA 2E Model ff Screens/Functions ff Data Layer/Internal Routines ff Business logic/Action Diagrams ff Generates MVC code from recovered CA 2E designs as RPGLE-Free, Java JSF/AngularJS, Hibernate, Spring, DAO ff Works over user defined application areas or individual programs X-2E Modernize X-2E Modernize The complete, automated solution for conver-sion to Java or RPG Free. Fresche Legacy: ff Compares Original and Recovered code ff Transforms RPG batch logic into Java or RPGLE-Free ff Creates Hibernate configuration files and JPA package from recovered relational model ff Fully automates and integrates documentation with X-Analysis ff Creates Platform independent UI/View-Controller meta-data (functions) from 2E Functions ff Builds Java data migration package from legacy data model US: 9245 Laguna Springs Drive, Suite 200 Elk Grove, CA, 95758 1.800.361.6782 Canada: 995 Wellington, Suite 200 Montreal, CAN, H3C 1V3 514.747.7007 1.800.361.6782 India: Atrauli, Gaurabagh, P.O. Gudumba, Kursi Road, Lucknow 226026 Uttar Pradesh, INDIA +91 522 3251473
  • 11.
    Fresche Legacy: X-2EModernize Share this information: IT Can Make You Smile About Fresche Legacy As a leading expert in legacy management and modernization, Fresche Legacy helps enterprise organizations transform their business to improve financial performance, increase market competitiveness, remove risk and add business value. Our team of experts has successfully completed hundreds of transformation projects within the most complex enterprise environments, helping organizations future-proof their business by modernizing their business processes, technologies, infrastructure, and methodologies. Committed to 100 percent customer satisfaction, Fresche Legacy’s services and solutions span the complete legacy modernization spectrum from concept to maintenance, and include Discovery Services, Modernization Solutions, and Application Management Services & Transfor-mation. For more information about our company, visit us on the Web at www.freschelegacy.com X-Analysis Professional is the foundation of the full X-Analysis toolset, a suite of productivity tools for your IBM i applications. Following is a brief description of the other modules in the suite: How to get on board: X-Analysis products are available as a complete package or as individual modules. At Fresche Legacy, we work closely with you to assess your needs and recommend the best solutions. To get started, contact us using the information below: www.freschelegacy.com |info@freschelegacy.com | 1.800.361.6782 (US, Can) | 00 800 361 67 82 0 (Belgium, France Germany, UK) FL-DS-XAnalysis-CA_2E_Mod-EN-11122014 Application Process Mapping: Business rule and relational data model extraction and documentation of application processes and flows. Audit, Quality and Change Management: Auditing of core application functionality - including design, quality and complexity - to identify and change problematic areas in the application. Data and Test Management: Analysis of data quality; data archiving, data subsetting and data masking. Test data automation and management. X-Analysis Professional: The foundation tool, with all of the basic functionality. Application Modernization: RPG, COBOL and CA 2E (Synon) automatically converted to Java. Database Modernization: Automated conversion of DDS to DDL, including creation of constraints, long field names and views. Open Systems Analysis: Cross-referencing and documentation of Java, C#, PHP, VB/VB.NET and PowerBuilder. CA 2E Analysis: Everything required to analyze and document CA 2E applications.