Статья

Архитектура CompanyMedia: все как в вебе

Документооборот Интертраст

Архитектура определяет все будущие возможности системы: насколько она будет масштабируемой, производительной, гибкой, и в итоге — насколько успешной на рынке. Поэтому архитекторы просто обязаны заложить все ее будущие возможности еще на "нулевом" цикле разработки. Как же это было сделано в новой CompanyMedia?

Конечно, это другие риски и другой объем работы, никто так не делает, ни одной системы в подобной архитектуре лично мне неизвестно. Иногда бывают интеграторские проекты с использованием CMIS, но не промышленные системы".

Сам стандарт CMIS тогда был еще недостаточно проработан, отсутствовала практика проектов, поэтому взять его за основу архитектуры системы было рискованно.

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


Если для собора 100 лет на строительство - это нормально, ведь любой приличный храм должен строиться лет двести-триста, то для информационных систем такой подход не годится

Сейчас разработка новой CompanyMedia идет полным ходом, приоритетность включения ECM-платформ в число поддерживаемых определяется, в первую очередь, пожеланиями крупных заказчиков, которые по разным обстоятельствам собираются мигрировать с Lotus Domino кто на IBM FileNet, кто на OpenText. Технически нет видимых препятствий обеспечить поддержку Documentum, Alfresco или Oraсle.

Бизнес-процессы определяют работу СЭД

Ядро системы – это ее бизнес-логика, от реализации которой зависит функциональность и производительность системы. CMIS не был единственным стандартом, который повлиял на развитие архитектуры CompanyMedia, в части описания бизнес-процессов разработчики "Интертраст" решили следовать стандарту BPMN.

REST – не стандарт, не паттерн, а архитектурный стиль
Крупнейшей реализацией системы, соответствующей архитектурному стилю REST, является Всемирная паутина (world wide web). CompanyMedia новой архитектуры будет этому стилю соответствовать. В основе REST лежит ресурсно-ориентированный подход, в котором центральное место отводится объектам (ресурсам). Клиенту достаточно знать простую фиксированную точку входа в приложение и MIME-типы ресурсов, для работы с которыми он предназначен. Трансформация СОА + REST обеспечивает веб-ориентированную архитектуру: не просто систему с веб-клиентом / несколькими веб-клиентами, но архитектуру системы, протоколы работы, форматы данных серверной части которой известны, опубликованы официально и доступны любым клиентам, которые могут с ней работать.
Таким образом, взаимодействие с CompanyMedia 4/5 будет осуществляться при помощи API, построенного на принципах REST.

По словам Владимира Панова, за счет выноса бизнес-логики в отдельный модуль ее стало возможным реализовать более универсально, расширяемо и так далее. В это время как раз стал популярным BPMN (версия 1.2 вышла в январе 2009). И уже в мире в целом накопилась некоторая экспертиза – еще не в России, а за рубежом.

"BPMN 2.0 собственно впервые решил проблему исполняемых процессов, формализуемых в такой нотации. (Разработка версии 2.0 шла давно, вышла в январе 2011г.) Она оказалась достаточно развитой, но не настолько сложной, чтобы ей не мог никто пользоваться, и в то же время достаточно выразительной, чтобы определять исполняемые процессы. А у нас уже был опыт с предыдущей версией. И тут появилась почти уверенность, что на этой основе мы сможем реализовывать свою бизнес-логику, сделать ее более универсальной и расширяемой", - рассказывает эксперт.

После внимательного изучения рынка движок бизнес-процессов было решено оставить собственный. Ведь этот компонент фактически и содержит в себе всю экспертизу, все знания в предметной области, которые позволили"Интертраст" создать образ профессиональной и ответственной команды. Разработчики посчитали, что переписывать все наработки на каком-то внешнем средстве класса BPM было бы нерационально.

Людей встречают по одежке, а системы — по пользовательскому интерфейсу

Заказчики в один голос требовали веб-интерфейс. И при этом они хотели, чтоб этот интерфейс был бы настолько же быстрым и функциональным, как привычный декстоп Windows. Конечно, это не вопрос дизайна, это вопрос архитектуры. Конечно, у CompanyMedia уже был веб-интерфейс, но пользователей он не удовлетворял. И это не была вина разработчиков, веб-решения первой волны все были несколько неуклюжими вследствие неразвитости стандартов и технологий.

Как рассказывает Владимир Панов, сначала разработчики обратили внимание на HTML5, еще один стандарт, набирающий популярность. У Adobe Flex в процессе дотошных исследований были найдены определенные проблемы, не фатальные, но неприятные. С другой стороны, HTML5 быстро развивался, стала возможной разработка Rich Internet Application, RIA.

Было понятно, что клиент должен быть интерактивным, это требование остается. Но его реализация стала возможна чисто браузерными средствами, без технологий типа Flash или Flex. И дальше осталось выбрать платформу для разработки. В итоге остановились на Google Web Toolkit, GWT, но не сразу.

Функциональный дизайн системы и внешний вид "Интертраст" разрабатывал в сотрудничестве со "Студией Артемия Лебедева". Такой выбор партнера объясняется отнюдь не желанием поразить своих заказчиков или пустить им пыль в глаза. От дизайнеров ждали не просто красивые картинки, а систему, которой людям удобно будет пользоваться. Кстати, вот как выглядит кликабельный макет будущей CompanyMedia.

Интероперабельность нужна обязательно

Сейчас "Интертраст" активно развивает веб- и мобильный клиенты. Но их спектр может и расширяться. Архитектура сервера должна строиться так, чтобы при появлении нового клиента не возрастали нагрузки на сервер. Новые версии СЭД CompanyMedia будут строиться по принципу сервисно-ориентированной архитектуры, СОА с использованием концепции Representational State Transfer, REST, это стиль архитектуры программного обеспечения для распределенных гипермедиасистем, подобных Всемирной паутине.

Как прокомментировал Владимир Панов, гипертексты и гипермедиа изначально организованы по принципам REST. Информационная система в этом случает строится по-другому, она состоит из клиентов и серверов (не в аппаратном, а чисто в логическом смысле). Клиенты инициируют запросы к серверам; серверы обрабатывают запросы и возвращают подходящие ответы. Запросы и ответы создаются на базе передачи представлений ресурсов. Он может являться практически любым понятным и значимым адресуемым объектом. Представление ресурса — это обычно документ, отражающий текущее или требуемое состояние ресурса. Весь этот механизм реализуется в протоколе HTTP.

И получалось, что много лет, с начала 2000-х интернет в значительной степени использовали неправильно, нарушая постоянно, сплошь и рядом, изначальный архитектурный подход REST.

В системе CompanyMedia больше ресурсов, чем где бы то ни было (в том смысле, как подразумевает REST). Эксперт уверен, что на принципах REST компании удастся построить более открытую клиент-серверную архитектуру. Спецификация REST API для CompanyMedia 4/5 будет опубликована по адресу: https://sup.inttrust.ru:8446/prjdocs/cmj/specs/internal/rest.html".

Станислав Макаров / CNews