There is a great article in this week’s Fast Company newsletter about the creative process at Pixar. Pixar co-founder Ed Catmull talks about the creative process at Pixar as “going from suck to nonsuck”.
What is he talking about? As we’ve said before, a lot of lessons can be learned from the motion picture industry. This one is all about iteration. It’s about taking a concept and constantly revisiting, tweaking, changing, rewriting, and molding it. It’s about bouncing the ideas off of each other until the story begins to gel. Storyboards become animatics which become low fidelity animation which ultimately produces a movie.
Pixar doesn’t start with a script. But that is exactly what is done with a traditional software development. In a waterfall-type approach, once a high-level concept has been approved, stakeholders begin to write the script of their software project – features, needs, and wants. Sometime later “the script” (requirements document) is produced with the expectation that all stakeholders will thoroughly read and comprehend it. There will be some iterations of this document, but the clarity of what stakeholders are going to get is lacking. Some wireframes or perhaps a prototype might be created. More iterations for sure, but they’re later in the process after “the script” is traditionally “locked down”.
Once stakeholders actually get to see what their software is starting to look like, here come the real iterations. But now there is a costly impact to the project in the form of change management requests. Further on down the line they’ll get to fully experience it in QA or UAT. How many projects make it out of QA or UAT without substantial changes or compromises?
And let’s be real – while an agile approach can significantly increase the speed at which the project can move, it rarely avoids the same problems when it comes to requirements definition.
But with an approach that utilizes visualization techniques, stakeholders will get to see and experience their software as they’re defining it. Stakeholders and project owners can easily and rapidly iterate their software without costly development time and resources.
Instead of starting with the script, during aprevisualization we begin to iterate the story of the project. The boundaries of a project can be effectively explored. Concepts can be rapidly visualized to garner real-time feedback. Visualizations are low-fidelity but are still fully interactive. Features can be visualized, modified and re-visualized in minutes. Business process can be explored several times to find the optimal flow. Once people can experience the desired features of their software, they can be more effectively evaluated, changed, and even eliminated. Just as in the case of Pixar, we’re not afraid to make mistakes and fix them. Do this during the requirements phase when the cost is minimal instead of during development where it costs 100 times more.
Once all the stakeholders have achieved common vision for the project, it’s time to move into visualization. Visualization iterates the low-fidelity previsualization to great detail. We discuss and define the fine details of the software. User-centered design is applied to everything – flows, screen design, user interactions, etc. Software features are defined in granular detail. We may explore dozens of different iterations for each feature to make sure it fits the requirement, the business need, and the user. If it’s a consumer-facing application we’re working on, we’ll get the visualization in front of actual users to get their feedback. Could you imagine handing a requirements document to an end-user and asking for feedback?
Once the software has been fully visualized and approved by stakeholders, we can begin to “write the script” in the form of final requirements documentation. While documentation has been occurring during the entire previsualization and visualization phases, it’s done at a level which is very adaptable and fluid. At this phase we make sure all requirements, features, business rules, etc. are fully documented so that the development team has as much information as possible. Because we have successfully explored and iterated during previsualization and visualization, requirements are as close to final as they can be. Everyone is in sync – stakeholders know exactly what they’re going to get, development knows exactly what to build, etc.
Pixar is one of the most celebrated and successful motion picture companies in history. Their movies are always fantastic. Iteration is one of the keys to their success. Make sure you’re exploring the boundaries and iterating features of your projects early in the process. You’ll have happier users, lower costs, faster speed to market, and an overall exceptional product.