Компания IBM
Опубликован: 14.08.2008 | Доступ: свободный | Студентов: 1090 / 150 | Оценка: 4.75 / 3.75 | Длительность: 27:55:00
Лекция 4:

Моделирование. Бизнес-процесс

4.3.4 Создание планируемого процесса

Общая схема предполагаемого процесса была спроектирована на семинаре с использованием Microsoft Visio. Она представляет собой небольшую модификацию процесса ClaimInvestigation и новый подпроцесс, называемый RequestExternalReports, заменяющий собой выполняемую вручную задачу RequestExternalReports в процессе ClaimInvestigation.

В данном разделе мы выполним поэтапную процедуру создания нового подпроцесса RequestExternalReports и изменения существующего процесса изучения претензии, используя рабочее пространство, которое мы только что создали, импортировав процесс из WebSphere MQ Workflow. Но сначала мы рассмотрим весь подпроцесс RequestExternalReports, созданный в Visio, и только потом перейдем к пошаговой процедуре детализации ее в WebSphere Business Integration Modeler.

Логика планируемого процесса
  • Процесс RequestExternalReports инициируется из процесса ClaimInvestigation и начинается с разделения на две параллельных ветви.
  • В одной ветви создается список оценщиков, которые могут осуществить оценку претензии на основании своего географического положения и знакомства с данным типом автомобилей.
  • В другой ветви извлекается страховой полис клиента, и на основе согласованных в полисе данных определяется ожидаемое время проведения оценки.
Процесс RequestExternalReports

Рис. 4.18. Процесс RequestExternalReports
  • По завершению выполнения этих задач всем подходящим оценщикам посылаются данные о претензии и требуемый срок проведения оценки. Им предлагается в фиксированный срок ответить, будут ли они выполнять оценку.
  • Далее процесс ожидает ответы, и отклоняет все, которые не уложились в отведенное время ответа.
  • Из списка оценщиков, пожелавших выполнить оценку, выбирается один оценщик на основании нескольких критериев, включая стоимость, качество оценки, надежность и т. п.
  • Если оценщиков, которые могли бы выполнить оценку, не оказывается, управление передается в задачу, выполняемую вручную. Специалист по обработке претензий должен вручную выбрать оценщиков, например расширив географическую область или увеличив время выполнения оценки.
  • Отправляется один запрос на выполнение оценки.
  • Процесс ожидает от оценщика подтверждения согласия на проведение оценки.
  • Оценщик отправляет отчет об оценке.
  • Отчет заносится в систему управления документами, после чего управление возвращается в процесс ClaimInvestigation, чтобы специалист по обработке претензии мог принять решение по претензии.
Контроль версий

В WebSphere Business Integration Modeler для управления версиями применяется система конкурентных версий (Concurrent versions system, CVS). За дополнительной информацией о поддержке CVS обращайтесь к разделу Team Support (Поддержка групповой работы) центра информации WebSphere Business Integration Modeler: http://publib.boulder.ibm.com/infocenter/wbihelp/index.jsp.

В этом курсе мы не будем демонстрировать реализацию CVS для WebSphere Business Integration Modeler. Вместо этого мы дадим разным версиям процесса разные имена: ClaimInvestigation_ASIS и ClaimInvestigation_TOBE, и соответственно каталоги ASIS и TOBE3От as-is (как есть, существующий) и to-be (будущий, планируемый). Примеч. пер .. Структура дерева проекта показана на рис. 4.19. Выполните следующие шаги:

  1. Откройте дерево проектов. Щелкните правой кнопкой мыши по элементу ClaimInvestigation process \to Rename (Переименовать) и укажите имя ClaimInvestigation_ASIS.
  2. Щелкните правой кнопкой мыши по каталогу процесса Claim, выберите пункт меню New (Новый) \to Process Catalog (Каталог процесса) и укажите имя ASIS. Будет создан каталог ASIS.
  3. Щелкните правой кнопкой мыши по элементу ClaimInvestigation_ASIS, выберите пункт меню Copy (Копировать), щелкните правой кнопкой мыши по каталогу процесса ASIS и выберите пункт меню Paste (Вставить). Элемент ClaimInvestigation_ASIS будет скопирован в каталог ASIS.
  4. Повторите шаг 2, чтобы создать еще один каталог - TOBE для бизнес-аналитика.
  5. Повторите шаг 3, чтобы скопировать элемент ClaimInvestigation_ASIS в каталог TOBE, и переименуйте его в ClaimInvestigation_TOBE.
Переименованные процессы ClaimInvestigation

Рис. 4.19. Переименованные процессы ClaimInvestigation

4.3.5 Создание нового процесса

Поскольку для имитации функциональности ручной задачи RequestExternalReports требуется несколько задач, мы создали новый процесс RequestExternalReports. Для этого у нас было две причины:

  • сохранить схему процесса ClaimInvestigation такой же простой, как она была ранее;
  • обеспечить возможность повторного использования этого процесса в других процессах.

Для создания процесса RequestExternalReports у нас есть два варианта: создать его с нуля или импортировать презентацию Visio, созданную на семинаре. Мы предлагаем вам презентацию Visio в дополнительных материалах к этому курсу. За информацией о доступе к этим материалам обращайтесь к прил. "А", "Дополнительные материалы".

Для начала мы покажем, как создать базовый процесс с нуля. Если же вы хотите импортировать процесс, созданный в Visio, обращайтесь к разделу "Вариант 2. Импорт процесса из Visio".

Вариант 1. Создание процесса с нуля

Чтобы создать процесс с нуля, выполните следующие шаги: в дереве проекта щелкните правой кнопкой мыши по каталогу TOBE, выберите пункт меню New (Новый) \to Process (Процесс), укажите имя процесса - RequestExternalReports и любое его описание, после чего нажмите Finish (Готово). Процесс RequestExternalReports автоматически будет открыт в редакторе процесса. Убедитесь, что вы используете профиль Basic. Удалите узел Start, поскольку процесс запускается из другого процесса.

Первая часть процесса

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

  1. Выберите из палитры необходимые элементы, как показано на рис. 4.20, и следуйте инструкциям, которые помогут вам соединить их друг с другом.
    Процесс RequestExternalReports - часть 1 из 3

    увеличить изображение
    Рис. 4.20. Процесс RequestExternalReports - часть 1 из 3
  2. Мы используем элемент Fork для соединения входа процесса с двумя задачами - ResponsetimeBasedOnPolicy и IdentifyAssessors4ResponsetimeBasedOnPolicy - время ответа на основе полиса; IdentifyAssessors - определение оценщиков. Примеч. пер ..
    Совет. Нажмите на небольшую стрелочку в левом углу значка join/fork/merge (соединение/разделение/слияние) палитры редактора процессов, чтобы переключить используемый элемент.
  3. Информацию о каждой задаче можно ввести в поле Description (Описание), показанное на рис. 4.21. Мы также считаем удобным поместить описательную информацию в поле Annotation (Комментарий) и связать его с задачей.
    Поле описания задачи

    Рис. 4.21. Поле описания задачи
  4. Мы используем элемент Join (Соединение) для объединения выходных данных элементов ResponsetimeBasedOnPolicy и IdentifyAssessors. Элемент Join имеет следующие свойства:
    • снова соединяет и синхронизирует параллельно выполняющиеся ветви;
    • ожидает, пока каждая из ветвей получит все свои входные данные, а потом посылает выходные данные одновременно;
    • если вы хотите объединить в один вход несколько элементов-данных, вы должны добавить для этого специальную задачу.
  5. После того как вы поместите на канву указанные шесть элементов, выберите в процессе пункт Connections (Соединения), а затем щелкните внешний контур процесса. Щелкните в элементе fork по входному соединению, чтобы элемент fork стал первым элементом процесса. Откроется окно, показанное на рис. 4.22. Выберите пункт Input (Вход) в поле Fork:Target и нажмите OK.
    Выбор входа для процесса

    Рис. 4.22. Выбор входа для процесса
  6. Теперь рядом с соединением контура и входа элемента fork отображается значок с надписью String (рис. 4.23).
  7. Теперь начнем соединять элементы. Начните с соединения 1 на рис. 4.23. Вы увидите окно, показанное на рис. 4.24. Выберите пункт Output:String (Выход:String) и нажмите OK.
    Соединение процесса RequestExternalReports с его первым элементом

    Рис. 4.23. Соединение процесса RequestExternalReports с его первым элементом
    Выбор выходного соединения в поле Fork:Source

    Рис. 4.24. Выбор выходного соединения в поле Fork:Source
  8. Продолжайте соединять элементы. Вам будут снова предлагаться варианты точки назначения. Всегда выбирайте использование существующего соединения, а не создание нового.
Совет. Периодически сохраняйте процесс. Звездочка рядом с именем процесса на соответствующей закладке указывает на то, что процесс не сохранен. При сохранении будет проведена определенная проверка на ошибки. Другие ошибки вы также можете выявить, запустив статический анализ процесса (см. рис. 4.25).
Проверка процесса на ошибки

Рис. 4.25. Проверка процесса на ошибки
Вторая часть процесса

Во второй части процесса выполняется выбор между двух вариантов:

  • ручной выбор оценщика, который будет проводить оценку;
  • процесс выбирает оценщика автоматически.

В нашем случае решение о ручном выборе оценщика принимается только в том случае, если подходящие оценщики не обнаруживаются. После того как выбор будет сделан, управление передается автоматизированному процессу отправки запроса на оценку.

Вторая часть процесса показана на рис. 4.26, где WebSphere Business Integration Modeler переключен в режим Intermediate (Промежуточный), чтобы выводилось больше информации, в частности о режимах принятия решений.

Совет. Мы рекомендуем вам создавать исходные соединения в базовом режиме (Basic), а затем переключиться в режим Intermediate, чтобы завершить определение критериев входа. В базовом режиме терминалы соединений создаются автоматически, а в промежуточном режиме вам нужно добавлять входные и выходные терминалы при помощи панели атрибутов.
Процесс RequestExternalReports, часть 2 из 3

Рис. 4.26. Процесс RequestExternalReports, часть 2 из 3
  1. Мы использовали простой элемент Decision (Решение) с именем Any assessor? (Любой оценщик?), чтобы направлять поток либо к элементу SelectAssessor (Выбор оценщика), либо к элементу ManualSelectAssesor (Ручной выбор оценщика) после выполнения предыдущей задачи AssessorReceiveAndResponse. Если в списке оказывается хотя бы один оценщик, поток направляется к компоненту SelectAssessor, в противном случае - к компоненту ManualSelectAssessor.
  2. Мы также добавили компонент Decision (Решение) с именем Confirmed (Подтверждено), чтобы вернуть поток к элементу ManualSelectAssessor, если выбранный оценщик не подтверждает получение запроса на оценку.
  3. Мы указали логику ИЛИ (OR) для двух входов каждого из элементов Request-Assessment ManualSelectAssessor, поскольку обе эти задачи могут выполняться, если получен один из входов:
    • Чтобы задать логику входов, выберите пункт Modeling (Моделирование) \to User Profile (Пользовательский профиль) \to Intermediate (Промежуточный) в панели действий. Выберите пункт ManualSelectAssessor > Attributes View (Представление атрибутов) \to Input logic (Логика входов) \to Input criteria (Критерий входов) \to Add (Добавить). Выберите Input (Вход) из панели доступных ( Available ) входов и перетащите его на панель выбранных ( Selected ) входов, после чего нажмите OK.
    • Повторите процедуру, чтобы добавить Input:2. Закладка логики входов панели атрибутов должна выглядеть так, как показано на рис. 4.27.
      Панель логики входов для элемента ManualSelectAssessor

      увеличить изображение
      Рис. 4.27. Панель логики входов для элемента ManualSelectAssessor
    • Удалите первый критерий и очистите панель так, чтобы она выглядела, как по- казано на рис. 4.28.
      Критерий входов для задачи ManualSelectAssessor

      увеличить изображение
      Рис. 4.28. Критерий входов для задачи ManualSelectAssessor
Совет. Ту же функцию можно реализовать при помощи элемента Merge (Слияние).

Последняя часть процесса показана на рис. 4.29 в базовом режиме. Мы также соединяем элемент StoreReport (Сохранение отчета) с выходом процесса и узлом останова (Stop).

Процесс RequestExternalReports, часть 3 из 3

увеличить изображение
Рис. 4.29. Процесс RequestExternalReports, часть 3 из 3
Совет. В данный момент мы можем запустить простую эмуляцию для проверки логики процесса. Можно выявить некоторые типичные ошибки, связанные с преждевременной остановкой. Например, процесс останавливается, если пропущен элемент Merge. Для выполнения эмуляции щелкните правой кнопкой мыши по процессу RequestExternalReports в дереве проекта и выберите пункт меню Simulate (Эмулировать).
Артур Гибадуллин
Артур Гибадуллин
Россия, г. Нижневартовск