Deep insight into your application, whether or not you plan to convert.
A mature Progress application represents years, even decades, of investment and development effort. It can be comprised of millions of lines of code, spanning multiple developers and even managers over time. When faced with modernization, refactoring, migration, or even maintenance challenges, a deep insight into the application can be invaluable.
Golden Code Development uses the powerful reporting facilities in FWD to give customers a unique view into their schemata and application code. Although developed to support the conversion process, the standard reports are useful in their own right for understanding the internals of any application, even for customers not looking to move away from Progress.
Every instance of every language feature used in an application is catalogued. Every variable, database reference, function, procedure, and parameter is detailed. Extensive analysis is performed to identify interesting and potential problem areas, including: buffer scoping, OCX controls, object oriented programming, dynamic database, interfaces with external and operating system APIs, I/O operations, nested triggers, accumulators, embedded SQL, security-specific code, key remappings, complex queries, and much more. A comprehensive review of these reports is a critical step in planning any transformation project.
Since the reporting engine is syntax-aware and very flexible, we can create custom reports that pinpoint exactly what you want to know about what your application does, what features it uses, and what external dependencies it has.
FWD includes a powerful call graph analysis feature which allows one to map the many call paths through an application's code base. It is not uncommon for an application to contain a considerable amount of code which can no longer be reached, due to changes made over time. Golden Code consultants can help customers use call graph analysis to identify dead code (include files or external procedures), program dependencies, dangling program references, external call sites and the consistency of schema triggers. Customers can use this knowledge to modernize and streamline their code base, whether or not an application will be converted.