EGL to Web 2.0 Modernization Solution
Incremental EGL Modernization - Production
GUIs in the Browser
Mobile / transformation
Modernized for mobile
Modern orchestration of UI
Cloud & microservices ready
Incremental EGL Modernization - Development
Eclipse IDE/Visual Editor
Widget palette with rich UI widgets
Support for constraint-based widget layout
Dependencies expressed in code (no "visual spaghetti")
VisualAge Composition Editor
Connections (visual "visual spaghetti")
Incremental EGL Modernization - Architecture
Web Client Tier
Interactive, rich UI
REST API calls
Service Middle Tier
Web Application Server
Java/C#/Node.js application logic
Continue with high performance
Continue with high reliability
Continue with high security
EGL Transformation Technology Features - If Appropriate
Static Type Inferencing
The only commercial interactive, static type inferencing and type propagation solution available on the market today. Using static type analysis and proprietary type inferencing algorithm, this technology produces a "strongly-typed" Smalltalk source code that includes generic / parameterized types and interfaces. Absence of this technology is a non-starter for migrating Smalltalk applications to any target statically typed language as it would cause massive code expansion and highly unreadable and unmaintainable code.
Interact with context sensitive, configurable, extensive and self-resolving diagnostics as you transform your application. Just as compilers generate compiler errors, the interactive diagnostic service generates comprehensive diagnostics relative to the target language your Smalltalk application is being transformed to. Diagnostics include any static type inconsistencies, naming, missing mapping of types or API's to target language, code quality, dead code, just to name a few...
Reduce Total Cost of Ownership by managing external knowledge-base ("KB") rules that control resultant code quality by executing the KB rules with an automated transformation service. This technology is a full-blown OO programming language that operates on abstract syntax trees ("AST"). Source code transformation not only transforms artifacts types and their interfaces to target programming language; is it also used extensively for code cleanup, code formatting and a much more advanced capability, which is code decoupling to separate monolithic architecture into distributed, microservices architecture.
Architecture Analysis & Drill-down
Define logical and functional source code components to improve knowledge mining and application understanding. This technology is used on more advanced modernization projects to describe and define a complete target application architecture in terms of 4 different dimensions: 1) application layers 2) subsystems 3) cross-cutting functions and 4) runnable components. This is not just a simple data model. Its a live semantic model that describes the application architecture in terms of real code artifacts that subsequently enables drill-down for deeper application understanding and transformation.