A Formal Software Development Approach Using Refinement Calculus
王云峰, 庞军
Abstract
王云峰, 庞军
Abstract
The advantage of COOZ (Complete Object-Oriented Z) is to specify large scale software, but it does not support refinement calculus. Thus its applica tion is confined for software development. Including refinement calculus into COOZ overcomes its disadvantage during design and implementation. The separation be tween the design and implementation for structure and notation is removed as well. Then the software can be developed smoothly in the same frame. The combina tion of COOZ and refinement calculus can build object-oriented frame, in which the specification in COOZ is refined stepwise to code by calculus. In this paper, the development model is established, which is based on COOZ and refinement calculus. Data refinement is harder to deal with in a refinement tool than ordinary algorithmic refinement, since data refinement usually has to be done on a large program compo nent at once. As to the implementation technology of refinement calculus, the data refinement calculator is constructed and an approach for data refinement which is based on data refinement calculus and program window inference is offered.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The advantage of COOZ (Complete Object-Oriented Z) is to specify large scale software, but it does not support refinement calculus. Thus its applica tion is confined for software development. Including refinement calculus into COOZ overcomes its disadvantage during design and implementation. The separation be tween the design and implementation for structure and notation is removed as well. Then the software can be developed smoothly in the same frame. The combina tion of COOZ and refinement calculus can build object-oriented frame, in which the specification in COOZ is refined stepwise to code by calculus. In this paper, the development model is established, which is based on COOZ and refinement calculus. Data refinement is harder to deal with in a refinement tool than ordinary algorithmic refinement, since data refinement usually has to be done on a large program compo nent at once. As to the implementation technology of refinement calculus, the data refinement calculator is constructed and an approach for data refinement which is based on data refinement calculus and program window inference is offered.
Key concepts: Refinement calculus, Computer science, Refinement, Algorithm, Calculus (dental), Programming language, Notation, Software