Formal methods and testing are two important approaches that assist in the development of high quality software. While traditionally these approaches have been seen as rivals, in recent years a new consensus has developed in which they are seen as complementary. This article reviews the state of the art regarding ways in which the presence of a formal specification can be used to assist testing.
Mathematicians first used the sign 4-l without in the least knowing what it could mean, because it shortened work and led to correct results. People naturally tried to find out why this happened and what d-1 really meant. After two hundred years thy succeeded.-W. W. Sawyer, Mathematician's Delight, 1943.
The formal methods community is in general very good at undertaking research into the mathematical aspects of formal methods, but not so good at promulgating the use of formal methods in an engineering environment and at an industrial scale. Technology transfer is an extremely important part of the overall e ort necessary in the acceptance of formal techniques. This paper explores some of the more informal aspects of applying formal methods and presents some maxims with associated discussion that may help in the application of formal methods in an industrial setting. A signi cant bibliography is included, providing pointers to more technical and detailed aspects.Why does this magni cent applied science which saves work and makes life easier bring us so little happiness? The simple answer runs: because we have not yet learned to make sensible use of it.
{ Albert Einstein
Standards concerned with the development of safety-critical systems, and the software in such systems in particular, abound today as the software crisis increasingly a ects the world of embedded computer-based systems. The use of formal methods is often advocated as a way o f increasing con dence in such systems. This paper examines the industrial use of these techniques, the recommendations concerning formal methods in a number of current and draft standards, and comments on the applicability and problems of using formal methods for the development o f safety-critical systems of an industrial scale. Some possible future directions are suggested.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.