Show simple item record

dc.contributor.advisorSaman Amarasinghe.en_US
dc.contributor.authorDharmawan, Sie Hendrataen_US
dc.contributor.otherMassachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.en_US
dc.date.accessioned2007-04-20T15:49:34Z
dc.date.available2007-04-20T15:49:34Z
dc.date.copyright2006en_US
dc.date.issued2006en_US
dc.identifier.urihttp://hdl.handle.net/1721.1/37204
dc.descriptionThesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2006.en_US
dc.descriptionIncludes bibliographical references (p. 117-122).en_US
dc.description.abstractA 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.en_US
dc.description.abstract(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.en_US
dc.description.statementofresponsibilityby Sie Hendrata Dharmawan.en_US
dc.format.extent122 p.en_US
dc.language.isoengen_US
dc.publisherMassachusetts Institute of Technologyen_US
dc.rightsM.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.en_US
dc.rights.urihttp://dspace.mit.edu/handle/1721.1/7582
dc.subjectElectrical Engineering and Computer Science.en_US
dc.titleUnderstanding program structure and behavioren_US
dc.typeThesisen_US
dc.description.degreeM.Eng.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
dc.identifier.oclc79476101en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record