Experience Report: Teaching Code Analysis and Verification Using Frama-C
Salwa Souaf (CentraleSup\'elec), Fr\'ed\'eric Loulergue (Universit\'e, d'Orl\'eans)

TL;DR
This paper discusses the design and implementation of two courses teaching formal methods and code verification using Frama-C, emphasizing their importance in ensuring software safety and security, especially in IoT applications.
Contribution
It introduces a pedagogic approach and course materials for teaching formal verification techniques with Frama-C in computer science curricula.
Findings
Courses effectively teach formal verification concepts.
Students gain practical skills in using Frama-C.
Enhanced understanding of software safety in IoT domain.
Abstract
Formal methods provide systematic and rigorous techniques for software development. We strongly believe that they must be taught in computer science curricula. In this paper we present the pedagogic rationale and the concrete implementation of two courses on the use of formal methods, sharing some material. These courses promote the usage of formal verification to ensure safety and security of software, exemplified in the domain of the Internet of Things.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsTeaching and Learning Programming · Logic, programming, and type systems · Software Testing and Debugging Techniques
