Science of Computer Programming · 2014 · 20 citations · 21 references
ComputingComputer ScienceInformation SystemsFormal MethodsInformation Systems DevelopmentSoftware EngineeringModel CheckingModel TransformationModel-driven DevelopmentModel-driven Software EngineeringSoftware DesignSoftware ModelingFormal ModelingModel VerificationModel-based VerificationModel-driven EngineeringSoftware Development MethodologyTransformations
Model-driven engineering is the generation of software artefacts from abstract models. This is achieved through transformations that encode domain knowledge and implementation strategies. The same transformations can be used to produce quite different systems, or to produce successive versions of the same system. A model-driven approach can thus reduce the cost of development. It can also reduce the cost of verification: if the transformations are shown or assumed to be correct, each new system or version can be verified in terms of its model, rather than its implementation. This paper introduces an approach to model-driven engineering that is particularly suited to the development of critical information systems. The language of the models, and the language of the transformations, are amenable to formal analysis. The transformation strategy, and the associated development methodology, are designed to preserve systems integrity and availability.
21
The B-book: assigning programs to meanings
Choice Reviews Online · 1997 · 2.1K citations
Refactoring improving the design of existing code
Mauricio A. Saca · 2017 · 2.1K citations
ATL: A model transformation tool
Frédéric Jouault, Freddy Allilaire, Jean Bézivín et al. · Science of Computer Programming · 2008 · 967 citations
Engineering, Computer Science, Model-based Systems Engineering +10