So let’s get one thing straight from the start: scrum is not a panacea for all known development ills. It doesn’t even come close, but it is currently a hot topic in the games industry. It’s a relatively new way of structuring and running software developments projects using iterative, incremental practices.
At Juice Games we have recently adopted this way of working and among many of the benefits we have found it to be a great way for new entrants to the industry to have a much higher degree of involvement in shaping the production of game than was previously possible.
So what exactly is scrum? Named after a set play in rugby where a group of eight players work together to move the ball up field, it’s a project management framework which is part of the school of agile project management methodologies. There is a manifesto for agile software development, available to view at agilemanifesto.org, on which all agile methodologies are based, including scrum. This manifesto contains four main rules: to place more value on people over processes; working software over comprehensive documentation; customer collaboration over contract negotiation; and responding to changes over following a plan.
The idea of scrum in simple terms is that a large development team is split into smaller cross-disciplinary teams, with each of these teams working in cycles of up to 30 days, each time creating a working slice of the game.
These teams consist of between five to nine people and contain a cross-section of talent such as artists, programmers, designers and QA testers. It’s very important that each team is an independent unit, capable of creating game features without relying on people from outside of the team.
At the start of each 30 day cycle (know as a sprint) each scrum team chooses to tackle as many high priority game features as they feel they can deliver to a high quality within the given sprint length. The team is empowered to implement each agreed feature in the way they see fit.
The key point to note is that the scope of the work is a result of a well-defined, detailed negotiation between all members of the team. So as a member of a Scrum team your opinion is sought on the implementation of every feature. The work is decided upon by each team member voting on an estimate on the complexity of delivering each feature.
Every team member is involved in this estimation process. If some people in the team don’t fully understand the issues around developing these features, these issues are discussed further which helps promotes better knowledge sharing. The simple fact that the amount of features is agreed on by the team member also goes a long way to reducing or even eliminating any crunch periods. Once the list of features a team will be delivering is agreed on, no one is allowed to alter the scope of the work during the sprint and therefore dangerous feature creep is eliminated.
At the end of each sprint, the team delivers the product and demonstrates the implemented features. At this stage, the requirements of the project can change. For example if one feature turned out to be amazingly fun, more emphasis could be placed on it than originally envisaged. Conversely if a feature doesn’t live up to expectations it could be reduced or even completely removed.
It’s an enormously powerful tool in game production to be able to test and evaluate gameplay at a much earlier stage in the development cycle and to be not afraid to make changes where required. Having a system that allows and in fact positively encourages feedback is invaluable.
In our experience we have found scrum to have excellent benefits as a mechanism for training and empowering new entrants to the industry. With such large teams required for next-gen console development, with more traditional methods it can sometimes be difficult for a junior staff member to feel they are making an impact or understand how the work they are doing affects the title as a whole.
Working within a much smaller, closely knitted team that is highly empowered, a new entrant will be a lot more involved in important decisions from day one. As people work in a small team with people from different disciplines, each team member will gain a much better understanding of the overall development process as well. For example, programmers will obtain a better understanding of how artists work and vice versa.
Scrum also encourages a better support structure when compared to alternate development methodologies. There is a shift in emphasis away from focusing on an individual’s performance to focusing more on the team’s performance as a whole. Teams pass or fail sprints together, so if an individual hits a problem it’s in every team members interest to ensure they have done everything they can do to help resolve the issue.
Scrum and other agile methodologies are changing for the better the way people in the games industry work. There is a greater emphasis on knowledge sharing and in ensuring every member of a team has an understanding of how their work fits into the context of the project as a whole. Not only will new entrants to the industry find they have a greater involvement in shaping the production of a game but they will also learn and progress much quicker than in more traditional development environments.
If you are a graduate looking to break into the industry, you could do worse than hit the ground running by looking at www.controlchaos.com