Formal Verification in Railways
The motive for adopting a formal method is an improved development process with resource savings, a reduced number of errors, and reduced time-to-market. That formal methods potentially can give these benefits is not very controversial since formal methods consider software construction just like construction in any other traditional engineering discipline: by model building and model analysis before construction and production takes place. A model is an abstraction of a system to be constructed with the advantage that it can be analysed thoroughly for its intended, and also unintended, design characteristics. This prior-to construction analysis is used in many traditional engineering disciples, e.g., in mechanics of materials in order to establish the solidity of constructions. It seems very likely that, with the appropriate methodology and tool support, prior-to construction analysis based on mathematics and logic is equally beneficial to use in software development as related methods are in traditional engineering disciplines.