Conference paper Open Access

On the Measurement of Software Complexity for PLC Industrial Control Systems using TIQVA

Adnan Muslija , Eduard Paul Enoiu

In the safety-critical domain (e.g. transportation, nuclear, aerospace and automotive), large-scale embedded systems implemented using Programmable Logic Controllers (PLCs) are widely used to provide supervisory control. Software complexity metrics, such as code size and cyclomatic complexity, have been used in the software engineering community for predicting quality metrics such as maintainability, bug proneness and robustness. However, since there is no available approach and tool support for measuring software complexity of PLC programs, we developed a tool called TIQVA in an effort to measure complexity for this type of software. We show how to measure different software complexity metrics such as lines of code, cyclomatic complexity, and information flow for a popular PLC programming language named Function Block Diagram (FBD).We evaluate the tool using data provided by Bombardier Transportation from a Train Control Management System (TCMS). In addition, we report some empirical and industrial evidence showing how TIQVA can be used to provide some experimental evidence to support the use of these metrics to estimate testing effort for an industrial control software. The results from this evaluation indicate that other specific dimensions of PLC programs (e.g., function block relationships, block coupling and timing) could be used to improve the measurement of complexity for industrial embedded software.

Files (855.7 kB)
Name Size
On_the_Measurement_of_Complexity_for_Industrial_Control_Software_using_TIQVA__SAC_.pdf
md5:aefbe6fc6e1f51c3cdc4bfd22ce8d22d
855.7 kB Download
23
29
views
downloads
All versions This version
Views 2323
Downloads 2929
Data volume 24.8 MB24.8 MB
Unique views 2222
Unique downloads 2525

Share

Cite as