Please use this identifier to cite or link to this item:
|Title:||USE OF VARIABLE CLASSIFICATION IN.• SOFTWARE MAINTENANCE|
|Keywords:||ELECTRONICS AND COMPUTER ENGINEERING;ELECTRONICS AND COMPUTER ENGINEERING;ELECTRONICS AND COMPUTER ENGINEERING;ELECTRONICS AND COMPUTER ENGINEERING|
|Abstract:||KEYWORDS AND PHRASES: program understanding, variable usage, maintenance, C, source code analysis Much of the work of program maintainers involves program understanding of one form or another, whether it is finding an obscure bug, attempting to understand a piece of code prior to modification or analysing the possible effects of a modification to the code, where understanding of system data is one of the main challenges. Successful maintenance requires precise knowledge of the data items in the system, the way these items are created and modified and their relationships. Documentation is missing or inaccurate and so the primary source of information about a software system is the source code. During software maintenance or development task it is often not possible to parse the source code that is the target of the task. As a result, the developer or maintainer may have to resort to ad hoc methods for browsing and searching the code. Program understanding can be performed manually but usually due to its sheer length source code is quite complex. Meaningful classification of program variables can be a useful aid to understanding of programs. A. classification algorithm is implemented that computes new types for the variables of a program, based on their actual usage — that is, their role in primitive operations — and ignores explicit type declarations. The language we deal with in this paper is C. This was chosen because most research has focussed on COBOL program analysis though C legacy is also increasing. A prototype tool supporting a subset of the C language is developed to automatically classify variables in terms of the aforementioned approach. Input programs during maintenance need not always be syntactically correct. Tool generated is tolerant to certain input inaccuracies and thus especially useful in maintenance activities. All tools used in development were those that are freely available under the GNU/Linux operating system.|
|Research Supervisor/ Guide:||Singh, Kuldip|
|Appears in Collections:||MASTERS' DISSERTATIONS (E & C)|
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.