TY - JOUR
T1 - Measuring the Overall Complexity of Graphical and Textual IEC 61131-3 Control Software
AU - Fischer, Juliane
AU - Vogel-Heuser, Birgit
AU - Schneider, Heiko
AU - Langer, Nikolai
AU - Felger, Markus
AU - Bengel, Matthias
N1 - Publisher Copyright:
© 2016 IEEE.
PY - 2021/7
Y1 - 2021/7
N2 - Software implements a significant proportion of functionality in factory automation. Thus, efficient development and the reuse of software parts, so-called units, enhance competitiveness. Thereby, complex control software units are more difficult to understand, leading to increased development, testing and maintenance costs. However, measuring complexity is challenging due to many different, subjective views on the topic. This paper compares different complexity definitions from literature and considers with a qualitative questionnaire study the complexity perception of domain experts, who confirm the importance of objective measures to compare complexity. The paper proposes a set of metrics that measure various classes of software complexity to identify the most complex software units as a prerequisite for refactoring. The metrics include complexity caused by size, data structure, control flow, information flow and lexical structure. Unlike most literature approaches, the metrics are compliant with graphical and textual languages from the IEC 61131-3 standard. Further, a concept for interpreting the metric results is presented. A comprehensive evaluation with industrial software from two German plant manufacturers validates the metrics' suitability to measure complexity.
AB - Software implements a significant proportion of functionality in factory automation. Thus, efficient development and the reuse of software parts, so-called units, enhance competitiveness. Thereby, complex control software units are more difficult to understand, leading to increased development, testing and maintenance costs. However, measuring complexity is challenging due to many different, subjective views on the topic. This paper compares different complexity definitions from literature and considers with a qualitative questionnaire study the complexity perception of domain experts, who confirm the importance of objective measures to compare complexity. The paper proposes a set of metrics that measure various classes of software complexity to identify the most complex software units as a prerequisite for refactoring. The metrics include complexity caused by size, data structure, control flow, information flow and lexical structure. Unlike most literature approaches, the metrics are compliant with graphical and textual languages from the IEC 61131-3 standard. Further, a concept for interpreting the metric results is presented. A comprehensive evaluation with industrial software from two German plant manufacturers validates the metrics' suitability to measure complexity.
KW - Complexity metrics
KW - IEC 61131-3 software
KW - control architectures and programming
KW - factory automation
KW - industrial case study
UR - http://www.scopus.com/inward/record.url?scp=85107228716&partnerID=8YFLogxK
U2 - 10.1109/LRA.2021.3084886
DO - 10.1109/LRA.2021.3084886
M3 - Article
AN - SCOPUS:85107228716
SN - 2377-3766
VL - 6
SP - 5784
EP - 5791
JO - IEEE Robotics and Automation Letters
JF - IEEE Robotics and Automation Letters
IS - 3
M1 - 9444196
ER -