Formal methods are often perceived by students as abstract and disconnected from real software development, particularly when addressing concurrent systems. This paper reports on an experience of teaching formal methods in a Master-level course through project-based learning, using the Anemone workbench and the Multi-Bach coordination language. Rather than relying on small artificial examples, students apply formal modelling to parts of their own projects involving concurrency and coordination. Animation and trace inspection support the exploration of dynamic behaviours and interleavings, helping students connect formal descriptions to intuitive system behaviour. We describe the course context and representative student projects, and report observations on engagement, recurring modelling difficulties, and learning outcomes. We also discuss limitations of the approach, including tool-learning overhead and scalability concerns. Overall, the experience suggests that tool-supported projects can make formal methods more accessible and meaningful for advanced students while preserving their formal foundations.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Learning Formal Methods Through Project-Based Modeling of Concurrent Systems with Anemone

  • Manel Barkallah,
  • Jean-Marie Jacquet

摘要

Formal methods are often perceived by students as abstract and disconnected from real software development, particularly when addressing concurrent systems. This paper reports on an experience of teaching formal methods in a Master-level course through project-based learning, using the Anemone workbench and the Multi-Bach coordination language. Rather than relying on small artificial examples, students apply formal modelling to parts of their own projects involving concurrency and coordination. Animation and trace inspection support the exploration of dynamic behaviours and interleavings, helping students connect formal descriptions to intuitive system behaviour. We describe the course context and representative student projects, and report observations on engagement, recurring modelling difficulties, and learning outcomes. We also discuss limitations of the approach, including tool-learning overhead and scalability concerns. Overall, the experience suggests that tool-supported projects can make formal methods more accessible and meaningful for advanced students while preserving their formal foundations.