Функции систем управления контентом




Требования, предъявляемые к системам управления контентом, у каждой организации разные. В ходе подготовки статьи был проанализирован целый ряд систем управления контентом, ссылки на которые можно найти в следующих источниках. Прежде всего, это CMSWatch (https://www.cmswatch.com) – организация, которая ежегодно выпускает отчет, включающий в себя обзор рынка систем управления контентом и сравнения некоторых из них. Кроме того, обзоры систем управления контентом публикуются на сайтах https://www.la-grange.net/cms, https://www.opensourceCMS.com и https://www.cmsinfo.org.

Более того, на сегодняшний день существуют и специальные работы, посвященные анализу функций систем управления контентом. Среди них есть как коммерческие руководства, так и открытые публикации. Наиболее полное из них – это Content Management Requirements Toolkit (https://www.steptwo.com.au/products/toolkit/), который распространяется как коммерческий продукт. В нем упоминаются 112 функций систем управления контентом, которые разбиты на несколько разделов. Несмотря на кажущуюся полноту и ясность, этот продукт содержит много лишних или само собой разумеющихся требований. Например, то, что HTML, содержащийся в сгенерированных Web-страницах, должен быть правильным. Также вызывает вопросы и классификация функций систем управления контентом. Кроме указанного руководства, существует и ряд открытых публикаций, в которых также дается интересный перечень функций систем управления контентом, например, James Robertson "How to Evaluate a Content Management System" (опубликовано в https://www.intranetjournal.com), Paul Browning "CMS Feature List" (находится на сайте университета Бристоля, по адресу https://www.bris.ac.uk/ISC/cms/features.htm). Будем придерживаться следующей классификации и перечня функций систем управления контентом, полученного на основе перечисленных выше работ.

Функции систем управления контентом структурированы согласно жизненному циклу системы. Сначала администратор предоставляет доступ к системе различным пользователям, затем создается контент, и, наконец, он публикуется. На рисунке 4 представлены категории функций систем управления в виде UML-диаграммы: пунктирная линия со стрелкой обозначает зависимости между пакетами функций, например, механизм публикации зависит от механизма управления контентом, сплошная линия с ромбом на конце означает композицию, так пакет Управление Контентом (в котором, кстати, сосредоточена основная часть требований) содержит два подпакета Создание Окружения и Создание Контента. Первый – Создание Окружения соответствует настройке системы на определенный поток работ (менеджер создает поток работ, а также все типы данных и схемы их метаописаний). На втором этапе (пакет Создание Контента) пользователи начинают работать с контентом, согласно установленному потоку работ. Пакет Управление Пользователями описывает процесс управления группами, отдельными пользователями, а также назначение пользователям прав на выполнение определенных операций. Рассматривается возможность пользователя делегировать свои права. Пакет Публикация определяет требования к процессу публикации на основе механизма шаблонов. Пакет Представление определяет требования к полученному представлению информации. В данную спецификацию не включены требования, которые автоматически подразумеваются или являются общими для систем подобного класса (Общие функции), например, то, чтобы сгенерированный HTML был "правильным" и требования к производительности и защищенности, а также дополнительные требования (Дополнительные функции), которые часто предъявляют к системам управления контентом, например, наличие форумов и конференций (они могут быть реализованы “поверх” систем управления контентом). Пакеты этих требований выделены серым цветом.


Рисунок 4. Классификация функций систем управления контентом.

В мире существует множество систем управления контентом. Условно можно выделить три основных класса подобных приложений. Это системы крупных производителей, например, Microsoft Content Management Server, системы с открытым исходным кодом, например, RedHat CMS и OpenCMS, и разработки небольших компаний, которые применяются на нескольких проектах, созданных непосредственно компанией-разработчиком (более 80% всех систем управления контентом). Ниже мы более подробно рассмотрим функции систем управления контентом, входящих в каждый пакет требований, а также реализацию этих функций в двух наиболее известных и старейших системах, написанных на языке Java. Это – система управления контентом Red Hat (бывшая ArsDigita) и система управления контентом OpenCms (существует русскоязычный сайт для поддержки этой системы, https://www.opencms.ru). Эти системы были отобраны по следующим критериям. Во-первых, они достаточно технологичны: платформа J2EE довольно продвинута и содержит множество стандартных сервисов, например, поддержки транзакций, доступа к базам данных, глобализации приложений и так далее. Во-вторых, в отличие от продуктов Microsoft они распространяются бесплатно, поэтому каждый может скачать и установить их. Если рассматриваемая функция отсутствует у обеих систем или реализована недостаточно хорошо, то будет рассматриваться ее реализация в других системах, например, в Microsoft Content Management Server.

Создание окружения

На первом этапе необходимо создать все типы контента и схемы их метаописаний, а также настроить систему на определенный поток работ (если система поддерживает создание потоков работ, а не использует единственный встроенный). Понятие типа контента аналогично понятию класса, а элементы контента представляют собой набор экземпляров таких “классов”. Типами контента являются, например, текст и изображение; экземпляром контента конкретный документ или картинка. Часто в системах управления контентом, написанных на языке Java, тип контента – это класс Java, который инкапсулирует все остальные типы. Это решение используется и в RedHat CMS и в OpenCms.

Кроме поддержки непосредственно создания типов контента, система управления контентом должна предоставлять и некоторые дополнительные возможности, например, задание ограничений на информацию и ее проверка до опубликования. Данная возможность очень важна – например, бывали случаи, когда электронные магазины из-за ошибок администраторов выкладывали свои товары по смешным ценам. В системах управления контентомRedHat и OpenCMS для этого придется задать ограничения на поля классов, представляющих типы контента. Кроме этого,система должна предоставлять возможность интернационализации и локализации контента, а также сама отвечать требованиям интернационализации и локализации.

Многоязычность должна поддерживаться как на уровне административного интерфейса системы, так и на уровне самих Web-приложений, работающих под управлением системы управления контентом. Для этого система должна предоставлять соответствующие функции и структуры данных. В системе управления контентомRedHat встроенная локализация отсутствует. Напротив, в системе управления контентомOpenCMS можно выбирать различные языки представления (пока только немецкий и английский).


Рисунок 5. Рабочий процесс в Microsoft Content<BR/> Management Server.

Следующая важная возможность – хранение информации о версии контента. Это позволяет задать номер версии любых операций изменения контента и при необходимости восстановить его. В любой момент можно отказаться от изменений и, практически в режиме реального времени, откатиться на одну из предыдущих зафиксированных версий. Строгий контроль версий необходим для определения ответственности отдельных лиц, а также для резервного и аварийного восстановления системы. Система управления контентомRedHat для каждого элемента контента хранит все его версии, и вся работа ведется с последней версией (latest). Кроме того, существует и текущая (live) версия, которая видна пользователям сайта. Система управления контентом OpenCMS может хранить все версии элементов контента, и при желании можно вернуться к любой из них.

Кроме управления контентом, система должна предоставлять возможность создавать метаданные о нем. Метаданные – это сведения о данных, свойства данных. Примером метаданных служат ключевые (характерные) слова документов, предназначенные для поисковых или отчетных систем. Системы управления контентом, рассматриваемые в данном обзоре, не поддерживают метаданные, хотя можно специально ввести дополнительные типы контента, представляющие собой метаданные. В Microsoft Content Management Server для каждого элемента контента можно задать набор свойств, и использовать последний для различных целей, например, для поиска данных или разбиения элементов контента на различные категории.

Одной из важнейших возможностей, которые должна предоставлять система управления контентом, является поддержка рабочих процессов (workflow). Рабочий процесс(workflow) – это набор методов и технологий для автоматизации бизнес-процесса в целом или его части посредством документов, когда информация или задания передаются от одного участника к другому для выполнения определенных действий. Сегодня широко применяются автоматизированные системы управления рабочими процессами. Системы управления контентом также поддерживают управление рабочими процессами.

Система управления контентомRedHat позволяет связывать с каждым типом контента рабочий процесс, который тот должен пройти, прежде чем стать видимым пользователям. Каждый процесс в RedHat CMS состоит из набора заданий, между которыми можно задать зависимости (например, чтобы выполнить одно задание, необходимо выполнить несколько предыдущих), и для которых можно назначить конкретных исполнителей. Таким образом, можно создавать собственные рабочие процессы различной степени сложности. Аналогичным образом работает и система управления контентомOpenCMS.

Типичный процесс публикации информации в World Wide Web реализован в Microsoft Content Management Server. Обычным приемом обеспечения оформления информационного наполнения являются шаблоны представления информации. Поэтому первым этапом процесса является создание наборов шаблонов. Типичный шаблон содержит разметку HTML и места, куда в дальнейшем будут вставлены данные (placeholder’ы в терминологии Microsoft). Далее на основе этих шаблонов авторы информационного наполнения создают страницы и представляют их редакторам для одобрения. Редакторы, в свою очередь, могут либо отклонить страницу и вернуть ее автору на доработку, либо одобрить ее и передать модератору сайта. В первом случае процесс повторяется снова, во втором же модератор сайта проверяет расположение страницы на сайте, дату и срок ее публикации. Если все в порядке, страница становится видна пользователям. Несмотря на то, что рабочий процесс в Microsoft Content Management Server фиксирован и не может быть изменен в дальнейшем, подобное решение подходит большинству пользователей, которым необходимо публиковать информацию в World Wide Web.

Создание контента

После того, как все типы контента созданы и рабочие процессы запущены, авторы информационного наполнения начинают создавать, изменять и удалять элементы контента указанного типа. В системе управления контентом RedHat для каждого вновь созданного типа контента необходимо написать собственный код для редактирования и обновления элементов контента данного типа (в терминах RedHat это называется Authoring Kit). Authoring Kit типа контента состоит из набора визуальных компонентов для просмотра и редактирования данных, связанных с элементами этого типа. RedHat CMS уже содержит некоторый набор визуальных компонентов, например, для редактирование текста, выбора изображений, выбора шаблона представления.

Кроме непосредственно редактирования элементов контента, необходимо предусмотреть разбиение контента по категориям или рубрикам. Обычно категории организуются в некоторые иерархические структуры, в узлах которых содержатся элементы контента. Система управления контентомRedHat поддерживает иерархию секция-категория-элемент. Система управления контентомOpenCMS поддерживает группировку элементов содержимого в каналы, но поскольку элементом содержимого является класс, то можно создавать связи между классами, при этом некоторые из них и будут представлять категории.

Рисунки и изображения, а также некоторые другие ресурсы являются важной составляющей каждой информационной системы. И разработчики, и дизайнеры должны знать, как унифицированным способом их использовать. Поэтому система управления контентом должна поддерживать базу (библиотеку) ресурсов для использования в информационных материалах. Работа с изображениями, анимациями и другими подобными ресурсами должна быть понятна пользователю, при этом обычно создается некоторое хранилище ресурсов. Туда могут входить изображения, фильмы, презентации и т.д. Это позволяет более эффективно использовать, разделять и администрировать ресурсы. В системе управления контентомRedHat такая работа с изображениями (и другими мультимедийными ресурсами) отсутствует. Система управления контентомOpenCMS поддерживает галереи ресурсов (например, картинок).

Возможность поиска объектов и их частей также важна для систем управления контентом. Некоторые системы имеют собственные механизмы поиска, другие ведут поиск средствами нижележащих хранилищ данных, которые они используют. Система управления контентом RedHat поддерживает поиск на основе механизма поиска базы данных Oracle. В системе управления контентом OpenCMS поиск основан на Apache Lucene (свободно распространяемая система индексации документов).

Система управления контентом является только одной из множества систем, которые используются на предприятии. Использование системы управления контентом будет успешным, если она будет обмениваться информацией с уже существующими системами. Механизмы этого объединения должны быть основаны на открытом или промышленном стандарте. Контент может подгружаться в базу данных или напрямую отображаться в графических шаблонах в режиме реального времени. Система управления контентомRedHat не поддерживает интеграцию с внешними системами. Единственным способом взаимодействия с внешними системами является взаимодействие на уровне нижележащих хранилищ данных, т.е. загрузка и выгрузка информации непосредственно из реляционного хранилища. В системе управления контентом OpenCMSподдерживается взаимодействие с EJB, где можно использовать Java Connectors. Java Connectors определяет стандартный Connector Service Provider Interface (Интерфейс поставщика услуг коннектора), который, как правило, реализует разработчик корпоративной информационной системы предприятия. Многие производители КИС (BEA, IBM, SAP, iPlanet) представляют адаптеры ресурсов, реализующие Connector SPI для обеспечения взаимодействия управляющих средств контейнера/сервера J2EE с EIS.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-11-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: