Title :
Do formal methods really work?
Author_Institution :
Dept. of Comput. Sci., Queensland Univ., St. Lucia, Qld., Australia
Abstract :
“Formal methods” is an established but inappropriate name for the use in software engineering of a standard engineering technique: prediction of in-service performance at design time, based on relevant scientific theories and mathematical models. Today, no other branch of engineering would deny the necessity of scientifically based prediction-though such denial was common a century ago. Given the precedents elsewhere in engineering, the author confidently says that the formal methods are really needed if software engineering is to really work! It is also clear that every branch of engineering involves much more than prediction of in-service performance. For example the creation of designs is central and is purely informal, even though it may be interleaved with formal methods. This example is enough to show that formal methods alone cannot make software engineering really work, no matter how good the formal methods are. In the author´s view the key questions are these: what is the role of formal methods in making software engineering really work? How capable are existing formal methods of performing that role?
Keywords :
formal specification; program verification; software performance evaluation; formal methods; in-service performance; scientifically based prediction; software engineering; standard engineering technique; Australia; Computer industry; Computer science; Design engineering; Mathematical model; Programming; Project management; Software development management; Software engineering; Software performance;
Conference_Titel :
Australian Software Engineering Conference, 1996., Proceedings of 1996
Conference_Location :
Melbourne, Vic.
Print_ISBN :
0-8186-7635-3
DOI :
10.1109/ASWEC.1996.534124