Understanding program structure and behavior

Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2006.

Bibliographic Details
Main Author: Dharmawan, Sie Hendrata
Other Authors: Saman Amarasinghe.
Format: Thesis
Language:eng
Published: Massachusetts Institute of Technology 2007
Subjects:
Online Access:http://hdl.handle.net/1721.1/37204
_version_ 1826198967692558336
author Dharmawan, Sie Hendrata
author2 Saman Amarasinghe.
author_facet Saman Amarasinghe.
Dharmawan, Sie Hendrata
author_sort Dharmawan, Sie Hendrata
collection MIT
description Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2006.
first_indexed 2024-09-23T11:12:20Z
format Thesis
id mit-1721.1/37204
institution Massachusetts Institute of Technology
language eng
last_indexed 2024-09-23T11:12:20Z
publishDate 2007
publisher Massachusetts Institute of Technology
record_format dspace
spelling mit-1721.1/372042019-04-12T15:59:22Z Understanding program structure and behavior Dharmawan, Sie Hendrata Saman Amarasinghe. Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science. Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science. Electrical Engineering and Computer Science. Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2006. Includes bibliographical references (p. 117-122). A large software system usually has structure in it. Several functions work together to accomplish a certain task, and several tasks are grouped together to perform a bigger task. In order to understand this division, one has to consult the documentations or read through the source code. However, the documentations are usually incomplete and outdated, while code inspection is tedious and impractical. Algorithms have been proposed that automatically group functions with similar functionality. In this thesis I will present LogiView, an algorithm that presents an organizational view of the functions. This view will ease the process of understanding the structures in the program, identifying functions with related tasks, and separating the functions into logical groups. I will also present a methodology of analyzing the function names in the program. This method leverages the result of the LogiView algorithm and identifies the names that are most relevant to the functionality of the program. Given a set of programs that are known to have same functionality, this method extracts the similarity in the function names and builds a dictionary of the names that are semantically related to the functionality. (cont.) The methodology also detects when two programs have similar functionality and how to measure the similarity between multiple programs. Lastly, I will show that the result of the LogiView algorithm can be used to explain program performance. The abrupt change in the program behavior and repetitions of past behaviors can be explained in terms of function calls, and these functions are identified by the LogiView algorithm. by Sie Hendrata Dharmawan. M.Eng. 2007-04-20T15:49:34Z 2007-04-20T15:49:34Z 2006 2006 Thesis http://hdl.handle.net/1721.1/37204 79476101 eng M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission. http://dspace.mit.edu/handle/1721.1/7582 122 p. application/pdf Massachusetts Institute of Technology
spellingShingle Electrical Engineering and Computer Science.
Dharmawan, Sie Hendrata
Understanding program structure and behavior
title Understanding program structure and behavior
title_full Understanding program structure and behavior
title_fullStr Understanding program structure and behavior
title_full_unstemmed Understanding program structure and behavior
title_short Understanding program structure and behavior
title_sort understanding program structure and behavior
topic Electrical Engineering and Computer Science.
url http://hdl.handle.net/1721.1/37204
work_keys_str_mv AT dharmawansiehendrata understandingprogramstructureandbehavior