Scrum
With Schedules
How well can Scrum teams work
with customers who require schedules? It depends on the customer. If
the customer demands a schedule high level of detail over the course
of the project and will not tolerate variation from that demand, then
the Scrum team will be less effective.
Some of the Scrum practices,
such as the daily stand-up meetings to address impediments, and the
regular delivery of a working game, will still help. However the
team and product will not see some of the major benefits of Scrum.
These benefits include the improved productivity of teams who take a
level of ownership in their work and the improved dialog between the
team and customers on the emerging game.
One major benefit gained from
transitioning from deterministic schedules to iterative planning cycles
is that the customers assume more control over the schedule and budget
by manipulating the scope. This is done by continually prioritizing
the list of features that they want in the game (called the product
backlog) based on what value is emerging from the real game. The team
delivers these features on a regular basis.
If the customer decides
that the features built up are sufficient for the money spent or if
the fixed delivery date demands, then the team can move over to building
the production assets and completing the game. The benefit of this approach
is that features of less importance to the game are abandoned before
a great deal of effort is spent on them. This is in contrast to having
the schedule or budget force the decision to cut key features that might
be 90% complete.
Schedules often don't predict
many of the problems which slow down development and don't prioritize
the work based on value. Instead they try to optimize the resources
to work in parallel and define when everything will complete at the
same time. In reality, these parallel efforts rarely stay in pace with
one another and the cross-dependencies can slow the entire effort down.
This leads to team death marches and critical features being cut in
order to meet a delivery date.
Clinton Keith is the CTO for High Moon Studios, located in Carlsbad, CA.
Pure Iteration is
Nothing New
People refer to agile as a
"management fad", but nothing is new about the practices agile
wraps. Iterative and incremental development was the dominant way games
were developed early on.
Dave Theurer, the legendary
designer of Missile Command and Tempest, describes the
highly iterative process for making arcade games in the '80s and how
that changed:
"Pick an idea. Write up
a game proposal. Get it OK'd by management. Take a couple weeks to bring
up a playable simple version. Management reviews that and OKs it or
axes it. If OK'd, continue with the whole game. Regular reviews by management
to make sure still fun. Kill [the game] if not. Then field test and
focus groups. Read collection reports. If makes big bucks, you're in
there with a winner, and finish it up. Otherwise kill it or [make] big
changes and keep going. That was a big problem later on at Atari: they
forgot how to kill projects that weren't fun, and would let them go
on forever."
I experienced the iterative
planning cycle in the mid 90's working at Angel Studios, which was a
member of the Nintendo Ultra 64 Dream Team. Nintendo would discuss a
game idea with us and ask us to "find the fun". They'd give
us enough money to operate for three months and then come back at the
end of that time to see what we found (occasionally Miyamoto would visit).
Usually we discussed the results and the high level direction for the
next three months. Occasionally, if we couldn't "find the fun",
the game would be canceled and an entirely new game would be started.
|
Scrum may be ideal for web development company which releases versions of their web applications frequently. I can not imagine how should anyone produce a game which production lasts for 2 years and there are 50 people involved in the game making.
So far, I like the method. At first it felt like we were losing time to daily Scrum meetings and a sprint planning meeting every few weeks. But during the daily meetings, it very quickly becomes clear when a task is too large, a task is taking more time than expected, an individual has too much work (or isn't performing well for whatever reason), how much time outside projects take from our main project, etc. The daily meetings are also a good time to share knowledge and find out when there's a bottleneck in each task (interdependent tasks, waiting for a particular script function, waiting for art resources, etc). Just being able to look at a single board and see the state of the whole project, the tasks currently in progress, who is working on each task, your own place in the grand scheme, and several "next sprint" tasks if you finish early has been helpful.
problems. Its easier to use How-To guide to project management then creatively assessing the
situation, and intuitively building up your own methodology that best fits the team, studio and
project."
Scrum is not a how-to guide. It's a framework for "building your own methodology that best fits your team, studio and project".
Don't pass judgment on something you haven't tried.
We been using it here for a few years on AAA games. The overall game design, technical designs, and
rough schedule of tasks are completed up front...."
I am happy to hear that. To be honest i am tired of heavy-weight development technologies which can sometimes become so bureaucratic and impersonal. And on the other hand game development should be fun. I really wish that agile ones will find their place in the industry soon.
...
I would also like to know how the work is coordinated in different teams since you run sprints in teams only.
Anonymous from the first post :)
Now I know big studios whose using Agile method on starting AAA project and I'd really like to test it out on a large scale. It the only way to get your client involved in the choice of feature to be develop according to reality-certainty as opposed to uncertainty of long term planning.
I just wander how can Agile solve the problem of cascading projects and efficient resource assignments. I can picture a new project to be started with this methodology but what about the second one that's starting the very week after the first one when you have a team of over 50 people that you need to assign to something constructive?
Cheers,