ABSTRACT
In this paper we discuss the use of a form of abstract specifications for software modules called trace axioms or trace assertions. Specifications written in this form precisely describe the external behavior of the module and can be automatically tested for consistancy and completeness. Errors revealed by the testing process can be rapidly corrected by a man-machine interactive process. These specifications could then be interpreted or compiled to form a rapid prototype of the final system.
- Bartussek, W. and Parnas, D. "Using Traces to Write Abstract Specifications for Software Modules". Univ. of N. C. Report No. Tr77-012 Dec. 1977.Google Scholar
- Dijkstra, E. W. "Guarded Commands, Nondeterminancy and the Formal Derivation of Programs". CACM 18, 8, Aug. 1975. Google ScholarDigital Library
- Dijkstra, E. W. "A Discipline of Programming" Prentice Hall 1976. Google ScholarDigital Library
- Dixon, J. K., Mclean, J., and Parnas, D. L. "Automatically Testing the Consistency of Abstract Specifications for Software Modules Written as Trace Axioms" (to be published) 1982.Google Scholar
- Dixon, J. K. "Proving the Completeness of Trace Axioms" (working paper)Google Scholar
- Floyd, R. W. "Assigning Meaning to Programs". In "Mathematical Aspects of Computer Science" (J. T. Schwartz, ed.) Proc. Symp. of Applied Mathematics. Vol. 19, American Math. Soc. Providence 1967, 19--32.Google Scholar
- Guttag, J. "The Specification and Application to Programming of Abstract Data Types". Ph.D. Thesis, CSRG TR 59, Univ. of Toronto. Sept. 1975. Google ScholarDigital Library
- Guttag, J. "Abstract Data Types and the development of Data Structures". SIGPLAN/SIGMOD Conf. on Data: Abstraction, Definition, and Structure" (to be published in CACM) Google ScholarDigital Library
- Guttag, J. Private Communication, 1976.Google Scholar
- Hoare, C. A. R. "An Axiomatic Basis for Computer Programing". CACM 12, 10 Oct. 1969, 576--583. Google ScholarDigital Library
- Knuth, D. E. and Bendix, P. B. "Simple Word Problems in Universal Algebras." Computatioanl Problems in Abstract Algebra, J. Leach (ed). Pergamon Press, New York, 1970, pp. 263--297.Google Scholar
- Liskov, B. and Berzins, V. "An Appraisal of Program Specifications" Research Directions in Software Technology (P. Wegner, ed.) MIT Press Cambridge Mass. 1979. pp. 276--301.Google Scholar
- McLean, J. "A Formal Foundation for Trace Specification." (to be published)Google Scholar
- Musser, D. R. "A Data Type Verification System Based on Rewrite Rules" USC Infor. Sci. Inst., June 1978.Google Scholar
- Neumann, P. G. et. al. "A Provably Secure Operating System: The system its Applications, and Proofs. Final report, Stanford Research Inst. 11 Feb. 1977, Menlo Park, Cal.Google Scholar
- Parnas, D. L. "A Technique for Software Module Specification with Examples" CACM May, 1972. Google ScholarDigital Library
- Parnas, D. L., Shore, J. E., and D. Weiss. "Abstract Types Defined as Classes of Variables" Proc. Conf. on Data: Abstraction, Definition, and Structure, pp. 22--24, Salt Lake City, Utah, Mar. 1976. Google ScholarDigital Library
- Parnas, D. L., and Wuerges, H. "Responses to Undersired Events in Software Systems". Proc. 2nd Intern. Conf. on Software Engineering. Oct. 1976, San Francisco, Cal. Google ScholarDigital Library
- Parnas, D. L., Handzel, G. and Wuerges, W. "Design and Specification of the Minimal Subset of an Operating System Family" Presented at 2nd Inter. Conf. on Software Engineering, Oct. 1976. Pub in special issue of IEEE Trans. on Software Engineering, Dec. 1976. Google ScholarDigital Library
- Parnas, D. L. "Information Distribution Aspects of Design Methodology" Proc. IFIP Congress 1971.Google Scholar
- Parnas, D. L. "On the Criteria to be used in Decomposing Systems into Modules" CACM Dec. 1972. Google ScholarDigital Library
- Parnas, D. L. The Use of Precise Specifications in the Development of Software" Proc. IFIP Congress 1977, North Holland Pub Co.Google Scholar
- Parnas, D. L. "More on Specification Techniques for Software Modules" Tech report, Technische Hochschule Darmstadt, Darmstadt, West Germany, Feb. 1975.Google Scholar
- Parnas, D. L. and Price, W. R. "The Design of the Virtual Memory Aspects of a virtual Machine" Proc. of ACM SIGARCH-SIGOPS Workshop on Virtual Computer Systems Mar. 1973. Google ScholarDigital Library
- Parnas, D. L. and Price, W. R. "Using Memory Access Control as the Only Protective Mechanism" Proc. Inter. Workshop on Protection in Operating Systems. Aug. 1974, IRIA.Google Scholar
- Price, W. R. "Implications of a Virtual Memory Mechanism for Implementing Protection in a family of Operating Systems" Tech. Report (Ph.D. Thesis) Carnegie-Mellon Univ., June 1973 AD766292. Google ScholarDigital Library
- Roubine, O. and Robinson, L. "Special Reference Manual" 2nd Ed. Tech Report CSG-45, Stanford Research Inst. Menlo Park, Cal.Google Scholar
- Zilles, S. N. "Data Algebra: A Specification Technique for Data Structures" MIT, Cambridge, Mass. Ph.D. Thesis, 1978.Google Scholar
Index Terms
- Rapid prototyping by means of abstract module specifications written as trace axioms
Recommendations
Rapid prototyping by means of abstract module specifications written as trace axioms
Special issue on rapid prototypingIn this paper we discuss the use of a form of abstract specifications for software modules called trace axioms or trace assertions. Specifications written in this form precisely describe the external behavior of the module and can be automatically ...
Trace Specifications: Methodology and Models
The authors summarize the trace specification language and present the trace specification methodology: a set of heuristics designed to make the reading and writing of complex specifications manageable. Also described is a technique for constructing ...
Abstract and behaviour module specifications
The theory of algebraic module specifications and modular systems was developed initially mainly on the basis of equational algebraic specifications. We show that it is in fact almost independent of what kind of underlying specification framework is ...
Comments