Divide your independent business requirements into multiple processes by calling two or more subprocesses that later rejoin the parent process. As a result, you develop a granular and flexible application that you can conveniently adjust to your changing business requirements instead of creating long and complicated case types.For example, you can validate tax information and perform a title search as part of a mortgage application process. Different users can work on the assignments in each subprocess, and the parent process continues when one or both subprocesses return.

Note: Each subprocess runs asynchronously and in parallel. When a user works on an assignment in one subprocess, other users can work on an assignment from a different subprocess.

  1. Add the Split Join shape to your process:
    1. In the navigation pane of Dev Studio, click Case types, and then click the case type that you want to open.
    2. In the Case life cycle section, in the process in which you want to add the Split Join shape, click Configure process.
    3. On the toolbar, click Open process.
    4. On the Diagram tab, click the Flow Shapes icon, and then select Advanced Shapes > Split Join.
    5. Connect the Split Join shape by dragging connector end points to connection points on different shapes in the process.
      Connectors that work correctly are green.
  2. Open the dialog box by double-clicking the Split Join shape.
  3. Optional: To provide a unique name for the shape, in the Split Join dialog box, in the Split Join field, enter a new name.
  4. In the Join list, define when the parent process resumes processing:
    Resume processing after all subprocesses are complete Select All.
    Resume processing after any of the subprocesses is complete Select Any.

    After any of the subprocesses are complete, processing of the remaining subprocesses stops and the system cancels open assignments.

    Resume processing after a when condition returns a true value
    1. Select Some.
    2. In the Exit iteration list, select On when.
    3. In the When field, enter a when condition that resumes processing after evaluating to true.
    Resume processing after a specified number of subprocesses reach a certain status
    1. Select Some.
    2. In the Exit iteration list, select On count.
    3. In the Number of paths field, enter an integer that determines how many subprocesses need to reach a certain status to resume processing.
      Note: Enter an integer that is lower or equal to the number of subprocesses in your process.
    4. In the Resulting with flow status field, enter a status that subprocesses need to reach to resume processing.

      For example:

      Enter Resolved-Completed.
  5. Optional: To provide a link to the Split Join shape step in the breadcrumb trail navigation, select the Enable navigation link check box, and then configure additional navigation options:
    • To enable users to return to the step after the case moves forward, select the Only allow navigating back to this step check box.
    • To enable post-processing or validation when users navigate back from the Split Join shape step by using the breadcrumb trail, select the Perform post-processing when navigating away from step check box.
  6. Open the subprocess configuration by expanding the Specify a flow rule for this subprocess section.
  7. In the Name field, enter a clear description of the subprocess.
  8. On the Subprocess tab, configure the context of the subprocess:
    The subprocess works on a current case Select On current page.
    The subprocess works on a specific case
    1. Select On specific work item.
    2. In the Work property field, enter a property reference in the current work item that identifies the key of the subprocess work item.
    3. In the Class field, enter the class of the subprocess work item.
    4. Optional: To specify a clipboard page that holds the subprocess work item, in the Page name, enter the clipboard page name.

      If the case is open as a page on the clipboard, you can leave the Work property field blank.

      If the case does not already have a page and you do not provide a page name, your application creates a page named pyNextObj, pyNextObj_1, and so on.

    The subprocess works on an embedded page
    1. Select On embedded page.
    2. In the Page property field, enter a reference to the property of mode Page, Page List, or Page Group that holds the embedded page.
    3. In the Class field, enter the class of the embedded page.
  9. In the Filter by flow field, select the subprocess category:
    • To start a subprocess that consists of a series of actions to complete, select Process flow.
    • To start a subprocess that consists of a series of forms to complete, select Screen flow.
  10. In the Flow rule field, press the Down arrow key, and then select the name of a subprocess to run.
  11. Optional: Specify what information about the subprocess you want to include in the application documentation:
    • To link an application to the subprocess, in the Application field, enter the name of the application.
    • To provide a diagram of the subprocess in a documentation section that describes a specific case type, in the Case/Supporting type field, enter the name of the case type.
    • To provide implementation requirements of the subprocess, in the Specification field, enter the specification that holds the requirements.
  12. Optional: To display a message in the audit trial of the subprocess, in the Audit note field, enter a rule that stores the audit note that you want to include.
  13. Configure the second subprocess by repeating steps 6 through 10.
  14. Optional: To add more subprocesses, click Add a flow, and then repeat steps 6 through 10.
  15. Click Submit.
  16. Click Save.