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...
Saved in:
| Published in | Proceedings (IEEE International Conference on Emerging Technologies and Factory Automation) pp. 1 - 4 |
|---|---|
| Main Authors | , , , |
| Format | Conference Proceeding |
| Language | English |
| Published |
IEEE
12.09.2023
|
| Subjects | |
| Online Access | Get full text |
| ISSN | 1946-0759 |
| DOI | 10.1109/ETFA54631.2023.10275726 |
Cover
| 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 |