{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,11,10]],"date-time":"2026-11-10T17:57:10Z","timestamp":1794333430137,"version":"4.9.0"},"reference-count":26,"publisher":"Walter de Gruyter GmbH","issue":"2","license":[{"start":{"date-parts":[[2022,2,1]],"date-time":"2022-02-01T00:00:00Z","timestamp":1643673600000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100020639","name":"Bayerisches Staatsministerium f\u00fcr Wirtschaft, Landesentwicklung und Energie","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100020639","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2022,2,23]]},"abstract":"<jats:title>Abstract<\/jats:title>\n               <jats:p>Functions of automated Production Systems (aPS) can be realized by control software (SW), whose high quality and short development time are, therefore, vital. To achieve both, SW should be modular and, thereby, reusable. Static code analysis can help improve the modularization of existing software, e.\u2009g., by automatically analyzing control and information flow. However, manual code reviews are still typically required because planning a SW\u2019s modularization requires a semantic understanding of its functionality. This paper presents an approach to, instead, identify SW functionality automatically and evaluates it with SW from three aPS manufacturers.<\/jats:p>","DOI":"10.1515\/auto-2021-0138","type":"journal-article","created":{"date-parts":[[2022,2,4]],"date-time":"2022-02-04T12:09:23Z","timestamp":1643976563000},"page":"181-191","source":"Crossref","is-referenced-by-count":14,"title":["Towards automatic generation of functionality semantics to improve PLC software modularization"],"prefix":"10.1515","volume":"70","author":[{"given":"Jan","family":"Wilch","sequence":"first","affiliation":[{"name":"Institute of Automation and Information Systems, Department of Mechanical Engineering, TUM School of Engineering and Design , Technical University of Munich , Munich , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Juliane","family":"Fischer","sequence":"additional","affiliation":[{"name":"Institute of Automation and Information Systems, Department of Mechanical Engineering, TUM School of Engineering and Design , Technical University of Munich , Munich , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Nikolai","family":"Langer","sequence":"additional","affiliation":[{"name":"Br\u00fcckner Maschinenbau GmbH & Co. KG , K\u00f6nigsberger Str. 5-7 , Siegsdorf , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Markus","family":"Felger","sequence":"additional","affiliation":[{"name":"Teamtechnik Maschinen und Anlagen GmbH , Planckstra\u00dfe 40 , Freiberg , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Matthias","family":"Bengel","sequence":"additional","affiliation":[{"name":"Teamtechnik Maschinen und Anlagen GmbH , Planckstra\u00dfe 40 , Freiberg , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Birgit","family":"Vogel-Heuser","sequence":"additional","affiliation":[{"name":"Institute of Automation and Information Systems, Department of Mechanical Engineering, TUM School of Engineering and Design , Core Member of MDSI and Member of MIRMI , Technical University of Munich , Munich , Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"374","published-online":{"date-parts":[[2022,2,5]]},"reference":[{"key":"2023033110582880660_j_auto-2021-0138_ref_001","doi-asserted-by":"crossref","unstructured":"Thramboulidis, K. 2010. The 3+1 SysML View-Model in Model Integrated Mechatronics. Journal of Software Engineering and Applications 3(2): 109\u2013118.","DOI":"10.4236\/jsea.2010.32014"},{"key":"2023033110582880660_j_auto-2021-0138_ref_002","unstructured":"Programmable controllers \u2013 Part 3: Programming languages. IEC 61131-3, International Electrotechnical Commission, 2013."},{"key":"2023033110582880660_j_auto-2021-0138_ref_003","doi-asserted-by":"crossref","unstructured":"Broy, M. 2006. The \u2018Grand Challenge\u2019 in Informatics: Engineering Software-Intensive Systems. Computer 39(10): 72\u201380.","DOI":"10.1109\/MC.2006.358"},{"key":"2023033110582880660_j_auto-2021-0138_ref_004","doi-asserted-by":"crossref","unstructured":"Maga, C., N. Jazdi and P. G\u00f6hner. 2011. Reusable Models in Industrial Automation: Experiences in Defining Appropriate Levels of Granularity. IFAC Proceedings Volumes 44(1): 9145\u20139150.","DOI":"10.3182\/20110828-6-IT-1002.01509"},{"key":"2023033110582880660_j_auto-2021-0138_ref_005","doi-asserted-by":"crossref","unstructured":"Pr\u00e4hofer, H., F. Angerer, R. Ramler and F. Grillenberger. 2017. Static Code Analysis of IEC 61131-3 Programs: Comprehensive Tool Support and Experiences from Large-Scale Industrial Application. IEEE Transactions on Industrial Informatics 13(1): 37\u201347.","DOI":"10.1109\/TII.2016.2604760"},{"key":"2023033110582880660_j_auto-2021-0138_ref_006","doi-asserted-by":"crossref","unstructured":"Fischer, J., B. Vogel-Heuser, H. Schneider, N. Langer, M. Felger and M. Bengel. 2021. Measuring the Overall Complexity of Graphical and Textual IEC 61131-3 Control Software. Robotics and Automation Letters 6(3): 5784\u20135791.","DOI":"10.1109\/LRA.2021.3084886"},{"key":"2023033110582880660_j_auto-2021-0138_ref_007","doi-asserted-by":"crossref","unstructured":"Neumann, E.-M., B. Vogel-Heuser, J. Fischer, F. Ocker, S. Diehm and M. Schwarz. 2020. Formalization of Design Patterns and Their Automatic Identification in PLC Software for Architecture Assessment. IFAC-PapersOnLine 53(2): 7819\u20137826.","DOI":"10.1016\/j.ifacol.2020.12.1881"},{"key":"2023033110582880660_j_auto-2021-0138_ref_008","doi-asserted-by":"crossref","unstructured":"Rosiak, K., A. Schlie, L. Linsbauer, B. Vogel-Heuser and I. Schaefer. 2021. Custom-Tailored Clone Detection for IEC 61131-3 Programming Languages. Journal of Systems and Software 182: 111070.","DOI":"10.1016\/j.jss.2021.111070"},{"key":"2023033110582880660_j_auto-2021-0138_ref_009","doi-asserted-by":"crossref","unstructured":"Thaller, H., L. Linsbauer, B. van Bladel and A. Egyed. 2020. Semantic Clone Detection via Probabilistic Software Modeling. arXiv: 2008.04891.","DOI":"10.1109\/IWSC50091.2020.9047635"},{"key":"2023033110582880660_j_auto-2021-0138_ref_010","doi-asserted-by":"crossref","unstructured":"Quinton, C., M. Vierhauser, R. Rabiser, L. Baresi, P. Gr\u00fcnbacher and C. Schuhmayer. 2021. Evolution in dynamic software product lines. Journal of Software: Evolution and Process 33(2): e2293.","DOI":"10.1002\/smr.2293"},{"key":"2023033110582880660_j_auto-2021-0138_ref_011","doi-asserted-by":"crossref","unstructured":"Linsbauer, L., R.\u2009E. Lopez-Herrejon and A. Egyed. 2017. Variability extraction and modeling for product variants. Software & Systems Modeling 16(4): 1179\u20131199.","DOI":"10.1007\/s10270-015-0512-y"},{"key":"2023033110582880660_j_auto-2021-0138_ref_012","doi-asserted-by":"crossref","unstructured":"Lucas, M.\u2009R. and D.\u2009M. Tilbury. 2005. Methods of measuring the size and complexity of PLC programs in different logic control design methodologies. The International Journal of Advanced Manufacturing Technology 26(5): 436\u2013447.","DOI":"10.1007\/s00170-003-1996-0"},{"key":"2023033110582880660_j_auto-2021-0138_ref_013","unstructured":"Frank, T. et al. 2011. Dealing with non-functional requirements in distributed control systems engineering. In: International Conference on Emerging Technologies and Factory Automation. IEEE, pp.\u20091\u20134."},{"key":"2023033110582880660_j_auto-2021-0138_ref_014","doi-asserted-by":"crossref","unstructured":"Grochowski, M. et al. 2020. Formal methods for reconfigurable cyber-physical systems in production. at \u2013 Automatisierungstechnik 68(1): 3\u201314.","DOI":"10.1515\/auto-2019-0115"},{"key":"2023033110582880660_j_auto-2021-0138_ref_015","doi-asserted-by":"crossref","unstructured":"Cha, S., A. Weigl, M. Ulbrich, B. Beckert and B. Vogel-Heuser. 2018. Applicability of Generalized Test Tables: A Case Study Using the Manufacturing System Demonstrator xPPU. at \u2013 Automatisierungstechnik 10(66): 834\u2013848.","DOI":"10.1515\/auto-2018-0028"},{"key":"2023033110582880660_j_auto-2021-0138_ref_016","doi-asserted-by":"crossref","unstructured":"Vogel-Heuser, B., J. Fischer, S. R\u00f6sch, S. Feldmann and S. Ulewicz. 2015. Challenges for maintenance of PLC-software and its related hardware for automated production systems: Selected industrial Case Studies. In: International Conference on Software Maintenance and Evolution. IEEE, pp.\u2009362\u2013371.","DOI":"10.1109\/ICSM.2015.7332487"},{"key":"2023033110582880660_j_auto-2021-0138_ref_017","unstructured":"Machine and Unit States: An implementation example of ISA-88 (PackML). ISA-TR88.00.02, International Society of Automation, 2008."},{"key":"2023033110582880660_j_auto-2021-0138_ref_018","unstructured":"Fuchs, J. and B. Vogel-Heuser. 2012. Metrics and Methods to Restructure Modular Control Software in Special-purpose Engineering [Metriken und Methoden zur Umstrukturierung einer modularen Steuerungssoftware im Sondermaschinenbau]. In: VDI-Kongress Automation."},{"key":"2023033110582880660_j_auto-2021-0138_ref_019","doi-asserted-by":"crossref","unstructured":"Garousi, V., S. Bauer and M. Felderer. 2020. NLP-assisted software testing: A systematic mapping of the literature. Information and Software Technology 126: 106321.","DOI":"10.1016\/j.infsof.2020.106321"},{"key":"2023033110582880660_j_auto-2021-0138_ref_020","doi-asserted-by":"crossref","unstructured":"Farias, M.\u2009A.\u2009d.\u2009F., M.\u2009G.\u2009d.\u2009M. Neto, M. Kalinowski and R.\u2009O. Sp\u00ednola. 2020. Identifying self-admitted technical debt through code comment analysis with a contextualized vocabulary. Information and Software Technology 121: 106270.","DOI":"10.1016\/j.infsof.2020.106270"},{"key":"2023033110582880660_j_auto-2021-0138_ref_021","doi-asserted-by":"crossref","unstructured":"G\u00fcttel, K., P. Weber and A. Fay. 2008. Automatic generation of PLC code beyond the nominal sequence. In: International Conference on Emerging Technologies and Factory Automation. IEEE, pp.\u20091277\u20131284.","DOI":"10.1109\/ETFA.2008.4638565"},{"key":"2023033110582880660_j_auto-2021-0138_ref_022","doi-asserted-by":"crossref","unstructured":"Lucas, M.\u2009R. and D.\u2009M. Tilbury. 2002. Quantitative and qualitative comparisons of PLC programs for a small testbed with a focus on human issues. In: Proceedings of the 2002 American Control Conference (IEEE Cat.\u2009No.\u2009CH37301), vol.\u20095. IEEE, pp.\u20094165\u20134171.","DOI":"10.1109\/ACC.2002.1024583"},{"key":"2023033110582880660_j_auto-2021-0138_ref_023","unstructured":"Pedregosa, F. et al. 2011. Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research 12(85): 2825\u20132830."},{"key":"2023033110582880660_j_auto-2021-0138_ref_024","doi-asserted-by":"crossref","unstructured":"Manning, C., M. Surdeanu, J. Bauer, J. Finkel, S. Bethard and D. McClosky. 2014. The Stanford CoreNLP Natural Language Processing Toolkit. In: Annual Meeting of the Association for Computational Linguistics: System Demonstrations. Association for Computational Linguistics, pp.\u200955\u201360.","DOI":"10.3115\/v1\/P14-5010"},{"key":"2023033110582880660_j_auto-2021-0138_ref_025","unstructured":"Siemens AG. Training document for the company-wide automation solution \u2013 Appendix II IEC 61131. Available from: https:\/\/www.automation.siemens.com\/sce-static\/learning-training-documents\/classic\/appendix\/ii-iec61131-en.pdf [19 April 2021]."},{"key":"2023033110582880660_j_auto-2021-0138_ref_026","unstructured":"Meyer, B. 1997. Object-oriented software construction. Prentice Hall, Englewood Cliffs."}],"container-title":["at - Automatisierungstechnik"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.degruyter.com\/document\/doi\/10.1515\/auto-2021-0138\/xml","content-type":"application\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/www.degruyter.com\/document\/doi\/10.1515\/auto-2021-0138\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,3,31]],"date-time":"2023-03-31T13:47:47Z","timestamp":1680270467000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.degruyter.com\/document\/doi\/10.1515\/auto-2021-0138\/html"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,2,1]]},"references-count":26,"journal-issue":{"issue":"2","published-online":{"date-parts":[[2022,2,5]]},"published-print":{"date-parts":[[2022,2,23]]}},"alternative-id":["10.1515\/auto-2021-0138"],"URL":"https:\/\/doi.org\/10.1515\/auto-2021-0138","relation":{},"ISSN":["2196-677X","0178-2312"],"issn-type":[{"value":"2196-677X","type":"electronic"},{"value":"0178-2312","type":"print"}],"subject":[],"published":{"date-parts":[[2022,2,1]]}}}