Authors:
Moritz Balz
and
Michael Goedicke
Affiliation:
University of Duisburg-Essen, Germany
Keyword(s):
Teaching formal methods, Teaching programming, Model-driven software development, Greenfoot.
Related
Ontology
Subjects/Areas/Topics:
Collaborative Learning
;
Computer-Supported Education
;
Context Dependent Learning
;
e-Learning
;
e-Learning Hardware and Software
;
e-Learning in Electrical, Mechanical, Civil and Information Engineering
;
Learning/Teaching Methodologies and Assessment
;
Pedagogy Enhancement with e-Learning
;
Social Context and Learning Environments
;
Ubiquitous Learning
Abstract:
Formal methods for software development are subject to teaching in computer science as a matter of course. However, it is difficult to relate the theories to the practical matter of program code creation. The reason for this is the complexity of model-driven software development approaches which would be needed to derive executable applications from formal models, but are usually not in the focus of the courses. We propose to teach formal methods by using “embedded models”, i.e. program code patterns that represent the semantics of formal methods inside arbitrary object-oriented programs. The approach is realized within the Greenfoot graphical simulation enginge. With this approach the technical barrier to the practical use of formal methods is lowered, so that students can easily experiment with such models in a game-oriented environment.