  Cyber-Physical Production Systems (CPPS) are long-living and mechatronic
systems, which include mechanics, electrics/electronics and software. The
interdisciplinary nature combined with challenges and trends in the context of
Industry 4.0 such as a high degree of customization, small lot sizes and
evolution cause a high amount of variability. Mastering the variability of
functional control software, e.g., different control variants of an actuator
type, is itself a challenge in developing and reusing CPPS software. This task
becomes even more complex when considering extra-functional software such as
operating modes, diagnosis and error handling. These software parts have high
interdependencies with functional software, often involving the human-machine
interface (HMI) to enable the intervention of operators. This paper illustrates
the challenges in documenting the dependencies of these software parts
including their variability using family models. A procedural and an
object-oriented concept for implementing error handling, which represents an
extra-functional task with high dependencies to functional software and the
HMI, are proposed. The suitability of both concepts to increase the software's
reusability and, thus, its flexibility in the context of Industry 4.0 is
discussed. Their comparison confirms the high potential of the object-oriented
extension of IEC 61131-3 to handle planned reuse of extra-functional CPPS
software successfully.

Software Engineering