A formal method for semantics-based change-merging of software prototypes
This dissertation addresses the need for a formal method to support the merging of changes in independently developed versions of a prototype in a computer-aided rapid prototyping system. The goal is to provide the prototype developer with the ability to combine independently developed enhancements...
Main Author: | |
---|---|
Other Authors: | |
Language: | en_US |
Published: |
Monterey, California. Naval Postgraduate School
2013
|
Online Access: | http://hdl.handle.net/10945/30841 |
id |
ndltd-nps.edu-oai-calhoun.nps.edu-10945-30841 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-nps.edu-oai-calhoun.nps.edu-10945-308412014-11-27T16:17:46Z A formal method for semantics-based change-merging of software prototypes Dampier, David A. Berzins, Valdis NA Computer Science This dissertation addresses the need for a formal method to support the merging of changes in independently developed versions of a prototype in a computer-aided rapid prototyping system. The goal is to provide the prototype developer with the ability to combine independently developed enhancements to a prototype, check for consistency, and automatically update all derived versions of a prototype with changes made to the base version. A useful semantics-based method is provided for change-merging that is guaranteed to detect all conflicts. Prototype slicing is used to capture the affected parts of each variation and the preserved part of the base in both variations. We then combine the affected parts with the preserved part using our model, which includes the first use of Brouwerian Algebras to formalize the merging of hard real time constraints. Our Slicing Theorem guarantees that this method produces a prototype that correctly exhibits the significant behavior of each of the input versions, provided the changes do not conflict the method achieves correctness by comparing the slice of the change-merged version with respect to each affected part against the same slice of the appropriate changed version. If the slices are the same, the change-merge is correct, otherwise a diagnostic message results. A preliminary conditional method for change-merging while programs is also provided that is strictly more accurate than previous methods. This dissertation contributes to computer-aided software maintenance by providing a model, algorithm and implementation for an automated change-merging tool for PSDL prototypes. Preliminary testing shows that this tool will enhance the ability of the prototype developer to deliver a prototype in less time by enabling more concurrency in the development effort. 2013-04-26T18:59:04Z 2013-04-26T18:59:04Z 1994-06 Thesis http://hdl.handle.net/10945/30841 en_US This publication is a work of the U.S. Government as defined in Title 17, United States Code, Section 101. As such, it is in the public domain, and under the provisions of Title 17, United States Code, Section 105, it may not be copyrighted. Monterey, California. Naval Postgraduate School |
collection |
NDLTD |
language |
en_US |
sources |
NDLTD |
description |
This dissertation addresses the need for a formal method to support the merging of changes in independently developed versions of a prototype in a computer-aided rapid prototyping system. The goal is to provide the prototype developer with the ability to combine independently developed enhancements to a prototype, check for consistency, and automatically update all derived versions of a prototype with changes made to the base version. A useful semantics-based method is provided for change-merging that is guaranteed to detect all conflicts. Prototype slicing is used to capture the affected parts of each variation and the preserved part of the base in both variations. We then combine the affected parts with the preserved part using our model, which includes the first use of Brouwerian Algebras to formalize the merging of hard real time constraints. Our Slicing Theorem guarantees that this method produces a prototype that correctly exhibits the significant behavior of each of the input versions, provided the changes do not conflict the method achieves correctness by comparing the slice of the change-merged version with respect to each affected part against the same slice of the appropriate changed version. If the slices are the same, the change-merge is correct, otherwise a diagnostic message results. A preliminary conditional method for change-merging while programs is also provided that is strictly more accurate than previous methods. This dissertation contributes to computer-aided software maintenance by providing a model, algorithm and implementation for an automated change-merging tool for PSDL prototypes. Preliminary testing shows that this tool will enhance the ability of the prototype developer to deliver a prototype in less time by enabling more concurrency in the development effort. |
author2 |
Berzins, Valdis |
author_facet |
Berzins, Valdis Dampier, David A. |
author |
Dampier, David A. |
spellingShingle |
Dampier, David A. A formal method for semantics-based change-merging of software prototypes |
author_sort |
Dampier, David A. |
title |
A formal method for semantics-based change-merging of software prototypes |
title_short |
A formal method for semantics-based change-merging of software prototypes |
title_full |
A formal method for semantics-based change-merging of software prototypes |
title_fullStr |
A formal method for semantics-based change-merging of software prototypes |
title_full_unstemmed |
A formal method for semantics-based change-merging of software prototypes |
title_sort |
formal method for semantics-based change-merging of software prototypes |
publisher |
Monterey, California. Naval Postgraduate School |
publishDate |
2013 |
url |
http://hdl.handle.net/10945/30841 |
work_keys_str_mv |
AT dampierdavida aformalmethodforsemanticsbasedchangemergingofsoftwareprototypes AT dampierdavida formalmethodforsemanticsbasedchangemergingofsoftwareprototypes |
_version_ |
1716725111309991936 |