Creating a Service Process

You can create a service process and its containing package and project in one operation or create a service process only and add it to existing package/project.

See Creating a Project Package and Process.

A video called Modeling a Service Process is available that shows how to model a typical service process.

As service processes should be of short duration and have only one function, some activity types are not supported in service processes.

Activity Type Description
User tasks No direct user interaction with a service process is supported.
Manual ad-hoc activities No direct user interaction with a service process is supported.
Event sub-processes responding to externally sourced signals/incoming request events and inter-process signals This could result in unacceptably long pauses and, as service processes can be invoked from both pageflows and business services, this feature is disabled for service processes. Event sub-processes for internal process signals are supported.
Attached Sub-process calls to non-service process types Service processes can only synchronously invoke other service processes. However, they can asynchronously invoke conventional stateful business processes.
Non-boundary timers Timers that pause rather than monitor the execution of a thread of a service process are not supported.

When modeling a service process, you must specify a deployment target. You can deploy service processes to either:

  • the process engine
  • the pageflow engine

The deployment target you choose depends on whether you are invoking your service processes from business processes or pageflow processes. When you create a service process, the service process is set to deploy to the process engine by default.

    Procedure
  1. Before creating a service process, you must create a project and a package to contain your process.
  2. In the Project Explorer, under Process Packages, select the package you created, or Processes within an existing package, right-click and select New > Service Process.
    The New Service Process wizard is displayed.
  3. Enter the Label of the process. You can change the label on the General tab in the Properties view if necessary. If you want to use a predefined template to create the service process, select the template and select Next.
    In addition to the service process templates, you can select a service process interface as the basis for your new service process. This creates a service process with the deployment target, events and parameters that are specified in the service process interface. Specifying a service process interface allows the dynamic selection of service processes at runtime. See Service Process Interfaces.
  4. In the Description dialog box, add optional text that describes the process, an optional URL that links to documentation about the process, and click Next.
    Note: The Documentation URL field is intended for design-time collaboration; it is not displayed in the runtime environment.
  5. The Extended dialog box is displayed. This allows you to add optional supplemental information to the XPDL for the process.
  6. Select Finish.

    The service process that you created is displayed in the Process Editor.

    When you first start the Process Editor, the palette (on the right side of the diagram) might be collapsed; if so, expand it. You can expand this window to fill your screen by double-clicking the title bar. A service process has a different default color scheme from other processes.

    Note: Service processes do not contain pools or lanes.

  7. Once you have created your service process, you must configure the deployment target that you want the service process to be deployed to.
    When you create a service process, the deployment target is automatically set to Deploy to Process Run-time so, if you want your service process to deploy to the pageflow engine, you must select Deploy to Pageflow Run-time in the General tab of the Properties view.
    Note: There are other tabs available in the Properties view for service processes. See Process Properties for more information.