In the mid-’90s, software developers were beginning to tire of conventional development methods that often were heavily regulated, regimented and micromanaged. Many began to design new approaches to circumvent these challenges.
In early 2001, representatives of various new software development methodologies, such as Scrum and pragmatic programming, came together at a ski resort in Utah and developed what they called the “Agile Manifesto.” The principles of the manifesto were listed as:
- Customer satisfaction by rapid, continuous delivery of useful software.
- Working software is delivered frequently — in weeks rather than months.
- Working software is the principal measure of progress.
- Even late changes in requirements are welcomed.
- Close, daily cooperation between businesspeople and developers.
- Co-location: Face-to-face conversation is the best form of communication.
- Projects are built around motivated individuals who should be trusted.
- Continuous attention to technical excellence and good design.
- Self-organizing teams.
- Regular adaptation to changing circumstances.
Out of this manifesto, the agile software development methodology was born.
At the time, Noel Llopis was a couple years into his career as a video-game programmer. When he arrived in 2002 at High Moon Studios — the developer of games “Darkwatch” and “The Bourne Conspiracy” — the company was in the midst of rolling out agile development among its workforce.
According to Llopis, this was “one of the things that was very different about my day-to-day work. It was something that we were just trying out at the company — actually they hired me there specifically because of it. I had some experience with that.”
The staff Llopis was working with at the time numbered more than 200, so to adapt a development methodology that encourages teamwork, self-organization and accountability was identified as a boon to the studio.
“One of the things about agile development is there’s even more communication with other peers or teammates than maybe in your more traditional cubicle, corporate environment,” Llopis said. “In that particular case, we had a lot of pair programming, so we had two people at one computer, both working together on the same thing.”
Another advantage of agile is that organizing small teams allows individuals to move around to different tasks as teams identify and articulate different needs.
“You would trade people,” Llopis said. “One day you would be working with somebody, and the next day you would be working with a different person. So that definitely made for a very different dynamic.”
There are numerous benefits to this approach. For one, it helps prevent burnout and reduce turnover, as developers are continually challenged with new tools and issues and are less likely to suffer fatigue from repetitive tasks. It also allows an organization’s workforce to continually evolve in its approach to a project and to recycle staff in a manner that encourages fresh thinking and new ideas.
Agile software development is not for everyone, though. Many software companies still adhere to traditional development methods. But according to Llopis, the strategy has become fairly universal in the world of game development.
“Not everybody’s doing it, but in one form or another, it’s very accepted in the games industry,” he said.
Daniel Margolis is a freelance writer living in Chicago. His work has been published in magazines, trade publications and Web sites nationwide, including XXL, Wax Poetics and AOL Digital City Chicago. He can be reached at editor (at) certmag (dot) com.