ICSE 2011 Workshops
33rd International Conference on Software Engineering
Powered by
Conference Publishing Consulting

Workshop on Games and Software Engineering (GAS 2011), May 22, 2011, Waikiki, Honolulu, HI, USA

GAS 2011 – Proceedings

Contents - Abstracts - Authors

Workshop on Games and Software Engineering (GAS 2011)

Preface

Title Page


Foreword


Observations on Games and Software Engineering

The Whats and the Whys of Games and Software Engineering
Chris Lewis and Jim Whitehead
(UC Santa Cruz, USA)
The intersection of video games and software engineering is not yet well understood. This paper highlights the varied and exciting opportunities available at the intersection of these two disciplines. We investigate four main areas: the development of games, how they are designed, how middleware supports the creative process and how games are tested. We hope that it inspires readers to take on the challenges available in games and software engineering, and join together to create a vibrant community.

Modding as a Basis for Developing Game Systems
Walt Scacchi
(UC Irvine, USA)
This paper seeks to briefly examine what is known so far about game mods and modding practices. Game modding has become a leading method for developing games by customizing extensions to game software. The research method in this study is observational and qualitative, so as to highlight current practices and issues that can be associated with software engineering foundations. Numerous examples of different game mods and modding practices are identified throughout.

Games and Software Engineering Education

Software Engineering Senior Design Course: Experiences with Agile Game Development in a Capstone Project
Tucker Smith, Kendra M. L. Cooper, and C. Shaun Longstreet
(The University of Texas at Dallas, USA)
The importance of capstone senior design project courses is widely recognized for undergraduate software engineering curricula. They provide students with an opportunity to integrate and apply theoretical knowledge (both from previous courses and newly acquired for the project) on a team, improving both their technical and soft-skills. Here, we report our experiences using an agile development method for a game project; this is a radical shift from our previous course offerings that were based on waterfall, model driven development. This report is unique and valuable, especially for software engineering education, which goes beyond the discipline-specific limits of computer science curricula.

The Benefits and Challenges of Using Educational Game Projects in an Undergraduate Software Engineering Course
Stephanie Ludi
(Rochester Institute of Technology, USA)
Devising team projects for an introductory software engineering course can be a challenge for educators. A balance between an engaging project that is complex enough for the team to complete in the timeframe of the course is required. This paper describes the experiences of using an educational game as the team project in a 10-week introductory software engineering course for second-year undergraduates. The motivation for the project and the project itself will be presented. Benefits of using a game project existing, but the challenges of using a game project were perceived to be high by some instructors. The reflection of the experience is meant to help other instructors to find the right fit for a game project in their introductory course.

Verified Gaming
Joseph R. Kiniry and Daniel M. Zimmerman
(IT University of Copenhagen, Denmark; University of Washington at Tacoma, USA)
In recent years, several Grand Challenges (GCs) of computing have been identified and expounded upon by various professional organizations in the U.S. and England. These GCs are typically very difficult problems that will take many hundreds, or perhaps thousands, of man-years to solve. Researchers involved in identifying these problems are not going to solve them. That task will fall to our students, and our students' students. Unfortunately for GC6, the Grand Challenge focusing on Dependable Systems Evolution, interest in formal methods--both by students and within computer science faculties--falls every year and any mention of mathematics in the classroom seems to frighten students away. So the question is: How do we attract new students in computing to the area of dependable software systems?
Over the past several years at three universities we have experimented with the use of computer games as a target domain for software engineering project courses that focus on reliable systems engineering. This position paper summarizes our experiences in incorporating rigorous software engineering into courses with computer game projects.

Exploring Game Architecture Best-Practices with Classic Space Invaders
Ed Keenan and Adam Steele
(DePaul University, USA)
The classic arcade game Space Invaders provides an ideal environment for students to learn about best practices in game software architectures. We discuss the challenges of creating a good game architecture, and show how our problem space is an ideal environment in which to experiment with the challenges and tradeoffs inherent in any software design. We discuss in detail how each student created and engineered their game using good architectural design principles in general and gang-of-four design patterns in particular.

Techniques for Software Engineering of Games

Toward High-Level Reuse of Statechart-based AI in Computer Games
Christopher Dragert, Jörg Kienzle, and Clark Verbrugge
(McGill University, Canada)
Designing an interesting AI for a computer game is a complex undertaking, providing motivation to reuse portions of successful AIs. Here we advocate a layered Statechart-based AI as a modular approach that simplifies reuse. We analyze Statechart interactions and communications with respect to AI design, and propose an interface for Statechart-based AI-modules that summarizes interactions.
Reuse is accomplished by adding and removing modules to a new AI, largely enabled through event-renaming to ensure coherence with the interfaces. We describe an approach to module composition using functional groups, which allow for the encapsulation of high level behaviours (e.g., fleeing or exploring). This enables a designer to compose new AIs by assigning high-level behaviours. Additionally, the interface describes interactions with the game at-large, leading naturally to portability between games and even implementation languages. Finally, we look ahead to the requirements for a tool that would implement these ideas.

HALO (Highly Addictive, sociaLly Optimized) Software Engineering
Swapneel Sheth, Jonathan Bell, and Gail Kaiser
(Columbia University, USA)
In recent years, computer games have become increasingly social and collaborative in nature. Massively multiplayer online games, in which a large number of players collaborate with each other to achieve common goals in the game, have become extremely pervasive. By working together towards a common goal, players become more engrossed in the game. In everyday work environments, this sort of engagement would be beneficial, and is often sought out. We propose an approach to software engineering called HALO that builds upon the properties found in popular games, by turning work into a game environment. Our proposed approach can be viewed as a model for a family of prospective games that would support the software development process. Utilizing operant conditioning and flow theory, we create an immersive software development environment conducive to increased productivity. We describe the mechanics of HALO and how it could fit into typical software engineering processes.

The Architectural Challenges of Adding Accessibility Features to ALICE as a Case Study of Maintenance in Educational Software
Stephanie Ludi, George Adams, IV., Bradley Blankenship, and Michel Dapiran
(Rochester Institute of Technology, USA)
Games take many forms, including educational environments. Alice is an example of an engaging environment that teaches object-oriented programming through the development of animations. The AliceVI project sought to extent Alice to visually impaired users. This paper describes how the architectural of Alice impacted the ability to add accessibility features. The result has been to start a system, named BridgIT, from scratch. The technology and proposed architecture is discussed for the new system, which takes the tenets of Alice to a new group of users.

Games and the Physical World

GameChanger: A Middleware for Social Exergames
Jamie Payton, Evie Powell, Andrea Nickel, Katelyn Doran, and Tiffany Barnes
(University of North Carolina at Charlotte, USA)
While the health benefits of exercise are wide-ranging and well-known, the population of the United States is suffering from a lack of physical activity. We believe that combining elements of social interaction with exercise in video games will lead to increased and sustained engagement in physical activity. In this paper, we present an initial design of GameChanger, a middleware to support the development of a new generation of social exergames that interweave physical activity as a core game mechanic with social elements such as competition and collaboration. The GameChanger middleware provides programming abstractions that are specific to social exergame mechanics, elevating their description so that even non-expert programmers can create interesting social exergames that utilize mobile phones and sensing technology to integrate physical activity into gameplay. In addition, the middleware provides constructs for performing continuous assessment of physical activity during gameplay; these constructs can be used to provide feedback to the gameplayer or to collect datasets for evaluation by health researchers. As such, the GameChanger middleware can also serve as a platform to support scientific experimentation and exploration to determine which combinations of social and physical elements have the greatest impact on physical activity.

Interoperability Standards for Pervasive Games
Chris Branton, Doris Carver, and Brygg Ullmer
(Louisiana State University, USA)
Pervasive games combine the real and virtual worlds to provide a more social and physical experience than traditional video games. Pervasive games can introduce significant new requirements for robustness and interoperability, and may encourage game developers to better align their practices with trends in other domains. In addition to new languages and middleware, developing and adopting standards for interoperability could benefit both developers and users of pervasive games, and facilitate the growth of the genre.

Serious Game Development as an Iterative User-Centered Agile Software Project
Hazeline Asuncion, David Socha, Kelvin Sung, Scott Berfield, and Wanda Gregory
(University of Washington at Bothell, USA)
Commissioned by the campus Office of Admissions, we have built a series of three campus tour and orientation games over the past academic year with undergraduate student project teams. Based on well-established game industry practices we followed an iterative agile process with Scrum and managed to avoid many classical pitfalls in game development. While we achieved some measure of success, in post-project analysis, it becomes obvious that our process would have benefited from the heavy emphasis of “users” in the User-Centered Design (UCD) methods. In this position paper, we propose that the serious game development community continue to critically analyze the results from the UCD projects to benefit from its lessons, well-understood good practices, and development paradigms.

Towards Democratizing Computer Science Education through Social Game Design
Navid Ahmadi, Mehdi Jazayeri, and Alexander Repenning
(University of Lugano, Switzerland; University of Colorado, USA)
Computer science and software engineering education are limited to formal courses that are being taught in the school. Those who do not have access to the educational courses miss the learning context, even if educational tools are accessible for free. Computer game design has been employed as an engaging medium for practicing software engineering and computer programming skills. However, collaborative work is not supported by educational game design environments and peer learning is limited to face-to-face communication in the classroom. In this paper, we suggest democratizing computer science education by incorporating social learning into the educational game design using existing Web 2.0 mechanisms. Consequently, online users will benefit from situated learning in the game design activities that take place in their social networking space. We present AgentWeb, a Web-based game design environment as the steppingstone to enable social game design activities, and explore the challenges in fostering social learning in online game design practices.

Software Engineering Challenges of Multi-player Outdoor Smartphone Games
Robert J. Hall
(AT&T Labs Research, USA)
Physical inactivity and social isolation are the demons of computer gaming. To combat these and similar problems, my goal is to create attractive game experiences that require play outdoors, encourage multi-player interaction, and incorporate vigorous physical activity inherently. However, play outdoors in large scale naturalistic environments, using only the equipment (e.g., smartphones) people normally carry with them in the world, brings new challenges to game design. Gone is the central server that coordinates all activities and manages evolution of the game state; gone is perfect communication among all players at all times; and gone are specialized sensors and controllers purpose built for games. This paper lays out the motivation for this style of gaming, as well as the challenges we face in engineering them, from requirements capture through design, coding, and validation. Finally, I summarize first steps that have already been taken and hint at future directions.

proc time: 0.03