At the end of this course, the student will be able to:
- name, define and describe inspection and formal technical review process and concepts
- explain and apply design by contract and traditional formal systems for program correctness and analyze program code.
- drive dynamic symbolic execution for a procedure of a program
- be a part of inspection and formal technical review team and generate reports
- use automated software verification tools to object oriented systems.
- interpret temporal logic for concurrent systems
- drive finite state models of concurrent systems for model checking