In a nutshell, Agile in game development means dividing the process of game creation into short iterations. Thus, instead of working on the whole project from the very beginning to the release, the development team works on small projects which are normally called features.
Divide and rule
Small volume of tasks which should be completed in a short period of time for each iteration allows the developers spend their time more effectively while project managers get the opportunity to control every little step in the process.
At the same time, iterations include all four project planning stages: Discover, Design, Develop, Test. This is also good for avoiding bugs which can be missed when testing only the final version of the game.
Read related article: Advantages And Risks Of Outsourcing A Game Startup
First Scrum, then rum
Agile methodology used in game development is mostly based on Scrum.
However, Scrum becomes most effective in post development. The point is to demonstrate that everything in a game function as it should. Normally, Scrum means working on bugs and enhancement submitted after testing, players’ feedback and product backlog. In order to achieve fast game improvements Scrum consists of sprints (two week periods for fixing issues and providing better gamers experience in the next versions or builds). Every sprint has a goal, and if a goal can’t be achievable in two weeks sprints may be prolonged to three or four weeks, but no longer.
Roles that rock
The Scrum team usually includes three roles.
- Controlling ROI, or profitability of the project
- Prioritizing tasks
- Updating features
- Approving work results
- Assigning tasks
- Shielding the team from any external interference
- Planning meetings
The Development Team (6-8 members)
- Choosing backlogs
- Changing workflows
- Searching for the best solutions
While using Agile for game development it is also important to rely on 4 pillars:
- Value people first
It is crucial to realize that every team member is more valuable than any tool or process. Especially when it comes to face-to-face discussions. At the same time, software cannot be replaced by experts, and vice versa.
- Make software work
Ensuring that all the features in a certain game or build work as expected is far more efficient than any comprehensive documentation. Creating a dedicated build server and branching the code and actual data are a couple of examples of how a Scrum team could provide solutions faster and better.
- Collaborate with customers
In a perfect world customers are always satisfied when they get the final version of the project. In reality this can be achieved only when a customer is deeply involved in a process of development from the very beginning. Misunderstanding and lack of communication lead to missing estimates and disappointed clients. Although Scrum provides the team with the freedom of choice, it doesn’t exclude meetings with the customers where not only Project Manager is present but also developers and QA engineers.
- Be ready to change the plan
Planning processes are crucial in game development. However, due to different circumstances, a customer may change the initial request and ask for switching to other tasks. When a development lasts for months or years such a kind of twist may seem pretty normal, just because new trends and technologies take place.
Agile in game development provides faster build and release delivering, budget cutting and team evolving. The methodology is pretty popular among both startups and big tech companies. Such studios as LucasArts, ZeeGee Games, and MeliorGames have a lot of success stories after implementing Agile and Scrum in their developing process.