Разработка автоматизированной системы для документооборота. Реферат вопрос о необходимости автоматизации управления документооборотом давно перешел в практическую плоскость, и все больше российских предприятий внедряют у себя системы электронного документооборота,
Скачать 3.12 Mb.
|
5.2 Функциональное описание системы интеллектуального анализа. Наиболее общий взгляд, с точки зрения пользователя, на систему интеллектуального анализа выполнения бизнес-процессов в управлении электронным документооборотом может дать диаграмма использования (Рисунок 5.1), которая отображает в разрезе СЭД основные предоставляемые функции: Рисунок 5.1 - Диаграмма использования системы интеллектуального анализа бизнес- процессов в электронном документообороте Как видно из рисунка, основным действующим лицом при использовании системы выступает аналитик. Под аналитиком понимается роль, выполнять которую могут различные сотрудники отдела, выполняющие внедрение WFMS на базе СЭД. При обычном течении процесса аналитик осуществляет моделирование процесса вручную, рисуя схему в редакторе бизнес- процессов. С использованием системы интеллектуального анализа бизнес-процесса у него появляются качественно новые возможности, посредством следующих функций: 91 Восстановление моделей бизнес-процессов. На основе журналов бизнес-процессов, которые хранятся в локальной БД, аналитик может получать восстановленные МАБП, которые в дальнейшем можно редактировать во встроенном редакторе. Такой интегрированный подход к формированию МАБП позволяет сократить временные затраты на переключение между внешним редактором моделей и программой интеллектуального анализа. Восстановление моделей может осуществляться с использованием нескольких алгоритмов, доступ к которым предоставляется аналитику [13]. Часто в результате работы таких алгоритмов получаются различные модели. Выявление различий программным образом ускоряет процесс разработки конечной версии МАБП. Верификация. Восстановленную модель необходимо проверить на корректность в соответствии с заданными критериями корректности, в зависимости от WFMS, для которой предназначаются эти МАБП. Валидация. Аналитик должен ясно представлять, какие из этапов в полученной МБАП наиболее адекватны реальному выполнению бизнес-процесса. Сбор журналов выполнения. Ввиду различия конкретных СЭД и, в частности, представления информации в них необходимо разработать методы получения журналов выполнения бизнес-процессов для каждой из систем в отдельности. Оценка параметров эффективности. Помимо МАБП, на основе журналов выполнения бизнес-процессов можно получить большое количество дополнительной, полезной информации: о возможности циклического взаимодействия между руководителем и подчиненным, получения социальных сетей, оценки загруженности сотрудников в разные периоды времени и т.п. Поиск частых подпоследовательностей. Позволяет выявить наиболее часто используемые маршруты, по которым работает бизнес-процесс. Анализ доступен за некоторый заданный период времени. Подобная функциональность может прояснить многие процессы, происходящие внутри организации, глобальные зависимости в бизнес-процессе. Сохранение результатов работы. Система должна предоставлять возможность возобновить работу без потери времени пользователя. Конвертация моделей. Различные WFMS работают с использованием зачастую уникальных нотаций отображения бизнес-процессов, таких, как EPC, сети Петри, IDEF3 и пр. Предоставление средств конвертации моделей позволяет не только 92 создавать модели для конкретной WFMS, но и переносить модели из одной WFMS в другую. Редактирование МАБП. Наиболее используемый функционал, недостатки работы которого резко снижают применимость всей системы. Сравнение МАБП. Дополнительный функционал, позволяющий найти отличия в двух моделях, графически выделяя их. Сбор журналов бизнес-процессов также логически относится к системе интеллектуального анализа [13]. Алгоритм сбора реализуется индивидуально для каждой системы электронного документооборота в отдельности, предоставляя лишь общий интерфейс для взаимодействия с сиcтемой интеллектуального анализа. Подсистема интеграции взаимодействует с системой электронного документооборота через этот плагин. На СЭД лежит функция по регистрации и хранению документов (Рисунок 5.2). Предполагается, что информация о движении документов между пользователями хранится в базе данных системы в особом формате. Для каждого типа документа существует уникальный набор атрибутов, присутствующих в регистрационной карточке. Набор атрибутов определяется на стадии внедрения системы электронного документооборота, кроме того, количество различных типов документов в системе постоянно меняется – появляются новые, исчезают некоторые старые и т.п., иными словами, это динамическая эволюционирующая система. Процесс регистрации нового типа документа (Рисунок 5.3) состоит из следующих этапов: Рисунок 5.2 - Разработка регистрационных карточек электронных документов Определение списка атрибутов документа нового типа. Определение необходимых атрибутов производится аналитиком (администратором записей) на основе исследования заявки на создание нового типа документа. В данном случае 93 достаточно популярным является подход последовательного улучшения карточки путем чередующихся этапов моделирования карточки и консультаций с реальными пользователями этого типа документа. В качестве результата данного этапа получаем список параметров, которые должны быть внесены еще на этапе регистрации документа. Составление дизайна регистрационной карточки. Здесь происходит механическое воплощение предыдущего этапа с помощью редактора регистрационных карточек документов. Написание скрипта регистрационной карточки и связывание с необходимыми шаблонами. Часто, помимо регистрационной карточки у документа еще есть и шаблон, на основе которого он генерируется (т.е. в карточке заполняются ее атрибуты, которые автоматически вставляются в шаблон в прописанные предварительно места). Получаемый таким образом документ заметно выигрывает в сравнении с создаваемым вручную – в нем не возможны опечатки, расхождения с данными в БД, получаемые документы единообразны и т.п. Сохранение регистрационной карточки в репозитории. Дальше регистрационная карточка должна быть сохранена в БД, должна быть предоставлена возможность сохранения различных версий карточек, редактирования, поиска нужных карточек. Тестирование регистрационной карточки. Перед промышленным использованием регистрационной карточки ее необходимо тщательно протестировать. Часто тестирование регистрационной карточки и ее создание осуществляются разными людьми, что повышает вероятность ошибок. 5.3 Воздействие системы интеллектуального анализа на бизнес-процессы СЭД. Внедрение и использование системы интеллектуального анализа не приводят к изменению бизнес-процессов работы с СЭД. Появляется лишь новый инструментарий для выполнения задач в рамках бизнес-процесса (рис. 19). Рассмотрим подробнее качественные изменения, происходящие внутри бизнес-процесса. Кроме нового типа документа и его регистрационной карточки разрабатывается маршрут (МАБП), по которому должны двигаться документы данного типа. Процесс разработки (Рисунок 5.3) состоит из следующих этапов: 94 Рисунок 5.3 - Управление маршрутами движения Разработка нового маршрута для документа. МАБП должен быть связан с пользователями, которые вовлечены в бизнес-процесс, с другими типами документов. Сохранение маршрута в репозитории. Как и регистрационная карточка, маршрут должен быть сохранен в репозитории для возможности дальнейшей модификации его аналитиком. Современная СЭД поддерживает версионность маршрутов. Постановка документа на маршрут. Аналитик при редактировании маршрута должен иметь возможность связать его с той или иной регистрационной карточкой документа. Контроль движения документа по маршруту. При движении документа по маршруту возможность выявления, на каком этапе он находится, и при необходимости воздействия на это движение должна входить в функционал системы управления электронным документооборотом. Анализ эффективности маршрута. После введения маршрута в эксплуатацию по нему накапливается некоторая статистика, анализ которой может значительно улучшить бизнес-процесс. На этапе происходит использование системы интеллектуального анализа, которая качественно улучшает выполнение этого пункта посредством предоставления информации об актуальном положении вещей. Наиболее частыми недостатками являются движение документа через начальника другому подчиненного (здесь нужно применить движение от подчиненного к 95 подчиненному), направление документа не тому сотруднику, перегруженность некоторых сотрудников документами и т.п. Пользователь СЭД производит регистрацию документов в системе электронного документооборота для того, чтобы передать документы быстрым способом от одного пользователя к другому, сохранить документы в БД СЭД с дальнейшей возможностью их найти, с целью генерации отчетов по документообороту и т.п. 5.4 Разработка архитектуры системы интеллектуального анализа. Разрабатывая архитектуру системы [12], следует учесть требования к системе, указанные выше. Результирующая архитектура не должна являться ограничением при добавлении новых алгоритмов в систему, вариация количества алгоритмов системы позволяет увеличить гибкость, снизить стоимость владения и является дополнительным стимулом к внедрению. Проектирование взаимодействия компонент системы. Центральным моментом в реализации архитектуры системы [13] является реализация ее на идеологии плагинов, адаптированной под специфику интеллектуального анализа. Разработанная система интеллектуального анализа предоставляет возможность добавлять новые алгоритмы восстановления МАБП к уже существующим, что возможно благодаря реализации алгоритмов за пределами самой платформы [14]. Для пользователя доступ к этим алгоритмам осуществляется посредством пунктов главного меню, количество которых меняется в зависимости от количества сборок, представленных в системе на текущий момент. Сборки, содержащие алгоритмы, представляются в виде «черного ящика» с четко определенным внешним интерфейсом и подключаются независимо от других сборок [38]. При выполнении алгоритма восстановления МАБП управление полностью передается основному вычислительному потоку приложения, что накладывает жесткие требования по безопасности и производительности при реализации [15]. Запуск сборок в отдельном вычислительном потоке является единственным средством защиты системы интеллектуального анализа от некорректной реализации. Поддержка выполнения алгоритмов восстановления МАБП со стороны платформы заключается в предоставлении интерфейсов для работы с бизнес-процессами в базовом формате (WF-сети), алгоритмов работы с сетями Петри, алгоритмов работы с эвристическими сетями, с записями журналов выполнения, средствами подсчета статистики в журналах выполнения бизнес- процессов, средствами конвертации бизнес-процессов, предоставление средств для чтения и конвертации журналов из разных форматов. Сборки NET хранятся в подпапке рабочей папки системы интеллектуального анализа вместе с конфигурационными ini-файлами (Рисунок 5.4), степень вложенности этих папок не 96 ограничена. Ini-файл содержит в себе секции, описывающие тип плагина (алгоритм восстановления МАБП, алгоритм валидации, алгоритм верификации и т.п.). При загрузке системы интеллектуального анализа выполнения бизнес-процессов ее подсистема «Загрузчик плагинов» (Рисунок 5.4) производит поиск всех доступных на текущий момент сборок, загружает их в случае корректной реализации всех интерфейсов, игнорируя загрузку некорректных плагинов. Для этого система интеллектуального анализа передает в загрузчик путь на диске к сборкам NET, получаемый ею из конфигурационного файла приложения. Рисунок 5.4 - Загрузка плагинов в среду Плагин реализует интерфейс, вызывая который, система интеллектуального анализа показывает диалоговое окно (GUI) с параметрами работы алгоритма. Более того, блок GUI (рис. 21) включает в себя изменение главного меню для предоставления возможности вызова алгоритма. В плагине содержатся: описания главного и контекстных меню, ресурсные строки для диалоговых окон, классы, реализующие предписанные интерфейсы. Возможность вызова алгоритма определяется на основе ряда параметров: доступ к хранилищу журналов бизнес- процессов, наличие модели бизнес-процесса в редакторе, изменения в модели с момента предыдущего вызова. Наличие этих условий проверяется подсистемой «Активатор плагинов» посредст-вом логики, включенной в сам плагин (рис. 20). При успешной проверке условий корректности «Активатор плагинов» создает экземпляры классов по заданному интерфейсу. Одновременно в системе присутствует множество плагинов, для каждого из которых создается свой набор экземпляров объектов, используемых всей системой. Решение о создании нового экземпляра принимает пользователь посредством вызова команды меню (т.е. пользователь может воздействовать на этот процесс исключительно посредством GUI). 97 Реализация системы интеллектуального анализа выполнения движения документов в системе электронного документооборота, основанной на использовании идеологии плагинов, обеспечивает ей гибкость, возможность внесения нового функционала, дополнительных алгоритмов, расширение и изменения существующих алгоритмов без модификации платформы, что особенно выгодно при относительно новой и интенсивно развивающейся предметной области. Работа компоненты восстановления МАБП в системе интеллектуального анализа. Ключевая компонента в системе интеллектуального анализа – компонента с алгоритмами восстановления МАБП. Выше отмечалось различие подходов при восстановлении моделей – можно использовать различную структуру журнала выполнения, получать на выходе модели вразличных нотациях, нужны особые структуры представления данных (например, хеширование следов вне зависимости от последовательности задач), статистика особого рода (причино- следственные матрицы, матрицы параллельного выполнения, необходимые, например, для алгоритмов ван-дер-Аальста). Все эти условия были учтены при разработке архитектуры плагнов восстановления МАБП и их использовании системой (Рисунок 5.5). Рисунок 5.5 - Плагин восстановления комплексных МАБП в среде системы интеллектуального анализа бизнес-процессов Ключевым элементом системы интеллектуального анализа выполнения бизнес-процессов в системе электронного документооборота является модуль реализации функционала по восстановлению МАБП. 98 Пользователь взаимодействуют с системой посредством графического интерфейса, указывая на первом этапе «Параметры загрузки», которые используются модулем «Загрузчик». Загрузка журналов выполнения бизнес-процессов осуществляется из специального «OLAP хранилища данных». В хранилище помимо журналов выполнения бизнес-процессов содержится статистика по этому выполнению (причино-следственная матрица, матрица параллельности), используемая алгоритмом восстановления МАБП. В зависимости от типа системы электронного документооборота и алгоритма восстановления комплексных МАБП могут использоваться разные загрузчики. «Предоставляемые объекты» – результат работы загрузчика хранится в оперативной памяти, что увеличивает скорость работы алгоритма восстановления. Система интеллектуального анализа допускает использование различных алгоритмов восстановления через реализацию плагинов, отвечающих заданному интерфейсу. В зависимости от текущего плагина восстановления меняется пользовательский интерфейс «Параметры восстановления», в который выносятся эмпирически задаваемые пользователем коэффициенты. В случае с восстановлением комплексных МАБП алгоритму необходимо осуществлять поиск свойств, на основе которых производится кластеризация журнала выполнения. Этот функционал реализуется посредством плагина «Поиск подпоследовательностей», загрузку и взаимодействие с которым производит «Плагин восстановления». Для одного реализуемого алгоритма восстановления могут использоваться отличные алгоритмы поиска свойств кластеризации, что указывается в конфигурационном файле плагина восстановления. Загрузку конфигурационного файла производит «Платформа». Ход выполнения восстановления сопровождается отображением статистических данных в асинхронном режиме. В итоге компонента «Отображение комплексной МАБП» выводит на экран в режиме редактирования результирующую комплексную МАБП. В системе интеллектуального анализа эта модель представлена как «Иерархия». После восстановления и редактирования комплексной МАБП пользователь может сохранить ее для дальнейшей работы. За этот функционал отвечает подсистема «Конвертер», которая может конвертировать и сохранять модель в различных нотациях (WF-модель, EPC модель, эвристическая сеть, XPDL и т.д.). Выбор способа хранения модели производится пользователем через графический модуль «Настройка конвертации». В постоянной памяти итоговая модель хранится вместе с журналом выполнения. Аналогично работе модуля «Плагин восстановления» модуль «Конвертер» отображает статистику по своему последовательному выполнению. 99 Работа компоненты валидации МАБП в системе интеллектуального анализа. Плагины классифицируются в соответствии с диаграммой использования: валидации, верификации, восстановления, конвертации, оценки параметров эффективности, сохранения результатов работы в заданном формате. На Рисунке 5.6 представлены наиболее важные аспекты внутреннего взаимодействия плагина валидации бизнес-процессов с системой интеллектуального анализа. Рисунок 5.6 - Плагин валидации в среде системы интеллектуального анализа бизнес- процессов Плагин валидации состоит в свою очередь из части валидации (содержащей алгоритм проверки адекватности разработанной модели) и части предствления диалога с пользователем (GUI плагином). В GUI плагине имеются средства отображения результатов и настройки параметров валидации, специфичные для этого алгоритма. Работа системы начинается с загрузки всех имеющихся плагинов, в том числе и плагина валидации. После загрузки он становится доступным в пункте главного меню «Анализ». Первым этапом после загрузки системы становится открытие пользователем из постоянной памяти МАБП и коррелирующего с ним журнала выполнения (МАБП может быть получена и посредством восстановления журнала). Этот функционал выполняется подсистемой «Плагин импорта сетей Петри». Этап запускается пользователем через вызов пункта главного меню «Загрузить МАБП», без которого пункт меню «Анализ» будет недоступен. В качестве «Плагин импорта сетей-Петри» может использоваться любая .NET сборка, реализующая заданный 100 интерфейс, т.е. возможно загружать МАБП, представленную в разных XML форматах, или представленную на физическом носителе либо СУБД. Второй этап – инициализация внутренних предоставляемых объектов, отображение данных из XML журнала и отображение в пользовательском интерфейсе МАБП, выполняемые подсистемой «Плагин импорта сетей Петри». Третий этап – запуск алгоритма валидации пользователем (посредством выбора пункта меню «Анализ» и заполнения параметров в форме «Плагин валидации»). В результате работы алгоритма получается объект «Исследуемая WF-модель», сопоставляемая посредством алгоритма с исходной МАБП и отображаемая графической подсистемой плагина. Все предоставляемые объекты доступны в пределах платформы, т.е. возможно использование результатов валидации в других подсистемах. Алгоритм может быть применен к группе МАБП и их журналов. Обнаружение узких мест при выполнении бизнес-процесса в системе управления автоматизированными бизнес-процессами может быть произведено на основе следующих симптомов, идентифицируемых плагином валидации: Число одновременно обрабатываемых экземпляров (слишком) велико. Если одновременно обслуживается много экземпляров, то это может означать наличие проблем. Большое число экземпляров может быть вызвано сильными колебаниями в поступлениях экземпляров или недостаточной гибкостью ресурсов. Однако причиной может быть и то, что процесс содержит слишком много шагов, которые нужно выполнять последовательно. Время обслуживания (слишком) велико по сравнению с реальным временем работы. Реальное время работы с экземпляром иногда составляет только малую часть от всего времени обслуживания. Если это так, то, скорее всего, можно найти целый ряд решений для сокращения времени обслуживания. Уровень обслуживания слишком низок. Уровень обслуживания в потоках работ показывает, в какой мере организация способна решать обслуживание экземпляров в пределах отведенного для них срока. Если время обслуживания сильно колеблется, то уровень обслуживания является низким. В этом случае нельзя гарантировать конкретное время обслуживания. О низком уровне обслуживания свидетельствует и большое число ситуаций типа «срыв» (здесь под термином «срыв» понимается потеря экземпляра из-за долгого времени ожидания). Если клиент знает, что обслуживание экземпляра (например, заявки на получение ссуды) займет много времени, он обратится в другую компанию. Низкий уровень обслуживания может служить признаком недостаточной гибкости, плохой организации процесса или недостатка структурных возможностей. 101 Эти три симптома указывают на возможные узкие места. Для их идентификации нужны контрольные значения для измерения симптомов, например, известные значения для аналогичных процессов. Обычно не имеет смысла бороться с симптомами путем экстренных мер. Важно выяснить их причины. Внутренняя организация работы плагина валидации с указанием направления движения информации между компонентами представлена на Рисунке 5.7. Семантически плагин состоит из трех главных компонентов, ответственных за получение и валидацию журнала, вычисление метрик и визуализацию результатов. Следовательно, плагин поддерживает некоторые исследуемые структуры данных за пределами его собственной памяти, обращение к которым происходит посредством компоненты «Валидатор». В качестве таких структур данных выступают предоставляемые объекты: журнал бизнес-процесса и его модель. После выполнения алгоритма валидации формируются «Исследуемая WF-модель» и «Исследуемый журнал» – структуры обработанных данных, предоставляемые для компонент «Визуализатор» (отображение результатов пользователю) и «Модуль расчета метрик». Рисунок 5.7 - Архитектура плагина валидации Для доступа к валидатору пользовательский интерфейс системы интеллектуального анализа вызывает метод получитьЖурнал. Результаты работы отображаются посредством вызова методов получитьВизуализацию и получитьМетрики. Прикладной программный интерфейс базового функционала системы. Помимо плагинов, система интеллектуального анализа выполнения бизнес-процессов в управлении электронным документооборотом предоставляет базовый функционал, который в дальнейшем используется плагинами. По реализации функционала классы можно разделить на две группы: классы работы с 102 журналом выполнения бизнес-процесса и классы для работы с сетями Петри. Реализуются следующие классы (Рисунок 5.8): Рисунок 5.8 - Диаграмма классов для системы интеллектуального анализа выполнения бизнес-процессов в электронном документообороте «Состояние». «ПространствоСостояния». «Диагностируемое состояние» (НачальноеСостояние:ДиагностируемоеСостояние, построитьПокрывающийГраф ()). «ДаигностируемоеСостояние». «Переход» (Доступен (),СработатьБыстро ()). «СетьПетри» (ЗаписатьКТочке). «Место». «ДиагнозируемоеМесто». «ДиагнозируемыйПереход» (Активирован (), СработатьБыстро ()). «ДиагнозируемаяСетьПетри» (Записать (), ПолучитьОставшиесяФишки (), ПолучитьПотерянныеФишки (), ПолучитьЧислоВидимыхЗадач()). «ВизуализацияСетиПетри» (Записать ()). «ВизуализацияЖурнала» (Сохранить ()). «РезультатПроверкиСоответствия». «ДиагностируемаяКонтрольнаяЗапись». «КонтрольнаяЗапись». «ЭкземплярПроцесса». «ЧтениеЖурнала» (ЕстьСледующая (), Обнулить (), Следующая()). 103 «ДиагнозируемыйСледЖурнала». «РезультатПроверкиСоответствия». Опишем наиболее важные связи между классами: Класс «СетьПетри» содержит экземпляры классов «Переход» и «Место». «ДиагностируемаяКонтрольнаяЗапись» содержит экземпляры классов «ДиагностируемыйПереход» и «ДиагностируемоеМесто». «ЧтениеЖурнала» ссылается на «ЭкземплярПроцесса». «ДиагностируемыйПереход» ссылается на «ДиагностируемоеПространствоСостояния». «ДиагностируемоеПространствоСостояния» ссылается на «ДиагностируемоеСостояния». «РезультатПроверкиСоответствия» содержит экземпляры «ДиагнозируемаяСетьПетри». «ДиагностируемоеСостояние» является наследником класса «Состояние». Класс «ВизуализацияСетиПетри» является наследником класса «ДиагностируемаяСетьПетри». Класс «СетьПетри» содержит базовый функционал для работы с сетями Петри: список переходов (класс «Переход»), список мест (класс «Место»), дуги их соединяющие. Класс «Переход» содержит два метода: «Доступен()», определяющий доступность данного перехода при текущей разметке и «сработатьБыстро()», позволяющий сработать переходу и изменить текущую разметку. Набор наследующих их классов: «ДиагнозируемоеМесто», «ДиагнозируемыйПереход», «ДиагнозируемаяСетьПетри» – предназначен для вычисления достижимости разметки, обнаружения блокировок и тупиков, эмуляции работы сети. Представленного набора классов достаточно для потребностей различных алгоритмов восстановления, реализуемых в качестве плагинов. Описание архитектуры компоненты восстановления комплексных МАБП. Представим классы (и их методы) плагина восстановления комплексных МАБП [40]: «Кластер» (получениеКластеров (), получениеСвойств (целое, целое, дробное, дробное), получитьСвойства (), получитьСледЛ2 (), получитьЭвристическуюСеть (), существуетДугаВСети (целое, целое), существуетПутьВСети (целое, целое), установитьЭвристическуюСеть (), фильтроватьСледы (дробное, спиоск)). «Свойство» (получитьЗаголовок (), получитьОстов (), происшествия (ЭвристическаяСеть). 104 «ВекторноеПространство» (методКСредних (Целое), получитьТочку (целое)). «След» (возможностьКонкатенации (След), конкатенация (След), наложение (След), первыйЭлементВПоследовательности), получениеЗаголовкаДляСвойства (), получениеОстоваДляСвойства (), последнийЭлементВСледе (), распадНаложения (След), Содержит (След)). «ВекторнаяТочка» (проекция (Свойство, След), расстояние (ВекторнаяТочка)). «CWFИзвлечение» (извлечение (ЧтениеЖурнала), извлечение (WFУстановки)). «ЭвристическоеИзвлечение» (извлечение (ЧтениеЖурнала), рассчитатьД1МетрикуЗависимости (Целое), рассчитать МетрикуЗависимости (Целое, Целое), сделатьБазовыеЗависимости (Дробное, ЧтениеЖурнала)). «УправлениеЖурналом» (инициализацияИнформацииПоследующих (Целое), инициализацияЗакрытыхВИнформации (Целое), операцияОдиночки(), получитьДанныеОдиночки (), построитьСвязи (), экземпляр ()). «ЧтениеЖурнала» (естьСледующая (), обнулить (), следующая ()). «ПлагинИзвлечения» (извлечение (ЧтениеЖурнала)). Опишем наиболее важные связи между классами: Класс «CWFИзвлечение» содержит экземпляры классов «ЭвристическоеИзвлечение», «След», «Кластер», «Свойство». «ЭвристическоеИзвлечение» является наследником класса «ПлагинИзвлечения». «CWFИзвлечение» является наследником класса «ПлагинИзвлечения». «Кластер» содержит экземпляр «ВекторноеПространство». «ВекторноеПространство» содержит экземпляр «ВекторнаяТочка». «ЧтениеЖурнала» содержит экземпляры «ПлагинИзвлечения» и «УправлениеЖурналом». «Свойство» содержит экземпляры «След» и «Кластер». «След» реализует интерфейс «ИСравнение». Основным классом является «CWFИзвлечение», вызов перегруженного метода которого начинает процесс восстановления. Первый метод «извлечение(ЧтениеЖурнала):СетьПетри» является унаследованным от базового класса [10] для всех плагинов восстановления. Система интеллектуального анализа, используя полиморфизм, создает экземпляр класса «CWFИзвлечение», оперируя объектом с типом «ПлагинИзвлечения». Класс «ЭвристическоеИзвлечение» предназначен для получения эвристической сети (сети без асинхронности, в которой ветвления игнорируются в пользу наиболее частых дуг), он также 105 унаследован от «ПлагинИзвлечения» (т.е. реализует простейший алгоритм восстановления МАБП). Метод «рассчитатьД1МетрикуЗависимости(Целое):Дробное» «ЧтениеЖурнала» предназначен для получения информации из журнала выполнения бизнес-процесса. Информация о журнале получается последовательно для каждой записи, метод «естьСледующая» проверяет, является ли текущая запись конечной в журнале, метод «Обнулить» сбрасывает маркер позиции на начальную позицию в журнале, «Следующая» возвращает следующую запись в журнале и переводит маркер позиции журанала на следующую позицию. В своей работе этот класс базируется на функционале класса «УправлениеЖурналом», который реализован в виде паттерна объектно-ориентированного программирования «одиночка» [12]. Посредством этого класса осуществляется доступ к файлу журнала непосредственно, либо к хранилищу данных в СУБД. Алгоритму восстановления комплексных МАБП (Рисунок 5.9) необходимо производить разбиение заданного журналом выполнения множества следов на кластеры, что осуществляется набором классов: «Векторная точка», «Векторное пространство», «Кластер», «Свойство», «След». Рисунок 5.9 - Диаграмма классов плагина для восстановления комплексных МАБП Класс «Кластер» предназначен для работы с кластером следов: инициализации кластера, фильтрации следов, поиска свойств. Метод «установитьЭвристическуюСеть» вызывается первым при работе алгоритма восстановления комплексных МАБП – он устанавливает объект эвристической сети, используемый в дальнейшей работе алгоритма. Следующим вызывается метод «получениеКластеров», который производит разбиение исходного множества следов на заданное количество кластеров. Для этих целей используется вызов метода «получениеСвойств», 106 вычисляющий свойства, выступающие в качестве критерия кластеризации. В работе этого метода используются вспомогательные: «фильтроватьСледы», уменьшающий количество исследуемых следов; «существуетДугаВСети», проверяющий на основе следа и эвристической сети частоту дуги во всем журнале выполнения; «существуетПутьВСети», проверяющий на основе следа и эвристической сети частоту следа во всем журнале выполнения; «получитьСледЛ2» для исключения повторяющихся переходов. Класс «Кластер» предоставляет данные в формате, доступном для применения в алгоритме k-средних, реализация которого содержится в «ВекторноеПространство», метод «методКСредних». «След» является классом представления следа журнала выполнения и содержит часть логики алгоритма восстановления комплексных МАБП. «ВозможностьКонкатенации» проверяет, возможно ли произвести слияние двух w-шаблонов, в случае возможности можно произвести конкатенацию вызовом «конкатенация». В реализации алгоритма удобно производить разделение следа на заголовок (один элемент) и остальную часть. Для работы со следом в таком формате есть методы: «первыйЭлементВПоследовательности», «получениеЗаголовкаДляСвойства», «получениеОстоваДля Свойства», «последнийЭлементВСледе». |