Difference between revisions of "Process Models"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 40: Line 40:
:* '''Parallel Gateway -''' Allow different tasks to proceed in parallel.
:* '''Parallel Gateway -''' Allow different tasks to proceed in parallel.
-->  
-->  
:* '''Inclusive Gateway -''' A ''gateway'' creates a branch in the flow, and allows a condition to be attached to each branch. An ''inclusive gateway'' allows multiple paths to be in operation simultaneously, as long as their conditions are satisfied. Flow then proceeds from the join point, but only after each path that was started runs to completion.
:* '''Inclusive Gateway -''' A point from which parallel paths branch out, and a point at which they merge once again. (The same element is used for both points.)
::* A ''gateway'' creates a branch in the flow, and allows a condition to be attached to each branch.  
::* An ''inclusive gateway'' allows multiple paths to be in operation simultaneously, as long as their conditions are satisfied. Flow then proceeds from the join point, but only after each path that was started runs to completion.
:* '''Start Event -''' Specify the starting point for the process. (''The start point is required''.)
:* '''Start Event -''' Specify the starting point for the process. (''The start point is required''.)
<!--   
<!--   

Revision as of 23:47, 23 May 2013

About Process Models

Process Models are sequences of tasks (or steps) that are carried out to achieve a goal. The sequence of tasks, or process flow can do conditional branching based on record data.

Working with Process Models

Creating or Modifying a Process Model

To create or modify a Process Model:

  1. Click [New Process Model] or click an existing Model.
    The editor window opens.
  2. Drag process elements from the sidebar (the Palette, below) into the main panel
  3. Use the editor to perform other tasks (below)
  4. Press Ctrl+S or click the disk icon (BPM discIcon.png) to save your changes and close the window,
    or simply close the window to exit without saving changes.
    ProcessIcon Save.png

Process Tasks and Flow Control

The Process Element Palette contains things you can drag into the canvas as you define a process model:

  • User Task - This is a task that will be carried out by a user.
  • Instructions - Tell the person what to do
  • Due Date - Specify an interval in hours or days
  • The person who needs to perform the task (or a collection of people, one of whom needs do it):
  • Group - Identify people who can carry out the task as people who are members of a designated team, people who have a designated Role, or both.
  • Individual - Select one of the fields that targets a User record
  • Using Rule Set - Choose a Rule Set that returns a Step Owner--a value that resolves to one of the options above.
  • Approval Step - This task requires someone to click a button to Approve or Reject something. A Decision Switch attached to the Approval Step has an additional field, Approved, that can be tested to find out which button they clicked. (To learn more, see the description of the Decision Switch that follows. Then see Using an Approval Step, below.)
  • Instructions - Tell the person what needs to be approved
  • Due Date - Specify an interval in hours or days
  • The person (or people) who can do the approval:
  • Group- Identify people who can carry out the task (or do the approval) as people who are members of a designated team, people who have a designated Role, or both.
  • Individual - Select one of the fields that targets a User record
  • Using Rule Set - Choose a Rule Set that returns a Step Owner--a value that resolves to one of the options above.
  • Send an Email - Send out an automated notification using one of the Email Templates.
  • Execute RuleSet - Execute Rules in a Rule Set, to carry out a number of tasks.
  • Decision Switch - Create a branch in the process flow, depending on criteria you specify.
After creating the decision-switch node, click on the arrows coming from the node to specify criteria. When the specified criteria evaluate as true, that branch is taken.
For compound conditions, chain one Decision Switch into another. So if the branch from the first Decision Switch is taken when order_amount >= 10000 and a branch from the second is taken when order_amount < 100000, then the second branch is taken when the order is between $10,000 and $100,000.
  • Inclusive Gateway - A point from which parallel paths branch out, and a point at which they merge once again. (The same element is used for both points.)
  • A gateway creates a branch in the flow, and allows a condition to be attached to each branch.
  • An inclusive gateway allows multiple paths to be in operation simultaneously, as long as their conditions are satisfied. Flow then proceeds from the join point, but only after each path that was started runs to completion.
  • Start Event - Specify the starting point for the process. (The start point is required.)
  • End Event - Specify an endpoint for the process. (At least one end point is required.)
  • Sequence Flow - Draw a connector between two tasks, to create a sequence.

Making Connections

In the main panel, click a Task or Event
. Several elements appear next to it. Hover over them to see a description:

ProcessConvenienceElements.png
  • Decision Switch - A Decision Switch element is added to the process (see below), with a connection from the task
  • End Event - An End Event element is added to the process, connected to the task

The final element is the connection arrow. To draw an arrow between two elements in the diagram, drag that arrow to another element:

ProcessHighlightedTarget.png

Using the Process Editor

In addition to the Save icon seen earlier, the toolbar provides other icons that help you build Process Models:

ProcessEditIcons.png
  • Cut, Copy, Paste, Delete - The standard editing operations to move or copy the selected element(s) to the clipboard (cut/copy), to copy the contents of the clipboard to the process (paste), or remove the selected element(s).
  • Undo, Redo - Take back the last change, or reinstate it.
  • Alignment and Sizing - Align the middles or centers of elements, or make them the same size.
  • Line "Bend Points" - A red dot appears at the corner of any line that isn't totally straight. You change the shape of a line by dragging that dot. Use these controls to add an extra dot to an already-bent line, or to add a dot to a straight line. You can also use the controls to remove a dot, straightening the line at that point.
  • Zoom Controls - Zoom in or out. Set page size.
  • Syntax Check - Click this button to check the drawing. A large red "X" appears below any element that has a problem. Hover over the element to get an error message.

Here are some other keys you can use:

  • Click and drag -Move an element to a new location.
  • Ctrl+A - Select all. Good for repositioning all elements at once.
  • Ctrl+Click - Add an element to the set of selected elements, or remove it if already selected.

Using a Decision Switch

When you double click on an arrow coming from a Decision Switch, you can specify criteria for that branch. The criteria take the form {field} {operator} {value}.

ProcessDecisionCriteria.png

You can add multiple criteria to that dialog. All must evaluate to true for the branch to be taken. In other words, the criteria specified for that branch represent an AND condition.

To create an OR condition, you can add a separate branch.

Warn.png

Important: When you add a second arrow, it overlays the first. Immediately move it, so you can see them both:

ProcessOffsetBranch.png

Using an Approval Step

When you add an Approval Step, a Task is generated for the person it is assigned to. While other Tasks have a [Complete] button, an Approval task has two buttons: [Approve] and [Reject]. The button that was clicked is recorded in a special field called Approved, with values Yes or No. When a decision switch follows an Approval Step, that field is available for testing, as shown here:

ProcessModelApprovalStep.png

Reject could go back to a previous step. Approve will generally go forward to a new task or to the end of the process.