Post-mortem analysis of student game projects in a software architecture course

In 2008, a game development project was introduced in a software architecture course at the Norwegian University of Science and Technology. The motivation for introducing the project was to let students learn how software architecture practices and processes can improve the final product in an inspiring and practical way. In the project, students organized in groups had to establish functional and quality requirements, design the software architecture of the game, evaluate the architecture, implement the architecture and test the architecture. After completing the project, all groups had to perform a post-mortem analysis of the project to reflect on the positive and the negative issues related to the project. This paper summarizes and describes the results of this post-mortem analysis along with the students' experiences from performing a post-mortem analysis of a game development project. The results show that there are both positive and negative effects of teaching software architecture in the context of a game development project. Students found it motivating to learn about software architecture through game development, but some students found it hard to apply the theory when developing the game. Most students were very positive to learn about new game technology as a part of the course and it was very stimulating to create an actual product. The main complaints were shortage of time, that many found the evaluation of architecture (ATAM) worthless, and that the project demanded too much documentation. Most students commented positive on doing a post-mortem analysis as a part of a game development project.

[1]  André van der Hoek,et al.  SimSE: an educational simulation game for teaching the Software engineering process , 2004, ITiCSE '04.

[2]  David Murphy,et al.  JDoc: A Serious Game for Medical Learning , 2008, First International Conference on Advances in Computer-Human Interaction.

[3]  Raymond Scupin The KJ Method: A Technique for Analyzing Data Derived from Japanese Ethnology , 1997 .

[4]  André van der Hoek,et al.  Problems and Programmers: an educational software engineering card game , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[5]  Magnus Jahre,et al.  Experimental Validation of the Learning Effect for a Pedagogical Game on Computer Fundamentals , 2009, IEEE Transactions on Education.

[6]  Tor Ivar Eikaas,et al.  Game Play in Engineering Education— Concept and Experimental Results* , 2006 .

[7]  Alf Inge Wang,et al.  Extensive Evaluation of Using a Game Project in a Software Architecture Course , 2011, TOCE.

[8]  Reidar Conradi,et al.  Postmortem Reviews: Purpose and Approaches in Software Engineering , 2006 .

[9]  Amy McGovern,et al.  Creating significant learning experiences in introductory artificial intelligence , 2007, SIGCSE.

[10]  Luis von Ahn Games with a Purpose , 2006, Computer.

[11]  Fu-Shing Sun,et al.  Teaching Design Patterns Through Computer Game Development , 2008, JERC.

[12]  L. Natvig,et al.  "Age of computers"; an innovative combination of history and computer game elements for teaching computer fundamentals , 2004, 34th Annual Frontiers in Education, 2004. FIE 2004..

[13]  Mike Sharples,et al.  The design of personal mobile technologies for lifelong learning , 2000, Comput. Educ..

[14]  Ronald Lumia,et al.  NASREM: Robot Control System and Testbed , 1988 .

[15]  Torgeir Dingsøyr,et al.  Postmortem: Never Leave a Project without It , 2002, IEEE Softw..

[16]  Magy Seif El-Nasr,et al.  Learning through game modding , 2006, Comput. Entertain..

[17]  Rudy Darken,et al.  The Delta3D Open Source Game Engine , 2005, IEEE Computer Graphics and Applications.

[18]  Robert M. Keller,et al.  Fun and games: a new software engineering course , 2005, ITiCSE '05.

[19]  James O. Coplien Software design patterns: common questions and answers , 1998 .

[20]  Antonio Sánchez,et al.  A constructivist educational tool: software architecture for Web-based video games , 2003, Proceedings of the Fourth Mexican International Conference on Computer Science, 2003. ENC 2003..

[21]  Mark W. Maier,et al.  ANSI/IEEE 1471 and systems engineering , 2004 .

[22]  Ahmed BinSubaih,et al.  Using ATAM to Evaluate a Game-based Architecture , 2006 .

[23]  Kevin A. Schneider,et al.  Emotional Requirements , 2008, IEEE Software.

[24]  Rick Kazman,et al.  The architecture tradeoff analysis method , 1998, Proceedings. Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193).

[25]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[26]  W. Neville Holmes Digital Technology, Age, and Gaming , 2005, Computer.

[27]  Peter Drake,et al.  Developing a computer strategy game in an undergraduate course in software development using extreme programming , 2006 .

[28]  Bruce Gooch,et al.  The impact of game design on students' interest in CS , 2008, GDCSE.

[29]  Alf Inge Wang,et al.  Lecture quiz: a mobile game concept for lectures , 2007, ICSE 2007.

[30]  Dave Morris,et al.  Game Architecture and Design: A New Edition , 2003 .

[31]  Jonathan Barr,et al.  Nursing Training: 3D Game with Learning Objectives , 2008, First International Conference on Advances in Computer-Human Interaction.

[32]  Alf Inge Wang,et al.  Improving the effectiveness of root cause analysis in post mortem analysis: A controlled experiment , 2009, Inf. Softw. Technol..

[33]  Alf Inge Wang,et al.  An Evaluation of Using a Game Development Framework in Higher Education , 2009, 2009 22nd Conference on Software Engineering Education and Training.

[34]  Colin Flanagan,et al.  SUBSUMPTION ARCHITECTURE FOR THE CONTROL OF ROBOTS , 2000 .

[35]  Tor Stålhane,et al.  Using Post Mortem Analysis to Evaluate Software Architecture Student Projects , 2005, 18th Conference on Software Engineering Education & Training (CSEET'05).

[36]  Steve Rabin,et al.  Introduction to Game Development , 2005 .

[37]  R.G. Simmons,et al.  Concurrent planning and execution for autonomous robots , 1992, IEEE Control Systems.

[38]  Jonathan Blow,et al.  Game Development: Harder Than You Think , 2004, ACM Queue.

[39]  Ximena López,et al.  Beyond Nintendo: design and assessment of educational video games for first and second grade students , 2003, Comput. Educ..

[40]  Alf Inge Wang,et al.  An Application of a Game Development Framework in Higher Education , 2009, Int. J. Comput. Games Technol..

[41]  Frederico T. Fonseca,et al.  Teaching Object-Oriented Software Engineering through Problem-Based Learning in the Context of Game Design , 2008, 2008 21st Conference on Software Engineering Education and Training.

[42]  Viii Supervisor Sonar-Based Real-World Mapping and Navigation , 2001 .

[43]  Kajal T. Claypool,et al.  Teaching software engineering through game design , 2005, ITiCSE '05.

[44]  Alberto Elfes,et al.  Sonar-based real-world mapping and navigation , 1987, IEEE J. Robotics Autom..

[45]  Philippe Kruchten,et al.  The 4+1 View Model of Architecture , 1995, IEEE Softw..

[46]  Peter Comninos,et al.  The case for research in game engine architecture , 2008, Future Play.

[47]  Alf Inge Wang,et al.  An Evaluation of a Mobile Game Concept for Lectures , 2008, 2008 21st Conference on Software Engineering Education and Training.

[48]  Stephen A. Edwards The C Language , 2000 .

[49]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[50]  Daniel Volk,et al.  How to embed a game engineering course into a computer science curriculum , 2008, Future Play.

[51]  Sergio Caltagirone,et al.  Architecture for a massively multiplayer online role playing game engine , 2002 .

[52]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[53]  Jan Krikke Samurai Romanesque, J2ME, and the Battle for Mobile Cyberspace , 2003, IEEE Computer Graphics and Applications.

[54]  Steven A. Shafer,et al.  An architecture for sensor fusion in a mobile robot , 1986, Proceedings. 1986 IEEE International Conference on Robotics and Automation.