Have you ever wondered how beautiful design comps transition into functional web pages? Or what mStoner Technical Leads use to configure and customize a content management system (CMS)?
Two words: Functional Specification.
We borrow from software development methodology for much of our project management framework. Our approach is definitely “waterfall”—meaning we approach the project in a serial fashion: strategy then design then technical implementation. Our Functional Specification is essentially the detailed requirements specification—it spells out exactly how the website functions for the site visitor, and how the content editors will interact with the CMS to make it so. We flesh this out for each template in the creative design template suite, and we do it in detail.
It’s detailed, but it’s not technical. We strive to avoid technical jargon, references to the specific CMS in question and any description of how the web developer will approach the implementation. The key is to describe what the site will do, not how it will be implemented (the “how” comes later in the project). The audience we are trying to reach are marketing and communications professionals or web content contributors/editors.
If you are still reading this, you might be asking, why is this important?
First of all, we want to be sure we build the right website. Once designs are approved and the look and feel of the new site starts to take shape, expectations for how the site will function are formed. This means spelling out the details about things like if banner images should change randomly on each page or if the content editor should control how many news items are listed on a page. We want to do everything we can to ensure everyone has the same expectations, and that those expectations are met via the website.
We are also trying to avoid rework. Rework is the enemy of the project timeline and budget. Once we start configuring and customizing the CMS it’s harder to react to changes whether that’s adding fields or introducing regions or page components. Just as in the construction of a building, it’s much easier, cheaper and faster to make changes in documents before the heavy lifting begins.
Finally—and most importantly—we’re trying to do our best work. We want to be collaborative with our clients and each other on how content should be displayed and managed. While there are some best practices that work well across all sites, we find that spending quality time together thinking about how the site should work yields the best results. A great example of this is how important the integration of social media content has become. In a short period of time the standard practices around where content comes from and how it displays have evolved. We want to mesh the best of what’s tried and true with new ideas on how to make the best use of the technology.
Having said all of this, the specification only works when our clients buy-in to the process. The number one sign that it’s working is that we are communicating—often via a long and tedious conference call or two. In these calls, our clients are typically voicing their pre-conceived ideas for how they envision the site working, and the way in which they want to manage their content. They may also be asking questions, clarifying points they don’t understand or asking for recommendations. If a client catches a typo or two it bodes well for the overall health of the project.
One of our goals for 2012 is to make improvements to our Functional Specification and the process of gaining consensus on the requirements for the site and CMS. We want to make the document less text heavy and easier to consume. We plan to shift some of this information to a more detailed wireframe than we have historically produced. And we see advantages to starting this earlier in the project, in parallel with creative design.
How have you tackled requirements on your CMS projects? What’s working for you? Is anyone applying Agile methods to their Website Redesign? We’d love to hear your thoughts on our approach and learn from the experience of others.