Разработка приложений с использованием Windows Workflow Foundation (Максим Игнатов, ADD-2011)
Аннотация
- Докладчик
- Максим Игнатов
Разработка приложений с использованием технологии WWF 4.0 позволяет рассматривать проект с точки зрения бизнес-процессов. Особенно этот подход оправдан при так называемых «Long running process», когда система или объект системы находятся в определенном состоянии, и будут находиться в нем неопределенно долгое время. Например процесс утверждения документа на предприятии требует проведения документа по различным инстанциям, где каждая инстанция может внести в него изменения и подтвердить его, с последующей отправкой следующей инстанции, или отклонить для возвращения документа предыдущей инстанции на доработку. Технология позволит вам скрыть детали бизнес-процесса и предоставит возможность выполнять действия над документом доступные именно в этом состоянии и в зависимости от действий пользователя перейти в другое состояние.
При разработке подобных систем возникает проблема миграции бизнес-процессов, в случаях когда необходимо изменить их, и корректно перевести существующие процессы на новую схему или как минимум оставить их работающими по старой схеме.
- Видение в WWF по Microsoft: Обзор методик использования WWF в демонстрациях Microsoft.
- Biztalk with Human Workflow Services: Подключение библиотек пользователей Outlook, и бизнес-процессов.
- Sharepoint: Управление документооборотом. Как реализован процесс управления объектами.
- Технические трудности с применением WWF 4.0 в реализации «живых» проектов. (На примере WCF_WF_Examples).
- Методики решения перечисленных выше трудностей.
- Процесс «безболезненной» миграции бизнес-процессов на новые.
Видео
- Скачать
http://ftp.linux.kiev.ua/pub/conference/peers/addconf/2011/2b1-windows-workflow-foundation-ignatov.avs.avi
Для этого доклада нужен подкаст (аудиозапись)?
Примечания и отзывы
Это был рассказ про внутренний проект компании — сопровождение найма сотрудников на WWF. Сделан в свободное время (правило 20 %), реально используется. Доклад полезен для тех, кто хочет познакомиться с возможностями WWF, однако они представлены там на начальном уровне — это лично я и так представляю, тем более что часть иллюстраций были на примерах из документации.
Из практического — они реально работают с очень изменяющимся процессом и им успешно удается вносить изменения при наличии незавершенных процессов. Они не используют подписание сборок, чтобы для незавершенных циклов использовался старый вариант (и тут я с ними согласен), а применяют миграцию или предусматривают старый вариант просто в бизнес-логике, и то и другое работает.
- Разработка приложений с использованием Windows Workflow Foundation (Максим Игнатов, ADD-2011)
Докладчик — Максим Игнатов, руководитель проектов компании e-Legion.
Windows Workflow Foundation (WWF) удобно применять при разработке приложений, автоматизирующих длительные бизнес-процессы (документооборот и т. п.). Для таких процессов характерны набор состояний, в каждом из которых процесс может находиться неопределённо долгое время и ограниченный набор переходов между этими состояниями. Состояние процесса сохраняется в БД. В компании докладчика WWF была применена для разработки приложения, автоматизирующего какие-то процессы в отделе персонала. Целью доклада было заявлено показ узких мест WWF и решений возникших проблем. Вначале докладчик рассказал про разработанную систему, затем немного рассказал про подходы к использованию WWF при разработке приложений.
- Разделить процесс на подпроцессы
- Плюсы:
- Часто проще соотносится с моделью данных
- Менее тяжеловесный Workflow
- Минусы
- Требуется логика маршрутизации к к нужным Workflow
- Единый процесс на всё
- Плюсы
- Не нужна маршрутизация
- Минусы
- Модель размазана
- Тяжеловесный Workflow
Далее был рассказ про возникшие при использовании WWF проблемы, связанные с миграцией сохранённых процессов при изменении Workflow. В целом, ИМХО, технология заслуживает внимания и изучения.
Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».