Having tackled multiple projects classes at DigiPen, I've had to adapt my teams towards the different methodologies that worked best for any team at any given time. This has given me a strong sense in Waterfall, Agile, Hybrid, and other methodologies, taking tools with me to other teams along the way. I’ve given talk on these methodologies amongst other producers at my school, incorporating lessons learned and other tools which can help improve teams later.
I utilized the Waterfall methodology in my first full game project class, given a semester (4 months) to develop a small game using nothing but the FMOD sound library and a wrapper for DirectX. The strengths I see in the Waterfall model are its long-term goals or "finalized vision" of the product, as well as the critical path to success, and what falls out of scope from that path. This helped us see our finalized goal months in advance, although with limited accuracy as we saw the project develop, but we succeeded in bringing our vision to completion at every milestone thanks to constant analysis of our tasks using Microsoft Project.
- Well-defined goal
- A "critical path" for risk and scope assessment
- Ability to meet rigid milestones due to long-term planning
Agile / SCRUM
I used the Agile methodology on my second school game team and project, which was a yearlong semester project. As both the producer and designer on E.A.T., I found a great deal of strength in the ability to iterate constantly throughout the semester, leading me to playtest our game regularly at the school and record the information I saw from my players. Every day would consist of a final SCRUM session where we would recap our progress thus far throughout the day, but focusing on a speedy summary so that time wasn't wasted. Additionally, I was glad to be part of and see lots of peer programming and code review amongst my teammates, even extending to another neighboring team who was working on a separate game team at the time. This relationship extended after our team disbanded at the end of the semester, where I currently sit next to this team and enjoy bringing our teams together with a traditional Top Pot Donut Tuesday. However, by the end of the semester with this methodology I found myself time crunched for ensuring we could meet the expectations of the class, resulting in some scope cuts for the sake of the survival of the project. I utilized the online web service Trello to act as our SCRUM board and task management system.
- Iteration-focused development and lots of testing
- A focus on improvement
- Dividing tasks into time boxed sequences (sprints) and visualizing slices of our game
Because of the nature of DigiPen's course sequence and finite milestones / deadlines, I've found it appropriate to combine the strict scope of Waterfall Development with the iterative design and focus on adaptability of Agile Development. This has led to much success in my game projects, which are given a very finite set of certification requirements to be met by the end of the semester, but still wholly depends on us being able to adapt our game design to player feedback. On every team since my freshman year, I've resolved to utilize different Agile methods, such as Standups, Sprints (anywhere from week-long to month-long), Living Documentation in the form of Wikis, Consistent Player Focus, and even Kanban Development Patterns. Although each team is different, this has led to a strong toolkit where I can mix and match a variety of tools, such as Hansoft, Microsoft Project, JIRA & Confluence, Trello, or even services more simplistic like Google Spreadsheet to suit the needs of my team.
- Finite goals with realistic means of achievement
- Strong pillars or goals of gameplay and development
- Long-term vision actualized through direction
- Continuous iteration and testing
- Content creators are enabled through strong tools and bug testing