Abstract
Writing “good” specifications is often much more difficult than writing “good” programs to meet them. A major issue concerns the process by which specifications are constructed. A formalisation of the process may be viewed as a sequence of operator applications. In this paper, we present a specific category of operators called “restructuring” operators. These operators are required to describe some structural transformations which can be applied during the specification process in order to enhance the final specification product with qualities such as modularity, minimality and absence of redundancy. We present a specification language including some restructuring operators, the latter being formally expressed in terms of algebraic grounds. Finally, we suggest some uses of these restructuring operators.
Preview
Unable to display preview. Download preview PDF.
7 Bibliography
Astesiano E. and Wirsing, M.: An introduction to ASL, Proc. of the IFIP WG 2.1 Working Conf. on Programme Specifications and Transformations, Bad Tolz, FRG, 1986.
Berzins V.A.: Abstract Model Specifications for Data Abstractions, Ph.D. Thesis, MIT, Massachusetts, 1979.
Burstall, M.R. and Goguen, J.A.: The Semantics of Clear, a Specification Language, Proc. of Advanced Course on Abstract Software Specifications, Copenhagen, LNCS 86, 1980, pp. 292–332.
Call for papers: Problem Set for the 4th International Workshop on Software Specification and Design. ACM Software Engineering Notes, April 1986.
Cohen, B. and Jackson, M.I.: A Critical Appraisal of Formal Software Development Theories, Methods and Tools, ESPRIT Preparatory Study, 1983, 128p.
Dubois, E., Finance, J-P. and van Lamsweerde, A.: Towards a Deductive Approach to Information System Specification and Design, In: “Current Issues of Requirements Engineering Environments”, Y. Ohno (ed), North-Holland, 1982, pp. 23–31.
Dubois, E., Levy, N. and Souquières, J.: SACSO: Methods and Tools for Constructing Requirements Specifications, Proc. of Third Conference on Software Engineering, Versailles, 1986, pp 177–188.
Dubois E. and Van Lamsweerde A.: Making specification processes explicit, Proc. of 4th International Workshop on Software Specification and Design, IEEE, Monterey (California), 1987, pp. 169–177.
Futatsugi, J., Goguen, A., Jouannaud J-P and Meseguer, J.: Principles of OBJ2, Proc. 11th POPLE, 1984.
Ganzinger, H.: Parameterised Specifications: parameter passing and implementation with respect to observability, ACM transactions on Programming Languages and Systems Vol. 5 no 3, 1983, pp 318–353.
Gaudel, M-Cl.: Towards Structured Algebraic Specifications, ESPRIT'85: Status Report of Continuing Work, North-Holland, 1986, pp 493–510.
Guttag, J.: Abstract Data Types and the Development of Data Structures, CACM, vol. 20, 6, 1977, pp. 396–404.
Guttag, J. and Horning, J.J.: Formal Specification as a Design Tool, Proc. 7th ACM Principles of Programming Language, 1980, pp. 252–261.
Levy, N.: Outils d'Aide à la Construction et Transformation de Types Abstraits Algèbriques, Thèse de troisième cycle, Universitè de Nancy-1, 1984.
Levy N., Piganiol A. and Souquières J.: Specifying with SACSO, Proc. of 4th International Workshop on Software Specification and Design, IEEE, Monterey (California), 1987, pp236–241.
Meyer, B.: Genericity vs Inheritance, Proceedings of the First ACM Symposium on Object-Oriented Programming Systems, Languages and Applications, Portland, Oregon, 1985, pp. 391–405.
Niphow, T.: Non-deterministic Data Types: Models and Implementations, Acta Informatica, vol. 22, no. 6, 1986, pp. 629–661.
Sannella, D. and Wirsing, M.: A Kernel Language for Algebraic Specification and Implementation, Proc. Int. Conf. on Foundations of Computer Theory. Bergholm Sweden, LNCS, 1985, pp308–322.
Scherlis, W. and Scott, D.: First Steps Toward Inferential Programming, I.F.I.P. Congress, 1983, pp 199–212.
Sintzoff, M.: Understanding and Expressing Software Construction, in Program Transformation and Programming Environments, P. Pepper (ed), ASI Nato Series, Springer-Verlag, Berlin, 1984.
Thatcher, J., Wagner, E. and Wright J.: Data type specification: parameterisation and the power of specification techniques, ACM TODS Vol. 4(4), 1982, pp711–732.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dubois, E., Levy, N., Souquières, J. (1987). Formalising restructuring operators in a specification process. In: Nichols, H., Simpson, D. (eds) ESEC '87. ESEC 1987. Lecture Notes in Computer Science, vol 289. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0022109
Download citation
DOI: https://doi.org/10.1007/BFb0022109
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-18712-7
Online ISBN: 978-3-540-48117-1
eBook Packages: Springer Book Archive