Content Management System Requirements by Karl Goldstein Introduction This document lays out the requirements for a content management system (CMS). A CMS is a client application that allows non-technical members of a web site publishing team to create, manage and deploy all types of content using a single consistent interface. Vision Statement Rich content exerts a powerful draw on web users, and is a key asset for most high-profile sites. Most corporate web sites are supported by a publishing team that may include authors, editors, designers, developers and managers. The CMS should improve the productivity of all members of the publishing team by allowing them to accomplish their respective tasks without the need for regular developer intervention. It should also maximize the quality and accessibility of content by allowing publishers to enforce standard production workflows, as well as by providing publishers with effective tools for organizing, categorizing and scheduling content. System/Application Overview The basic functions provided by the CMS include: Content workflow management Content data entry and upload interface Version control Template management Scheduled and manual deployment of content to public server(s) Classification and linking of content items Site organization tools Dependencies The CMS has the following dependencies: Oracle 8.1.6 or higher. AOLserver 3.0 or higher (ArsDigita distribution). ArsDigita templating and form builder API (Tcl). ACS 4.x kernel data model and stored procedure API. ACS 4.x workflow data model and stored procedure API. ACS 4.x content repository data model and stored procedure API. Use-cases and User-scenarios The CMS has the following general classes of users: Authors have the ability to browse content and perform data entry in particular sections of the site map. Their access to administrative portions of the application is limited. Managers have administrative access that may be limited to a particular section of the site map. Administrators have full access to all functions of the system. They may manage users and departments, determine access levels to all parts of the site, manage content type definitions, and override the settings and actions of other users. Competitive Analysis Content management is a critical battleground in the enterprise software arena. Companies including Broadvision, Vignette, Blue Martini, OpenMarket/FutureTense, Interwoven and Allaire all offer highly polished, heavily marketed solutions, all of which are expensive and proprietary. Zope is a widely recognized open-source alternative, but it lacks a formal content management interface and is further constrained by scalability issues. The CMS has two key advantages that together provide an advantage over the competition: It is open-source and easy to extend or customize to meet a particular client's needs. It is built on a highly scalable architecture (Oracle). Related Links Design document Developer's guide User's guide Test plan Competitive system(s) Requirements: Data Model and Stored Procedure API The data model and data manipulation requirements for CMS are largely met by the ACS 4.0 foundation on which it is constructed: The ACS Kernel package provides a generic persistence mechanism for typed objects, along with access control and logging. The ACS Workflow package provides a flexible engine for defining and managing workflows. The ACS Content Repository provides storage and methods for manipulating content data and attributes. The additional database-level requirements for the CMS are solely related to storing and managing additional information associated with the user interface: 10.10 Form Metadata Requirements: User Interface API The ACS Templating package provides a general foundation for the CMS User Interface API, simplifying the task of customizing and extending the standard user interface. Some additional requirements are specific to the CMS. 20.10 Form Generation 20.20 Form Generation 20.30 Form Processing 20.40 Content Retrieval 20.50 Content Publishing Requirements: User Interface Revision History Document Revision # Action Taken, Notes When? By Whom? 0.1 Creation 09/15/2000 Karl Goldstein karlg@arsdigita.com Last modified: $Date: 2001/04/20 20:51:10 $