Having Fun in Learning Formal Specifications
This work addresses the problem of student engagement in formal methods courses, though it appears incremental as it builds on existing educational games like Pex and Code Defenders.
The paper tackles the challenge of teaching formal specifications in software engineering by introducing FormalZ, a game designed to make learning engaging through deep gamification. A preliminary user evaluation was conducted, but no concrete performance numbers were reported.
There are many benefits in providing formal specifications for our software. However, teaching students to do this is not always easy as courses on formal methods are often experienced as dry by students. This paper presents a game called FormalZ that teachers can use to introduce some variation in their class. Students can have some fun in playing the game and, while doing so, also learn the basics of writing formal specifications in the form of pre- and post-conditions. Unlike existing software engineering themed education games such as Pex and Code Defenders, FormalZ takes the deep gamification approach where playing gets a more central role in order to generate more engagement. This short paper presents our work in progress: the first implementation of FormalZ along with the result of a preliminary users' evaluation. This implementation is functionally complete and tested, but the polishing of its user interface is still future work.