A CMS, as the name reveals, is a software/system that runs on a server and that allows the easy management of websites without knowing much technical details of web development. It provides authoring and other tools designed to allow users with little technical knowledge of programming languages or markup languages to create and manage content with relative ease. Typically a CMS is a database driven application, i.e. most web CMS use a database to store content, metadata, or artifacts that might be needed by the system. Content is commonly stored as XML, to facilitate, reuse, and enable flexible presentation options. In simple words, a CMS will allow you to manage and update your website contents easily and smartly. So if you are a non technical guy knowing not much about the html or about web designing, using CMS will allow you to manage your website contents without much of a hassle.
The features of a CMS system vary, but most include Web-based publishing, format management, revision control, and indexing, search, and retrieval.
Some basic features that are common to all CMSes:
Separation of content, structure and design
A CMS improves the lifecycle of your website for years to come. The "look and feel" of your site can be changed or relaunched, leaving existing content and page architecture untouched. No need to worry about copying and pasting content into another site, simply publish your new design and the CMS will pull the content into the new look.
Easy content production, no or little programming skills required
If you can use a computer, you can manage the content for your website. Using a graphical user interface, authors can simply create text, insert images an multimedia files, schedule content (and much more) to build and maintain a dynamic website.
Just imagine: You could go to your website, type in a username and password, and update anything that you wanted in a MS word type interface. Well, that is basically what a CMS does. Imagine you will never need to make another menu button again, or pay a web designer to do it for you. Each time you add or change a page, the menu will automatically update to reflect the change. Having to learn or purchasing photo editing software will not be necessary. You can upload images straight to the web from your digital camera / DV camera or a scanner.
Common advantages of a CMS:
- Decentralized maintenance.
Typically based on a common web browser. Edit anywhere, anytime. Bottlenecks removed.
- Designed with non-technical content editors in mind.
People with average knowledge of word processing can create the content easily. No or little HTML skills required.
- Configurable access restrictions.
Users are assigned roles and permissions that prevent them from touching content in which they are not authorized to change.
- Consistency of design is preserved.
Because content is stored separate from design, the content from all authors is presented with the same, consistent design.
- Navigation is automatically generated.
Menus are typically generated automatically based on the database content and links will not point to nonexistent pages.
- Content is stored in a database.
Central storage means that content can be reused in many places on the website and formatted for multiple devices (web browser, mobile phone/WAP, PDA, printer).
- Dynamic content.
Extensions like forums, polls, shopping carts, search engines, news management are typically drop-in modules. A good CMS also allows for truly user defined extensions.
- Daily updates.
You do not need to involve web designers or programmers for every little modification - you are in control of your website.
Encourages faster updates, enforces accountability for content editors via log files and promotes cooperation between authors.
- Content scheduling.
Content publication can often be time-controlled; hidden for previews; or require a user login with password.