Automated software modernization
Automated Software modernization is the process in which a legacy source language is ingested, processed automatically by a intermediate object model, transformed/documented/refactored/optimized into a modern target language.
Process: Step 1 - ASM Assessment and Documentation captures and documents the legacy system’s “As-Is” UML model providing a detailed evaluation of the existing system’s design and architecture which guides subsequent ASM steps. The UML is generated in various presentation and exchange formats including Rational Rose compatible XMI for any application within the legacy application portfolio. The baseline model, metrics, and documentation support the transformation business case and guides subsequent modernization steps.
Step 2 - ASM Transformation automatically rewrites the legacy application code into object-oriented (OO) code (C++, Java, C#, etc.) and couples it to relational or object-oriented databases. This step transforms and flexibly generates Object-Oriented code into multiple modern implementation languages, accurately converting all internal and external interfaces. The ‘TO BE’ UML is generated for presentation and interchange following transformation for any module within the modernized enterprise application portfolio.
Step 3 - ASM Re-Factoring re-engineers the resulting target language and components to improve the modernized system’s architectural design, enhance performance, and improve maintainability. All semi-automated and automated re-factoring operations are carried out against the IOM to generate redesigned code modules and rearchitected application tiers. ‘To-Be’ UML is generated and quality metrics are measured continuously for any module within the evolving enterprise application portfolio. Automatic Re-Factoring removes dead and redundant code without changing a system’s functionality, converts unstructured code into well-structured code, and procedural code into object-oriented code. Semi-Automatic Re-Factoring identifies situations within the code or design where customer-provided domain experts can opt to improve design parameters or code structure. Tailored custom Re-Factoring operations efficiently and uniformly upgrade the entire model-based repository improving modular composition and better expressing business entities.
Step 4 - ASM Web-Enablement modifies applications into web-enabled and service oriented architectures (SOA) with multiple tiers providing componentization for modular reuse. Adaptations and extensions are also provided to run distributed applications using the clients preferred Message-Oriented Middleware (MOM) for inter-process communication and integration with Enterprise Service tiers. Java is generated to run in J2EE. C#, Managed C++ or VB.NET are generated to run in .Net. CORBA IDL is generated to support the CORBA COM Component Model architecture. Components of an SOA are derived automatically or semi-automatically. Derived components are segregated into a layered, distributed architecture consisting of User, Workspace, Enterprise or Resource Tiers in the modernized application.
Tool Suites
JANUS Studio®, a artificial intelligent based tool created by The Software Revolution, Inc. (TSRI)