Patterns

Материал из RunaWFE
Версия от 11:35, 26 декабря 2020; WikiSysop (обсуждение | вклад) (1 версия импортирована)
Перейти к навигации Перейти к поиску

Аналог доказательства теоремы полноты. (Реализации паттернов при помощи конструкций базового набора)

Реализации паттернов при помощи конструкций базового набора

Замечание. Определения всех паттернов даны на сайте www.workflowpatterns.com и здесь не приводятся. Здесь представлены только примеры реализаций.

Основные паттерны потока управления (Basic Control Flow Patterns)

1. Последовательность (sequence).


Sequence.jpg


2. Параллельное расщепление (Parallel Split).


Fork2.jpg

3. Синхронизация (Synchronization).


Join2.jpg

4. Исключающий выбор. (Exclusive Choice).

Choice2.jpg


5. Простое соединение. (Simple Merge).


Merge2.jpg

«Продвинутые» паттерны ветвления и синхронизации (Advanced Branching and Synchronization Patterns).

6. Множественный выбор (Multi-choice).


MultiChoice.jpg

Пример реализации множественного выбора и синхронизованного соединения для трех элементов.

7. Синхронизованное соединение (Synchronizing Merge). См. выше.


8. Несинхронизованное соединение. (Multi-merge ) Реализуется элементом «Простое соединение».


MultiMerge.jpg


Пример реализации параллельного расщепления и несинхронизованного соединения для трех Действий.

9. Дискриминатор (Discriminator).

Discriminator3.jpg


9а. N-из-M-соединение (N-out-of-M-join).

NoutOfM.jpg

Пример реализации параллельного расщепления и 2-из-3 соединения.

Структурные паттерны (Structural Patterns)

10. Произвольный цикл. (Arbitrary cycle).


Cycle.jpg

Пример произвольного цикла.


11. Неявное завершение (implicit termination).

Не поддерживается.

Паттерны, допускающие несколько экземпляров узла (Patterns Involving Multiple Instances).

12. Мульти-действие без синхронизации (multiple instance without synchronization).

Multu3.jpg

13. Мульти-действие с синхронизацией и заранее известным (на этапе создания -редактирования бизнес -процесса) количеством экземпляров действия. ( Multiple Instances With a Priori Design Time Knowledge). Является частным случаем мульти-действия с известным до начала выполнения количеством экземпляров действия.


14. Мульти-действие с известным до начала выполнения количеством экземпляров действия. (Multiple Instances With a Priori Runtime Knowledge).


Multu2.jpg

15. Мульти-действие с синхронизацией и неизвестным в момент начала выполнения узла паттерна общим количеством экземпляров узла (Multiple Instances Without a Priori Runtime Knowledge).


Multu4.jpg

Паттерны, основанные на состоянии (State-based patterns).

16. Отложенный выбор. (Deferred choice).


Deffcho3.jpg


17. Выполнение в нефиксированном порядке. (Interleaved Parallel Routing).


InterleavedParallelRouting.jpg

Пример реализации паттерна для трех Действий.


18. Паттерн специального состояния WF-процесса (milestone).


Milestone.jpg


Паттерны отмены (Cancellation Patterns).

19. Отмена выполнения действия (cancel activity).

Паттерн реализуется посредством помещения узла в область с прерыванием.


CancelActivity.jpg


20. Отмена выполнения экземпляра бизнес –процесса (cancel case).

Паттерн реализуется при помощи использования точки завершения процесса..


CancelCase.jpg