What is a CMS?
A Content Management System (CMS) is a web application which allows web designers and developers to worry about the machinery and styles driving a website while the actual content itself can be added and edited by non-technical content providers
A good CMS should:
-
- Follow web standards
- There are many reasons why this is important - from simplifying web development/maintenance (because everyone is speaking the same language) to future-proofing your site (standards-based development is inherently easier to upgrade and less prone to breaking in newer browsers) to the holy grail of the web - search engine optimization (standards provide the base rules of how content should be scored).
-
- Be cross platform/browser compatible
- Internet Explorer running on Windows still holds the market share of Internet users however that majority is being diluted by a growing number of Apple OS X users and cross platform browsers such as Firefox and to a lesser extent Opera among others. As of this writing Firefox was being used by roughly ~35% of the market - here you can check current operating sytem and browser statistics. Can you really afford to alienate those potential clients/viewers? Also as wireless technologies progress mobile devices are becoming a factor, which brings issues such as smaller screens and slower bandwidth to the table. Chances are you are trying to reach as wide of an audience as possible.
-
- Be WCAG/Section 508 compliant
- WCAG (Web Content Accessibility Guidelines), while not law, are a set of best practices which enable web sites to be used through alternative means for impaired users, for instance by screen readers for the sight impaired. In the U.S. if you are a Federal agency you are required by law to be Section 508 compliant - many states have followed suit along with agencies that are either state or federally funded. Internationally there are may be some sort of accessibility required by legislation as listed here.
-
- Be extensible/customizable
- There are many CMS's on the market, from high-dollar commercial packages to open-sourced projects. Make sure you are selecting one that most closely provides the features that you need remembering to keep an eye on the future as the one you select now may not be able to easily add new features to down the road. Unless you have a lot of capital available stay away from packages that are proprietary as additional features usually require contract work from the original developer. Ideally your in-house or out-sourced developers should be able to add new features and integration without having to go back to the original software developers. Again beware of black box proprietary solutions.
-
- Provide content workflow
- In most cases, content will probably have to go through an editing and approval process before being made available to the public. Your CMS should allow you to model your current approval process.
