a game engine to learn computer science languages frontiers in education ieee lost in xml
DESCRIPTION
A game engine to learn computer science languages presented at the 2014 Frontiers in Education IEEE. It describe the Lost in XML game and how this can be generlized to other computer science languagesTRANSCRIPT
A Game Engine to Learn Computer Science Languages
Ángel Serrano-Laguna, Javier Torrente, Borja Manero,
Baltasar Fernández Manjón
[email protected]@BaltaFM
1
The problem
• Increasing interest in providing Computer Science instruction to a wider sector of the population– Game-based learning approach
• Many approaches already– GameMaker– Alice– Microsoft’s Kodu– Scratch– …
• …but they are hard to scale, because they are intended– for specific audiences– for specific programming languages
2
Game design principles
1. Students must code in the game
2. Promote reflection, avoid time pressure
3. Separate input and game mechanics
4. Level structure
5. A clear goal is set up for each level
6. Use scores to promote competition between peers and to provide a sense of progress
3
If you prefer to play instead of the talk go directly to
http://gleaner.e-ucm.es/lostinspace/play/index.html
Engine architecture
4
1. Game core2. Set of actions and structures3. Interpreter4. Levels
Lost in Space
About the game...
• A basic game to acquiere familiriaty with XML documents– Learn the syntax– Understand nesting and attributes– Gain agility writing and reading XML documents
• Designed as a complementary activity in a Web Programming Course– For undergraduate computer science students
Understanding the game…
Goal
Main character
Power-ups (new syntax elements)
Write XML snippets here to move the main
character to the goal
Understanding the game
• 13 scenarios– Syntax elements are introduced progressively (through power-
ups)– Increasingly complex interactions / snippets– Later scenarios include complex sequencing and iteration
Examples Input Programs for the Game
9
Effect in game Java XML
Move ship 4 spaces ship.move(4); <move distance=”4”/>
Make ally shoot if(ship.getId().equals(“ally”){ship.shoot();}
<actions idref=”ally”><shoot/></actions>
Shoot 4 times for (int i = 0; i<4; i++){shoot();}
<actions repeat=”4”><shoot/></actions>
Case Study I
10
12
12.5
13
13.5
14
14.5
15
15.5
16
Played the game (Group A) Traditional lesson (Group B)
• Participants from Computer Science degree• 17 students played the game (Group A)• 14 students attended a lecture (Group B)
• Methods• Identical pre-test and post-test for both groups, from 0 to 20
• Results (knowledge increase)
Case Study I
• Students’ scores increased both after traditional instruction and game-based instruction
• Similar results• Average effect of instruction is not very high (13-14 %)
– Reduced exposure to instruction (<50 minutes)
• Students who played the game were more satisfied with the experience– The different engagement observed in the two groups may
suggest that overall Lost in Space was a better instructional approach, although it did not yield better results than traditional instruction in terms of knowledge acquisition
11
Case Study II
12
0
2
4
6
8
10
12
14
16
18
Group A (Computer Science) Group C (Social sciences)
• To explore if the effects of using the game for instruction with a different student population
• Participants• 13 college students enrolled in a social sciences (Group C)
• Same pre-tests and post-tests• Results (knowledge increase):
Case Study II
• Lower starting point in knowledge for Group C• Similar increase as Group A• Test has 2 exercises: find errors in an XML documents
and write an XML document:– Group C only improved in first exercise of the test
13
Want to play?
http://bit.ly/LiS-XMLhttp://gleaner.e-ucm.es/lostinspace/play/index.html
14
Learning Analytics applied to this game
Ángel Serrano-Laguna, Baltasar Fernández-Manjón (2014): Applying learning analytics to simplify serious games deployment in the classroom. Proceedings of the 2014 IEEE Global Engineering Education Conference (EDUCON) Page 872-877
Our current projects
RAGE H2020 ICT2014-21ª
Realising an Applied Gaming Eco-system