ENCOMPASS: An Environment for Incremental Software Development Using Executable, Logic-Based Specifications
Terwilliger, Robert Barden
This item is only available for download by members of the University of Illinois community. Students, faculty, and staff at the U of I may log in with your NetID and password to view the item. If you are trying to access an Illinois-restricted dissertation or thesis, you can request a copy through your library's Inter-Library Loan office or purchase a copy directly from ProQuest.
Permalink
https://hdl.handle.net/2142/69585
Description
Title
ENCOMPASS: An Environment for Incremental Software Development Using Executable, Logic-Based Specifications
Author(s)
Terwilliger, Robert Barden
Issue Date
1987
Doctoral Committee Chair(s)
Campbell, Roy H.
Department of Study
Computer Science
Discipline
Computer Science
Degree Granting Institution
University of Illinois at Urbana-Champaign
Degree Name
Ph.D.
Degree Level
Dissertation
Keyword(s)
Computer Science
Abstract
The Vienna Development Method (VDM) supports the top-down development of software specified in a notation suitable for formal verification. VDM has been used in industrial applications to enhance the development process. In such environments VDM is applied in an informal, non-automated manner; verification conditions are generated and certified without the aid of specialized tools, and data types may not be formally axiomatized. This dissertation is based on the thesis that the time is ripe for the construction of environments which partially automate development methods similar to VDM, and that such environments will prove useful in industrial settings. ENCOMPASS is an automated environment which supports a formal development method similar to VDM; it supports rapid prototyping and program verification, as well as providing simple facilities for configuration control and project management. In ENCOMPASS, components are specified using a combination of natural language and PLEASE, a wide-spectrum executable specification and design language. PLEASE specifications may be used in proofs of correctness; they may also be automatically transformed into prototypes which use Prolog to "execute" pre- and post-conditions. In ENCOMPASS, PLEASE specifications are incrementally refined into Ada$\sp1$ implementations. Each refinement is verified before another is applied; therefore, the final components produced by the development satisfy the original specifications. In ENCOMPASS, the correctness of a refinement step can be verified using either testing, proof or peer review techniques. ENCOMPASS is an environment for the rigorous development of programs. Although detailed mechanical proofs are not required at every step, the framework is present so that they can be constructed if necessary. Proof techniques may be used which range from a very detailed, completely formal proof using mechanical theorem proving, to a development "annotated" with unproven verification conditions. Parts of a project may use detailed mechanical verification while other, less critical parts may be handled using less expensive techniques. We believe the use of future environments similar to ENCOMPASS will enhance the software development process. ftn$\sp1$Ada is a trademark of the U.S. Government, Ada Joint Program Office.
Use this login method if you
don't
have an
@illinois.edu
email address.
(Oops, I do have one)
IDEALS migrated to a new platform on June 23, 2022. If you created
your account prior to this date, you will have to reset your password
using the forgot-password link below.