FIT3013 - Formal specification for software engineering
6 points, SCA Band 2, 0.125 EFTSL
Undergraduate Faculty of Information Technology
Leader(s): John Hurst
Offered
Clayton First semester 2009 (Day)
Synopsis
Review of set theory, the predicate calculus, relations, relational algebra and formal specification concepts; algebraic and model based specifications; the role of formal specifications in software engineering. The Event-B notation, data and algorithm design; data and operation refinement; proofs of correctness; proof obligations.
Objectives
- Fundamentals of the B Method;
- Applications of the B Method;
- A reading knowledge of B specifications;
- Software Testing in the discrete domain;
- The role of proof obligations and consistent specifications;
- Determination of Proof Obligation;
- The role of refinement in developing formal specifications;
- An appreciation of the professional need to establish formal properties of software;
- A belief that formal specifications can improve the quality of software;
- Skills in using the B notation to develop and prove software specifications;
- The ability to install a B Toolkit on a Unix/Linux platform;
- The ability to write basic B specifications;
- The ability to refine and extend more advanced B specifications.
Assessment
Assignments: 50%
Examination: 50%
Contact hours
3 x contact hrs/week
Prerequisites
FIT2004 and (MAT1830 or MTH1112 or MAT1077)
Prohibitions
CSE4213, GCO4013, SFT3302
Additional information on this unit is available from the faculty at:
13 October 2017
19 December 2024