The first step in any legacy system modernization or migration strategy or project is the proper understanding of the AS-IS state.
FreeSoft’s Legacy analysis and assessment service basically covers system discovery and documentation activities. It is based on code parsing and documentation with our engine the KnowledgeLiberator.
As part of the unified FreeSoft modernization framework called the Liberator Workbench, KnowledgeLiberator is the tool designed specifically for legacy source code parsing and documentation from a modernization or migration perspective. Besides traditional metrics it provides further details and impact analysis to support legacy modernization project planning.
KnowledgeLiberator allows the application to be ascertained including all necessary information on application architecture elements critical to the business as well as their connections and relationships. The interrelationship of the various architecture fields, application integration and consolidation processes therefore can be planned and included in any modernisation project.
Utilizing the Knowledge Liberator tool the output from the knowledge discovery process is either visualized in a web interface or allows the export of technical documentation from the repository database.
The repository database includes comprehensive details of the following:
- Statistics (Lines of code, object inventory and other);
- Metrics (Maintainability; Halstead; McCabe);
- Logical and physical data structures;
- CRUD statistics, with a detailed drill-down to single programming objects;
- Files and printing;
- User interfaces, IO;
- Copybooks and copycodes;
- Internal/external program calls;
- Data flow and other UML
This output is used to produce various analytical reports for decision-making and modernisation roadmap development purposes. These specific reports help assess the effects of migrating different parts of the application and assist in building a roadmap for the modernisation by detailing impacts, risks and the magnitude of the different tasks as well. This output provides valuable input for scope definition, detailed project planning, requirements, test case coverage, external/internal interface and integration points and change management procedures, as well as the actual conversion of the legacy code.