130 likes | 201 Views
Using Actors in an Interactive Animation in a Graduate Course on Distributed Systems. A play (experiment) in four acts by Philippas Tsigas and Boris Koldehofe. Content. Background, intention and motivation Self-Stabilisation Experiment: Act one, ..., Act four Evaluation Conclusion.
E N D
Using Actors in an Interactive Animation in a Graduate Course on Distributed Systems A play (experiment) in four acts by Philippas Tsigas and Boris Koldehofe
Content • Background, intention and motivation • Self-Stabilisation • Experiment: • Act one, ..., Act four • Evaluation • Conclusion
Background • Every year about seven one week intensive courses for graduate students are offered • Courses give an overview on the research of the department • Help new Ph.D students to decide on their research direction • This particular course deals with research areas in distributed systems in particular self-stabilisation and fault tolerance • Addresses students without background in distributed systems
Intention and Motivation • Students should understand the basic concepts • They should be able to verify the correctness and proof basic properties • Become interested in the research topics discussed in the course
Method and Related Work • Propose a dramatisation to teach Dijkstra´s self-stabilising token passing algorithm • Based on the idea that animations can be useful for introducing basic concepts in distributed computing Related Work • LYDIAN (1999) or ViSiDiA • Dramatisation (Rifkin, 1994 and Ben-Ari, Kolikant,1999) • qualitative and quantitative approaches (Kolikant, Ben-Ari, Pollack, 2000).
Self-stabilisation Arbitrary state • The distributed system works correct if it is in a safe state • Ensures that the system behaviour eventually stabilises to a safe subset of states regardless of the initial state Safe state • One of the most active research areas in distributed computing • Teaching challenges: lacking real-time metaphor and state explosion
Dramatisation of Dijkstra´s self-stabilising token passing algorithm • Uses four acts, each associated with an educational topic • Each act is followed by a discussion with the audience (the students) • The processes are represented by a real actor. • The states of processes (active/sleeping) are indicated by an actors speaking/ not speaking. • The shared memory is represented by a partitioned table • The value of a shared variable is represented by the number of apples inside the respective partition of the table
The perfect system • Introduces the non-stabilising algorithm • Explains the token passing idea x2 P2 P3 x3 x1 P1
Introducing Transient Faults • Malicious actor introduces multiple apples • Removing apples etc. P2 P3 P1
P2 P3 Central Basket with Apples P1 Attempt to self-stabilisation • Introduced Dijkstra´s self-stabilising algorithm • Actors use an infinite supply of apples P1 Check: right == left P2 Check: right != left P3 Check: right != left
P2 P3 Central Basket with Apples P1 Interactive finalisation of the algorithm • Students could interact with the system by modifying the setting of apples • Critical incident: Students found bug in the wrong algorithm • Students created the new rule
Evaluation • 13 Students participated in the course 11 of which helped with the evaluation of the course • The overall attitude towards the animation was very positive • All students thought that the animation helped a lot or fairly well to understand the algorithm • Most students prefer animations with human actors compared to computer animations (7/1). • Spontaneous and not predefined reactions of human beings seem to provide more information • Animations in general, children game representation
Conclusion / Future Work • Created a framework for teaching self-stabilisation • Dramatisation can be a very powerful method in the learning process • Useful when a complicated concept must be presented to an audience with a different background Future Work: • Analyse further the difference between computer animations and dramatisation • Using Virtual Actors