Skip to content
Licensed Unlicensed Requires Authentication Published by De Gruyter (O) October 17, 2018

Change analysis on evolving PLC software in automated production systems

Änderungsanalyse der Evolution unterliegender PLC Software für automatisierte Produktionssysteme
  • Alexander Schlie

    Alexander Schlie graduated in computer science at the TU Braunschweig, Germany and received his M.Sc. in 2016. He works as a research assistant at the Institute of Software Engineering and Automotive Informatics. His research interests are on reverse-engineering variability information from legacy systems to allow for their restructuring and migration towards software product lines.

    EMAIL logo
    , Safa Bougouffa

    Safa Bougouffa, M.Sc. works as a research assistant at the Institute of Automation and Information Systems, Technical University of Munich. Her research interest is on the application of quality assurance methods to improve the development of automated production systems.

    , Juliane Fischer

    Juliane Fischer, M.Sc., graduated in mechanical engineering from the Technical University of Munich (TUM) in 2017. She is a research assistant at the Institute of Automation and Information Systems at TUM. Her main research interests are the design of modular, reusable control software and flexible material flow systems in automated production systems.

    , Ina Schaefer

    Prof. Dr. Ina Schaefer directs the Institute for Software Technology and Vehicle Informatics at the Technical University of Braunschweig, Germany. After completing her Ph.D. at the Technical University of Kaiserslautern, she, was postdoc at Chalmers University of Technology in Göteborg, Sweden. Her research interests include methods for verification and testing for variant-rich and evolving software systems.

    and Birgit Vogel-Heuser

    Prof. Dr.-Ing. Birgit Vogel-Heuser graduated in electrical engineering and received the Ph.D. in mechanical engineering from the RWTH Aachen in 1991. She worked for nearly ten years in industrial automation in the machine and plant manufacturing industry. After holding different chairs of automation she has been head of the Institute of Automation and Information Systems at the Technical University of Munich since 2009. Her research work is focused on modeling and education in automation engineering for distributed and intelligent systems.

Abstract

Control software for automated Production Systems (aPSs) becomes increasingly complex. Respective systems undergo constant evolution. Yet, proper documentation may not always be present, entailing maintenance issues in the long run. While manual examination of software for aPSs is an error-prone task, static analysis can improve system quality. However, it has not been applied to describe software evolution by means of changed systems artifacts. The authors address this issue and perform change analyses on IEC61131-3 projects, identifying introduced and removed systems artifacts as well as existing ones affected. By that, the authors aim to support sustainable evolution. Two feasibility studies, implemented independently, but for the same evolution scenarios for an automation plant, are used for evaluation. The technique is shown to be efficient and highly precise.

Zusammenfassung

Software für automatisierte Produktionssysteme wird zunehmend komplex und unterliegt der ständigen Weiterentwicklung. Dabei ist eine detaillierte Dokumentation der Änderungen nicht immer gegeben, welches signifikante Wartungsprobleme nach sich zieht. Entgegen einer manuellen, fehleranfälligen Identifikation der Änderungen kann auf statische Analyseverfahren zurückgegriffen werden. Im Umfeld der automatisierten Produktionssysteme ist dies jedoch noch nicht zur Beschreibung von evolvierender Software eingesetzt worden. Die Autoren nutzen die statische Analyse von IEC61131-3 Projekten und identifizieren Softwareartefakte, welche der Evolution unterliegen. Das Verfahren wird an zwei Machbarkeitsstudien, welche unabhängig voneinander implementiert wurden, dargelegt.

Award Identifier / Grant number: SCHA 1635/12-1

Award Identifier / Grant number: VO 937/31-1

Funding statement: This work was supported by the DFG (German Research Foundation) (SCHA 1635/12-1) & (VO 937/31-1).

About the authors

Alexander Schlie

Alexander Schlie graduated in computer science at the TU Braunschweig, Germany and received his M.Sc. in 2016. He works as a research assistant at the Institute of Software Engineering and Automotive Informatics. His research interests are on reverse-engineering variability information from legacy systems to allow for their restructuring and migration towards software product lines.

Safa Bougouffa

Safa Bougouffa, M.Sc. works as a research assistant at the Institute of Automation and Information Systems, Technical University of Munich. Her research interest is on the application of quality assurance methods to improve the development of automated production systems.

Juliane Fischer

Juliane Fischer, M.Sc., graduated in mechanical engineering from the Technical University of Munich (TUM) in 2017. She is a research assistant at the Institute of Automation and Information Systems at TUM. Her main research interests are the design of modular, reusable control software and flexible material flow systems in automated production systems.

Ina Schaefer

Prof. Dr. Ina Schaefer directs the Institute for Software Technology and Vehicle Informatics at the Technical University of Braunschweig, Germany. After completing her Ph.D. at the Technical University of Kaiserslautern, she, was postdoc at Chalmers University of Technology in Göteborg, Sweden. Her research interests include methods for verification and testing for variant-rich and evolving software systems.

Birgit Vogel-Heuser

Prof. Dr.-Ing. Birgit Vogel-Heuser graduated in electrical engineering and received the Ph.D. in mechanical engineering from the RWTH Aachen in 1991. She worked for nearly ten years in industrial automation in the machine and plant manufacturing industry. After holding different chairs of automation she has been head of the Institute of Automation and Information Systems at the Technical University of Munich since 2009. Her research work is focused on modeling and education in automation engineering for distributed and intelligent systems.

References

1. S. Adiga. Object-oriented Software for Manufacturing Systems. Intelligent Manufactoring Series, Springer Netherlands, 2012. ISBN 9789401148443.Search in Google Scholar

2. F. Angerer et al. “Points-To Analysis of IEC 61131-3 Programs: Implementation and Application.” In: Proceedings 18th IEEE International Conference on Emerging Technologies & Factory Automation. 2013, pp. 1–8.10.1109/ETFA.2013.6648062Search in Google Scholar

3. M. Barth and A. Fay. “Automated Generation of Simulation Models for Control Code Tests.” In: Control Engineering Practice 21.2 (2013), pp. 218–230.10.1016/j.conengprac.2012.09.022Search in Google Scholar

4. S. Bohner and R. Arnold. Software Change Impact Analysis.Search in Google Scholar

5. F. Bonfatti, P. D. Monari and U. Sampieri. IEC 1131-3 Programming Methodology: Software Engineering Methods for Industrial Automated Systems.Search in Google Scholar

6. M. Broy. “The ‘Grand Challenge’ in Informatics: Engineering Software-Intensive Systems.” In: Computer 39.9 (2006), pp. 72–80.10.1109/MC.2006.358Search in Google Scholar

7. A. Canedo and M. A. Al-Faruque. “Towards Parallel Execution of IEC 61131 Industrial Cyber-physical Systems Applications.” In: Proceedings of the Conference on Design, Automation and Test in Europe, DATE. 2012, pp. 554–557.10.1109/DATE.2012.6176530Search in Google Scholar

8. J. E. Cooling. Software Engineering for Real-time Systems.Search in Google Scholar

9. H. K. Dam and A. Ghose. “Dynamic Change Impact Analysis for Maintaining and Evolving Agent Systems.” In: Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems, AAMAS. 2012, pp. 1433–1434.Search in Google Scholar

10. A. Dubey. “Evaluating Software Engineering Methods in the Context of Automation Applications.” In: 2011 9th IEEE International Conference on Industrial Informatics. 2011, pp. 585–590.10.1109/INDIN.2011.6034944Search in Google Scholar

11. Z. Durdik et al. “Towards Sustainability Guidelines for long-living Software Systems.” In: 2012 28th IEEE International Conference on Software Maintenance (ICSM). 2012, pp. 517–526.10.1109/ICSM.2012.6405316Search in Google Scholar

12. S. Feldmann et al. “Analysis Framework for Evaluating PLC Software: An Application of Semantic Web Technologies.” In: 2016 IEEE 25th International Symposium on Industrial Electronics (ISIE). 2016, pp. 1048–1054.10.1109/ISIE.2016.7745037Search in Google Scholar

13. J. Fuchs et al. “Identification of Design Patterns for IEC 61131-3 in Machine and Plant Manufacturing.” In: IFAC Proceedings Volumes 47.3 (2014), pp. 6092–6097.10.3182/20140824-6-ZA-1003.01595Search in Google Scholar

14. IEC 61131-3 Languages, Standard. Geneva, CH: International Electrotechnical Commission, Mar. 2003.Search in Google Scholar

15. U. Katzke, B. Vogel-Heuser and K. Fischer. “Analysis and State of the Art of Modules in Industrial Automation.” In: Automatisierungstechnische Praxis (atp) 46.1 (2004), pp. 23–31.Search in Google Scholar

16. M. Kowal et al. “Delta Modeling for Variant-rich and Evolving Manufacturing Systems.” In: Proceedings of the 1st International Workshop on Modern Software Engineering Methods for Industrial Automation, MoSEMInA. 2014.10.1145/2593783.2593786Search in Google Scholar

17. A. Kumar et al. “Analyzing Dependencies in an Industrial Automation Engineering System.” In: Proceedings of the 8th India Software Engineering Conference. ISEC. 2015, pp. 60–69.10.1145/2723742.2723748Search in Google Scholar

18. J. Lee et al. “A Preliminary Report on Static Analysis of C Code for Nuclear Reactor Protection System.” In: IFAC Proceedings Volumes 46.9 (2013), pp. 2134–2139.10.3182/20130619-3-RU-3018.00259Search in Google Scholar

19. C. Legat, J. Folmer and B. Vogel-Heuser. “Evolution in industrial plant automation: A case study.” In: IECON – 39th Annual Conference of the IEEE Industrial Electronics Society. 2013, pp. 4386–4391.10.1109/IECON.2013.6699841Search in Google Scholar

20. P. Herbert et al. “Static Code Analysis of IEC 61131-3 Programs: Comprehensive Tool Support and Experiences from Large-Scale Industrial Application.” In: IEEE Transactions on Industrial Informatics 13 (2017), pp. 37–47.10.1109/TII.2016.2604760Search in Google Scholar

21. PLCopen. PLCopen Technical Committee 6, XML Formats for IEC 61131-3: Version 2.01.Search in Google Scholar

22. PLCopen Association. PLCOpen Association Website. 2017. URL: http://http://www.plcopen.org/.Search in Google Scholar

23. H. Prähofer et al.“Opportunities and Challenges of Static Code Analysis of IEC 61131-3 programs.” In: Emerging Technologies & Factory Automation (ETFA), 2012 IEEE 17th Conference on, IEEE. 2012, pp. 1–8.10.1109/ETFA.2012.6489535Search in Google Scholar

24. R. Ramler, W. Putschögl and D. Winkler. “Automated Testing of Industrial Automation Software: Practical Receipts and Lessons Learned.” In: Proceedings of the 1st International Workshop on Modern Software Engineering Methods for Industrial Automation. MoSEMInA. 2014.10.1145/2593783.2593788Search in Google Scholar

25. R. Reicherdt and S. Glesner. “Slicing MATLAB Simulink Models.” In: Proceedings of the 34th International Conference on Software Engineering. ICSE. 2012, pp. 551–561.10.1109/ICSE.2012.6227161Search in Google Scholar

26. S. Roesch et al. “Review of Model-Based Testing Approaches in Production Automation and Adjacent Domains-Current Challenges and Research Gaps.” In: Journal of Software Engineering and Applications 08 (2015), pp. 499–519.10.4236/jsea.2015.89048Search in Google Scholar

27. A. Schlie et al. “Detecting Variability in MATLAB/Simulink Models: An Industry-Inspired Technique and Its Evaluation.” In: Proceedings of the 21st International Systems and Software Product Line Conference. SPLC. 2017, pp. 215–224.10.1145/3106195.3106225Search in Google Scholar

28. S. Stattelmann et al. “Applying Static Code Analysis on Industrial Controller Code.” In: 19th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA). IEEE, 2014. ISBN 978-1-4799-4845-1.Search in Google Scholar

29. T. Strasser et al. “Multi-domain model-driven Design of Industrial Automation and Control Systems.” In: IEEE International Conference on Emerging Technologies and Factory Automation. 2008, pp. 1067–1071.10.1109/ETFA.2008.4638526Search in Google Scholar

30. T. Kleanthis. “A Framework for the Implementation of Industrial Automation Systems Based on PLCs.” In: Computing Research Repository (CoRR) (2014).Search in Google Scholar

31. Technical University in Munich, Germany – Institute of Automation and Information Systems. The Pick and Place Unit Demonstrator for Evolution in Industrial Plant Automation. 2003. URL: http://www.ppu-demonstrator.org.Search in Google Scholar

32. The Instrumentation, Systems, and Automation Society. Batch Control Part 1: Models and Terminology. 1995.Search in Google Scholar

33. B. Vogel-Heuser et al. “Evolution of Software in Automated Production Systems: Challenges and Research Directions.” In: Journal of Systems and Software 110 (2015), pp. 54–84.10.1016/j.jss.2015.08.026Search in Google Scholar

34. B. Vogel-Heuser et al. “Modularity and Architecture of PLC-based Software for Automated Production Systems: An Analysis in Industrial Companies.” In: Journal of Systems and Software 131 (2017), pp. 35–62.10.1016/j.jss.2017.05.051Search in Google Scholar

35. V. Vyatkin. “Software Engineering in Industrial Automation: State-of-the-Art Review.” In: IEEE Transactions on Industrial Informatics 9.3 (2013), pp. 1234–1249.10.1109/TII.2013.2258165Search in Google Scholar

36. M. Weiser. “Program Slicing.” In: Proceedings of the 5th International Conference on Software Engineering.” ICSE. Piscataway, NJ, USA, 1981, pp. 439–449.Search in Google Scholar

37. R. Wettel and M. Lanza. “CodeCity: 3D Visualization of Large-scale Software.” In: Companion of the 30th International Conference on Software Engineering. ICSE Companion. 2008, pp. 921–922.10.1145/1370175.1370188Search in Google Scholar

38. N. Wilde, R. Huitt and S. Huitt. “Dependency Analysis Tools: Reusable Components for Software Maintenance.” In: Proceedings. Conference on Software Maintenance (ICSM). 1989, pp. 126–131.Search in Google Scholar

Received: 2018-03-22
Accepted: 2018-08-21
Published Online: 2018-10-17
Published in Print: 2018-10-25

© 2018 Walter de Gruyter GmbH, Berlin/Boston

Downloaded on 28.4.2024 from https://www.degruyter.com/document/doi/10.1515/auto-2018-0037/html
Scroll to top button