Accession Number : ADA198096

Title :   Composing Data and Process Descriptions in the Design of Software Systems.

Descriptive Note : Technical rept.,

Corporate Author : MASSACHUSETTS INST OF TECH CAMBRIDGE LAB FOR COMPUTER SCIENCE

Personal Author(s) : Jackson, Daniel

PDF Url : ADA198096

Report Date : May 1988

Pagination or Media Count : 95

Abstract : Two paradigms are dominant in software development, the data paradigm and the process paradigm. Our contention is that relying exclusively on either is counter-productive. In the data paradigm, a system is specified as operations acting on states. The process paradigm focuses on sequences of events. By analyzing two specifications for the same system, one in each paradigm, we show that the prime concerns of the approaches based on the data and process paradigms are state and sequencing respectively. Without explicit data, a system cannot take advantage of representation independence, a prerequisite of modularity; without sequencing notions, the components of a system cannot be connected in an abstract fashion. Fortunately, the qualities of the two paradigms are complementary, suggesting an approach that combines the two. We present a framework in which data and process specifications can be combined to build systems. We define formally what it means for an implementation to satisfy a specification, and we show a CLU implementation of one of our examples. Finally we outline a prescriptive notion of implementation in which the specification dictates the internal structure of the implementation. (kr)

Descriptors :   *COMPUTER PROGRAMS, *SYSTEMS ENGINEERING, *MODELS, INTERNAL, SEQUENCES, SPECIFICATIONS

Subject Categories : Computer Programming and Software

Distribution Statement : APPROVED FOR PUBLIC RELEASE