Agile methodologies are well known among the web industry. They are designed to handle unpredictability of building software, especially in fast-changing environment. They could fit very well with the development of a CG studio pipeline. Nevertheless few actually apply them and instead, prefer to respond to the continuous flow of unexpected needs on a day-to-day basis. This occurs because the stress is very high and what is built during a production is not easily reusable.
On the opposite side, sometimes studios want to build big projects from scratch that cover all aspects of a CG pipeline. It takes years of development, and most of the time leads to many frustration to finally never ship.
Essence of Agile methodologies
So why use agile methodologies while developing your pipeline? Agile is well fitted to make you more comfortable with unpredictable environments and it manages the chaos well.
The first thing to take in consideration is that to ensure a project success, the most crucial part is communication. Every one needs to always be on the same page. That’s what agile does. The main idea behind it, is to keep everyone on track by ensuring that all shareholders communicate properly through regular rituals.
Agile is aimed at being adapted for your team. What works for a studio or company may not work for you. No matter what you start with, it’s better to begin from the two most widely used frameworks: SCRUM and Kanban. Then we encourage you to remove, modify or add rituals to make it fit better with your culture.
Kanban is well suited for maintenance and it can be utilized to deal with your daily CG studios need. It is simple, everyone follows the same board made of post-it columns. The left column is continuously alimented by demands. Each column represent a step of the build process (code, test, validation for instance). You show progress on a task by moving the related post-it in the column describing the task status. And it comes with one simple rule: you are not allowed to have more than x cards at the same step. So, you stop everything when there is bottleneck in a column until it is removed.
From time to time meetings are organized to discuss the current state of development and to see what could be improved.
Overall, the goal is to make sure that everyone knows what’s happening and nothing get stuck waiting for something. It is great for usage on a daily basis but it does make it harder to envision the long term.
SCRUM is better for mid-long term developments. It makes sure that everyone agree on the priority and includes regular demonstration of the progress. Every thing follows the rythm of the sprints. What will be done is decided at the beginning of a sprint and doesn’t change until the next sprint.
Precise roles are given to each member of the team: product owner (handles priorities and functional requirements), developer (build the product) and scrum masters (make sure that the agile methodology is well understood and properly applied).
You can roughly determine what will be achieved during upcoming sprints. That way you can build a roadmap that can be communicated to all departments and to the top management.
SCRUM is great for to keep people focused and motivated. It’s good to report to your hierarchy too but it’s not really designed to deal with emergency.
Agile means adaptive. So it’s no surprise it could be used in a production environment too. At CGWire, we highly recommend you to apply them to build your pipeline and production tools. It will make every department interaction much more fluid.
Once agile is accepted by everyone, the biggest challenge you will face will be to apply rigorously the rituals. You will notice that it’s very easy to dismiss them (non-tech people tend to always find a good reason to not be there). But they are the backbone of the methodology, once your meeting are not planned every time on the same schedule, things will fall apart and you will be back to your day-to-day organization. So be tough with rituals.
As a take away, this is our advice to you: start from Kanban method for the running needs and the SCRUM method for more reusable development. Adapt them to your culture and your schedule. Once you are comfortable
with it, be very strict and be disciplined. Making a movie is hard, building software is hard, if you want to be above the competition, you can’t afford approximation.
This blog is dedicated to CG pipeline and production management. Interested in software strategy and animation movies? You will probably enjoy all our articles. We have a forum too where you can discuss about your own problems/solutions and learn from others.