Defining the application business logic through processes
BMC Helix Innovation Studio provides Process designer, a graphical-based interface, to create and customize the 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 runs this business logic, and achieves the application purpose. You can invoke business logic for an application by calling the processes of that application. Each process has a name, input, and output. For example, Approval is the only service of the Approval application, which can be invoked by calling the Approval process through REST API or metadata.
Using the Process designer, you can design processes to accomplish a business goal. 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.
Important
Application business analysts can customize the objects developed in their 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. For more information, see Customization layer.
Before you begin
Before you create a process, make sure that:
- You understand the process objective, required inputs, and desired output.
- You have all the elements required to create or modify your process. If the required element is not available, request that your developer 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
The following best practices are a few that you must follow when designing a process:
- Do not create processes with many steps and actions. Process definitions represent a business procedure virtually. When the process definition becomes too big, it loses the benefit of a visual workflow. Instead, use a modular approach to divide the steps into smaller subprocesses. By using the Sub Process or Call Activity element.
- Make sure that you have planned adequately between writing code by using @Action and creating a process definition. Consider the following scenarios when selecting the correct option to write code or use the Process designer:
- Design a process using the Process designer if the business logic needs to be visually described or if your users can configure it.
- Use service tasks to perform a self-sustained unit of work and let the process manage states.
- Write the code if it is faster to implement a complicated logic than using the Process designer.
- When creating a new process, concentrate on laying out the flow first. Do not focus 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:
Task | Action | Reference |
---|---|---|
Basic workflow | ||
1 | Start creating a process by accessing the process designer and adding permissions and elements to the process. | Defining processes to accomplish business goals |
2 | Add variables to the process to define the current value of a part of the process. | Adding variables to processes |
3 | Perform the following actions:
| |
4 | View the process dashboard and manage the process execution, such as starting, stopping, or resuming a process. | Viewing and managing process execution |
Adding capabilities to your process | ||
5 | Integrate with other applications, enhance process readability, and model a user performing a task so that a process resumes after the task is complete. | |
6 | Perform the following actions:
| |
7 | Create or update record instances and define a relationship between the record instances in a process flow. | |
8 | Create a document instance and an array node in the document instance. | |
9 | Analyze the tone of a written document, email, or chat conversation. | Configuring tone analysis in applications |
10 | Manage errors in a process. | Handling errors in a process |
Comments
Log in or register to comment.