Computer games represent a significant software application domain for innovative research in software engineering techniques and technologies. Game developers, whether focusing on entertainment-market opportunities or game-based applications in non-entertainment domains, thus share a common interest with software engineers and developers on how to best engineer game software.
Featuring contributions from leading experts in software engineering, the book provides a comprehensive introduction to computer game software development that includes its history as well as emerging research on the interaction between these two traditionally distinct fields.
An ideal reference for software engineers, developers, and researchers, this book explores game programming and development from a software engineering perspective. It introduces the latest research in computer game software engineering (CGSE) and covers topics such as HALO (Highly Addictive, sociaLly Optimized) software engineering, multi-player outdoor smartphone games, gamifying sports software, and artificial intelligence in games.
The book explores the use of games in software engineering education extensively. It also covers game software requirements engineering, game software architecture and design approaches, game software testing and usability assessment, game development frameworks and reusability techniques, and game scalability infrastructure, including support for mobile devices and web-based services.
Table of Contents
Overview and Introduction to Games and Software Engineering. The What’s and Why’s of Games and Software Engineering. Modding as a Basis for Developing Game Systems. HALO (Highly Addictive, sociaLly Optimized) Software Engineering. Software Engineering Challenges of Multi-Player Outdoor Smartphone Games. Applying Software Product Lines to Multiplatform Video Games. User Requirements for Gamifying Sports Software. A DSL for Describing the Artificial Intelligence in Real-Time Video Games. Reusable Components for Artificial Intelligence in Computer Games. Adaptive Serious Game Development. Democratizing Computer Science Education through Social Game Design. Creation of a Game-Based Digital Layer for Increased Museum Engagement among Digital Natives. Competitive Game Development: Software Engineering as a Team Sport. Software Process Modeling for an Educational Software Engineering Simulation Game. Educational Software Engineering: Where Software Engineering, Education, and Gaming Meet. Software Engineering Senior Design Course: Experiences with Agile Game Development in a Capstone Project. Model-Driven Game Engineering for Serious Educational Games: Tailored-Use Cases for Game Requirements. Serious Game Development as an Iterative User-Centered Agile Software Project. Game Development Frameworks for Software Engineering Education. Extensive Evaluation of Using a Game Project in a Software Architecture Course. Multi-Site Evaluation of SimSE.
Kendra M. L. Cooper, Walt Scacchi