Решать задачу создания корпоративного портала можно множеством способов: внедрить интегрированное решение Microsoft Sharepoint, адаптировать одно из распространенных wiki-решений, использовать систему «1C-Битрикс» или же самостоятельно разработать решение, отвечающее задачам конкретной организации…
В ситуации, когда бюджет проекта ограничен, а задачи включают в себя создание базы знаний и обеспечение коммуникаций между сотрудниками, одним из перспективных вариантов становится создание портала на базе Drupal — открытой системы управления Web‑содержимым. Обширное сообщество разработчиков и богатый выбор дополнительных модулей для Drupal позволяют создавать корпоративные порталы с самыми разными возможностями. В этой статье описан опыт внедрения Drupal в качестве внутреннего портала холдинга «Система Масс-Медиа» (в составе АФК «Система»).
Что такое Drupal
История системы началась в 2001г., когда Дрис Байтаерт опубликовал для всех желающих код разрабатываемого им Web-форума. С тех пор код Drupal открыт и доступен для всех по свободной лицензии GPL (она же используется в Linux). Система прошла долгий путь развития, было выпущено шесть версий, и за это время вокруг нее образовалось обширное сообщество разработчиков.
Основная задача системы — управление Web‑содержимым. В Drupal можно создавать произвольные типы документов (так называемых нод), учетные записи пользователей с разными правами доступа, комментировать и редактировать содержимое. Одной из главных особенностей Drupal стала модульность: для того чтобы доработать функционал и добавить совершенно новые возможности, не требуется изменять «ядро» системы: необходимый код можно оформить в виде дополнительного модуля, а затем, если есть желание, опубликовать на сайте Drupal: тогда и другие разработчики смогут улучшать этот модуль и пользоваться им.
Те, кому не хватает возможностей системы, могут найти нужный им модуль в Интернете или написать его. Многие используют Drupal не как основу для простых сайтов, а как набор библиотек для реализации самых разных Web-приложений. Модулей, опубликованных на официальном сайте, уже достаточно для того, чтобы разрабатывать онлайн‑сообщества, интернет-магазины, базы знаний и новостные порталы практически без привлечения программистов.
За последние два-три года Drupal приобрел популярность и на корпоративном рынке. Одним из самых ярких примеров доверия к системе стало то, что именно она была выбрана для сайта правительства США whitehouse.gov и британского государственного портала Data.gov.uk. В США и Европе появилось множество компаний, предоставляющих услуги по разработке и поддержке сайтов на основе Drupal. Дело сдвинулось с мертвой точки: первые шаги в сторону корпоративного рынка привлекли внимание разработчиков и заказчиков к системе, а это, в свою очередь, ускорило темп внедрения. Уже проведенных внедрений достаточно для того, чтобы корпоративный рынок доверился открытому решению.
Возможности Drupal сделали его привлекательным для создания внутрикорпоративных порталов. Так, компания Development Seed на его основе выпустила систему OpenAtrium (http://openatrium.com/). OpenAtrium представляет собой доработанный Drupal, сразу реализующий возможности, типичные для внутреннего сайта компании: блоги, календарь событий, групповую работу с документами и файлами, планировщик задач. Код, созданный в рамках этого проекта, дополняет функциональность открытых модулей и может быть использован в любых других проектах согласно лицензии GPL. Даже те, кто не применяет сам код OpenAtrium, могут воспользоваться его модулями и получить ту же функциональность в своих системах.
Drupal в компании «Система Масс-Медиа»
Задача создания корпоративного портала для холдинга «Система Масс-Медиа» (СММ) встала перед отделом Web-разработок летом 2009г. С самого начала работы отдел использовал Drupal для создания интернет-проектов, поэтому данная система рассматривалась как вероятная основа для внутреннего портала. Собрав требования по проекту, мы убедились в том, что значительных доработок не потребуется и проект может быть выполнен на основе Drupal в срок и с малым бюджетом. В качестве вероятной основы портала рассматривался OpenAtrium. Но проект еще находился в состоянии альфа-тестирования, а его функционал слабо пересекался с требуемым, и поэтому решено было использовать оригинальную поставку Drupal 6. Команда, работающая над проектом, включала руководителя проекта, Drupal-разработчика, дизайнера интерфейсов, контент-менеджера и подрядчика, выполняющего верстку дизайн-макетов. Перед ними стояли следующие цели: создать единое пространство для коммуникаций внутри компании, уменьшить поток массовых рассылок в электронной почте сотрудников, обеспечить сотрудникам доступ ко всей необходимой им информации. Было решено проводить работы поэтапно, постепенно добавляя новые возможности для пользователей.
План работ для первого этапа проекта был рассчитан на полтора месяца и включал в себя «фундамент» для будущих работ и наиболее важные интеграционные составляющие. Так, портал должен был авторизовать пользователей с теми же паролями, которые они используют для входа в корпоративную сеть. Визуальный дизайн и информационная архитектура изначально проектировались в расчете на добавление в будущем новых разделов и пунктов меню.
Верстка для Drupal имеет определенный набор требований, которые приходится учитывать в работе. Зная об этих особенностях, команда решила пригласить для верстки подрядчика с большим опытом работы на Drupal. От него мы получили уже готовую тему оформления, что сэкономило нам время и позволило избежать проблем адаптации.
Использование модуля интеграции с LDAP решило проблему авторизации. Так как холдинг СММ включает в себя несколько компаний со своими доменными зонами, пришлось использовать несколько справочников LDAP. Тот же модуль позволил нам добавить на портал адресную книгу предприятия с удобным поиском. Потребовалось написать модуль, автоматически назначающий наборы прав доступа различным сотрудникам при авторизации через корпоративную учетную запись.
Первый выпуск корпоративного интранет-портала вышел в ожидаемые сроки. Он включал в себя новости компании, адресную книгу с возможностью поиска и добавления в избранное, каталог документов компании с возможностью поиска и скачивания, бланки заявок для сотрудников, а также списки часто задаваемых вопросов о компании. В ходе тестовой эксплуатации мы решили добавить предпросмотр документов и корпоративной газеты прямо на страницы портала. Для этого Drupal-разработчик написал модуль, отображающий PDF-документы на странице без необходимости скачивать файлы.
На следующих этапах мы добавили на портал фотогалереи, которые могут пополнять своими снимками все сотрудники компании. Важным этапом стала автоматизация приема заявок от сотрудников в отдел АХО: разработчик добавил модуль, чтобы начальники отделов и сотрудники АХО получали оповещения о новых заявках и могли пустить их в работу или отклонить с указанием причины.
Потенциал системы поможет в будущем реализовывать намного более сложные функции. Например, встроенный механизм контроля изменений позволяет вести совместную работу над документами с отслеживанием версий и исправлений. Модуль Storm содержит всё необходимое для организации управления задачами и даже создания несложной CRM‑системы. Перед внедрением этих модулей в корпоративном портале сотрудники Web-отдела использовали их в своих целях, в том числе для организации работы внутри отдела, чтобы убедиться в их качестве.
Мы оцениваем это внедрение Drupal как успешное по нескольким причинам. Во-первых, оно позволило нам быстро и эффективно удовлетворить бизнес-требования, во‑вторых, сохранило гибкость для дальнейшего развития, в‑третьих, не потребовало вложений в ИТ-инфраструктуру: одного сервера с установленным свободным ПО (Linux, Apache, PHP, MySQL) достаточно для поддержки работы системы. Пользователи высоко оценили удобство портала — отчасти благодаря тому, что система контроля прав доступа скрывает все ненужные и неактуальные для конкретного сотрудника разделы.
Однако есть несколько условий, соблюдение которых позволило нам успешно завершить проект. Для разработки подобного проекта крайне желательно иметь в штате компании эксперта‑специалиста по Drupal с опытом создания коммуникационных систем на этой платформе (опыт большинства разработчиков, к сожалению, сводится к созданию простых статических сайтов‑визиток). Опытный разработчик сможет намного точнее оценивать риски проекта и сроки решения определенных задач. Опыт работы в Drupal потребуется каждому участнику проекта: руководитель проекта сможет точнее оценить критический путь и реалистичность сроков работы, программист корректнее и быстрее реализует необходимый функционал, контент-менеджер быстрее разберется в премудростях управления страницами и комментариями. К сожалению, пока в России не так много экспертов с опытом внедрения нетривиальных проектов на Drupal. Однако сообщество Drupal в России активно развивается и расширяется. Так, например, 16—17 апреля этого года пройдет конференция DrupalCamp (официальный сайт http://moscow.drupalcamp.ru/ru), на которой можно будет узнать ответы на интересующие вопросы у разработчиков и пользователей системы.
Расширение русскоязычного сообщества, новые возможности разрабатываемой сейчас версии Drupal 7 и первые крупные внедрения Drupal в России (включая новостной портал Forbes) позволяют надеяться на то, что в ближайшем будущем популярность системы в корпоративном секторе станет быстро расти. Несмотря на конкуренцию среди коммерческих систем, возможности Drupal — гибкая расширяемость, удобство для разработчиков, низкая стоимость внедрения — делают его достойным кандидатом на роль корпоративного Web-решения.