Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Objects, components, and frameworks with UML: the catalysis approach
Objects, components, and frameworks with UML: the catalysis approach
Formal methods and traditional engineering
Journal of Systems and Software - Special issue on formal methods technology transfer
The denotational semantics of programming languages
Communications of the ACM
Problem frames: analyzing and structuring software development problems
Problem frames: analyzing and structuring software development problems
The Metamodelling Language Calculus: Foundation Semantics for UML
FASE '01 Proceedings of the 4th International Conference on Fundamental Approaches to Software Engineering
Engineering Modelling Languages: A Precise Meta-Modelling Approach
FASE '02 Proceedings of the 5th International Conference on Fundamental Approaches to Software Engineering
ZUM '97 Proceedings of the 10th International Conference of Z Users on The Z Formal Specification Notation
UML-B: Formal modeling and design aided by UML
ACM Transactions on Software Engineering and Methodology (TOSEM)
An object-oriented structuring for z based on views
ZB'05 Proceedings of the 4th international conference on Formal Specification and Development in Z and B
A formal template language enabling metaproof
FM'06 Proceedings of the 14th international conference on Formal Methods
Automated Formalisation for Verification of Diagrammatic Models
Electronic Notes in Theoretical Computer Science (ENTCS)
Using VCL as an aspect-oriented approach to requirements modelling
Transactions on aspect-oriented software development VII
Using VCL as an aspect-oriented approach to requirements modelling
Transactions on aspect-oriented software development VII
Platform-Variant Applications from Platform-Independent Models via Templates
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
The engineering of systems that are acceptably correct is a hard problem. On the one hand, semi-formal modelling approaches that are used in practical, large-scale system development, such as the UML, are not amenable to formal analysis and consistency checking. On the other hand, formal modelling and analysis requires a level of competence and expertise that is not common in commercial development communities, and formal approaches are not well integrated with the rest of the development process. This paper advocates an approach to building engineering environments (or frameworks) for rigorous model-driven development (MDD) that is based on combining semi-formal notations with formal modelling languages. To support the approach, there is a formal language of templates, which captures patterns of formal development and enables an approach to proof with templates. This allows the construction of catalogues of patterns (represented as templates) and meta-theorems for frameworks. The paper presents and illustrates a framework for sequential systems that combines UML and the formal language Z.