Suggestions for Composing and Specifying Program Design Decisions

  title={Suggestions for Composing and Specifying Program Design Decisions},
  author={Michel Sintzoff},
  booktitle={Symposium on Programming},
  • M. Sintzoff
  • Published in Symposium on Programming 22 April 1980
  • Computer Science
It is proposed to express program designs by hierarchical specifications of design decisions. A case study of program construction is presented to substantiate the proposal. Composition rules based on logic are given for these hierarchical specifications. Advantages and disadvantages of the suggestions are assessed. 

Expressing program developments in a design calculus

A step in the study of means to express software developments is described, related to approaches where programs are extracted from proofs, and it is influenced by the spirit and the techniques of constructive logic.

Designing a Method Driven Software Development Environment

A project to produce a method-driven environment and some approaches to meeting their shortcomings are given and the continuing work of the project is mentioned.

Program developments: formal explanations of implementations

This report discusses the documentation requirements of the development process and describes a prototype system for constructing and maintaining this documentation information and indicates the many remaining open issues and the direction to be taken in the pursuit of solutions.

Formal Description of Programming Concepts: A Software Engineering Viewpoint

This invention relates to a method for forming metal battery terminals and to the terminals produced thereby for use with battery containers fabricated from thermally deformable materials such as

Issues in the Methodical Design of Concurrent Programs

An overview of typical issues in the systematic design of concurrent programs is presented and a tentative method is presented for replacing the iterative derivation of predicates by easier techniques yielding weaker but safe versions of these predicates.

Tool support for architectural decision making in large software intensive projects

A tool (ADeX) is presented to manage ADDs and support the decision-making process and can answer questions about what decisions have been made and which elements and quality attributes are affected by a decision.

Understanding and Expressing Software Construction

The aim of this working memorandum is to foster thinking on the nature of software construction; the need and the possibility of organizing and expressing it; the help of notational and computational systems.

First Steps Towards Inferential Programming

The ability to construct and modify programs will not improve without a new and comprehensive look at the entire programming process, and the means to describe the techniques of program construction and improvement in ways that properly link verification, documentation and adaptability are lacking.



Transformational Implementation: An Example

  • R. Balzer
  • Computer Science
    IEEE Transactions on Software Engineering
  • 1981
A system for mechanically transforming formal program specifications into efficient implementations under interactive user control is described and illustrated through a detailed example. The

Synthesis: Dreams - Programs

Deductive techniques are presented for deriving programs systematically from given specifications and have been incorporated in a running program-synthesis system, called DEDALUS.

Systematics of Transformation Rules

Transformation rules can be given as axioms — thus determining (parts of) the semantics of the language — or they can be verified with respect to a particular definition of the semantics, which is taken here as a guide-line for a systematic survey of transformation rules.

Heuristic control of design-directed program transformations

  • C. Jette
  • Computer Science
    1979 International Workshop on Managing Requirements Knowledge (MARK)
  • 1979
A class of semantic source-to-source program transformations called design-directed program transformations (DDPT) for use in a transformational implementation (TI) approach to programming is described.

Improving and refining programs by program manipulation

This paper explores the notion of using source-to-source transformations interactively as a basis for an approach to program improvement and refinement.

An Alphard Specification of a Correct and Efficient Transformation on Data Structures

This paper discusses one of Bentley and Saxe's transformations for converting solutions of simple searching problems to solutions of more complex problems, and specifies precisely the transformation and its conditions of applicability, and proves its correctness.

Iterative multi-level modelling. A methodology for computer system design

A method of modelling a computer system design as it evolves, so that evaluation can be made an integral part of the design process, and the concept of concurrent existence, within a single model, of several representations of the system being modelled, at differing levels of abstraction is introduced.

Properties of Programs and the First-Order Predicate Calculus

  • Z. Manna
  • Computer Science, Mathematics
  • 1969
The correctness and equivalence problems of abstract programs are shown to be reducible to the termination problem and known proof procedures for the first-order predicate calculus can be applied to prove the termination of both programs and abstract programs.

On Program Synthesis Knowledge

Syntactic source to source transforms and program manipulation

A complete catalogue of syntactic transforms, and its use for solution of a system of program equations, is given, and examples of derivation of more complex source to source transformations are presented.