AbstractIn the development of critical systems, standards dictate that it is necessary to first design, construct and formally analyse abstract models of the system. Developers must then verify that the final implementation is consistent with these more abstract specifications.Z is an example of a state-based specification language. It has been shown to be effective in a variety of cases—indeed it was developed as part of a joint collaboration between Oxford University's PRG and IBM Hursley for the specification of the CICS system. However, Z's main weakness is that it does not have the necessary tool support: whilst there are associated type checkers, there is no tool for automatically verifying refinement in Z.The contribution of this pap...
Much of what drove us in over twenty years of research in refinement, starting with Z in particular,...
AbstractIn this paper we compare the refinement orderings, and their associated simulation rules, of...
Software Product Line evolution can be performed by refactorings, which involve not only program ref...
AbstractIn the development of critical systems, standards dictate that it is necessary to first desi...
AbstractRefactorings are systematic changes made to programs, models or specifications in order to i...
AbstractData refinement is useful in software development because it allows one to build more concre...
The emergence of lightweight formal methods tools such as Alloy improves the software design process...
Model transformations play a key role in model driven software engineering approaches. Validation of...
AbstractOnce you have proved your refinement correct, that is not the end. Real products, and their ...
In this paper we describe a methodology to translate BON (architectural) designs to Alloy specificat...
Data refinement is a well established technique for transforming specifications of abstract data typ...
Abstract. Alloy is a specification language based on a relational first-order logic with built-in op...
AbstractThis paper proposes modeling laws for Alloy, a formal object-oriented modeling language. The...
This paper discusses theoretical background for the use of Z as a language for partial specification...
The Z notation is a language used for writing formal specifications of a system. However, tool suppo...
Much of what drove us in over twenty years of research in refinement, starting with Z in particular,...
AbstractIn this paper we compare the refinement orderings, and their associated simulation rules, of...
Software Product Line evolution can be performed by refactorings, which involve not only program ref...
AbstractIn the development of critical systems, standards dictate that it is necessary to first desi...
AbstractRefactorings are systematic changes made to programs, models or specifications in order to i...
AbstractData refinement is useful in software development because it allows one to build more concre...
The emergence of lightweight formal methods tools such as Alloy improves the software design process...
Model transformations play a key role in model driven software engineering approaches. Validation of...
AbstractOnce you have proved your refinement correct, that is not the end. Real products, and their ...
In this paper we describe a methodology to translate BON (architectural) designs to Alloy specificat...
Data refinement is a well established technique for transforming specifications of abstract data typ...
Abstract. Alloy is a specification language based on a relational first-order logic with built-in op...
AbstractThis paper proposes modeling laws for Alloy, a formal object-oriented modeling language. The...
This paper discusses theoretical background for the use of Z as a language for partial specification...
The Z notation is a language used for writing formal specifications of a system. However, tool suppo...
Much of what drove us in over twenty years of research in refinement, starting with Z in particular,...
AbstractIn this paper we compare the refinement orderings, and their associated simulation rules, of...
Software Product Line evolution can be performed by refactorings, which involve not only program ref...