Title :
Constraint-oriented style for object-oriented formal specification
Author :
Bolognesi, T. ; Derrick, J.
Author_Institution :
Ist. di Elaborazione dell´´Inf., CNR, Pisa, Italy
Abstract :
The authors propose a specification style which combines the features and advantages of object-oriented and constraint-oriented system decomposition. A system description is decomposed into data handling objects, which usually reflect objects and individual operations in the real system, and temporal-ordering constraints, which capture aspects of functionality as behavioural sequences, with a possibility to also introduce entities which blur the distinction between these two extreme cases. Composition is achieved via synchronisation on shared operations: different objects/constraints insisting on an operation express different views on the enabling conditions and effects of that operation. Objects, constraints, and their composition can be formally specified in Object-Z, an object-oriented extension of the Z notation, with pure temporal ordering constraints equivalently expressed as transition graphs. However, expressing object/constraint compositions in Object-Z is cumbersome. This problem is solved by proposing a natural textual notation, called co-expression, which is a most direct description of an object/constraint interconnection graph, and we define a mapping from co-expressions to Object-Z. Thus, specifications in an object/constraint-oriented style can be conveniently written using transition graphs and interconnection diagrams mixed with Object-Z text, and then translated into this language
Keywords :
constraint handling; diagrams; formal specification; graph theory; object-oriented programming; specification languages; synchronisation; Object-Z; Z notation; behavioural sequences; co-expression; constraint-oriented system decomposition; data handling objects; interconnection diagrams; object constraint interconnection graph; object-oriented formal specification; shared operations; synchronisation; system description; temporal ordering constraints; temporal-ordering constraints; transition graphs;
Journal_Title :
Software, IEE Proceedings -
DOI :
10.1049/ip-sen:19986907