How To Build The Ideal Content Management System

Share the article!

What is a Content Management System (i.e. CMS) anyway? A reader pointed out the “blurry” distinction between a Portal and a CMS. So I did a bit of googling and found these two pieces from cmswatch.
The ideal CMS should support the content production and the content delivery space, specifically:

Content Production Phase

  • Role Management.
  • Authoring & Transformation.
  • Aggregation.
  • Library Services.
  • Metadata Management.
  • Workflow.
  • Localization.
  • Promotion Path.

Content Delivery Phase

  • Page Assembly.
  • Index & Site Search.
  • Personalization.
  • Caching & Replication.
  • Syndication.
  • Output to Alternate Formats.
  • Vending.

A CMS should offer at least 4 and ideally 5 of the following attributes:

  1. Authoring and/or Transformation Services
  2. Repository Services
  3. Workflow Engine
  4. Templating Engine
  5. Promotion and Distribution Services

Notice how each attribute is an entire category in itself. For example, I’ve come up with a list of workflow engines and a list of templating engines. Other lists that I’ve come up with cover Promotion (i.e. Personalization implying list of rule based engines) and Distribution (i.e list of portals) services. Finally, I listed down some projects that could possibly provide Repository services (i.e. list of knowledge management systems ). In summary, in the list of open source projects that I’ve enumerated in the past few weeks could in-fact be used to build a one true bonafide CMS. Of course, I don’t plan on building a CMS, afterall, contrary to what Marc Fleury would like you to believe, there are just too many of them! However, if you had the technology to easily glue them all together into a coherent application, then you’ll be in pretty good shape. Unfortunately, that technology doesn’t exist, however everything is still open source, so you still have a good fighting chance at it.

Share the article!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>