Исходный код вики Другое
Версия 1.4 от Alexandr Fokin на 2024/06/12 15:19
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | |(% style="width:230px" %)Система обработки бизнес процессов на основе [[Машина состояний>>doc:Архитектура и модели.Модели.Машина состояний.WebHome]].|(% style="width:1255px" %) | ||
2 | |(% style="width:230px" %)Основные понятия:|(% style="width:1255px" %)((( | ||
3 | |(% style="width:1250px" %)Ключ процесса| | ||
4 | |(% style="width:1250px" %)Уникальной идентификатор экземпляра процесса.| | ||
5 | |(% style="width:1250px" %)Обычно служит для чтения/записи persist данных контекста.| | ||
6 | |(% style="width:1250px" %)Инициатор| | ||
7 | |(% style="width:1250px" %)Событие, служащее источником запуска одной сессии обработки.| | ||
8 | |(% style="width:1250px" %)Обычно ему соответсвует набор параметров, которые необходимо для запуска сессии обработки (как минимум это ключ процесса для работы с контекстом).| | ||
9 | |(% style="width:1250px" %)Примеры инициаторов: нажатие кнопки на UI, обращение к web api, получение сообщения из брокера.| | ||
10 | |(% style="width:1250px" %)Сессия обработки| | ||
11 | |(% style="width:1250px" %)Понятие, обозначающее один запуск машины состояния с контретным набором параметров.| | ||
12 | |(% style="width:1250px" %)При этом в рамках одной сессии могут быть пройдены не все шаги обработки,| | ||
13 | |(% style="width:1250px" %)в следствии длительности и многоэтапности процесса, или же в следсвии возникновения ошибки на одном из шагов.| | ||
14 | |(% style="width:1250px" %)Контекст| | ||
15 | |(% style="width:1250px" %)Класс содержащий данные о текущем экземпляре процесса, в том числе содержит информацию о статусе обработки (инфомация о шаге).| | ||
16 | |(% style="width:1250px" %)Можно выделить 2 компонента: persist и runtime.| | ||
17 | |(% style="width:1250px" %)Persist - группа данных, хранящихся в постоянном хранилище, с использованием ключа процесса.| | ||
18 | |(% style="width:1250px" %)Эти данные сохраняются между сессиями обработки. Также их можно просматривать и изменять(не во время сессии обработки) напрямую в хранилище.| | ||
19 | |(% style="width:1250px" %)Обычно при старте сессии обработки они загружаеются из хранилища, а при ее окончании сохраняются.| | ||
20 | |(% style="width:1250px" %)Runtime - данные, которые вычисляюся либо при старте сессии обработки, либо в рамках шагов обработки.| | ||
21 | |(% style="width:1250px" %)Эти данные не сохраняются между сессиями обработки.| | ||
22 | |(% style="width:1250px" %)Для каждого шага должно гарантироваться, что необходимые для его работы Runtime данные были предварительно загружены или вычислены.| | ||
23 | |(% style="width:1250px" %)Шаг (состояние)| | ||
24 | |(% style="width:1250px" %)На вход принимает контекст.| | ||
25 | |(% style="width:1250px" %)В зависимости от состояния контекста может произвести некоторое действие, может менять контекст.| | ||
26 | |(% style="width:1250px" %)Принимает решение о том, в какое следующее состояние необходимо перейти (какой шаг будет следующим).| | ||
27 | | | | ||
28 | | | | ||
29 | | | | ||
30 | |||
31 | |||
32 | ))) | ||
33 | |(% style="width:230px" %) |(% style="width:1255px" %) |