OTS/CafeOBJ2JML: An attempt to combine Design By Contract with Behavioral Specifications
Nikolaos Triantafyllou, Petros Stefaneas, Panayiotis Frangos
Abstract
Open-access reader
Nikolaos Triantafyllou, Petros Stefaneas, Panayiotis Frangos
Abstract
Open-access reader
Design by Constract (DBC) has influenced the development of formal specification languages that allow the mix of specification and implementation code, like Eiffel, the Java Modeling Language (JML) and Spec#. Meanwhile algebraic specification languages have been developing independently and offer full support for specification and verification of design for large and complex systems in a mathematical rigorous way. However there is no guarantee that the final implementation will comply to the specification. In this paper we proposed the use of the latter for the specification and verification of the systems design and then by presenting a translation between the two, the use of the former to ensure that the implementation respects the specification and thus enjoy the verified properties.
OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Design by Constract (DBC) has influenced the development of formal specification languages that allow the mix of specification and implementation code, like Eiffel, the Java Modeling Language (JML) and Spec#. Meanwhile algebraic specification languages have been developing independently and offer full support for specification and verification of design for large and complex systems in a mathematical rigorous way. However there is no guarantee that the final implementation will comply to the specification. In this paper we proposed the use of the latter for the specification and verification of the systems design and then by presenting a translation between the two, the use of the former to ensure that the implementation respects the specification and thus enjoy the verified properties.
Key concepts: Design by contract, Eiffel, Programming language, Computer science, Specification language, Formal specification, Programming language specification, Java Modeling Language