A Knowledge-Based Approach to Program Understanding: 325 - Brossura

Abd-El-Hafiz, Salwa K. K.; Basili, Victor R.

 
9781461359616: A Knowledge-Based Approach to Program Understanding: 325

Sinossi

Program understanding plays an important role in nearly all software related tasks. It is vital to the development, maintenance and reuse activities. Program understanding is indispensable for improving the quality of software development. Several development activities such as code reviews, debugging and some testing approaches require programmers to read and understand programs. Maintenance activities cannot be performed without a deep and correct understanding of the component to be maintained. Program understanding is vital to the reuse of code components because they cannot be utilized without a clear understanding of what they do. If a candidate reusable component needs to be modified, an understanding how it is designed is also required. of This monograph presents a· knowledge-based approach to the automation of program understanding. This approach generates rigorous program documentation mechanically by combining and building on strengths of a practical program decomposition method, the axiomatic correctness notation, and the knowledge­ based analysis approaches. More specifically, this approach documents programs by generating first order predicate logic annotations of their loops. In this approach, loops are classified according to their complexity levels. 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 interdependent statements in events, which can be analyzed individually.

Le informazioni nella sezione "Riassunto" possono far riferimento a edizioni diverse di questo titolo.

Contenuti

List of figures. List of tables. Preface. 1. Introduction. 2. Background. 3. Overview and basic definitions. 4. Analysis of flat loops. 5. Analysis of nested loops. 6. Discussion of the analysis approach. 7. Case study. 8. Prototype implementation. 9. Applications. 10. Conclusions. References. A. Notation. B. Acronyms. C. Definitions. D. Additional plans and abstraction classes. Index.

Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.

Altre edizioni note dello stesso titolo

9780792396055: A Knowledge-Based Approach to Program Understanding: 325

Edizione in evidenza

ISBN 10:  0792396057 ISBN 13:  9780792396055
Casa editrice: SPRINGER NATURE, 1995
Rilegato