Glossary · Automation software engineering and architecture
Execution environment
Also known as: Runtime environment
German: Ausführungsumgebung
In software engineering, an execution environment is the combination of hardware, operating system, runtime system, libraries and configuration in which a program runs and on whose services it depends, such as a PLC runtime, a Java virtual machine or a container host.
- Software engineering
In one sentence
An execution environment is the hardware, operating system, runtime and libraries in which a program runs and on which it depends.
Example
The soft PLC runtime on an industrial PC with a real-time Linux kernel forms the execution environment for the machine's IEC 61131-3 application.
How it applies
- Engineering: Software behavior depends on its execution environment: timing, available memory, library versions and operating system settings. Tests are only meaningful if the test environment matches the production environment closely enough.
- Maintenance: Changes to the execution environment, such as an operating system update, runtime patch or new hardware, can change behavior even if the application is unchanged. Treat them as changes requiring Impact analysis and testing.
- Documentation: State the supported execution environments and versions in installation guides and release notes. Record the actual environment of each installation in the commissioning documentation, so support can reproduce problems.
Execution environment vs. development environment
The development environment is where software is written and built: editors, compilers, engineering tools. The execution environment is where it runs. In automation, the engineering tool and the controller runtime often have separate version numbers that must be compatible.