On Object-Oriented Design and Verification. Lewerentz, C., Lindner, T., Rüping, A., & Sekerinski, E. In Broy, M. & Jähnichen, S., editors, KORSO: Methods, Languages, and Tools for the Construction of Correct Software, volume 1009, of Lecture Notes in Computer Science, pages 92–111. Springer-Verlag, 1995.
doi  abstract   bibtex   
We present a theory of object-orientation on the basis of the refinement calculus. This theory allows for specifying the behaviour of objects and provides a calculus for the proof of relationships between classes such as refinement. Given two similar, but not identical classes, we present an algorithm to construct a common superclass which is refined by both classes, and an algorithm to construct a common subclass which refines both classes. As an example, we present an account manager to illustrate design and verification. The overall approach aims at giving a simple theoretical basis for incremental object-oriented software construction. We demonstrate how formal specification and verification can be integrated into the development process, and thus can be put into practical use.
@incollection{LewerentzLindnerRupingSekerinski95OODesignVerification,
	series = {Lecture {Notes} in {Computer} {Science}},
	title = {On {Object}-{Oriented} {Design} and {Verification}},
	volume = {1009},
	abstract = {We present a theory of object-orientation on the basis of the refinement calculus. This theory allows for specifying the behaviour of objects and provides a calculus for the proof of relationships between classes such as refinement. Given two similar, but not identical classes, we present an algorithm to construct a common superclass which is refined by both classes, and an algorithm to construct a common subclass which refines both classes. As an example, we present an account manager to illustrate design and verification. The overall approach aims at giving a simple theoretical basis for incremental object-oriented software construction. We demonstrate how formal specification and verification can be integrated into the development process, and thus can be put into practical use.},
	booktitle = {{KORSO}: {Methods}, {Languages}, and {Tools} for the {Construction} of {Correct} {Software}},
	publisher = {Springer-Verlag},
	author = {Lewerentz, C. and Lindner, T. and Rüping, A. and Sekerinski, E.},
	editor = {Broy, Manfred and Jähnichen, Stefan},
	year = {1995},
	doi = {10.1007/BFb0015457},
	pages = {92--111},
}

Downloads: 0