COBOL Modernization Approach: Automatic re-architecture, refactor and rewrite
Problems with Maintenance And Development of Legacy Applications
The diminishing pool of COBOL developers, obsolescence of some hardware platforms (e.g. HP e3000),
and high financial cost of mainframe licenses provides a compelling business case
for the re-implementation of Legacy Applications in new Languages and Technology.
However, large software engineering projects are risky and expensive.
There are numerous examples in the industry of Software projects being delivered late and over the budget.
Automatic Re-design, Re-architect and Re-write of Legacy code in Java or C#
SoftwareMining's translation service reduces the risk and costs associated with Translation of legacy applications,
whilst maintaining a very high standard for the generated code.
The generated code uses the latest Software-Engineering Patterns and adheres to industry coding standards to
produce a highly legible and maintainable code.
An Iterative Approach to Modernization: Generate, Baseline, enhance
|
SoftwareMining has adopted the Rational Unified Process Model (RUP) for Modernization projects.
RUP encourages an iterative approach to Software development, breaking the project into quantifiable deliverables.
|
SoftwareMining's Modernization projects encompass the following iterations:
Iteration-1 : Transformation
- Translation to OO Java or C#
- Clean-up of Translated System : Removal of Dead Code
- Data Migration
- Testing
- Production and Release
Iteration-2 ... Iteration-n : Enhancements
Enhance, test, Re-Factor and test, ...
The process ensures that transformation is completed quickly and the new application can go into production.
A fast completion of Iteration-1 maximizes ROI and reduces the project risks.
Separating out the Transformation from enhancement iterations also allows quantifying and measuring of the objectives, deliverables and ROI for each subsequent iteration.
SoftwareMining's Transformation Features:
|
Data Migration
The translation of VSAM file definitions need to be granular, normalized, and use separate columns for representation of each VSAM field. The migration also needs to account for COBOL REDEFINES keyword, Group access, as well as COMPUTATIONAL values. More importantly this activity needs to be done FAST to provide a good Return On Investment and not to delay the new developments.
In a Unique approach - SoftwareMining address all these issues, and goes further by providing specialist Object-Relational Java or C# data-access layer and XML integration layer. These features enable the new developments to start and tested very quickly.
Special Features
Source platforms: VSAM, QSAM and ISAM, Unisys DMS-II, IMS, IDMS
Support for Cobol REDEFINES, and COMPUTATIONAL values
Target platforms: ANSI SQL, DB2, Oracle, MS-SQL Server or MySQL
Java and C# Object-Relational Mapping Data Access layer.
Multiple Java Deployment strategies: J2EE or pure JDBC
Includes auto-generated Java/C# data Object-Relational Data Access Layers.
|
|
Identification and Removal of Dead Code
Typically legacy applications include many lines code which are no longer used.
The removal of this dead code can significantly improve the maintenance of the system.
SoftwareMining's AI based Tools identify procedures not-referenced through-out the application.
Additionally, Java run time analysis utilities provide detailed reports
on code usage (left). The reports are used to remove dead code and simplify the application.
|
|
Re-Documentation
Two levels of Flowchart diagrams are produced for application level interactions,
and procedure-level interactions. The flowcharts are augmented by detailed Data-structures reports.
All generated documentations is saved as HTML and accessed via standard Web-Browsers.
|
|
Automatic SOA
Business Services are defined programs with no User/Screen Interactions.
SOA enabling of Legacy Applications requires the separation of screens from the business code
and XML enabling of the interfaces.
SoftwareMining's AI based Toolset allows the Automatic Separation of Screens from the business code.
|
See examples of Translations and Business Rule Extraction.
|