June 18, 2006
June 18, 2006
June 21, 2006
Software Engineering Constituent Committee
11.660.1 - 11.660.10
Game Development is More Than Programming
Game development generates a great deal of excitement among undergraduate computing students. Many students are disappointed to find that they will not learn how to build computer games in their required computing courses. The author created a two-semester sequence of courses focusing on the application of software engineering principles to the design and implementation of computer games. These courses build on the material covered in the first course on software engineering taken by junior level students. This paper summarizes the content of these courses and the author’s experiences in teaching game design during the past six years.
The annual revenue generated from the sales of computer games in the United States alone exceeds $7 billion dollars. Statistics indicate that the revenue generated by the computer game industry will continue to exceed that of the motion picture industry.7 Computer game development is big business.
The development of computer games is labor-intensive. Today, game developers rarely build computer games on their own, as they did 15 years ago. Many best-selling computer games contain thousands of lines of code and have multi-million dollar development budgets. Modern game development requires the effort of a team of skilled professionals to integrate multimedia content and complex computer software. Game development projects have a reputation for late delivery times and cost over runs. In December 2005, consumers observed hardware failures in the first Xbox 360 consoles delivered to consumers and the recall of a popular Nintendo Game Cube software product. The minimum costs incurred by a failed game development project ranges between $150,000 and $750,000.13 Producing high-quality software products by large teams requires high levels of communication, organization, and planning to avoid costly delays and failures.
Game developers are beginning to understand that it is important to treat computer game design in the same way that other software engineers approach projects involving a large number of people and a significant investment of time.13 Game developers are likely to benefit from using evolutionary software process models to mange their development risks and reduce their project completion times. The process of determining the technical requirements for a game software product is similar to that used to specify any other type of software product. However, unlike most software products, games have an entertainment dimension. People play computer games because games are fun.8
The International Game Developers Association (IGDA) proposed a curriculum framework for university level training in game development.5 The core topic areas from the IGDA recommendations appear in Table 1. Many of these topics involve the application of skills taught in software engineering courses.
Maxim, B. (2006, June), Game Development Is More Than Programming Paper presented at 2006 Annual Conference & Exposition, Chicago, Illinois. 10.18260/1-2--452
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2006 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015