Best Practices

We have created this document to ensure your process is easily readable and follows best practices.

At beggining of the process, it is important to clarify all the values required. Avoid hardcoding values and, instead, save them in variables with intuitive names (without using space). It is important to establish a set of rules for naming variables and then consistently adhere to those rules.

If variables change depending on the process stage or variables required in multiple processes, save them in Global Variables. During each process, ensure that the process is initialized. During process initialization, it is recommended to set up variables, call all necessary global variables, and terminate all applications used on the robot to ensure a clean start. Please group those steps together to enhance visibility.

If your process requires input or output files, create a folder with the process name and place all the necessary documents in that folder if possible. It is important to create this folder on the robot's machine before publishing the process to the Test or Production environment.

Functions should be your go-to whenever possible. They allow you to save parts of the process that will be used multiple times, promoting efficiency and better process design. Additionally, Functions can be Used to save all logically independent parts of the process, making it easier to test and modify each part separately if needed.

Consider the scenario where you have two processes that use a single application. In the first process, you need to use Function 1 of the application, while in the second process, you need to use Function 2 and Function 3. To ensure efficiency, it is recommended to create four functions:

1. Function to log in to the application.

2.  Function to execute Function 1 in the application.

3. Function to execute Function 2 in the application.

4. Function to execute Function 3 in the application.

This approach has several advantages. In the first process, all Global variables for the application path, username, and password for login will be retrieved, eliminating the need to enter the data twice. Furthermore, if the application interface for login changes, only that specific Function needs to be updated and tested.

Consider the case where Function 3 of the application changes after an application update. Only the corresponding Function must be updated in this case; no other changes are required. This approach saves time, reduces the risk of errors, and ensures consistency across all processes.

Please keep the following guidelines in mind before each production to ensure smooth running of the process. Firstly, ensure that your process does not have hardcoded values and avoid unnecessarily using duplicate steps. Use Modular design: divide the process into smaller parts and group them. it is recomended to use diferent group color to better visiability. Add a description for each group and make sure to close all open connections (FTP, SFTP, Selenium driver, database, etc). Also, it is important to avoid declaring unnecessary Global variables and duplicating Functions.

In consultation with the process owners, define Key Performance Indicators (KPIs) and implement them in the process. Finally, terminate all applications used in the process and create process status notifications. Also, create an Exception Handling section in the process. If necessary, create a Function for Exception Handling and use it within the Department or Organization. If you have any special requirements for certain processes, you can add them additionally with the Function.

Tips & Tricks

 

  • To ensure that the process runs smoothly, it is recommended to perform a manual run-through first. This will allow you to identify any areas that need optimization, including steps within the process. 
  • In web applications, instead of clicking on multiple windows, use a direct link to the required window. 
  • To navigate through the application, use the following keys: 
    • Tab for moving from one field to another
    • Space for selecting checkboxes
    • Enter for confirming
  • Avoid hard-coding values and use parameterization instead.
  • It is important to close all applications at the beginning, end, and in the Error Handling section. 
  • Develop your process step by step and test each one separately. 
  • Use Functions and Error Handling, and try to predict any errors that may occur and handle them within the process.
  • Provide all steps and variables with intuitive names in English (without space between). 
  • Thorough testing is a non-negotiable step in the process development.
  • It's important to involve clients in the testing process and ensure all cases are tested. This approach not only ensures the process runs smoothly but also guarantees that it meets client requirements.
  • You can use your knowledge of other technologies to automate the process more efficiently. For example, use API calls, read data directly from databases, or use web services.
  • The recorder does not recognize time between clicking, so use additional fields for speed control: retry and timeout between each retry.
  • Divide the process into smaller parts and record them separately if necessary.
  • Use Recorder whenever is possible.

Was this article helpful?