Course Description
EECS 755 - Software Requirements Modeling and Analysis is an advanced introduction to modern techniques for specification, verification and implementation of computer-based systems. Topics covered are equally useful for hardware and software verification. We will learn to write formal specifications, refine specifications and verify that implementations meet their requirements. Specific topics include axiomatic specification, invariants, algebraic types and induction, constructive specification, assume-guarantees style specification, safety and liveness, and natural deduction. Currently we use the PVS proof tool and the SAL model checker, but techniques learned apply equally well to other verification systems.
Instructor Information
Instructor: Dr. Perry Alexander
Office: 2022 Eaton Hall / 136 Nichols Hall
Phone: 4-8833 / 4-7741
Office Hours: 1:00-2:30 TR
Online Schedule
Email Me
Office: 2022 Eaton Hall / 136 Nichols Hall
Phone: 4-8833 / 4-7741
Office Hours: 1:00-2:30 TR
Online Schedule
Email Me
Class Information
Room: 2:30-3:45 TR
Time: 3150 Learned
Prerequisites: Knowledge of at least one high-level language (Java, C++, Scheme, Haskell, etc). Some discrete math is useful, but definitely not required.
Time: 3150 Learned
Prerequisites: Knowledge of at least one high-level language (Java, C++, Scheme, Haskell, etc). Some discrete math is useful, but definitely not required.
Texts
There are no required texts for this class. We will use online tutorials, tool documentation, and papers from the literature.