An algebraic model of software evolution

dc.contributor.authorKeller, Benjamin J.en
dc.contributor.committeechairNance, Richard E.en
dc.contributor.committeememberBloss, Adrienne G.en
dc.contributor.committeememberAllison, Donald C. S.en
dc.contributor.departmentComputer Scienceen
dc.date.accessioned2014-03-14T21:31:11Zen
dc.date.adate2009-03-12en
dc.date.available2014-03-14T21:31:11Zen
dc.date.issued1990-09-05en
dc.date.rdate2009-03-12en
dc.date.sdate2009-03-12en
dc.description.abstractA model of the software evolution process, called the Abstraction Refinement Model, is described which builds on the algebraic influence of the Laws of Programming and the transformational Draco Paradigm. The result is an algebraic structure consisting of the states of the software product (system descriptions) ordered by a relation of relative correctness with transformations defined between the system descriptions. This structure is interpreted as the software evolution space, with the intended semantics given by a model combining axiomatic semantics and the Lindenbaum algebra of a first-order logic. Using this interpretation, software evolution can be represented as a sequence of transformations on system descriptions. The primary contributions of the characterization of software evolution are to the understanding of maintenance and its relationship to development. The influence of development on maintenance is shown as the transfer of a "descriptive context" for the software system. This context is used as an information source during maintenance, and is progressively modified by maintenance activities. These activities are characterized by balanced forward and reverse transformations. The use of reverse transformations explaining the role of reverse engineering in maintenance for information gathering and document reconstruction. Additionally, the form of maintenance affects the performance of the activity, with adaptive maintenance differing from corrective, perfective and preventive maintenance. These factors contribute to the descriptive nature and utility of the Abstraction Refinement Model in defining methodologies for maintenance.en
dc.description.degreeMaster of Scienceen
dc.format.extentv, 102 leavesen
dc.format.mediumBTDen
dc.format.mimetypeapplication/pdfen
dc.identifier.otheretd-03122009-040841en
dc.identifier.sourceurlhttp://scholar.lib.vt.edu/theses/available/etd-03122009-040841/en
dc.identifier.urihttp://hdl.handle.net/10919/41485en
dc.language.isoenen
dc.publisherVirginia Techen
dc.relation.haspartLD5655.V855_1990.K454.pdfen
dc.relation.isformatofOCLC# 23116765en
dc.rightsIn Copyrighten
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/en
dc.subject.lccLD5655.V855 1990.K454en
dc.subject.lcshSoftware maintenance -- Mathematical modelsen
dc.titleAn algebraic model of software evolutionen
dc.typeThesisen
dc.type.dcmitypeTexten
thesis.degree.disciplineComputer Scienceen
thesis.degree.grantorVirginia Polytechnic Institute and State Universityen
thesis.degree.levelmastersen
thesis.degree.nameMaster of Scienceen

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
LD5655.V855_1990.K454.pdf
Size:
3.7 MB
Format:
Adobe Portable Document Format

Collections