

















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The course is intended to develop an understanding of the problems associated with the development of significant computing systems (that is, systems that are too large to be designed and developed by a single person, and are designed to be used by many users) and to appreciate the techniques and tools necessary to develop such systems efficiently, in a cost-effective manner. Formal Methods, Ambiguity, Testing, Formal Specification, Property Based Specification, Model Based Specification, Z Spec
Typology: Slides
1 / 25
This page cannot be seen from the preview
Don't miss anything!


















Software Engineering
“That part of computer science concerned with the application of mathematical methods to the production of computer software”. (Jones, 1986)
A key problem with informal specifications is the inherent ambiguity of textual descriptions; using mathematics can eliminate such ambiguity.
Complex properties can be expressed succinctly.
There is little that cannot in some way be described and reasoned about using maths.
The ability to prove properties of a system is potentially very valuable.
People can get get sums wrong!
All maths looks hard until you get used to it...
- algebraic specification of abstract data types (Hoare, 1969). - the OBJ language (Futatsugi et al., 1985).