An experimental study of the effectiveness of Panorama as a maintenance tool

dc.contributor.advisor Simanta Mitra
dc.contributor.advisor Carl K. Chang
dc.contributor.author Palapetty, Renish
dc.contributor.department Department of Computer Science
dc.date 2018-08-11T17:50:14.000
dc.date.accessioned 2020-06-30T02:32:59Z
dc.date.available 2020-06-30T02:32:59Z
dc.date.copyright Thu Jan 01 00:00:00 UTC 2009
dc.date.embargo 2013-06-05
dc.date.issued 2009-01-01
dc.description.abstract <p>It is a well known fact that the amount of time and money spent debugging and maintaining software far outstrips the amount spent developing it. Reports suggest that a majority of this effort is related to information-seeking, concept-location, and software comprehension. In addition to being inherently complex activities, these problems are exacerbated due to the fact that the original developers are often unavailable to help with the maintenance activities. To perform a maintenance task programmers first form dynamic and static mental models of the program based on their prior knowledge of programming and on information available about the program. Aside from high level design documents, Javadoc-like documentation has been the primary means of obtaining such information about programs. There are two severe shortcomings of this form of documentation: a) as recognized by proponents of AOP, the code for many of the concerns of interest to the maintainer are scattered across different classes and files and b) there are a lot of classes and files for large systems leading to information overload and it is very hard and time-consuming to identify the few segments of code and documentation that are relevant for a specific maintenance activity.</p> <p>To address these problems, we have developed an Eclipse plug-in, Panorama, which allow master developers to document sections of code related to a specific developer concern and provides ways to make such information readily available to maintainers. This tool helps directly with information-seeking, concept location, and software comprehension activities and focuses maintainer's attention on the specific code and guidance necessary for a particular task. To validate the tool and our approach, we conducted an experimental study with 19 subjects assigning them several maintenance tasks on a fairly complex application (a multi-user Poker game). The study showed that the experimental group who had access to Panorama was able to complete more maintenance tasks in less time than the control group who did not have access to the tool. In addition, preliminary results indicate that the tool will have more impact on productivity of persons new to the application and programming environment than on experts.</p>
dc.format.mimetype application/pdf
dc.identifier archive/lib.dr.iastate.edu/etd/11059/
dc.identifier.articleid 2053
dc.identifier.contextkey 2807251
dc.identifier.doi https://doi.org/10.31274/etd-180810-1114
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath etd/11059
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/25265
dc.language.iso en
dc.source.bitstream archive/lib.dr.iastate.edu/etd/11059/Palapetty_iastate_0097M_10881.pdf|||Fri Jan 14 18:41:20 UTC 2022
dc.subject.disciplines Computer Sciences
dc.title An experimental study of the effectiveness of Panorama as a maintenance tool
dc.type thesis en_US
dc.type.genre thesis en_US
dspace.entity.type Publication
relation.isOrgUnitOfPublication f7be4eb9-d1d0-4081-859b-b15cee251456
thesis.degree.level thesis
thesis.degree.name Master of Science
File
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
Palapetty_iastate_0097M_10881.pdf
Size:
1.69 MB
Format:
Adobe Portable Document Format
Description: