You are on page 1of 2

PIR MEHR ALI SHAH ARID AGRICULTURE UNIVERSITY

University Institute of Information Technology

Software Architecture and Design


Credit Hours: 3(3-0) Prerequisites: Discrete Data & Data
Structures
Teacher: Office: Visiting
Faculty Room
Course Learning Outcomes (CLOs)
At the end of course the students will be able to: Domain BT Level*
1. Familiarity with the notion of Formal methods, their
importance
2. Understanding of the role of formal methods in software-
intensive systems and in system development
3. Understanding of, and modelling experience with, system
and formal methods qualities
4. Understanding the types of formal methods used today
5. Understanding of formal methods in different fields

Course Contents:

Course Objective:
This is not a course where one writes thousands of lines of code, characterised typically
by intense effort of getting the program to work during the days approaching the project
deadline. Rather, it is an intellectual course where system-level decisions are
represented in a high-level notation (e.g., UML) that together form a system
architecture.
Teaching Methodology:
Lectures, Written Assignments, Practical labs, Semester Project, Presentations

Courses Assessment:
Mid Exam, Home Assignments, Quizzes, Project, Presentations, Final Exam
Reference Materials:
1. Software Architecture in Practice,
3rd edition Len Bass, Paul Clements and Rick Kazman

Week/Lecture # Theory Practical


Wee Lect-I Introduction of formal methods
k1 Lect-II Limitations of testing and need for formal verification,
Wee Lect-I Overview of logic and propositional calculus
k2 Lect-II Calculational Logic
Lect-I Logical Connectives
Wee
Lect-II Boolean Equality
k3

Lect-I Continued Equivalence


Wee
Lect-II Disjunction, Conjunction
k4

Lect-I Implication, Introduction to Hoare’s Logic


Wee
Lect-II Weakest pre-condition
k5

Lect-I The assignment axiom


Wee
Lect-II Sequential composition
k6

Lect-I Conditional statements


Wee Reasoning about conditional statements,
Lect-II
k7

Lect-I Constructing conditional statements


Wee Inductive proofs and constructions
k8 Lect-II

Midterm Exam
Lect-I Patterns and invariant
Wee
k9
Lect-II Seven Myths of Formal Methods.
Lect-I Limitations and Acceptance of Formal Methods
Wee
The Z (Zed) specification Language
k 10 Lect-II
Wee Lect-I Z Schemas
k 11 Lect-II Model-based specifications
Lect-I Modularity and re-usability,
Wee
Lect-II The Object Constraint Language (OCL),
k 12

Wee Lect-I Algebraic Specifications,


k 13 Lect-II Specifications of abstract data types
Lect-I UML and Formal Methods
Wee
Lect-II Design by Contract (DBC)
k 14
Lect-I The six principles of Design by contract
Wee
Lect-II Algebraic Specifications
k 15
Wee Lect-I Revision
k 16 Lect-II
Final term Exam

You might also like