A computer-implemented method for arranging workload in a Software-Defined Automation system, the method comprising: providing an SDA system, including a system controller node (610/810-1) and multiple compute nodes (615/820-N), wherein the multiple compute nodes (615/820-N) are communicatively coupled to the system controller node (610/810-1) via a first communication network; wherein the system controller node (610/810-1) manages the multiple compute nodes (615/820-N) and virtualization of a control system or a portion thereof on at least one compute node from the multiple compute nodes (615/820-N) via the first communication network to create a virtualized control system including at least one virtualized control system element connected to a virtual network (620/820) connected to a second communication network; wherein the at least one virtualized control system element controls at least one physical control system element via the second communication network connected to the virtual network (620/820); and wherein the SDA system is configured for executing an automation function comprising predetermined device functions assigned to at least one automation device (1702, 1703, 1704); determining tasks (T1; A1-A5; P1-P4) of the predetermined device functions; assessing industrial operational parameters for each of the tasks (T1; A1-A5; P1-P4) of the predetermined device functions; ranking the tasks (T1; A1-A5; P1-P4) by the industrial operational parameters; selecting tasks (T1; A1-A5; P1-P4) for distribution based on the ranking; indicating the selected tasks (T1; A1-A5; P1-P4) to the system controller node (610/810-1); and distributing the selected tasks (T1; A1-A5; P1-P4) by the system controller node (610/810-1) by: deploying at least one task to at least one automation device based on the industrial operational parameters; and offloading at least one task to one of the multiple compute nodes based on the industrial operational parameters. providing an SDA system, including a system controller node (610/810-1) and multiple compute nodes (615/820-N), wherein the multiple compute nodes (615/820-N) are communicatively coupled to the system controller node (610/810-1) via a first communication network; wherein the system controller node (610/810-1) manages the multiple compute nodes (615/820-N) and virtualization of a control system or a portion thereof on at least one compute node from the multiple compute nodes (615/820-N) via the first communication network to create a virtualized control system including at least one virtualized control system element connected to a virtual network (620/820) connected to a second communication network; wherein the at least one virtualized control system element controls at least one physical control system element via the second communication network connected to the virtual network (620/820); and wherein the SDA system is configured for executing an automation function comprising predetermined device functions assigned to at least one automation device (1702, 1703, 1704); wherein the multiple compute nodes (615/820-N) are communicatively coupled to the system controller node (610/810-1) via a first communication network; wherein the system controller node (610/810-1) manages the multiple compute nodes (615/820-N) and virtualization of a control system or a portion thereof on at least one compute node from the multiple compute nodes (615/820-N) via the first communication network to create a virtualized control system including at least one virtualized control system element connected to a virtual network (620/820) connected to a second communication network; wherein the at least one virtualized control system element controls at least one physical control system element via the second communication network connected to the virtual network (620/820); and wherein the SDA system is configured for executing an automation function comprising predetermined device functions assigned to at least one automation device (1702, 1703, 1704); determining tasks (T1; A1-A5; P1-P4) of the predetermined device functions; assessing industrial operational parameters for each of the tasks (T1; A1-A5; P1-P4) of the predetermined device functions; ranking the tasks (T1; A1-A5; P1-P4) by the industrial operational parameters; selecting tasks (T1; A1-A5; P1-P4) for distribution based on the ranking; indicating the selected tasks (T1; A1-A5; P1-P4) to the system controller node (610/810-1); and distributing the selected tasks (T1; A1-A5; P1-P4) by the system controller node (610/810-1) by: deploying at least one task to at least one automation device based on the industrial operational parameters; and offloading at least one task to one of the multiple compute nodes based on the industrial operational parameters. deploying at least one task to at least one automation device based on the industrial operational parameters; and offloading at least one task to one of the multiple compute nodes based on the industrial operational parameters.