Back to courses index

SWEB320: Formal Methods and Models

Description:Formal mechanisms for specifying, building, and verifying software; Formal specification using various techniques, and initial specification and refinement towards implementation; Integration of formal methods with existing programming languages; The application of formal methods to requirements analysis, testing and safety analysis; Object-oriented approaches. (Prerequisite: SWEB300)
Credit Hours.:3
Text Book: David Lightfoot, Formal Specification Using Z
Coordinator: Boumediene Belkhouche
Topics Outline:
  1. Introduction to Formal Methods
  2. Review: Mathematical Background
  3. Formal Specifications
  4. Specification Language
  5. Specifying Systems
  6. The Object Constraint Language (OCL)
  7. Application of OCL
  8. Algebraic Specifications of Concurrent Processes
  9. Proofs of correctness
Outcomes:
  1. Explain the role of formal methods in software development
  2. Differentiate the formal verification techniques
  3. Write basic OCL constraints
  4. Produce Software specifications using Z.
  5. Identify the challenges of deriving formal specifications from requirements.
Mapping of Topics Outline to Outcomes
 1 2 3 4 5 6 7 8 9
1       
2       
3      
4       
5    
Pre-requisiteSWEB300: Software Engineering Fundamentals
Volume of the Course that Contributes to CIT Students Outcomes(SOs)
Move the mouse over the Students Outcome number to view the Students Outcome text
a b c d e f g h i j k l m n
11% 8% 15% 6% 0% 6%0% 0% 15% 11% 11% 2% 11% 0%
Show Details