WebReference.com - Chapter 1 of Content Management Systems, from glasshaus (7/9)
Content Management Systems, Chapter 1: Foundations of CMS
The glue between the human processes and the technical infrastructure of content management is known as workflow.
Workflow is a predefined series of tasks that facilitates the progression of content assets through the asset management, transformation, and publishing activities.
Workflow makes human processes explicit and systematic. For example, your organization decides that authors will have their work checked by an editor, who then sends it to be approved by the legal department, after which it is published. Workflow simply codifies that process.
Content management tools have a variety of approaches to workflow. But the basics are the same: the application of rules on users and tasks to enforce a process.
While the basics are the same, they will be applied differently in each organization. It's important to have a workflow tool that is flexible enough to accommodate your needs. Needless to say, if you don't have a process defined, or don't understand the process, no amount of workflow tools will help you.
It's important to realize that workflow extends outside the world of content management. Content management may just be a small subset of tasks inside a much longer and more complicated workflow in your business.
A good workflow tool will automate the mundane reminders that shepherd the content assets through the entire process. It will generate a log so that we understand what is going on, what the status of each content item is, and where the (often human) bottlenecks exist.
Every content management tool is structured slightly differently, but the basics are the same.
Users typically add content via a browser-based interface. This interface often mirrors the look and feel of the web site, and provides rich text editing capabilities. The interface also allows users to edit existing content, look at and compare versions of content, and to approve content for publication Â all the activities of asset management are handled within this interface.
There are other ways to add content. Some systems offer integration with desktop applications such as Microsoft Word or Macromedia Dreamweaver, for instance, while others provide a custom client-side application Â either for a richer editing environment, or for administrative tasks. An application programming interface (API) may also allow technical users to add or manipulate content that is stored in the repository, via scripts.
That repository can take many forms: a database, a closed file system, or a mixture of both. It can even be a virtual repository Â one interface to numerous backend data sources. The repository stores both the content and any associated metadata.
Metadata provides information about the content. For instance, common metadata values would be the author of the content, the date it was created, the date to publish it, and the date it expires. Metadata provides context to the content and enables the content management tool to deliver more precise searches, generate topic-based navigation, create links to related pages, and track workflow status.
A template engine applies design elements to content, in order to produce the desired output document. The templates themselves usually contain placeholders for content from the repository. More powerful schemes can allow inline code to be interpreted in the templates. While more flexible, they are also more complex.
Link management refers to how the tool tracks and maintains internal links and site navigation. Sometimes this is driven by an internally maintained glossary of unique content IDs. Other systems handle it by referring to a user-created site structure, which is also used to create navigation. The site structure is simply the hierarchy of files and folders within your web site. (This can be a logical hierarchy, or physical.) Much is made of the separation of design and content; structure is also an element of your web site that needs to be maintained.
The site is then published and deployed. Publishing can occur ahead of time, that is, pages are created statically (a more colorful term for this is 'baking'), and then deployed to the server. The dynamic approach (called 'frying') is in reverse: content is first deployed to the server (probably to a database). Then, when a request for a web page is received, the template engine is invoked to apply the design. The difference is primarily in server load and administration: a dynamic server requires more processing power, but is useful for presenting constantly changing or frequently updated content.
Workflow helps manage the flow of content through this technical structure, and makes sure that the human structure approves and is aware of what happens throughout. Version control helps people track changes to the content, providing a safety net to roll back changes. The administrator can assign users and groups to certain roles and actions: this is sometimes referred to as user access control levels (ACL).
Products that offer this technical infrastructure are commonly referred to as content management systems (CMS).
Created: August 22, 2002
Revised: August 22, 2002