A formal method for semantics-based change-merging of software prototypes
Dampier, David A.
MetadataShow full item record
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.
RightsThis publication is a work of the U.S. Government as defined in Title 17, United States Code, Section 101. Copyright protection is not available for this work in the United States.
Showing items related by title, author, creator and subject.
Dampier, David A.; Berzins, Valdis; Luqi; Shing, Mantak; Dolk, Daniel R.; Rassmussen, Craig W. (1995-08);This report outlines a formal method for merging changes in independently developed versions of software prototypes. A useful semantics-based method, which is guaranteed to detect all conflicts, is outlined. Prototype slicing ...
Decomposition recovery extension to the Computer Aided Prototyping System (CAPS) change-merge tool. Keesling, William Ronald (Monterey, California. Naval Postgraduate School, 1997-09);A promising use of Computer Aided Prototyping System (CAPS) is to support concurrent design. Key to success in this context is the ability to automatically and reliably combine and integrate the prototypes produced in ...
Dampier, David A.; Luqi; Berzins, Valdis (1994);As software becomes more complex, more sophisticated development and maintenance methods are needed to ensure software quality. Computer-aided prototyping achieves this via quickly built and iteratively updated prototypes ...