The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.05 - May (1996 vol.22)
pp: 339-360
ABSTRACT
<p><b>Abstract</b>—This paper presents a knowledge-based analysis approach that generates first order predicate logic annotations of loops. A classification of loops according to their complexity levels is presented. Based on this taxonomy, variations on the basic analysis approach that best fit each of the different classes are described. In general, mechanical annotation of loops is performed by first decomposing them using data flow analysis. This decomposition encapsulates closely related statements in events, that can be analyzed individually. Specifications of the resulting loop events are then obtained by utilizing patterns, called plans, stored in a knowledge base. Finally, a consistent and rigorous functional abstraction of the whole loop is synthesized from the specifications of its individual events. To test the analysis techniques and to assess their effectiveness, a case study was performed on an existing program of reasonable size. Results concerning the analyzed loops and the plans designed for them are given.</p>
INDEX TERMS
First order predicate logic, formal specifications, knowledge base, loops, program understanding, reverse engineering.
CITATION
Salwa K. Abd-El-Hafiz, Victor R. Basili, "A Knowledge-Based Approach to the Analysis of Loops", IEEE Transactions on Software Engineering, vol.22, no. 5, pp. 339-360, May 1996, doi:10.1109/32.502226
20 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool