An Experiment To Evaluate An Approach To Teaching Formal Specifications Using Model Checking
Salamah Salamah, Steve Roach, Omar Ochoa, Veronica Medina, Ann C Gates · 2020
The difficulty of writing, reading, and understanding formal specifications remains one of the main obstacles in adopting formal verification techniques such as model checking, theorem and runtime verification.In order to train a future workforce that can develop and test high-assurance systems, it is essential to introduce undergraduate students in computer science and software engineering to the concepts in formal methods.This paper presents an experiment that we used to validate the effectiveness of a new approach that can be used in an undergraduate course to teach formal approaches and languages.The paper presents study that was conducted at two institutions to compare the new approach with the traditional one in teaching formal specifications.The new approach uses a model checker and a specification tool to teach Linear Temporal Logic (LTL), a specification language that is widely used in a variety of verification tools.