In this section, you will learn about the components of an application and how to proceed when developing an application.
Designing an Application
A RunMyProcess DigitalSuite application with all its components is managed in a project which is defined in DigitalSuite Studio. Before you start to create the development project, you should have a clear understanding of the application setup and design. You should define a high-level specification of the application taking into account the following aspects:
- Groups/Users: Who is involved in using or managing the application? Which steps are performed by the different users? Which access rights do they need?
- Workflow/Process: How does the business logic and workflow look like? Which steps are involved?
- Actions: Which actions are required in the process, for example, manual interaction like approval steps or email notification?
- Information/Data: Which data is required and which system is it retrieved from or stored to?
- Web interface design: How should the web interface look like? Which screens are presented to the different users involved in the process?
- Reports & KPIs: Which reports are needed? Which KPIs are to be collected in these reports?
- Integrations: Which external systems need to be connected?
The main steps in designing an application are the following:
- Defining the user roles for the application.
- Setting up a project for your application.
- Designing the web interface.
- Designing the process.
- Testing, deploying, and running the application.
- Creating reports.
For advanced features like integrations and data storage, refer to Advanced Features.
To guide you through the development of an application, we are referring to a sample. It reflects a simple expense request workflow, starting with the request by an employee, followed by the approval of a manager and the payment confirmation by the administration, and ending with storing the expense data in a target system, for example, a company-wide database. The application is managed in one project, and consists of one process and a web interface with three screens reflecting the tasks of the roles involved.
Users and Roles
The following roles are involved in the workflow: Employee, Manager, and Administration. For details, refer to Users and Roles.
The following image shows the web interface of the sample as exposed to users. The progress bar reflects the workflow (see below). The form contains all fields required for an expense request. Web interfaces are designed using the WebModeler of DigitalSuite Studio. For details, refer to Web Interface Design.
The workflow of the expense request application includes the following steps:
- The expense request is filled in and submitted by an employee. After submitting the request, a task is assigned to the manager for validation.
- The request is validated by the manager. Based on the manager’s decision, the request is either rejected or approved. In both cases, a notification email is sent to the requester informing about the rejection or approval.
- If the request is approved, a new task is assigned to the administration team for confirmation of the payment. The requester is informed via email.
- The expense data is stored in a database, for example, a collection or a third-party system.
The following image shows the process as modeled using the ProcessModeler of DigitalSuite Studio. For details, refer to Process Design.