Title: 04-THE DEVELOPMENT PROCESS ??????
104-THE DEVELOPMENTPROCESS??????
- ???,panml_at_mail.sysu.edu.cn
- ????????
Ref cornell
2SOFTWARE DEVELOPMENT
- Design process
- Decide what game you want to make
- Create a specification of your design
- Development process
- Implement your specification
- Verify results to make sure it works
- Release (yeah!)
3THE TRADITIONAL MODEL
- Document extensively design to specification
- Design and documents done before coding starts
- Development follows a specified project timeline
- A general software engineering model
- Often called the waterfall model
Pre-production
Release
Design
Implement
Test
4WATERFALL MODEL
Cannot start stage until previous step
finished! Previous output, the next step inputs
Pre-production
Design
Implement
Test
Release
5PROBLEM WITH WATERFALL MODEL
- Estimating development time
- Will never accurately estimate time required
- Development dates will slip release delayed
- Specification will change many times
- What if game is not fun in testing?
- Have to start all over again
- Waterfall developers lie about progress
6THE ITERATIVE MODEL
- Should be playing 20 into development!
- This requires prototypes (may be nondigital)
Design
Implement
Pre-production
Release
Test
7SCRUM AGILE DEVELOPMENT
- Iterative model is called agile development
- Standard model in games industry
- The most popular agile method is SCRUM
- Our approach will be SCRUM-lite
- Have many features in common with SCRUM
- But will drop elements not necessary for us
- If want more, take Software Engineering
8SCRUM SPRINT(??)
- Usually a 3-4 week cycle
- Sprints in this class are two weeks
- Work towards a testable deliverable
- Sprint Backlog features to implement
- Small subset of features for final release
- Some may be left over from previous sprint
- Re-evaluate at the end of every sprint
9SCRUM SPRINT
10ELEMENTS FOR PROCESS MANAGEMENT
- Process
- Activities
- Tasks and Relationship
- Time
- Milestones(accessible)
- Artifacts(deliverable)
- Resources
- Risks(controllable )
- Costs Incomes
- Work Breakdown Structure(WBS)
11WORK WITH MICROSOFT PROJECT
12MILESTONES
- Suggestions for your sprint backlog
- Designed to keep the course moving
- But flexible enough to handle set-backs
- Can renegotiate if you get seriously behind
- Classic Milestones
- Design drafts complete
- Code (Game Engine) Complete
- Content (Game Levels) Complete
- Zero Bugs
13MAJOR MILESTONES
- Conception Model
- Nondigital Prototype
- Gameplay Prototype(10?????,????)
- Technical Prototype
- Alpha (Code Complete) (12?)
- Beta (Feature Complete) (14-15?)
- Release (Balanced and Tested)
14DOCUMENTATION
- Major part of the development process
- Why course counts for technical writing
- Ensures group is always on same page
- At every point of development
- Pre-production concept document, gameplay
- Sprints reports, architectural specification,
wiki - Release manual, game website
15PRE-PRODUCTION CONCEPT DOCUMENT
- Describes the basic idea behind your game
- Start with a catchy, one-sentence description
- Convince the reader that your idea is good
- Communicate the core vision of the game
- Like pitching a game to a producer for funding
- Example
- Rocket Commander Whitepaper
- Template (Cornell)
16PRE-PRODUCTIONGAMEPLAY SPECIFICATION
- Thorough overview of your gameplay
- Includes formal elements
- Can also flesh out characters, setting
- Designed so someone can join team quickly
- In the industry, a 10-20 page document(But yours
will be closer to 5 pages) - May change as part of your sprints!
- Gameplay can always be altered
17DEVELOPMENT REPORTS
- Bi-weekly reports to tracking group progress
- Outlines the upcoming sprint backlog
- Who is going to work on what?
- Will also reflect on the previous two weeks
- Did you meet all the goals mentioned?
- You are not graded on progress!
- Used to give you guidance if stuck(?????????)
- Responsibility of the Project Leader
18DEVELOPMENTARCHITECTURAL SPECIFICATION
- Outline of your software organization
- Could just be an API of interfaces/stubs
- Advanced groups may use some UML
- To distribute tasks to individual programmers
- Right form depends on the project
- Will talk about later in class
- Responsibility of the Lead Programmer (Software
Architect ???)
19DEVELOPMENT GAME WIKI
- Contains everything about your game
- Details on characters, objects, weapons, enemies
- Complete details on game mechanics
- Complete details on all levels, and all game
modes - Complete details on the interface
- Complete details on the setting and backstory.
- Update constantly, as game changes constantly
- Responsibility of everyone
- May Be Organized as Chapter 14 of Fullerton
- ????(http//www.baihui.com)
20RELEASE MARKETING MATERIAL
- Will create a game webpage
- Entice people to download your game
- Concise description of gameplay
- Supplemental media screenshots, video
- Will also create a game manual
- Instructions on how to play the game
- Story, other material to improve the setting
21Development Process Review
Design
Implement
Pre-production
Release
Test
22DEVELOPMENT PROCESS REVIEW
- Pre-production to create initial game design
- Concept document to pitch idea
- Gameplay specification for complete vision
- Sprints develop the game iteratively
- Playable deliverable every two weeks
- Reports to track progress and manage backlog
- Wiki to keep track of major changes in game
design - Architectural specification for programming tasks
- Release game with marketing material