dynamic analysis of ada programs for comprehension and quality measurement
During maintenance and particularly during corrective and perfective tasks, systems tend to exhibit a weight gain. As a result, their quality tends to degrade. Software comprehension is vital in order to assess system quality. In this paper, we aim at deploying dynamic analysis of Ada programs for obtaining comprehension, and applying measurements to assess their quality. Program instrumentation is performed non-intrusively by AspectAda, an aspect-oriented extension to Ada which we discussed in earlier work. Events which are required for this analysis are captured as execution traces. We have defined a relational database schema to save execution traces, and a set of queries to obtain measures of quality metrics. New Ada-specific metrics are introduced and existing metrics have been adopted from the literature. Automation is also provided as a proof of concept through a prototypical tool which provides information on the run-time behavior of the system, performs measurements and provides visualization of the run-time behavior of the system through a call graph. An open source Ada program is used as a case study to demonstrate our approach.
program comprehension dynamic program analysis quality measurement and metrics