This documentation supports the 20.08 version of BMC Helix Platform. 
To view an earlier version, select 20.02 from the Product version menu.

Defining the application business logic through processes

BMC Helix Innovation Studio provides Process designer, a graphic-based interface, to create and customize business processes of a Digital Service application. Processes are the named services of an application. Business logic is the core of each application and a process is an application service that performs application business logic and achieves the application purpose. You can invoke business logic for an application by calling processes of that application. Each process has a name, inputs, and outputs. For example, Approval is the sole service of Approval application, that can be invoked by calling Approval process through REST API or through metadata.

You can design processes meant to accomplish a business goal by using the Process designer. You can also use RESTful APIs to modify processes. APIs give you more power and control over managing processes and performing actions that might not be possible through the UI.


Application business analysts can customize the objects developed in their own applications and that are marked customizable by the developers, but cannot customize the objects developed in com.bmc.arsys. For example, objects in core BMC applications like Foundation, Approval, and Assignment cannot be customized.

Before you create a process, ensure the following:

  • You have an understanding about the process objective, required inputs, and desired output.
  • You have all the elements required to create or modify your process. If the required element in not available, you may request your developer to create and deploy it. For more information about process elements and an example of a process created in BMC Helix Innovation Studio, see Process designer elements.

Best practices for designing a process

Following are some of the best practices that you should follow when designing a process:

  • Do not create big process with lot of steps and actions. Process definitions are to visually represent a business procedure. When the process definition becomes too big, it starts to lose the benefit of a visual workflow. Use a modular approach to divide the steps in smaller sub processes. You can do this using the Sub Process or Call Activity element.
  • Ensure that you have properly thought through between writing code (using @Action) and creating a process definition. Consider the following scenarios when selecting the correct option to write code or use Process designer:
    • If the business logic needs to be visually described or if your users can configure it, design a process using the Process designer.
    • Using service task to perform self sustained unit of work, and let process manage states.
    • You can write the code if it is faster to implement a complicated logic than using the Process designer.
  • When you create a new process, concentrate on laying out the flow first. Do not focus too much on configuring each element. When the flow is completed, save the process and then continue to configure each element one by one.

Workflow for defining the business logic

The following table lists the different tasks that are involved in defining a business logic:

Basic workflow
1Start creating a process by accessing the process designer, adding permissions, and elements to the process.Defining processes to accomplish business goals
2Add variables to the process to define the current value of a part of the process.Adding variables to processes

Perform the following actions:

  • Create process steps from start to end to create a business process flow or copy an existing process
  • Provide the process flow order
  • Loop through a data list
  • Control the execution of a process flow.
4View the process dashboard and manage process execution such as start a process, stop a process, or resume a process.Managing processes by using the Manage Processes dashboard
Adding capabilities to your process

Integrate with other applications, enhance process readability, model a user performing a task so that a process resumes once the task is complete.


Perform the following actions:

  • Add wait states, compute expression value to use the expression value in a process flow
  • Add text annotations that provide additional information about a process
  • Notify process users
7Create or update record instances and define a relationship between the record instances in a process flow.
8Create a document instance and an array node in the document instance.
9Analyze the tone of a written document, email, or chat conversation.Configuring tone analysis in applications
10Handle errors in a process.Handling errors in a process

Related topics

Process designer interface

Process designer elements

Process variables and data types

Expression Editor

Was this page helpful? Yes No Submitting... Thank you