Clinton Keith CTO, High Moon Studios Agile Methodology in Game Development: Year 3.
-
Upload
kristina-jones -
Category
Documents
-
view
219 -
download
0
Transcript of Clinton Keith CTO, High Moon Studios Agile Methodology in Game Development: Year 3.
What We’ll Talk About: o Why use Agile?o Background on “Agile Methodology” at HMS and in
generalo Overview of “Scrum”o Agile Planningo We’ll touch on eXtreme Programmingo The results of using Agile at High Moon
o Application to game developmento What were the lessons/benefitso Where to go for more info?
o Q&A
This is about what we experienced, not the “Right Way” to make games
Why Adopt Agile?
To find the fun first!Especially in Pre-Production
Reduce wasted effortEspecially in Production
History of Agile at High Moono Used Scrum in last year of
Darkwatcho Helped keep the project on track
o Have adopted XP and Agile planning practices on new projects over the last year
Simple
Complicated
Anarchy
Complex
Close toCertainty
Far fromCertainty
Technology
Close toAgreement
Far fromAgreement
Req
uire
men
ts
Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.
Wasted Effort Can Come From “Noise”…and it influences what processes we use
Preproduction - Agile
Production - Lean
What is Agile Development?The Agile Manifesto:
o Individuals and interactions over processes and tools;
o Working software over comprehensive documentation;
o Customer collaboration over contract negotiation;
o Responding to change over following a plan;
Origins of Scrum
o “The New New Product Development Game” in Harvard Business Review, 1986.o Studied companies that were able to
rapidly develop successful productso Borrows the term from Rugby in which
the ball gets moved up field by the entire team.
o Adopted for Software Development and used since mid 90’s
Gfx
Overview
Camera
NPC
30 day cycle
Prioritized Game Features
Tasks
New version of the game
DailyMeeting
(Product Backlog)
(Sprint)
(Scrum)
Review and Planning
Product Backlog
30 day
Sprint
24 hours
Product BacklogAs prioritized by Product Owner
Sprint Backlog
Backlog tasksexpandedby team
Potentially ShippableProduct Increment
Daily ScrumMeeting
Estimated for planning
Broken down into stories that can fit in a sprint
Sprint Backlog
Sprint
Product Backlog
Sprint Goals
Sprint Backlog broken out by
team
New Game(Vertical Slice)
Sprint Review and Planning
Sprint
Product Backlog
Sprint Goals
Sprint Backlog broken out by
team
New Game(Vertical Slice)
Review and Planning
Daily Scrum24 hours
Product BacklogAs prioritized by Product Owner
Sprint Backlog
NewGame
Daily ScrumMeeting
Sprint Backlog broken out by
team
30 day Sprint
0
10
20
30
40
50
Mon Tues Weds Thurs
8
16
8
Mon.
8
Tues.
8
16
10
0
Wed.
0Write widget tester
4Test middle tier
4Create widget asset
0Code the widget
Thurs.Task
3
16
16
Sprint Backlog Burndown Chart
0
100
200
300
400
500
600
700
800
Dropped Story
Slope = Velocity
Drag works against velocity
Agile Planningo You can’t plan away uncertainty
o You have to execute to reduce uncertaintyo Planning is spread out over the entire
projecto Shifts the emphasis from “the plan” to
planningo Shifts from “completion of activities” to
“delivery of features”o Creates plans that are easily changed &
encourage changeo Plans are focused on releases of the
game. Works well for pre-production. Production should be predictable.
XP Builds on Good Practices
TDD
ProgrammingPair
Refactoring
Unit Testing
Automated Build and Test
Source Control
Continuous Integration
Lessons LearnedGetting Started
o Start smallo One Scrum team doing a prototype would be ideal
o Do what the book says from the starto Company dysfunctions can creep in otherwiseo …but Scrum is meant to be modified (eventually)
o Agile planning is harder to start than thoughto But XP was easier
o Coaching was criticalo Onsite and CSM
o Publisher buy-in wasn’t difficulto Get them into reviews and planning
Lessons Learned…
Overtime value is limited but intensity is raised
Week 1 Week 2 Week 3 Week 4 Week 5
Old Habits Die Hard• Over-design• Delayed integration• Seating by discipline• Command and control
Testing needs to be pushed
Waterfall Project End
Waterfall Project Start
Iterations
Normal Velocity Overtime Velocity
Benefitso Improved…
o Productivityo Reliability of buildo Quality of gameo Morale
o Ownershipo Team worko Communication
o Enables low-cost executive awarenesso Which means you don’t have to
work hard to find out what’s going on
Where to go for more info?
o www.agilegamedevelopment.como Bookso Mailing listso AGD Blog