Games

Game-Based Learning for Software Engineering

For the past couple of weeks I’ve collected data on promising examples of serious games or game-based learning on software engineering. Here’s a small list of examples, with links, of the stuff I’ve found so far.

If you know of any other examples, please let me know.

Programming

there’s a quite of few games or game-like environments to support learning of programming.

Robocode

RoboCode is an open source learning game started by Matthew nelson and provided by IBM. The game is designed to help people learn to program in Java and enjoy the experience. It is very easy to start – a simple robot can be written in just a few minutes – but perfecting a bot can take months or more. The RoboCode project is on SourceForge and can be downloaded there.

Alice

Alice is an educational software that teaches students computer programming in a 3D environment. Alice is developed by a multi-university initiative including Carnegie Mellon, St. Joseph’s University and Washington University in St. Louis. It is used as a teaching tool for introductory computing. Alice can be downloaded from the website alice.org.

Red Frontier

Red Frontier is a game environment designed to support learning of programming for university computing students. The game was developed by Elisabeth Yaneske in the University of Teesside. There is no website for the game, just a case study description at digitalgames.playthinklearn.net. As far as I know the game itself is not available anywhere.

M.U.P.P.E.T.S.

M.U.P.P.E.T.S. is a collaborative virtual environment for introductory programming education. It has been developed at RIT (Rochester Institute for Technology) by Andy Phelps. At the moment the game’s web site seems to be under renovation and the download links are dead.

Process models, project management

A couple of games to learn with about software development process models and project management.

SimSE

SimSE is an educational software engineering simulation environment whose goal is to bridge the gap between the large amount of conceptual software engineering knowledge given to students in lectures and the comparably small amount of this they actually get to put into practice in an associated “toy” software engineering project. The game, several process models to use it with  as well as modeling tools can be downloaded from the game’s website. SimSE is open source.

MO-SEProcess

MO-SEProcess is a 3-D Multiplayer Online Software Engineering Process game based on the SimSE game. It is developed for Second Life. The game aims to teach students the principles of the software engineering process by simulating the development of a moderately sized software project. The game’s web page has a SLURL for the game for those who wish to check it out in Second Life (replicated here).

Problems and Programmers

Problems and Programmers is an educational software engineering card game. Featuring over 120 unique cards, it is intended to simulate the software development process from conception to completion. The game’s players compete to finish their projects while avoiding the potential pitfalls of software engineering. These players will quickly learn that the strategies that will let them win the game are the same that will help them in the real-world.

Problems and Programmers was designed by Alex Baker. Update! Unfortunately the game’s home page has gone AWOL. Here is the board game geek entry for the game.

SimjavaSP

SimjavaSP isa web-baed graphical simulation game to support learning and deep understanding of software engineering practice aimed at university students. A far as I know the game itself is not available in public but an article on the game is available on the web.

MIS Project Manager

MIS Project Manager is a dynamic and interactive computer-based simulation for experiential learning of some of the fundamental principles of Information Systems development project management. The simulation is browser-based and uses web forms.  The context is the development of a generic information system with 18 activities, 250 days and a £1.1m budget. The demo version of the game can be tied out on the game’s website.

Others

The stuff that did not fit into the previous two categories.

INNOV8

INNOV8 is a BPM (business process management) simulation game developed by IBM. It is intended to help both business and software experts understand how BPM impacts the entire business ecosystem. The game is a Flash-based browser game and it can be played on the game’s web site. The current version of the game is 2.0.

Gamestar Mechanic

Gamestar Mechanic is a site that supports the learning of game design for primary school students. The site includes factory 7, an arcade game that teaches about game mechanics and a game design workshop.  The site is supported by a partnership between the Institute of Play and E-Line Ventures and originally developed by Gamelab in partnership with the Institute of Play and the Academic Advanced Distributed Learning Co-Lab (AADLC) at the University of Wisconsin-Madison.

That’s all I have at the moment. Thanks to all contributors from the Serious Games mailing list for pointing these out for me (Ben Sawyer, Thomas Hainey, Phaedra Boinodiris, Marc Lavigne and Alex Games).

If you know of any other examples, please let me know.

8 thoughts on “Game-Based Learning for Software Engineering

  1. Did you check out the possibilities in Second Life. OpenSim may provide an interesting start. Do not know if this is the direction you’re looking for. Nevertheless this is what came to my mind. Grtz Marc

    • Of the ones I’ve discovered, MO-SEProcess is built into Second Life. Other than that I’m not aware of any solutions that use SL. OpenSim looks interesting, thanks for the heads up.

  2. Pingback: 2010 in Review (by Wordpress.com) « Game-Based Learning Dev

  3. Great list of apps. I was going to add open sim also. It might be worth adding Unity now that the pricing model has changed? Also worth looking at Thinking Worlds although this is paid software.

  4. Thank you Scott, I haven’t run across Open Sim or Thinking Worlds before. My question is that are they just authoring environments / frameworks for serious games or do they have some content for teaching programming or software engineering?

    I’m also hesitant on adding Unity to the list as I regard it as a tool for building games rather than something you could use out-of-the-box to teach programming or software engineering. But I guess the same could be said of Alice, so maybe the line is more vague than I first thought it would be.

  5. Really helpful list of apps. Any ideas where I can track down Problems and Programmers? I’ve been read a lot about it and would love to get my hands on a copy. The URL goes to a page about the auto transport industry :(

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s