Generation of Monitoring Functions in Production Automation
Using Test Specifications
Suhyun Cha, Sebastian Ulewicz, Birgit Vogel-Heuser, Alexander Weigl,
Mattias Ulbrich, Bernhard Beckert
High requirements regarding quality are set for automated production systems
(aPS) as malfunctions can harm humans or cause severe financial loss. These
malfunctions can be caused by faults in the control software of the aPS or its
inability to correctly identify and handle unintended situations and errors in
the technical process or hardware behavior. To achieve more dependable control
software, software testing and formal verification can be used to find faults
in the software, but require to make assumptions about possible situations
(inputs) occurring in the aPS during runtime and often only allow the
validation of specific cases. Monitoring individual functions within the
control software during runtime can help to identify unspecified situations
and raise warnings of the uncertainty about the suitability of a
reaction. Yet, the design of reliable monitoring functions requires extensive
experience and resources. For this reason, we propose a method for generating
monitoring functions from available testing and verification specifications
initially used for validating a control software function. Through this, it is
possible to continuously assess the behavior of individual software functions
and to identify and warn about a) violations of the test specification during
runtime and b) unintended situations in which correct software behavior was
never tested. Thus, the approach can help to assess and improve both the
control software and specification quality through observation and behavior
assessment far beyond the testing phase by efficiently reusing existing test
specifications for runtime monitoring.