Staff View
Change impact analysis for Java programs and applications

Descriptive

TitleInfo (displayLabel = Citation Title); (type = uniform)
Title
Change impact analysis for Java programs and applications
Name (ID = NAME001); (type = personal)
NamePart (type = family)
Ren
NamePart (type = given)
Xiaoxia
DisplayForm
Xiaoxia Ren
Role
RoleTerm (authority = RULIB)
author
Name (ID = NAME002); (type = personal)
NamePart (type = family)
Ryder
NamePart (type = given)
Barbara
Affiliation
Advisory Committee
DisplayForm
Barbara Gershon Ryder
Role
RoleTerm (authority = RULIB)
chair
Name (ID = NAME003); (type = personal)
NamePart (type = family)
Borgida
NamePart (type = given)
Alexander
Affiliation
Advisory Committee
DisplayForm
Alexander Borgida
Role
RoleTerm (authority = RULIB)
internal member
Name (ID = NAME004); (type = personal)
NamePart (type = family)
Kremer
NamePart (type = given)
Ulrich
Affiliation
Advisory Committee
DisplayForm
Ulrich Kremer
Role
RoleTerm (authority = RULIB)
internal member
Name (ID = NAME005); (type = personal)
NamePart (type = family)
Elbaum
NamePart (type = given)
Sebastian
Affiliation
Advisory Committee
DisplayForm
Sebastian Elbaum
Role
RoleTerm (authority = RULIB)
outside member
Name (ID = NAME006); (type = corporate)
NamePart
Rutgers University
Role
RoleTerm (authority = RULIB)
degree grantor
Name (ID = NAME007); (type = corporate)
NamePart
Graduate School - New Brunswick
Role
RoleTerm (authority = RULIB)
school
TypeOfResource
Text
Genre (authority = marcgt)
theses
OriginInfo
DateCreated (qualifier = exact)
2007
DateOther (qualifier = exact); (type = degree)
2007
Language
LanguageTerm
English
PhysicalDescription
Form (authority = marcform)
electronic
InternetMediaType
application/pdf
InternetMediaType
text/xml
Extent
xiii, 116 pages
Abstract
Small changes can have major and nonlocal effects in object oriented languages, due to the extensive use of subtyping and dynamic dispatch. This makes it difficult to understand value flow through a program and complicates life for maintenance programmers. Change impact analysis provides feedback on the semantic impact of a set of program changes.
The change impact analysis method presented in this thesis presumes the existence of a suite of regression tests associated with a Java program and access to the original and edited versions of the code. The primary goal of our research is to provide programmers with tool support that can help them understand why a test is suddenly failing after a long editing session by isolating the changes responsible for the failure. The tool analyzes two versions of an application and decomposes their difference into a set of atomic changes. Change impact is then reported in terms of affected tests whose execution behavior may have been modified by the applied changes. For each affected test, it also determines a set of affecting changes that were responsible for the test's modified behavior.
The first contribution of this thesis is the demonstration of the utility of the basic change impact analysis framework of [51], by implementing a proof-of-concept prototype, Chianti, and applying it to Daikon, for an experimental validation.
The second contribution is the definition and implementation of the dependences between atomic changes. Extensive experiments show that our dependences can help build the intermediate programs automatically in most cases.
Another contribution is the heuristics for ranking the atomic changes for fault localization. This thesis proposes a heuristic that ranks method changes that might have affected a failed test, indicating the likelihood that they may have contributed to a test failure. Our results indicate that when a failure is caused by a single method change, our heuristic ranked the failure-inducing change as number 1 or number 2 of all the method changes in 67% of the delegate tests (i.e., representatives of all failing tests).
Note (type = degree)
Ph.D.
Note (type = bibliography)
Includes bibliographical references (p. 109-114).
Subject (ID = SUBJ1); (authority = RUETD)
Topic
Computer Science
Subject (ID = SUBJ2); (authority = ETD-LCSH)
Topic
Java (Computer program language)
RelatedItem (type = host)
TitleInfo
Title
Graduate School - New Brunswick Electronic Theses and Dissertations
Identifier (type = local)
rucore19991600001
Identifier (type = hdl)
http://hdl.rutgers.edu/1782.2/rucore10001600001.ETD.16765
Identifier
ETD_394
Location
PhysicalLocation (authority = marcorg); (displayLabel = Rutgers, The State University of New Jersey)
NjNbRU
Identifier (type = doi)
doi:10.7282/T3NG4R1W
Genre (authority = ExL-Esploro)
ETD doctoral
Back to the top

Rights

RightsDeclaration (AUTHORITY = GS); (ID = rulibRdec0006)
The author owns the copyright to this work.
Copyright
Status
Copyright protected
Availability
Status
Open
AssociatedEntity (AUTHORITY = rulib); (ID = 1)
Name
Xiaoxia Ren
Role
Copyright holder
Affiliation
Rutgers University. Graduate School - New Brunswick
RightsEvent (AUTHORITY = rulib); (ID = 1)
Type
Permission or license
Detail
Non-exclusive ETD license
AssociatedObject (AUTHORITY = rulib); (ID = 1)
Type
License
Name
Author Agreement License
Detail
I hereby grant to the Rutgers University Libraries and to my school the non-exclusive right to archive, reproduce and distribute my thesis or dissertation, in whole or in part, and/or my abstract, in whole or in part, in and from an electronic format, subject to the release date subsequently stipulated in this submittal form and approved by my school. I represent and stipulate that the thesis or dissertation and its abstract are my original work, that they do not infringe or violate any rights of others, and that I make these grants as the sole owner of the rights to my thesis or dissertation and its abstract. I represent that I have obtained written permissions, when necessary, from the owner(s) of each third party copyrighted matter to be included in my thesis or dissertation and will supply copies of such upon request by my school. I acknowledge that RU ETD and my school will not distribute my thesis or dissertation or its abstract if, in their reasonable judgment, they believe all such rights have not been secured. I acknowledge that I retain ownership rights to the copyright of my work. I also retain the right to use all or part of this thesis or dissertation in future works, such as articles or books.
Back to the top

Technical

Format (TYPE = mime); (VERSION = )
application/x-tar
FileSize (UNIT = bytes)
1114624
Checksum (METHOD = SHA1)
e97c6711ad75f54a81e0e27318a5829adc272a71
ContentModel
ETD
CompressionScheme
other
OperatingSystem (VERSION = 5.1)
windows xp
Format (TYPE = mime); (VERSION = NULL)
application/x-tar
Back to the top
Version 8.5.5
Rutgers University Libraries - Copyright ©2024