Process Model Analysis (3)

xiaoxiao2021-03-14  175

Process Model Analysis (3)

- Process divergence aggregation model

Third, the operation model of the process

3.1 Basic operation model

Serial (SEQUENCE)

Cycle

3.2 Dissive Working Model

Parallel

Exclusive Choice

Diaminator Choice

Cc model

Divergence model

3.3 aggregation operation model

Synchronization polymerization (Synchronize Merge)

Simple merge

Multiple Merge

DISCRIMINATOR MERGE

Third, the operation model of the process

Here will be the most important place in this article, what is workflow, will also be embodied in its operational model.

Anything is gradual, from simple to complex. Let's take a look at the most basic centralized operation model.

3.1 Basic operation model

Serial (SEQUENCE)

Serial is the most simple, and the model is also easier to understand. According to the predetermined task list (Task A, Task B, Task C), ordered execution, as shown in the following figure (3-1).

Figure 3-1)

Cycle

The self-circulating model is mainly used to represent: the same task node, repeat execution multiple times.

Figure (3-2)

As shown in the figure. "Mode 2" is more than "Mode 1". DISCRIMINATOR NODE. These two modes are more extensive in reality, in which "Mode 1" is more biased towards human choice, that is, after the task is executed, whether the human decision continues to execute this task; "Mode 2" is more preferred to determine whether to repeat it according to the original rules.

3.2 Dissive Working Model

Parallel

Parallel, it involves the branch concept of the process. That is to say during the process of operation, due to different conditions or situations, or the processed service requires multiple sectoral (multi-tasking) separate processing, the process branch is generated. As shown below

Figure (3-3)

After the process is executed, two concurrently executed branches (A - B and A - C) are generated because of the need. Between these two branches are equal, but also in parallel.

For these flow charts, you may see some similar graphics below in the future articles / documentation.

Figure (3-4)

Although there is more and a AND selector than the above, it actually, two figures, indicating the same meaning or model. So everyone can have a heart when applying or reading, and learn substantial analysis.

Exclusive Choice

When a task is processed, it is found that it can allow multiple branch processes to be allowed later, but only one of the branches are allowed. This choice is human decision, and there is no rule selected in advance.

Figure (3-5)

Diaminator Choice

This is very similar to the "exclusive choice" in the previous, and the only difference is more than one discriminator. When the task reaches this discriminator, the discriminator will automatically discriminate the flow of the next process according to the state of the current process, and automatically discriminate the flow direction of the next process, which is automatically based on the condition, selecting a branch that meets the condition. . Figure (3-6)

Identifier mode (some may be called the selector, etc., the meaning of expression is basically the same), which is more extensive in real application. For example, in the order application process, set a discriminator that is discriminating according to the amount, if the amount is greater than or equal to 5000, take the branch flow a, if the amount is less than 5000, take the branch process B.

Cc model

Cc model, itself is not a standard workflow operation model, but in real-world applications, it is everywhere.

It means (please refer to the figure below), there is a main proxidation (A - C), and after a task (a) is executed, the main proxidation will continue to perform a predetermined task (C), but will also activate Another task (b) (or additional procedure) is executed, but the subsequent flow of task B and task B will not affect the main proximity operation.

Note that the A - B process in the figure is used along the line, and the gray dashed line is represented, and the task B is also expressed in gray.

Figure (3-7)

To give an electronic office system, you often encounter an example of the example: such as a text, when the Division will sign, you may copy a separate offer, this process or additional activation Do not affect the "Cc Task" of the Lord's Signature Process, such as Task B in the figure.

Divergence model

Speaking here, everyone can go back to see the parallel model (Section 3.2.1). Divergence and parallel differences are, all branches (BRANCH) process status (or process data):

In the parallel model, the branch state (A-B) and the branch state (A-C) are inconsistent in most cases. The "split" under certain conditions is performed by the status of the task A, and two branch (or multiple branch) flows are formed. These multiple branch processes are ultimately re-synthesizing a primary process to ensure the integrity of process information (of course, there may be some sub-flows due to specific reasons such as timeout.).

In the divergent model, the branch state (A-B) is absolutely equal to the branch state (A-C). A plurality of branch processes generated due to divergence are ultimately not necessarily aggregated (may abandon one and multiple branch processes when polymerization because of various reasons.).

This is said to "aggregate" concept, in the following introduction, will be described in detail

Figure (3-8)

3.3 aggregation operation model

Below we will enter the introduction of the aggregation model. Because there is "divergent", "aggregation" problem will appear in subsequent operation of a process. Therefore, when the aggregation model is discussed later, most of the cases will be combined with the above divergence operation model.

Synchronization polymerization (Synchronize Merge)

From the necessary explanation, synchronous polymerization, but not "simultaneously polymerize".

Figure (3-9)

Simple Merge, although the name is simple, but in realistic applications, their understanding and application are basically more difficult than "synchronous polymerization" above. When multi-branch is aggregated, uses a "advanced first out" rule, which branch is reached, then the first activation process is activated. Subsequent branches will be terminated here.

Figure (3-10)

Multiple Merge

Multi-polymerization, some simply polymerization above. But it is more complicated than SIMPLE MERGE. So far, in reality, I have not encountered such a process implementation.

When multi-branch is in polymerization, it is similar to "advanced first out" rule, but it is different from simple aggregation. Any branch will activate the follow-up process.

This involves a problem. If a subsequent process instance is just activated, another branch arrives, is this branch to activate the subsequent process instance? There are different solutions in different workflow engines (Workflow Enginner), and some choose to be activated immediately, and some choose to wait for delay activation. In this regard, it is not the discussion topic of this article, interested friends, can achieve different ways in their own engine.

Figure (3-11)

DISCRIMINATOR MERGE

This is more readily understood, and it is often encountered in the application, but the implementation of the application is large, because there is a "rule engine" that generally cooperates, to define / process the aggregation rules.

Figure (3-12)

转载请注明原文地址:https://www.9cbs.com/read-129225.html

New Post(0)