One of the most frequently cited aims of CMS is to separate content from presentation. That way we enable content reuse across multiple channels, allow for redesign, etc. It’s one of the core features that any CMS has to provide to be considered a CMS at all, and not just a web page editing system.
But, just because we have to separate these two, it doesn’t mean we have to separate them at birth. It’s been said that being “too difficult to use” is the single biggest reason for the failure of content management projects (45% of failing projects according to one survey). There are various reasons for this, but here’s one:
Mental models are a concept from interaction design. A mental model is an end user’s (perhaps naive) idea of how a system works. The user thinks their contacts app is something like a physical address book, except magically embedded in their computer. Mental models often resort to magic, and why not? This is true for most of us in domains that are not our day jobs; personally, I can offer no coherent non-magical explanation for how my iPhone works.
Of course, the underlying implementation might work in quite a different way; in fact, it’s likely to. That contacts data is really a bunch of rows in a database; that’s the implementation model. Finally, there’s the way that the software presents whats going on to the user on their computer screen: this is the representation model.
Good interaction design favours the mental model over the implementation model; it hides the complexity of the underlying implementation, and as much as possible presents an interface that conforms with the user’s expectations. This is part of what we mean when we say a UX design is “intuitive” – that it conforms to the mental model. More work for the developer, sure, but less for the end user.
Now, let’s think about the mental model for WCM. Generally, the user has this idea that the CMS is a kind of box stuffed with web pages. A web page is a document containing a mix of text, pictures, links etc – a lot like a Word doc. A typical goal will be to edit a bit of text on a page.
One way to tackle this is to expose the implementation model in a web form (or series of forms, depending on the complexity of the implementation) which is effectively an edit mask for the database tables where the web content really lives. You can “educate” the user to understand and use this kind of system.
But why would you? It’s not the author’s job to understand database structures. In most cases I’d say it’s better to provide a WYSIWYG interface that lets users make the edit “in situ”, just as if their web page was a Word doc. This gives a much better approximation to the mental model. Then, behind the scenes the CMS can disassemble the edited content into all the correct boxes, keeping it cleanly separated from the presentation, and stripping out any truly evil presentational gubbins.
But what if this content is being channelled to more than one format? Well, in the real world there is normally a primary channel, and I bet the mental model says that content is being “copied” from that to other channels (eg. from the website to the mobile site). So the CMS can give a preview of the other channels, even an editable preview if there’s an option to override bits of content for other channels (though good luck with resourcing that kind of workflow) without disrupting the model.