A Knowledge-Based Approach to Program Understanding
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 develop
- PDF / 10,331,989 Bytes
- 128 Pages / 439.37 x 666.142 pts Page_size
- 56 Downloads / 236 Views
THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE
A KNOWLEDGE-BASED APPROACH TO PROGRAM UNDERSTANDING
by
SaIwa K. Abd-EI-HarlZ Cairo University, Egypt
Victor R. Basili University of Maryland, U.S.A.
SPRINGER SCIENCE+BUSINESS MEDIA, LLC
ISBN 978-1-4613-5961-6 ISBN 978-1-4615-2279-9 (eBook) DOI 10.1007/978-1-4615-2279-9
Library of Congress Cataloging-in-Publication Data
A C.I.P. Catalogue record for this book is available from the Library of Congress.
Copyright c 1995 by Springer SciencetBusiness Media New York Originally published by Kluwer Academic Publishers in 1995 Softcover reprint ofthe hardcover lst edition 1995 AlI rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, mechanica1, photo-copying, recording, or otherwise, without the prior written permission of the publisher, Springer SciencetBusiness Media, LLC.
Printed on add-free paper.
CONTENTS
LIST OF FIGURES ........................................................................................... vii LIST OF TABLES ............................................................................................. ix PREFACE ......................................................................................................... xi ACKNOWLEDGMENTS .................................................................................. xv 1 INTRODUCTION ........................................................................................ 1 1.1 RESEAR.CH GOALS ......................................................................... 1 1.2 RESEAR.CH APPROACH ................................................................. 2 1.3 OUTLINE ......................................................................................... 42 BACKGROUND .......................................................................................... 5 2.1 LOOP ANALYSIS ............................................................................ 5 2.1.1 Axiomatic Approaches ........................................................... 6 2.1.2 Non-axiomatic Approaches ..................................................... 8 2.1.3 Hybrid Approaches ................................................................. 9 2.1.4 Decomposition Approaches .................................................... 9 2.2 PROGRAM ANALYSIS AND UNDERSTANDING ......................... 9 2.2.1 Algorithmic Approaches ......................................................... 10 2.2.2 Cognitive Studies.................................................................... 11 2.2.3 Knowledge-Based Approaches ................................................ 12 3 OVERVIEW AND BASIC DEFINITIONS ................................................... 19 3.1 DEFINITIONS .................................................................................. 20 3.2 A LOOP TAXONOMY ..................................................................... 21 4 ANALYSIS OF FLAT LOOPS ................................................
Data Loading...