Formal and Informal Software Development Techniques

4 April 2015
Compares and contrasts the use of formal methods and informal methods within the software process.

This paper investigates the role of formal methods (such as Z, Object-Z, VDM, B) within the software process and compares these to less formal methods such as natural language specifications and semi-formal methods like UML/Fusion. The complexities of formal methods are weighed against the software quality benefits often achieved through their use. Overall cost-effectiveness of both methods are discussed, as well as situations where formal methods may not be required (non-critical applications, rapid prototyping).
“While it is clear that both formal and informal methods have their own inherent benefits and shortfalls, it seems as though formal methods are the best option if software quality and overall cost-effectiveness are to be maximized. With increased tool support and method standardization, barring personal preference, there are few reasons why a formal approach should not be implemented. Increased acceptance of formal methods would most likely lead to higher quality software due to the more complete and precise specification that mathematical notations allow. While the initial costs experienced in the early stages of the development process may be high, these become less important as the benefits trickle their way through the software development process.”
A limited
time offer!
Save Time On Research and Writing. Hire a Professional to Get Your 100% Plagiarism Free Paper