SWSE 623: Formal Methods in Software Engineering


((downloadable word doc)

Objective (as stated in the course catalog)

This is a course in formal mechanisms for specifying, validating and verifying software systems. Program verification through Hoare's method and Dijkstra's weakest preconditions. Formal specification and refinement towards implementation. Integration of formal methods with existing programming languages, and the application of formal methods to requirements analysis,testing,safetyanalysis, and object-oriented approaches.

Prerequisites

SWSE Foundation courses + SWSE 619 (alternatively CS 540 and CS571)

Course Material (Textbooks and Papers)

  1. An Introduction to Formal Specification and Z, by Potter, Sinclair and Till
  2. The Science of Programming, by David Gries
  3. The Object Constraint Language by Jos Warmer and Anneke Kleppe.
  4. Papers -some available on line from IEEE and ACM Libraries. (Going through GMU Libraray is easier and free)

Grading policy

Weights: Assignments (5% each) 20%, Midterm Exam 25%, Final exam 25%, Project 30%.

Late Submissions

Discouraged, but allowed under exceptional circumstances with prior approval of the instructor.


Announcements

  1. Final Examination scheduled on 12/07/2000, Thursday in Thompson 106 (Regular class room) from 7.20 to 10.00 pm. Honor code applies. (Producing the exact same mistake in proofs by two students sitting together may violate honor code - Unfortunately, we have such cases from Mid Term Examinations and the project.)
  2. All assignments and projects are graded, and can be picked up in front of Rm 351, ST II. - Without exceptions, no more projects and homeworks accepted: 9.30 am, 12/05/2000.
  3. Project Solutions by Donna Voigt - added on 12/05/2000,
  4. HW 4 Solutions by Donna Voigt - added on 12/05/2000
  5. HW 4 added on 11/09/2000.
  6. RSML Tranparencies updated on 11/03/2000.
  7. Solutions to Homework 1 by Susan L Fisher
  8. Solutions to Homework 3 by Susan L Fisher.
  9. OCL Transparencies and Poject descriptions added on 10/24/2000.
  10. Solutions to Homework 2 by Brad Christiansen.
  11. Midterm exam is open book, open notes, close neighbor, and will include all material covered in class upto an including October 13.
  12. I will be holding some office hrs on Friday Oct 13 from 8.00 pm to 9.00 pm. If you plan to come, please call or e-mail me.
  13. Review/Question-answer Session for Midterm I:Sunday Oct 15, from 3.00 - 5.00 pm in Science and Tech II, Room 320.
  14. Hoare Logic Transparencies updated again on Oct 13, incorporating some student comments.
  15. Homework 3: Problem #7 was corrected on Oct 11. Please download a new copy! Due date has NOT been changed!
  16. Hoare Logic Transparencies updated on Oct 11.
  17. New transparencies on Hoare Logic avilable
  18. Homework 2: The last problem, 3(b) is wrong. It has been corrected in the current version. The due date has been postponed to October 05.
  19. Example Natural Deduction style proofs will be distribted on September 28.
  20. Syllabus revised on October 22

Approximate Course Schedule

Date
Topic
Reading
Assignments
August 31 Introduction 4 papers from IEEE HW 1 out
September 7 Propositional Logic, Syntax and Semantics
Introduction to Natural Deduction Proofs
Class handouts, Gries 1-4 Proof Rules Given out
Septemer 14 Predicate Logic, Syntax and Semantics
Continue Natural Deduction Proofs
Prawits handout, Gries Ch 2,3 HW 1 in and HW 2 out
September 21 Formal and informal specifications,
Begin program verification
Win90 - Transparencies, Cornell Tech Report by Gries
September 28 Continue Program Verification Cornell Tech Report by Gries, Transparencies
October 5 Continue Program Verification Gries Tech Report HW 2 in, and HW 3 out
October 12 Program Verification, Loop Invariants Transparencies and Gries Tech Report
October 19 Mid Term Every thing including Oct 12 class HW 3 in
October 26 UML, OCL and Project Introduction OCL Book, OCL Trasparencies Start Project
November 2 Formal Specifications: RSML RSML Papers and Transparencies
November 9 Non Classical Logics and Other Formalisms Handouts on Modal, Temporal and Dynamic Logic given HW 4 out
November 16 Model Checking Slidesby MacMillan, SMV Manual, CAB+89
November 23 No Class Thanksgiving Break
November 30 Thereom Proving and other Deduction Methods Project, HW 4 Due
December 7 TBD Course Wrap Up
December 14 Grades given out Comprehensive