1 / 32

Управление потоками работ в InterSystems Ensemble

Управление потоками работ в InterSystems Ensemble. Федоров Вадим «Школа Инноваций InterSystems 2007». План. Определение управления потоками работ ( workflow ). Возможности Ensemble workflow. Архитектура Ensemble workflow. Расширение Ensemble workflow. План.

zorina
Download Presentation

Управление потоками работ в InterSystems Ensemble

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Управление потоками работ в InterSystems Ensemble Федоров Вадим «Школа Инноваций InterSystems 2007»

  2. План Определение управления потоками работ (workflow) Возможности Ensemble workflow Архитектура Ensemble workflow Расширение Ensemble workflow

  3. План Определение управления потоками работ (workflow) Возможности Ensemble workflow Архитектура Ensemble workflow Расширение Ensemble workflow

  4. Управление потоками работ в Ensemble Потоки работ (Workflow) - это автоматизация бизнес процесса, полностью или частично, в рамках которой документы, информация или задачи передаются от одного участника к другому, в соответствии с набором процедурных правил. Workflow Management Coalition (www.WfMC.org)

  5. Основные элементы workflow • Задача workflow • «Фрагмент» работы • Поток работ • Процедурные правила выполнения задач • Пользователь workflow • Человек, выполняющий задачи в системе управления потоками работ • Роль workflow • Группа пользователей, которые выполняют определенные типы задач.

  6. План Определение управления потоками работ (workflow) Возможности Ensemble workflow Архитектура Ensemble workflow Расширение Ensemble workflow

  7. Подсистема управления потоками работ Ensemble • Подсистема управления потоками работ в Ensemble позволяет: • Автоматизировать управление потоками работ • Гибко настраивать распределение работ • Работать с подсистемой управления потоками работ через специализированный Workflow-портал • Автоматически интегрироваться с хранилищем Ensemble, подсистемой мониторинга бизнес активности Ensemble, утилитами управления и мониторинга Ensemble • Организовать взаимодействие подсистемы управления потоками работ с интеграционными бизнес процессами Ensemble • Легко настраивать и расширять функционал подсистемы Workflow

  8. Управление потоками работ в Ensemble

  9. План Определение управления потоками работ (workflow) Возможности Ensemble workflow Архитектура Ensemble workflow Расширение Ensemble workflow

  10. Реализация системы Workflow • Создайте бизнес-процесс • Сконфигурировать задачи как специальные сообщения Ensemble • Сконфигурируйте роли как бизнес-операции • Создайте бизнес-метрики и инструментальные панели для мониторинга бизнес-активности • Сконфигурируйте роли и пользователей Workflow • Оттестируйте Workflow

  11. Создание бизнес-процесса Workflow • Определите последовательность обращений к подсистеме workflow • Каждый вызов – задачадля пользователей • Определите стратегию распределения задач среди пользователей • Определите роли, которые будут выполнять задачи • Создайте стандартные сообщения Ensemble для вызова бизнес процесса подсистемы Workflow • Создайте бизнес процесс • Для вызова каждой задачи добавьте элемент «Call» • «Call»будет асинхронно вызывать workflow бизнес операцию • Каждый элемент «Call»соответствует роли workflow • В каждом элементе «Call»нужно прописать корректный task request object • Для элементов «Call»нужно добавить элементы «Sync»

  12. Создание бизнес процесса Workflow

  13. Пример бизнес процесса Workflow

  14. Создание задач • Для создания задачи в Ensemble Workflow и получения ответа служат специальные классы сообщений: EnsLib.Workflow.TaskRequest и EnsLib.Workflow.TaskResponse • Можно использовать стандартные классы, можно создавать свои классы – наследники EnsLib.Workflow.TaskRequest и EnsLib.Workflow.TaskResponse

  15. EnsLib.Workflow.TaskRequest

  16. EnsLib.Workflow.TaskResponse

  17. Распределение задач • Когда Workflow Engine получает задачу для пользователей (сообщение типа EnsLib.Workflow.TaskRequest), автоматически создается сообщение типа EnsLib.Workflow.TaskResponse и срабатывает метод %OnNewTask этого сообщения • При этом, по умолчанию, используются следующие стратегии распределения задач (в порядке применения): • По имени пользователя (Если передается TaskRequest.%UserName) • По должности пользователей роли (Если передается TaskRequest.%Title) • Всем пользователям роли

  18. Настройка распределения задач • Для реализации собственной стратегии распределения задач унаследуйте класс от EnsLib.Workflow.TaskResponse и переопределите метод OnNewTask • Укажите в EnsLib.Workflow.TaskRequest, какой класс ответа использовать. • Присвойте свойству %TaskHandlerкласса EnsLib.Workflow.TaskRequest значение – новый класс, наследник EnsLib.Workflow.TaskResponse ИЛИ • Создайте наследник класса EnsLib.Workflow.TaskRequest и укажите в параметре RESPONSECLASSNAMEкласс-наследникEnsLib.Workflow.TaskResponse. WF Engine

  19. Создание ролей Workflow • Для создания ролей Workflow служат Workflow бизнес операции • Для каждой роли • Добавить в production бизнес операцию EnsLib.Workflow.Operation • Проверить, что она называется также как в бизнес процессе • Сконфигурировать FailureTimeout и RetryInterval • Включить или отключить AutoCreate Role

  20. Создание ролей Workflow

  21. Создание пользователей Workflow • Пользователей Workflow необходимо заводить в Workflow-портале и портале управления Caché

  22. Workflow и мониторинг бизнес-активности • Ensemble предоставляет набор методов, которые могут быть использованы в бизнес-метрике для получения статистики по работе пользователей • Примеры методов • Set ..Active=##class(EnsLib.Workflow.Engine).BamActiveTasks(Role) • Set ..Done=##class(EnsLib.Workflow.Engine).BamCompletedTasks(Role) • Статистику Workflow легко отобразить на инструментальных панелях:

  23. Портал Workflow • Для управления потоками работ, определения пользователей и ролей, администрирования workflow и работы пользователей с задачами в составе Ensemble поставляется портал Workflow • При разработке портала использована технология Caché Server Pages

  24. План Определение управления потоками работ (workflow) Возможности Ensemble workflow Архитектура Ensemble workflow Расширение Ensemble workflow

  25. Расширение функционала Workflow • Разработка собственных классов Workflow – наследников стандартных классов • Доработка стандартного пользовательского интерфейса • Разработка собственного пользовательского интерфейса Workflow

  26. Расширение функционала Workflow • Разработка собственных классов Workflow – наследников стандартных классов: • Добавление дополнительных свойств • Например, информации о документах, которые передаются от пользователя к пользователю • Разработка специализированных стратегий распределение задач между пользователями

  27. Расширение функционала Workflow • Доработка стандартного пользовательского интерфейса • Использование свойств задач (EnsLib.Workflow.TaskRequest) для создания и отображения новых CSP-страниц • Усовершенствование стандартного портала Workflow

  28. Расширение функционала Workflow • Свойства класса EnsLib.Workflow.TaskRequest позволяют сгенерировать страницу для работы пользователя с задачей: • Actions • FormFields, FormValues • При необходимости можно создать свою страницу для редактирования задачи и прописать её в свойстве FormTemplate класса EnsLib.Workflow.TaskRequest

  29. Расширение функционала Workflow • Доработка стандартного пользовательского интерфейса • Усовершенствование стандартного портала Workflow • Изменение страниц, стилей • Добавление новых страниц и т.д.

  30. Расширение функционала Workflow • Разработка собственного пользовательского интерфейса Workflow на CSP, .Net, Java и любых других технологиях разработки приложений • Классы Workflow (EnsLib.Workflow.*) предоставляют удобные объектные и реляционные интерфейсы для работы с EnsembleWorkflow. • Примеры методов: • [EnsLib.Workflow.Engine].AssignTask(pTask, pUser, …) • [EnsLib.Workflow.Engine].CompleteTask(pTask, pAction) • Примеры запросов классов: • ListUsersForRole() • Tasklist()

  31. Управление потоками работ в Ensemble • Простая и эффективная автоматизация потоков работ • Использование при автоматизации потоков работ возможностей InterSystems Ensemble • Возможность расширения функционала подсистемы управления потоками работ InterSystems Ensemble

  32. Спасибо за внимание! Вопросы? Вадим Федоров (vadim.fedorov@intersystems.ru) «Школа Инноваций InterSystems 2007»

More Related