论文标题
测量图形和文本IEC 61131-3控制软件的整体复杂性
Measuring the Overall Complexity of Graphical and Textual IEC 61131-3 Control Software
论文作者
论文摘要
软件在工厂自动化中具有相当一部分功能。因此,有效的开发和软件零件的重复使用,即所谓的单元,可以提高竞争力。因此,复杂的控制软件单元更难理解,从而增加了开发,测试和维护成本。但是,由于对该主题的许多不同的主观观点,测量复杂性是具有挑战性的。本文比较了文献的不同复杂性定义,并考虑了定性问卷研究领域专家的复杂性感知,后者证实了客观措施比较复杂性的重要性。本文提出了一组指标,这些指标衡量了各种类别的软件复杂性,以识别最复杂的软件单元作为重构的先决条件。指标包括由大小,数据结构,控制流,信息流和词汇结构引起的复杂性。与大多数文献方法不同,指标符合IEC 61131-3标准的图形和文本语言。此外,提出了解释度量结果的概念。来自两家德国工厂制造商的工业软件进行的全面评估验证了指标的适用性来衡量复杂性。
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.