Using Graph Clustering Algorithms to Modularize IEC 61499 Control Software

Software size and complexity in all kinds of domains increase rapidly in recent times, making software maintenance and reusability increasingly difficult. Analysis of existing software and subsequent re-modularization can help with these challenges. Although software re-modularization can be time- a...

Full description

Saved in:
Bibliographic Details
Published inProceedings (IEEE International Conference on Emerging Technologies and Factory Automation) pp. 1 - 4
Main Authors Bauer, Philipp, Sonnleithner, Lisa, Rabiser, Rick, Zoitl, Alois
Format Conference Proceeding
LanguageEnglish
Published IEEE 12.09.2023
Subjects
Online AccessGet full text
ISSN1946-0759
DOI10.1109/ETFA54631.2023.10275726

Cover

More Information
Summary:Software size and complexity in all kinds of domains increase rapidly in recent times, making software maintenance and reusability increasingly difficult. Analysis of existing software and subsequent re-modularization can help with these challenges. Although software re-modularization can be time- and resource-intensive, it can support engineers in improving the quality of their systems in the future. Code can contain certain patterns, such as code smells, that define some kind of problematic implementation that is usually inefficient and hinders future development. We explore the use of a semantic clustering algorithm, which aims to minimize the code smell "Feature Envy". We apply this algorithm recursively to create a multi-level hierarchy. With this approach, we explore the re-modularization of existing IEC 61499 control systems. First tests we conducted on example implementations of a capping station and a real-life-sized industrial control system show a significant reduction of Feature Envy and thus the coupling between modules using this approach.
ISSN:1946-0759
DOI:10.1109/ETFA54631.2023.10275726