Keynote address - data abstraction and hierarchy
OOPSLA '87 Addendum to the proceedings on Object-oriented programming systems, languages and applications (Addendum)
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
The Object-Z specification language
The Object-Z specification language
SIMULA: an ALGOL-based simulation language
Communications of the ACM
A Logic of Object-Oriented Programs
TAPSOFT '97 Proceedings of the 7th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Using Z as a Specification Calculus for Object-Oriented Systems
VDM '90 Proceedings of the Third International Symposium of VDM Europe on VDM and Z - Formal Methods in Software Development
MDA Explained: The Model Driven Architecture: Practice and Promise
MDA Explained: The Model Driven Architecture: Practice and Promise
The Object Constraint Language: Getting Your Models Ready for MDA
The Object Constraint Language: Getting Your Models Ready for MDA
Automatic Maintenance of Association Invariants
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
rCOS: a refinement calculus of object systems
Theoretical Computer Science - Components and objects
Formality, Evolution, and Model-driven Software Engineering
Electronic Notes in Theoretical Computer Science (ENTCS)
Compositional class refinement in object-z
FM'06 Proceedings of the 14th international conference on Formal Methods
Compositionality and refinement in model-driven engineering
SBMF'12 Proceedings of the 15th Brazilian conference on Formal Methods: foundations and applications
Hi-index | 0.00 |
This paper shows how a domain-specific semantics for object models can be used to support the development of transformations that reflect a particular implementation strategy. The semantics captures model constraints and domain assumptions in terms of abstract data types, and a transformation is correct if and only if it corresponds to a data refinement. The transformations represent development steps, involving the completion of method descriptions, and validity checks, addressing issues of definedness and consistency. The paper shows how compositions of transformations may be used for the automatic generation of working systems from formal, object-oriented designs.