IT architects are faced with the challenge of complexity in the design of enterprise-wide IT system. Complexity can be reduced by dividing the system into several subsystems. The paper proposes an approach to the separation of business processes into groups, in which members are closely linked but process groups as a whole are bound weakly. Architects can also use this approach as a tool for business processes and requirements analysis and design of functions, IT systems, subsystems or services in the SOA notation.

Создание ИТ-систем, их развитие и поддержка сегодня сталкиваются с многочисленными проблемами, которые, среди прочего, проявляются в росте числа подсистем, объемов данных и способов взаимодействия элементов корпоративных информационных систем. При этом неизбежно снижается управляемость корпоративных систем, а затраты на разработку, поддержку и развитие, так же как и время, необходимое для их изменения, неконтролируемо растут, что негативно отражается на ИТ-бюджетах и репутации ИТ-служб организаций. Показательным примером в этом отношении является намерение Сбербанка строить новую ИТ-платформу, опираясь на подходы, предполагающие разбиение крупных проектов на мелкие с целью ускорения их ввода в эксплуатацию. Однако для успеха таких подходов потребуется не только разбить проекты на небольшие части, но и разделить ИТ-системы на слабосвязанные элементы.

Сегодня имеется ряд методологий, фреймворков и «сводов знаний» по разработке, построению и управлению ИТ-системами в зависимости от структуры бизнес-процессов (TOGAF 9.1, SOA, PMBoK, ITIL и др.), которые содержат общие рекомендации по контролю сложности корпоративной информационной системы. Однако есть и более конкретный подход, основанный на построении набора относительно простых специализированных систем поддержки конкретных бизнес-процессов предприятия [1]. Такое разделение предполагает, что элементы, входящие в одну систему или подсистему, тесно связаны между собой, а элементы из разных подсистем взаимодействуют слабо. Главный недостаток этого подхода — сильная зависимость результатов от субъективных оценок, экспертных мнений, на основании которых обычно происходит разделение на системы и подсистемы.

Проблеме декомпозиции бизнес-процессов и построению иерархических структур данных посвящен ряд работ [2, 3], в которых структурирование данных фактически предлагается осуществлять методом перебора. Однако эту процедуру можно автоматизировать, анализируя матрицу «бизнес-процессы — данные». В отличие от определения BPM CBoK 3.0 [4], в данном случае бизнес-процесс не обязательно подразумевает создание ценности для конечного потребителя — ценность может создаваться для потребителя, находящегося внутри организации или ее подразделения. Такой подход помогает выявить «естественные» структуры бизнес-процессов, которые в дальнейшем могут быть использованы для построения рабочей иерархии процессов с учетом параметров, не входящих в модель, например организационной структуры.

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

Следуя концепции связности и сцепления структур [5], определим меру близости (связности) между двумя бизнес-процессами как количество общих элементов данных, обрабатываемых этими процессами. Затем можно построить матрицу связности группы бизнес-процессов. Предполагается, что чем больше одинаковых элементов данных обрабатывают два бизнес-процесса, тем выше их связность. Бизнес-процессы, не обрабатывающие ни одного общего элемента данных, изолированы друг от друга, их связность равна нулю. Типичная трехмерная диаграмма, визуализирующая матрицу связности, представлена на рис. 1.

 

Рис. 1. Пример связности бизнес-процессов
Рис. 1. Пример связности бизнес-процессов

 

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

Метод анализа матрицы «бизнес-процессы — данные» предусматривает составление списка бизнес-процессов и элементов обрабатываемых ими данных, а затем формирование матрицы «бизнес-процессы — элементы данных», ячейки которой содержат «0», если элемент данных не обрабатывается соответствующим бизнес-процессом, и «1», если элемент данных обрабатывается бизнес-процессом (рис. 2). Далее эта матрица подается на вход некоторого алгоритма кластеризации, а полученные кластеры (группы бизнес-процессов) еще раз подвергаются кластеризации, чтобы выявить структуры внутри уже полученных структур (напрямую алгоритмы иерархической кластеризации в данном случае работают плохо). В результате формируется иерархическая структура бизнес-процессов.

 

Рис. 2. Фрагмент матрицы «бизнес-процессы — элементы данных»
Рис. 2. Фрагмент матрицы «бизнес-процессы — элементы данных»

 

Данный алгоритм опробован на матрице из 780 бизнес-процессов и 450 элементов данных, а для кластеризации использовался пакет IBM SPSS Modeler. На первом шаге все процессы были разделены на две группы. Коэффициент связности (отношение количества связей внутри группы к количеству внешних связей) равнялся 27 для первой группы и 15 для второй, а дальнейшая кластеризация первой группы дала коэффициенты связности 56 для первой подгруппы и 36 для второй подгруппы. Таким образом, бизнес-процессы были разделены на относительно изолированные группы и при этом интерфейсы передачи данных между выделенными в результате кластеризации группами бизнес-процессов были определены в явном виде — получены списки элементов данных, обрабатываемых совместно различными группами бизнес-процессов.

С практической точки зрения полученные результаты позволили уточнить функциональные требования к подсистемам и модулям, входящим в состав корпоративной ERP-системы, и дать рекомендации по минимизации информационных обменов между ними.

***

Предлагаемый подход может быть использован при проектировании не только функциональной архитектуры ИТ-систем, но и бизнес-архитектуры. При этом в качестве элементов данных необходимо рассматривать модели бизнес-объектов, включающие как информационные, так и материальные и финансовые потоки, а также элементы организационной структуры. Этот метод дает возможность ИТ-архитектору выявить естественные структуры в модели бизнес-процессов предприятия. Далее эти структуры могут использоваться для формирования функциональных требований к системам и подсистемам, автоматизирующим полученные группы бизнес-процессов, а также требований к интерфейсам. Спроектированные системы и подсистемы будут обладать известными свойствами слабосвязанных систем — в частности, более простой для их понимания и сопровождения структурой.

Литература

  1. Roger Sessions. Simple architecture for complex Enterprise // Microsoft Press. — 2008. — 208 p.
  2. Moody D.L. A decomposition Method for Entity Relationship Models: A Systems Theoretic Approach //Proceedings of the 21 International Conference on Information Systems, ICIS 2000, Brisbane, Australia. 2000, December 10–13. P. 462–469.
  3. Игорь Федоров. Проектирование модели бизнес процессов // Открытые системы. СУБД. — 2013. — № 05. — С. 46–49. URL: http://www.osp.ru/os/2013/05/13035999 (дата обращения: 18.03.2016).
  4. Свод знаний по управлению бизнес-процессами (BPM CBoK 3.0). — Перевод с английского под редакцией Белайчука А.А., Елиферова В.Г. — М.: АПУБП, 2015. — 432 с. / Guide to the Business Process Management Body of Knowledge (BPM CBoK 3.0) — ABPMP, 2013. — 445 c.
  5. Калянов Г.Н. CASE-технологии. Консалтинг в автоматизации бизнес-процессов. — 3-е изд. — М.: Горячая линия-Телеком, 2002. — 320 с.

Евгений Смирных (e_smirnykh@rn-inform.ru) — старший архитектор, компания «РН-Информ» (НК «Роснефть»).