一句话:报告一个面向 COBOL/PL/I 大型机应用的静态分析工具,通过功能热点指标辅助现代化并实现可扩展分析。
许多运行 COBOL 和 PL/I 大型机应用的企业正推进现代化,希望工具帮助开发者比人工扫描代码更快理解应用。作者开发了一个静态分析工具,面向现代化用例自动完成大量底层分析,并提出功能热点指标(FHI):识别程序中的条件语句和段落等关键功能驱动点。工具全部基于静态代码分析,作者报告了如何优化实现,使其可扩展到包含数百个程序、数百万行代码的真实应用。通过真实用户案例研究评估,部分在模块化重构用例中报告了 2–5 倍生产率提升。
Most of the enterprises running Mainframes applications written in COBOL and PL/I languages are on a journey of modernization of these applications to make them maintainable and amenable to the more modular service based programming paradigms. Such enterprises are looking for tools and techniques to help their developers understand the application faster and easier than what is possible through manual scanning of code. Towards this goal, we have developed a tool that automates a lot of the underlying analysis required to understand the mainframe applications in a manner that enables the users for modernization use cases of such applications. Notably, we have provided a novel mechanism to determine the conditional statements and paragraphs that are key functionality drivers in a program. We refer to these key statements and paragraphs as functional hotspot indicators (FHI). All the analysis in the tool works on static code analysis. We provide an experience report on how did we optimize the implementation of static analysis to scale and perform for real world applications that have hundreds of programs and millions of lines of code. We also cover real user case studies some of which have reported 2-5X productivity improvement through use of our tool in the modularization type refactoring use case.CCS Concepts• Software and its engineering → Integrated and visual development environments.
@inproceedings{AgarwalNK24,
title = {Experience Report on Applying Program Analysis Techniques for Mainframe Application Understanding},
author = {Shivali Agarwal and Hiroaki Nakamura and Rami Katan},
booktitle = {ASE},
year = {2024},
doi = {10.1145/3691620.3695270}
}