(С) Владислав Боркус
Дата актуальности: февраль 2006
!Данный материал защищён авторским правом и любое его копирование не допускается.
Система Optimizer компании "Гаратнт-Партк" представляет собой программный конструктор для построения сайта на технологической основе Microsoft IIS и SQL Server. Текущей является версия 2.5, а версия .Net является развитием и переработкой системы на новой платформе Microsoft. Эти версии не отличаются в смысле идеологии построения сайтов, а отличаются в первую очередь технологией конструирования шаблонов страниц.
Optimizer построен на принципе деления HTML-данных на статические шаблоны и наполнение, динамически размещаемое на страницах по этим шаблонам. В версии 2.5 статическая часть хранится в файловой системе и представляется собой HTML-шаблоны, в которые добавлены вставки (placeholders) на специальном языке разметки Optimizer. В эти места на этапе динамической сборки страниц добавляются данные из базы контента.
Контент, помещаемый во вставки, может сам формироваться динамически по своим шаблонам. Получается система вложенных элементов. Система таким образом поддерживает структурирование страниц на функционально-законченные блоки, причем возможна любая вложенность блоков и отображение с учетом условий. В частности, форма для ввода полей документа в интерфейсе редактора -- это всего лишь еще одно представление документа.
Отличие Optimizer.Net состоит в том, что все шаблоны инфоблоков оформляются в стандартах .Net Framework, а именно ASCX-контролей[#sdfootnote1sym 1]. Упрощенно говоря, язык оформления шаблонов Optimizer 2.5 был переоформлен при помощи технологии XML и библиотек вызываемых серверных компонентов, т.е. изменился синтаксис без существенного изменения семантики. Опять-таки технология активно использует вложенные друг в друга компоненты и обращения к API Optimizer.Net, который тоже переоформлен в виде компонентов ASCX.[#sdfootnote2sym 2]
Шаблоны отображения блоков работают с типами (классами) документов. Каждый тип имеет свой набор атрибутов. Для каждого типа существуют свои блоки для редактирования информации и набор вариантов ее отображения. Шаблоны, отвечающие за отображение, могут быть фиксированными и настраиваемыми. В последнем случае параметры отображения могут регулироваться администратором через интерфейс системы.
Для заполнения страницы помимо шаблонов требуются еще и команды выборки данных из базы. Эти компанды используются уже при помещении блока на конкретную страницу (его привязки), т.е. при помещении блока в шаблон страницы.
Все это -- типичная объектная структура CMS. Optimizer получается более тонко конфигурируемой, чем, скажем, «Сайтистика» или MCMS 2002[#sdfootnote3sym 3]. Однако, в этом есть одна проблема -- архитектура сайта получается довольно сложной, что резко повышает требования к специалисту, который решит его адаптировать.
Metric использовала в системе несколько типовых приемов, несколько снижающих уровень сложности, например, используются инструменты управления иерархией разделов сайта, автоматическое формирование меню, определение списка типов данных, которые могут использовать в разделе, стандартные сервисы используют типизированные объекты для хранения данных (например, темы для форума или сообщения). Но уровень сложности задачи по адаптации вида сайта все равно высокий.
Логичным продолжением архитектуры системы было бы визуальное проектирование (хотя бы через таблицы) и динамическая генерация шаблона больших страниц. Например, заказчик мог бы собирать состав страницы из блоков (портлетов) визуально, без программирования. Это упрощало бы перепроектирование внешнего вида, снижало бы число случаев, когда заказчику нужно обращаться к исполнителю. Но это в системе не реализовано.
Многосайтовость. Система в базовом варианте односайтовая, но в варианте ее заказной адаптации множества сайтов можно будет организовывать и управлять ими.
В качестве пути создания сайта по шаблону поставщик предлагает набор скриптов, запускаемых из Web-интерфейса, которые могут с одной стороны делать backup сайта без данных (только структура и шаблоны), а с другой -- восстановить этот сайт в новом месте. При этом скрипт должен прописывать и все конфигурационные параметры систем, включая записи DNS и IIS. Администратору остается лишь завести пользователей и настроить группы доступа.
Что касается обновлений кода, то они могут выпускаться для эталонного сайта и легко устанавливаться на все его производные.
Недостатком этого подхода является то, что сайты оказываются изолированными, т.е. не используют центральный репозиторий компонентов, как например, RBC Contents. В итоге смену дизайна одного компонента придется продублировать во всех сайтах. Заметим, что в RBC Contents также возможно использование собственных компонент на сайте, как одна из опций.
Многоязычность. Система позволяет поддерживать языковые версии, но версии всего сайта. Иначе говоря английский сайт и русский сайт -- это разные сайты, с точки зрения системы не имеющие ничего общего.
Между тем, с точки зрения логики, они имеют очень много общего -- структуру, пользователей, и отличаются только шаблонами оформления отдельных разделов и представлением документов. К сожалению, разноязыковые представления поддерживает в настоящий момент только Documentum, и частично RBC Content (из известных нам систем). Возможно, такая поддержка появится в текущем году в SPS 2006, но об этом пока рано говорить.
Управление структурой сайта. Публикация контента отделена в системе от задачи редактирования структуры сайта. В системе предусмотрены специальный компонент конфигуратор для решения этой задачи.
Конфигуратор позволяет формировать структуру сайта, указывать шаблоны отображения главной страницы и страниц разделов, задать некоторые параметры оформления (меню, заголовки блоков, цвета, изображение в шапке) и первой страницы. Создание новых разделов делается легко.
В конфигураторе можно задавать привязывать файлы шаблонов к типам документам, разделам, управлять параметрами отображения документов различных типов в различных разделах сайта. Возможно даже непосредственно редактировать эти шаблоны в системе в текстовом поле.
Также через Web-интерфейс делается настройка свойств классов документов: полей, связывание классов документов, управление параметрами отображения документа, скажем, вариантами сортировки полей в форме ввода данных. Есть и возможность настройки интерактивных сервисов, используемых на сайте. Все это делается достаточно несложно. Однако, мало создать документы -- их нужно потом отображать, а вот для требуется настройка шаблонов отображения, что является задачей высокого уровня сложности.
Но управление шаблонами и классами документов могут пригодиться лишь квалифицированному по Optimizer администратору, собирающемуся менять сайт, но никак не редактору. Все эти операции достаточно сложны, как и вообще все в системе, что касается изменения шаблонов отображения.
Навигация и поиск. В принципе система интегрирована с поиском RCO и обеспечивает все типовые средства навигации -- меню, путь, списки ссылок, карту сайта.
Авторинг контента. Документы формируются через заполнение Web-форм, поля которых соответствуют атрибутам типов данных. Скажем, для новости атрибуты включают заголовок, основной текст, картинки и файловые вложения. Структура формы для заполнения полей настраивается в интерфейсе администратора.
При подготовке публикации в Optimizer.Net (не Optimizer 2.5) возможно использование WYSIWYG редактора (DHTML Editor) для полей в формате HTML. Он позволяет вставлять изображения, таблицы, списки, редактировать базовые свойства текста. Этот редактор предпочтительней редактора «Сайтистики», так как не использует ActiveX.
Правда, для copy-paste не поддерживается очистка HTML от тегов MS Word. Нет проверки правописания, поддержки drag-and-drop, проверки мертвых ссылок.
Заметим также, что работа со сложными документами, как многостраничные материалы, в Optimizer, в отличие от «Сайтистики», базово не предусмотрена.
С прикрепляемыми к документам картинками продукт работает более серьезно, чем «Сайтистика» -- позволяет обрезать края (расположение же изображения определяется автоматом), опираясь на бесплатную библиотеку Image Magik. Однако, он не позволяет масштабировать картинку.
Optimizer также позволяет управлять сразу всеми документами из одного места (раздел Документы, в котором документы сортируются по типам). Документы можно прикреплять к любым (одному или многим) инфоблокам в разных разделах сайта. Возможно также делать отложенные публикации через флаг невидимости документа.
Безопасность. Система позволяет регулировать доступ к разделам и документам на базе прав пользователей и групп. Права доступа наследуются по иерархии объектов, реализация вполне адекватная.
Авторизация через Active Directory возможна в заказном проекте. Вендор рекомендует заводить всех пользователей в системе, а затем привязывать их к учетным записям в Windows. Этот путь реализован и в «Сайтистике». Не рекомендуемой альтернативой может служить прямая аутентификация всех пользователей в Active Directory, однако это не позволит создавать в системе пользователей, отсутствующих в AD. В последнем случае нужно привязывать и группы пользователей AD к группам пользователей Optimizer.
В системе ведется отдельное журналирование истории внесения изменений в данные (документы и рубрики), что отличает ее от «Сайтистики», где подобный мониторинг интегрирован с общим мониторингом действий пользователей на сайте. Но это позволяет контролировать действия более детально -- скажем, посмотреть не просто, что пользователь менял документ, но и что именно он изменил, скажем в тексте документа.
Мониторинг действий конечных пользователей в Optimizer не встроен -- здесь продукт опирается на журналы IIS и решения третьих фирм.
Модули системы. Анализ показывает, что имеется довольно много модулей, но большая их часть не коробочна, а разрабатывалась на заказ.
Если разработать один типовой сайт, а потом его размножать без изменений, то система вполне адекватна. Однако, поддержка сайтов будет затратная, так как малейшие изменения в дизайне сайта будут требовать участия разработчика. В этом она невыгодно отличается от RBC Contents -- cистеме не хватает визуального конструктора шаблонов страниц из простых блоков и механизма «наследования» шаблонов сайта.
В системе достаточно удобно делать совсем текущие операции администратора (такие, как настройка прав доступа) и редактора, в том числе по сравнению с Bitrix и QP7 Framework.
------------
[#sdfootnote1anc 1] Эти контроли представляют собой функуионирующие на сервере объекты, производящие отрисовку HTML-кусочков. При помощи разрабатываются в Visual Studio.Net в эти объекты можно инкапсулировать довольно сложную логику и презентационные элементы (чекбоксы, поля ввода и пр.). За динамическое изменение вида данных в объекте отвечает серверная часть объекта (она может быть на скриптовом языке, например C# Script) или JavaScript код в браузере. Компоненты ASCX довольно просто преврать в портлеты для SharePoint.
[#sdfootnote2anc 2] С точки зрения разработчика сайта, переход на .Net привел к тому, что оформление стало более «многословным», но внешне основанной на стандартах, и появилась возможность пользовать для разработки Visual Studio.
[#sdfootnote3anc 3] Интересно, что интерфейс администрирования выполнен также на базе системы и представляет собой такую же равнопрвную страницу сайта, как и остальные.
Дата актуальности: февраль 2006
!Данный материал защищён авторским правом и любое его копирование не допускается.
|
Архитектура и техническое описание
Система Optimizer компании "Гаратнт-Партк" представляет собой программный конструктор для построения сайта на технологической основе Microsoft IIS и SQL Server. Текущей является версия 2.5, а версия .Net является развитием и переработкой системы на новой платформе Microsoft. Эти версии не отличаются в смысле идеологии построения сайтов, а отличаются в первую очередь технологией конструирования шаблонов страниц.
Optimizer построен на принципе деления HTML-данных на статические шаблоны и наполнение, динамически размещаемое на страницах по этим шаблонам. В версии 2.5 статическая часть хранится в файловой системе и представляется собой HTML-шаблоны, в которые добавлены вставки (placeholders) на специальном языке разметки Optimizer. В эти места на этапе динамической сборки страниц добавляются данные из базы контента.
Контент, помещаемый во вставки, может сам формироваться динамически по своим шаблонам. Получается система вложенных элементов. Система таким образом поддерживает структурирование страниц на функционально-законченные блоки, причем возможна любая вложенность блоков и отображение с учетом условий. В частности, форма для ввода полей документа в интерфейсе редактора -- это всего лишь еще одно представление документа.
Отличие Optimizer.Net состоит в том, что все шаблоны инфоблоков оформляются в стандартах .Net Framework, а именно ASCX-контролей[#sdfootnote1sym 1]. Упрощенно говоря, язык оформления шаблонов Optimizer 2.5 был переоформлен при помощи технологии XML и библиотек вызываемых серверных компонентов, т.е. изменился синтаксис без существенного изменения семантики. Опять-таки технология активно использует вложенные друг в друга компоненты и обращения к API Optimizer.Net, который тоже переоформлен в виде компонентов ASCX.[#sdfootnote2sym 2]
Шаблоны отображения блоков работают с типами (классами) документов. Каждый тип имеет свой набор атрибутов. Для каждого типа существуют свои блоки для редактирования информации и набор вариантов ее отображения. Шаблоны, отвечающие за отображение, могут быть фиксированными и настраиваемыми. В последнем случае параметры отображения могут регулироваться администратором через интерфейс системы.
Для заполнения страницы помимо шаблонов требуются еще и команды выборки данных из базы. Эти компанды используются уже при помещении блока на конкретную страницу (его привязки), т.е. при помещении блока в шаблон страницы.
Все это -- типичная объектная структура CMS. Optimizer получается более тонко конфигурируемой, чем, скажем, «Сайтистика» или MCMS 2002[#sdfootnote3sym 3]. Однако, в этом есть одна проблема -- архитектура сайта получается довольно сложной, что резко повышает требования к специалисту, который решит его адаптировать.
Metric использовала в системе несколько типовых приемов, несколько снижающих уровень сложности, например, используются инструменты управления иерархией разделов сайта, автоматическое формирование меню, определение списка типов данных, которые могут использовать в разделе, стандартные сервисы используют типизированные объекты для хранения данных (например, темы для форума или сообщения). Но уровень сложности задачи по адаптации вида сайта все равно высокий.
Логичным продолжением архитектуры системы было бы визуальное проектирование (хотя бы через таблицы) и динамическая генерация шаблона больших страниц. Например, заказчик мог бы собирать состав страницы из блоков (портлетов) визуально, без программирования. Это упрощало бы перепроектирование внешнего вида, снижало бы число случаев, когда заказчику нужно обращаться к исполнителю. Но это в системе не реализовано.
Оценка по основным требованиям
Многосайтовость. Система в базовом варианте односайтовая, но в варианте ее заказной адаптации множества сайтов можно будет организовывать и управлять ими.
В качестве пути создания сайта по шаблону поставщик предлагает набор скриптов, запускаемых из Web-интерфейса, которые могут с одной стороны делать backup сайта без данных (только структура и шаблоны), а с другой -- восстановить этот сайт в новом месте. При этом скрипт должен прописывать и все конфигурационные параметры систем, включая записи DNS и IIS. Администратору остается лишь завести пользователей и настроить группы доступа.
Что касается обновлений кода, то они могут выпускаться для эталонного сайта и легко устанавливаться на все его производные.
Недостатком этого подхода является то, что сайты оказываются изолированными, т.е. не используют центральный репозиторий компонентов, как например, RBC Contents. В итоге смену дизайна одного компонента придется продублировать во всех сайтах. Заметим, что в RBC Contents также возможно использование собственных компонент на сайте, как одна из опций.
Многоязычность. Система позволяет поддерживать языковые версии, но версии всего сайта. Иначе говоря английский сайт и русский сайт -- это разные сайты, с точки зрения системы не имеющие ничего общего.
Между тем, с точки зрения логики, они имеют очень много общего -- структуру, пользователей, и отличаются только шаблонами оформления отдельных разделов и представлением документов. К сожалению, разноязыковые представления поддерживает в настоящий момент только Documentum, и частично RBC Content (из известных нам систем). Возможно, такая поддержка появится в текущем году в SPS 2006, но об этом пока рано говорить.
Управление структурой сайта. Публикация контента отделена в системе от задачи редактирования структуры сайта. В системе предусмотрены специальный компонент конфигуратор для решения этой задачи.
Конфигуратор позволяет формировать структуру сайта, указывать шаблоны отображения главной страницы и страниц разделов, задать некоторые параметры оформления (меню, заголовки блоков, цвета, изображение в шапке) и первой страницы. Создание новых разделов делается легко.
В конфигураторе можно задавать привязывать файлы шаблонов к типам документам, разделам, управлять параметрами отображения документов различных типов в различных разделах сайта. Возможно даже непосредственно редактировать эти шаблоны в системе в текстовом поле.
Также через Web-интерфейс делается настройка свойств классов документов: полей, связывание классов документов, управление параметрами отображения документа, скажем, вариантами сортировки полей в форме ввода данных. Есть и возможность настройки интерактивных сервисов, используемых на сайте. Все это делается достаточно несложно. Однако, мало создать документы -- их нужно потом отображать, а вот для требуется настройка шаблонов отображения, что является задачей высокого уровня сложности.
Но управление шаблонами и классами документов могут пригодиться лишь квалифицированному по Optimizer администратору, собирающемуся менять сайт, но никак не редактору. Все эти операции достаточно сложны, как и вообще все в системе, что касается изменения шаблонов отображения.
Навигация и поиск. В принципе система интегрирована с поиском RCO и обеспечивает все типовые средства навигации -- меню, путь, списки ссылок, карту сайта.
Авторинг контента. Документы формируются через заполнение Web-форм, поля которых соответствуют атрибутам типов данных. Скажем, для новости атрибуты включают заголовок, основной текст, картинки и файловые вложения. Структура формы для заполнения полей настраивается в интерфейсе администратора.
При подготовке публикации в Optimizer.Net (не Optimizer 2.5) возможно использование WYSIWYG редактора (DHTML Editor) для полей в формате HTML. Он позволяет вставлять изображения, таблицы, списки, редактировать базовые свойства текста. Этот редактор предпочтительней редактора «Сайтистики», так как не использует ActiveX.
Правда, для copy-paste не поддерживается очистка HTML от тегов MS Word. Нет проверки правописания, поддержки drag-and-drop, проверки мертвых ссылок.
Заметим также, что работа со сложными документами, как многостраничные материалы, в Optimizer, в отличие от «Сайтистики», базово не предусмотрена.
С прикрепляемыми к документам картинками продукт работает более серьезно, чем «Сайтистика» -- позволяет обрезать края (расположение же изображения определяется автоматом), опираясь на бесплатную библиотеку Image Magik. Однако, он не позволяет масштабировать картинку.
Optimizer также позволяет управлять сразу всеми документами из одного места (раздел Документы, в котором документы сортируются по типам). Документы можно прикреплять к любым (одному или многим) инфоблокам в разных разделах сайта. Возможно также делать отложенные публикации через флаг невидимости документа.
Безопасность. Система позволяет регулировать доступ к разделам и документам на базе прав пользователей и групп. Права доступа наследуются по иерархии объектов, реализация вполне адекватная.
Авторизация через Active Directory возможна в заказном проекте. Вендор рекомендует заводить всех пользователей в системе, а затем привязывать их к учетным записям в Windows. Этот путь реализован и в «Сайтистике». Не рекомендуемой альтернативой может служить прямая аутентификация всех пользователей в Active Directory, однако это не позволит создавать в системе пользователей, отсутствующих в AD. В последнем случае нужно привязывать и группы пользователей AD к группам пользователей Optimizer.
В системе ведется отдельное журналирование истории внесения изменений в данные (документы и рубрики), что отличает ее от «Сайтистики», где подобный мониторинг интегрирован с общим мониторингом действий пользователей на сайте. Но это позволяет контролировать действия более детально -- скажем, посмотреть не просто, что пользователь менял документ, но и что именно он изменил, скажем в тексте документа.
Мониторинг действий конечных пользователей в Optimizer не встроен -- здесь продукт опирается на журналы IIS и решения третьих фирм.
Модули системы. Анализ показывает, что имеется довольно много модулей, но большая их часть не коробочна, а разрабатывалась на заказ.
Основные выводы
Если разработать один типовой сайт, а потом его размножать без изменений, то система вполне адекватна. Однако, поддержка сайтов будет затратная, так как малейшие изменения в дизайне сайта будут требовать участия разработчика. В этом она невыгодно отличается от RBC Contents -- cистеме не хватает визуального конструктора шаблонов страниц из простых блоков и механизма «наследования» шаблонов сайта.
В системе достаточно удобно делать совсем текущие операции администратора (такие, как настройка прав доступа) и редактора, в том числе по сравнению с Bitrix и QP7 Framework.
------------
[#sdfootnote1anc 1] Эти контроли представляют собой функуионирующие на сервере объекты, производящие отрисовку HTML-кусочков. При помощи разрабатываются в Visual Studio.Net в эти объекты можно инкапсулировать довольно сложную логику и презентационные элементы (чекбоксы, поля ввода и пр.). За динамическое изменение вида данных в объекте отвечает серверная часть объекта (она может быть на скриптовом языке, например C# Script) или JavaScript код в браузере. Компоненты ASCX довольно просто преврать в портлеты для SharePoint.
[#sdfootnote2anc 2] С точки зрения разработчика сайта, переход на .Net привел к тому, что оформление стало более «многословным», но внешне основанной на стандартах, и появилась возможность пользовать для разработки Visual Studio.
[#sdfootnote3anc 3] Интересно, что интерфейс администрирования выполнен также на базе системы и представляет собой такую же равнопрвную страницу сайта, как и остальные.
Рассмотрение по метрике
Раздел/Параметр/Некоторые ключи | Metric Optimizer.Net | |
1. Важные возможности | ||
1.1 Архитектура системы. (Объектные возможности, управление страницами) | ||
Возможность формировать объекты в системе из простых типов (дата, текст, и пр.), наследовать типы и расширять число атрибутов объекта. Возможность формировать шаблоны для отображения этих данных и формы для их ввода | Контент в системе представляет собой имеющие тип записи. Тип характеризуется набором атрибутов. Все записи конкретного типа хранятся в одном списке. За отрисовку записей в HTML отвечают шаблоны блоков. Все шаблоны пишутся в виде ASCX на языке разметки, основанном на XML, и серверном скриптовом языке. Одни шаблоны могут вызывать другие. Привязка шаблона блока к данным (записям) происходит в шаблоне страницы-раздела, который компонуется из инфоблоков. Из интерфейса администратора для конкретной записи можно указывать в какие из разделов сайта ее следует поместить (на шаблонах страниц раздела должны быть блоки, способные отображать запись), таким образом в разных разделах сайта в инфоблоках одного типа показываются разные записи. Для разделов в Конфигураторе можно назначать разрешенные к использованию в разделе типы документов. Данные записей лишь частично хранятся в СУБД. В файловой системе помещаются картинки, файлы вложений. | |
1.2. Многосайтовость в пределах системы | ||
- Возможность функционирования независимых сайтов в рамках одной инсталляции CMS | + | В новой версии Optimizer |
- возможность добавления (генерации) нового сайта командой администратора системы | +- | Предполагается создать скрипт, который будет создавать сайт по прототипу. Он будет сам регистрировать сайт в DNS, IIS и в системе. Прототип представляет собой backup эталонного сайта, но без данных |
- возможность управления коллекцией сайтов | - | |
- возможность присвоения сайту доменного имени | + | При настройке IIS Headers |
- настройка нового сайта администратором по готовому «шаблону» -- прототипу, включая автоматическое определение модулей, состава рубрик и способов отображения данных | + | см. выше |
- сохранение имеющегося сайта как шаблона для новых сайтов силами администратора системы | + | см. выше |
1.3. Многоязычность сайтов | ||
- Поддержка UTF-8 как гарантия многоязычности контента | + | |
- Двуязычность страниц сайта (русская и английская версии Интранет-сайта). Возможность переклечения между языковыми версиями с одной и той же страницы; | - | Нет языковые версии полностью независимы и никак не связаны. |
Примечания | ||
1.4. Персонализация контента | ||
- Изменение вида сайта в зависимости от конкретного регистрационного имени пользователя или входа на сайт как анонимного пользователя | +- | В принципе возможно программированием шаблона страниц разделов, где нужно вставить проверку прав пользователя |
- Изменение предпочтительного языка документов и интерфейса в зависимости от регистрационного имени пользователя | - | Нет |
- Возможность для зарегистрированного пользователя задать определенные параметры предпочтения (либо изменяемые самим пользователем, либо задаваемые в качестве групповой политики) | - | Только со сложным программированием |
2. Инструменты администратора и разработчика (Настройка структуры сайта, разработка структуры страниц и настройка их внешнего вида) | ||
- инструмент для разработки логической структуры сайта: разделов сайта, подразделов, связи страниц, создание иерархического меню, подключение готовых функциональных модулей | + | Для разработки разделов служат интерфейсы администрирования и конфигурирования. Назначать права доступа к разделам можно только в конфигураторе. Меню создается автоматически по рубрикатору разделов. Включение инфоблоков на страницу -- через программирование шаблона. |
- инструмент для настройки оформления сайта (логотипов, цветов, стилей) | - | Все настраивается, но только через программирование шаблонов |
- «мгновенная» смена всего дизайна уже созданного сайта путем автоматического изменения (обновления) используемых шаблонов | +- | Если испльзуется шаблон для всего сайта в целом, шаблон раздела перепределяет defaulе-страницу сайта |
- возможность задания разных шаблонов для страниц в разных разделах сайта | + | Для раздела возмоно установить ASP-файл для клиентской части. Для каждого документа могут быть разные шаблоны (обычный, шаблон печати и пр). |
- инструмент для разработки макета (шаблонов) страниц на основе блочной структуры (snippets). | +- | Страницы представляют собой наборы блоков, но разработка их -- это программирование ASCX, ведется вне системы (текстовый реактор, Visual Studio) |
- инструмент для добавления готовых визуальных блоков (портлетов) на страницы, возможность импорта блоков пр. | -+ | Только через программирование |
- универсальность портлетов (возможность беспроблемно добавить любой портлет в любую точку сайта и настроить его простыми средствами | + | |
- виды элементов на странице, возможность изменения порядка следования и взаимозависимостей элементов страницы (портлетов). Возможность вложенности блоков страницы. | + | Все это поддерживается |
- инструмент для разработки новых элементов страниц и блоков (портлетов) | - | Текстовый редактор, Visual Sudio |
3. Базовые инструменты редактора (Базовые механизмы публикации и обновления содержимого) | ||
- Помещение нового контента, документа на сайт средствами CMS | + | Да, через заполнение формы свойств соответствующей записи в интерфейсе администратора |
- Возможность редактирования существующего на сайте документа | + | В форме в интерфейсе администратора |
- Использование средств WYSIWYG для редактирования новостей, документов, страниц. | + | Да, предусмотрен WYSIWYG редактор HTML полей. В целом приемлемый, хотя пока в бета версии системы он не работает. Написан на DHTML. Возможность выравнивания, цвета, выделение, вставка картинок, гиперссылок. |
- Средства повышающие usability: Drag-N-Drop контента, массовая загрузка, проверка орфографии, очистка тегов Word | - | Нет ничего такого |
- Перенос существующего на сайте документа в другой подраздел | + | Списки документов жестко связаны только с типами документов. Документы публикуются в блоках, которые могут быть помещены в любой раздел |
- Возможность редактору создавать, изменять, переносить и удалять новые страницы, разделы и подразделы сайта | + | Да, как в интерфейсе администратора, так и конфигуратора |
- «Отложенная публикация». Редактируемая страница или материал не видны, пока не установлен флаг ее видимости. Возможность задания момента публикации (появления) «отложенного» документа на сайте, а также момента его архивации (исчезновения из списка активных документов) | + | |
- Возможность задания вручную прямых ссылок на «похожие документы». Наличие средств, облегчающих поиск «похожих документов» | - | Есть только связи документа с другими объектами. Как их использовать -- задача инфоблока |
- Возможность задать для документа перечень шаблонов его представления (стандартный, «для печати» и пр.) | + | Шаблоны задаются для всего сайта в целом |
- Инструмент редактора для подготовки Web-версий изображений средствами системы | +- | Позволяет обрезать края, но не масштабировать изображения |
- Возможность публикации одного документа сразу на нескольких сайтах, без создания его копий | - | Документ существует только в пределах сайта |
- Механизм workflow для подготовки документов. Возможность отключения механизма . | - | Workflow нет |
4. Готовые модули системы и блоки на страницах | ||
4.1 Навигационные элементы и поиск | ||
4.1.1. Навигационные элементы страницы | ||
- Меню сайта. | + | Да, готовый блок, отслеживает структуру разделов сайта автоматом. Список разделов располагается столбиком |
- Указание пути от вершины сайта до текущего места (портлеты/блоки на странице) | + | Есть навигационная панель |
- Карта сайта (блок), генерируемая автоматически | + | (в заказных проектах) |
- Смена отображения в одном портлете в зависимости от состояния другого | - | Только с перезагрузкой страницы |
- Другие особенности | ||
4.1.2. Ссылки | ||
- Блок показа небольшого списка коротких ссылок на странице. | + | |
- Блок для показа большого списка ссылок. | + | |
- Форма редактора для добавления ссылок. | + | |
4.1.3 Поиск | ||
- Наличие системы индексации и поиска. Охват поисковой подсистемой всех страниц сайта. | + | |
- Блок для ввода поисковой строки для размещения на страницах сайта | + | |
- Выделенная страница для расширенных настроек поиска | - | |
- Возможность поиска со словоформами русского языка | + | |
- Поиск среди внешних документов, помещаемых на сайт по ссылке | - | |
- Учет ограничений доступа при показе результатов поиска | + | |
- Поддержка на сайте документов на нескольких языках, индексация и поиск с использованием особенностей каждого языка | + | |
- Возможность поиска внутри документов | + | |
- Распознавание системой поиска разных версий одного документа | ||
4.2 Контентные элементы | ||
4.2.1. Обычные страницы и страницы пользователей | ||
- Возможность создавать страницы без "обрамления" шаблоном сайта и показывать их внутри портлетов на других страницах | +- | "Обычных" страниц как таковых нет. Все -- внутри инфоблоков CMS. Но это могут быть довольно большие документы HTML, если того позволяет инфоблок и настройки базы |
- Возможность создавать страницы по шаблонам сайта, но с произвольным набором портлетов внутри страницы | -+ | Структура страницы блочная, но собрать блоки в интерфейсе администратора невозможно. Требуется программирование |
- Псевдостатические URL. Генерация для динамических страниц системы URL, имеющих формат, характерный для статических страниц. Это упрощает навигацию для пользователя, индексацию сайта поисковым сервером и управление им. | - | Нет |
4.2.2. Новости | ||
- Блок для вывода короткого списка анонсов. | + | |
- Простая инициация добавления новостей | + | |
- Возможность "богатого" оформления анонса (добавление картинок, использование RichText). Отображение даты новостей. Наличие WYSIWYG редактора. | + | |
- Установка срока действия новости (момента появления). В анонсе и момента исчезновения из анонса). Архивация новости. | + | |
- Редактор для ввода основного текста новости в "богатом" формате, включения картинок, дат и таблиц. Наличие WYSIWYG редактора, шаблонов для вывода новостей (в том числе разных представлений -- для ПК, печати и пр). | + | |
- Возможность размещения анонса новости без ввода ее тела, т.е. новости размещенной на странице с URL | + | |
- Категоризация новостей (новости компании, ТЭК) | + | (разработка в заказном проекте). В принципе все достигается настройкой ASCX-блока вывода новости, а также заданием еще одного поля в типе документа |
- Рубрики новостей, флаги "важные новости", сортировки и группировки новостей и пр. | + | Задание еще одного поля, модификация блока вывода |
- Блок/портлет для вывода полного списка новостей. Фильтр новостей в списке по датам, темам | _ | |
- Возможность размещения текста новости во вложении (Word) | + | Требует небольшой настройки полей. |
- Особенности модуля | ||
4.2.3. Персональные страницы пользователей, списки пользователей | ||
4.2.4. Синдикация контента | ||
- Генерация сайтом потоков данных RSS В качестве источника данных. Получение (и частичная публикация) сайтом потоков данных RSS с других сайтов | ||
4.3 Списки, хранилища документови каталоги | ||
4.3.1. Списки и хранилища документов | ||
- Средства просмотра списка и изменения его элементов редактором. Возможность настраивать шаблон отображения элементов списка. Уровень эстетики отображения | + | Поле файл в возможных атрибутах есть. Остальное -- настройка шаблона вывода блока |
- Красочные шаблоны (портлеты) для просмотра списка пользователем | + | |
- Поддержка основных атрибутов документов (датой, аннотацией и вложением) | + | |
4.3.2. Обобщенные списки | ||
- Форма для ввода информации об элементе списка. Элемент списка формируется из стандартных полей -- число, дата, картинки, приложения (attachment). | -+ | Списки документов в системе настраиваются, но для правильного вывода их полей нужно переделывать шаблоны инфоблоков |
- Фильтрация списка по критериям, сортировка по критериям | # | |
- Инструмент формирования шаблона для короткого отображения данных элемента. Инструмент для формирования шаблона отображения перечня элементов списка. | # | |
4.3.3. Календари и списки мероприятий | ||
- Блок «календарь», с которого возможен переход на список мероприятий за конкретную дату. | + | (разработка в заказном проекте) |
- Блок для отображающая списка мероприятий. | + | |
- Блок для отображения подробной информации о мероприятии на странице | + | |
- Возможность категоризации мероприятий | + | |
- инструмент редактора для ввода информации о мероприятии. WYSIWYG оформление информации. Возможность включения картинок и файлов-вложений. | + | |
4.3.4. Каталоги | ||
- Средства создания каталогов редактором (желательно иерархических). Средства управления документами в каталогах (добавления, удаление, изменения). Рубрикация документов в каталогах по нескольким критериям | - | Списки документов -- плоские. Однако, представление на сайте можно запрограммировать сделать любое, в том числе иерархическое |
- Портлеты и списки представления каталогов (Шаблоны) | - | |
4.3.5. Фотогаллерея | ||
- Портлет для навигации пользователя по фотогаллереи. Thumbnail, Preview. | - | |
- Инструменты для добавления статических изображений и рубрикации | - | |
4.4 Интерактивные и динамические элементы | ||
4.4.1. FAQ | ||
- Список просмотра FAQ | + | Один из сервисов сайта |
- Готовая форма для ввода запроса | + | |
- Инструмент редактирования списка FAQ. Утверждение вопроса и ввода ответа редактором | + | |
4.4.2. Анкетирование | ||
- Возможность создать развернутую анкету (форму) для пользователя. | + | Сервис системы. (разработка в заказном проекте) |
- портлет для отображения анкет на страницах сайта | + | |
- Функционал складирования анкет и отправки их по email | + | |
- Просмотр списка опросов и списка заполненных анкет в опросе. Средства подсчета статистики | + | |
- Дополнения | ||
4.4.3. Банеры | ||
- Наличие «движка» для показа банеров. Блоки для показа банеров на страницах | + | |
- Настройка администратором типоразмеров и функциональных типов банеров. | + | |
- Настройка параметров целевого показа | - | |
4.4.4. Голосование | ||
- Форма для задания редактором вариантов выбора, инициации голосования, подведения итогов | + | Да, все довольно хорошо сделано. В том числе блокировка повторного голосования |
- Портлет для отображения опций выбора на страницах сайта. Должны поддерживаться варианты ответов: да/нет; один из нескольких; текст; | + | |
- портлет для просмотра результатов голосования пользователем на страницах сайта. | + | |
4.4.5. Графическая карта | ||
- Блок «графическая карта» | + | (разработка в заказном проекте) |
- Форма для настройки редактором действий по щелчку на карте, добавления новых активных зон на карте | + | |
4.4.6. Отзывы | ||
- Форма для ввода отзыва пользователем. | +- | Готового нет, в предложении по Конструктору сайтов нет, но в принципе делается |
- Форма для просмотра отзыва и утверждения редактором | +- | |
- Портлет показа пользователю «Списка коротких отзывов». Обеспечивает ссылку на страницу с «полным отзывом». Портлет для показа полного отзыва | +- | |
- Возможность привязки отзыва к материалу, размещенному на сайте | +- | |
4.4.7. Подписки и рассылки. | ||
- Механизм подписки пользователем на автоматически генерируемые рассылки-объявления. Готовые формы для подписки (ввод E-mail и реквизитов подписки) | + | Да, очень удобный механизм подписки. Можно указывать из каких разделов брать документы, в каких разделах выводить форму подписки. Можно задавать шаблоны сообщений. Можно смотреть историю рассылок |
- Возможность задания профиля по интересам при подписке на рассылку | + | |
- Редактирование списка подписчиков, его экспорт и импорт | +- | Редактировать список можно, экспортировать и импортировать -- нет |
- Формы инициации рассылки. Автоматическая рассылка. Рассылка подборки по команде («разослать») | + | Для конкретной подписки |
- Дополнения | ||
4.4.8. Форум | ||
- Возможность общения по темам. Трехуровневость. Название форума – Тема форума – Вопрос/ответ по теме. Заведение новых тем форума, как администратором сайта, так и пользователем. Создание произвольного количества форумов | + | |
- Оформление. Возможность RichText, вложений, картинок, смайликов, аватаров. Ограничение максимального размера сообщения; | -+ | Смайликов, аватаров нет. Ограничения размера сообщения |
- Автоуведомление пользователей и администраторов о добавленной теме/сообщении. Фильтры уведомлений. Настройка почтовых шаблонов для уведомлений; | + | |
- Автоматическое создание архивов сообщений; ограничение количества тем для одного архива; | - | Архивации не найдено. Можно только удалять |
- Пост-модерация форума; удаление, изменение, создание сообщений в форуме администратором/модератором; | + | |
- Разрешение добавления тем пользователями; | + | |
- Просмотр истории сообщений по конкретному пользователю. | + | |
4.4.9. Частные объявления | ||
- Модуль для просмотра каталога частных объявлений | ||
- Форма для публикации на сайте частных объявлений сотрудниками | ||
- Модерирование и предварительный просмотр объявлений администратором | ||
- Архивирование старых объявлений, удаление из доступа | ||
4.5 Вывод данных | ||
4.5.1. Работа с данными | ||
- Инструмент проектирования формы ввода данных и шаблона отображения данных, привязка форм к таблице СУБД. | +- | Система предусматривает возможность вывода в инфоблоке результата прямого запроса к БД |
- Представление элементов, заполняемых через форму, в виде списка. Фильтр списка. | +- | см. выше |
- Возможности импорта списка | - | |
4.5.2. Модуль «Глоссарий» | ||
- Управление списком глоссария редактором. Форма для ввода элемента глоссария | - | (требуется разработка на заказ) |
- Портлет для размещения оглавления глоссария и приложенного к нему списка терминов на страницах сайта | - | |
4.6. Другие готовые элементы страниц | ||
- Предопределенные разработчиком интерактивные элементы страницы | - | |
- Элементы для отображения в браузере документов стандартных типов (форматы Microsoft Word, RTF, Microsoft Excel и т. д.) | - | Нет |
Дополнения | ||
5. Безопасность | ||
5.1. Администрирование, разграничение доступа к контенту, ролевой доступ | ||
- Поддержка иерархии доменов администрирования (система сайтов в целом, сайт, раздел сайта) | + | Да, права доступа задаются в административном интерфейсе очень гибко. По разделам, типам документов, доступным операциям с сервисами. Варианты прав: чтение списка объектов, чтение, чтение собственных объектов, изменение, изменение собственных объектов, удаление, удаление собственных объектов, изменение прав, создание сообщений обсуждения, рейтинговать объект. |
- Возможность задания по каждому домену администрирования функциональных ролей, указание пользователей и групп эти роли исполняющие (как минимум «администратор», «дизайнер структуры», «дизайнер вида станиц», «редактор контента», «читатель»). Возможность задания для каждой роли набора допустимых действий | + | Поддерживается механизм на базе групп. |
- Поддержка работы анонимных и зарегистрированных пользователей | + | Возможна |
- Механизмы авторизации | + | По паролю и логину, через Active Directory |
- Интеграция системы разграничения доступа CMS со стандартными сервисами обеспечения безопасности, в первую очередь, Microsoft Active Directory | + | Предлагается интеграция с Active Directory для сквозной проверки прав. Группы пользователей предлагается вести в Optimizer |
- Настройка доступности отдельных подразделов или документов сайта. | + | Примечание. В ряде случаев проверка прав должна явно встраиваться в код шаблона |
5.2. Журналирование операций | ||
- Ведение лог-файлов по всем действиям пользователей, ведущих к изменению стояния сайта | + | По каждому документу и объекту ведется история. |
5.3. Журналирование действий конечных пользователей | ||
- Журналирование действий пользователя | - | Все средствами Web-сервера |
- Встроенные средств анализа журналов посещений сайтов | - | |
- Возможности экспорта данных о посещениях в стандартном виде для анализа специализированным ПО | - | |
5.4. Backup | ||
- Наличие средств архивирования и восстановления сайта, возможность архивирования без останова работы сайта | + | Да, возможно делать backup с данными или только структуры |
6.Удобство системы (эргономика) | ||
- Удобство инструментария по описанию структуры сайта | +- | Общая структура задается просто. |
- Удобство средств проектирования страниц | - | Инструментария нет |
- Удобство инструментария редактора контента | + | В целом нормально |
- Общая красота и настраиваемость интерфейса | + | Интерфейс вполне адекватный |
7. Технология | ||
7.1. Технологическая база | ||
- Среда исполнения (PHP, ASP.Net, Java и т.п.) | + | IIS, .Net Framework |
- Требования к операционной системе | + | Windows |
- Требования к СУБД | + | SQL Server |
- Требования к аппаратуре | ||
7.2. Интерфейс | ||
- Тип интерфейса инструментария по проектированию и управлению сайтом (Web-интерфейс, прикладная графическая программа, специальный язык, API). Управление документами через другие программные продукты | + | web интерфейс (на 95%) |
7.3. Конфигурации инсталляции | ||
Разные конфигурации сайта (рабочая, для разработка, тестовая, для авторинга и пр.) | - | Нет |
7.4. Производительность, кэширование, масштабируемость и обеспечение бесперебойной работы | ||
- Возможность исполнения на многопроцессорных комплексах | + | |
- Возможность создания кластеров высокой производительности | + | Средствами IIS |
- Возможность создания кластеров высокой надежности | ? | |
- Применение кэширования | ? | |
Оценка производителем оценки максимального количества работающих пользователей (сессий) | + | В принципе применяется на проектах, требующих большой производительности |
- Оценка производителем максимального количества обслуживаемых CMS запросов пользователей на показ страниц | ||
7.5. Интеграция с другими программами системами | ||
- Интеграция с Microsoft SharePoint Portal Server (портлеты, возможность включения сайтов CMS в поиск SPS, размещение ссылок на SPS с переходом без дополнительной авторизации) | +- | Базово нет, но производитель предлагает написать портлеты. |
- Возможность offline-импорта данных из различных программных систем и В различных форматах, В том числе XML | - | |
- Публикация данных из внешних СУБД | + | В принципе возможна |
- Использование Web-сервисов | - | |
- Интеграция с системами интеграции приложений и сходных с ними систем | - | Базово нет |
8. Организационно-ценовые вопросы | ||
8.1. Поставщик, поддержка | ||
- Местонахождение производителя | Москва, Гарант-Парк Интернет | |
- Оценка надежности компании-производителя | приемлемая | |
- Количество внедренных проектов в мире | несколько десятков | |
- Наличие российских партнеров, их надежность | ||
8.2. Отчуждаемость системы и поддержка | ||
- Степень отчуждаемости («коробочности») CMS | Система отчуждаема, но это внедряемая система, конструктор. Требуется программирование сайта | |
- Наличие поддержки пользователя и ее полнота | Есть | |
- Возможность получения системы в виде исходных кодов | Нет | |
8.3. Ценовые условия | ||
- Типы стоимости лицензий | N/A | |
- Годовые затраты на поддержку | ||
- Стоимость апгрейда системы |