Computer program product comprising instructions which, when the program is executed by a computing unit, cause the computing unit to provide an environment with a graphical user interface to a user and to execute a control software in the environment , wherein the control software - is configured to control physical processes via external software , wherein each controlled physical process is decomposable into at least one physical sub-process , the physical sub-processes of the controlled physical processes combinable into a nonempty set of physical sub-processes, and - is composed of actions and determined by a number and type of actions and associations between the actions, each action being an elementary building block, wherein - the environment enables the user to graphically assemble the control software and to input monitoring information relating to which physical sub-processes from the set of physical sub-processes are to be monitored; and - the external software provides interfaces through which the actions may communicate with the external software, characterized in that - the monitoring information comprises debug points , wherein the environment enables the user to place a debug point on each action to which a nonempty subset of the set of physical sub-processes is associated, - sensor data recording observables are stored in a memory, which observables depend on a subset of the set of physical sub-processes associated to one of the debug points , wherein the sensor data are stored in such a way in the memory that the stored sensor data are related to the debug point , and - to each debug point a monitoring function is associated, the monitoring function having access to those parts of the memory that comprise sensor data related to the debug point to which the monitoring function is associated, wherein each monitoring function provides an indication in the graphical user interface about a physical state of the subset of the set of physical sub-processes associated to the debug point to which the monitoring function is associated. - is configured to control physical processes via external software , wherein each controlled physical process is decomposable into at least one physical sub-process , the physical sub-processes of the controlled physical processes combinable into a nonempty set of physical sub-processes, and - is composed of actions and determined by a number and type of actions and associations between the actions, each action being an elementary building block, wherein - the environment enables the user to graphically assemble the control software and to input monitoring information relating to which physical sub-processes from the set of physical sub-processes are to be monitored; and - the external software provides interfaces through which the actions may communicate with the external software, characterized in that - the monitoring information comprises debug points , wherein the environment enables the user to place a debug point on each action to which a nonempty subset of the set of physical sub-processes is associated, - sensor data recording observables are stored in a memory, which observables depend on a subset of the set of physical sub-processes associated to one of the debug points , wherein the sensor data are stored in such a way in the memory that the stored sensor data are related to the debug point , and - to each debug point a monitoring function is associated, the monitoring function having access to those parts of the memory that comprise sensor data related to the debug point to which the monitoring function is associated, wherein each monitoring function provides an indication in the graphical user interface about a physical state of the subset of the set of physical sub-processes associated to the debug point to which the monitoring function is associated. <EOS>