@inproceedings{, author = {Terzimehić, Tarik and Groh, Eddie and Zoitl, Alois}, title = {Composing Services with SMT-Based Deployment Optimization and Service Merging Heuristic}, booktitle = {28th International Conference on Emerging Technologies and Factory Automation (ETFA)}, publisher = {IEEE}, year = {2023}, month = sep, timestamp = 2023.09.13, location = {Sinaia, Romania}, abstract = {The complexity of Industry 4.0 systems makes it challenging to manually synthesize and optimize architecture level decisions, such as service deployment and composition. To address this challenge, we propose an approach that utilizes a satisfiability modulo theories (SMT) solver to (semi-)automate service deployment and composition synthesis. Thereby, we conceptualize, formalize, and implement the complete workflow from input service workflows to valid and optimized service deployments and compositions. We demonstrate the practical application of our approach in an Industry 4.0 scenario, specifically the flexible production of new products. We evaluate the effectiveness of the proposed approach by investigating its benefits in terms of engineering effort, complexity of the resulting IEC 61499-based applications, and improvement of communication coupling quality attribute (QA).}, doi = {10.1109/ETFA54631.2023.10275652}, keywords = {Industry 4.0, IEC 61499, deployment synthesis, service composition, optimization, SMT, Design-Space Exploration, DSE, Model-based Systems engineering, MbSE}, } @inproceedings{, author = {Terzimehić, Tarik and Barner, Simon and Dantas, Yuri Gil and Sch{\"{o}}pp, Ulrich and Nigam, Vivek and Ke, Pei}, title = {Safety-Aware Deployment Synthesis and Trade-Off Analysis of Apollo Autonomous Driving Platform}, booktitle = {9th International Workshop on Automotive System/Software Architectures ({WASA}) co-located with {ICSA} 2023}, publisher = {IEEE}, year = {2023}, month = mar, abstract = {The adoption of autonomous cars requires operational critical functions even in the event of HW faults and/or SW defects, and protection of safety-critical functions against security threats. Defining appropriate safe and secure architectures is challenging and costly. In previous work, we have proposed tools to automate the recommendation of safety and security patterns for safety-critical systems. However, safety and security measures may (negatively) influence system performance, besides introducing additional development effort. We present a design space exploration approach, a model-based engineering workflow and tool prototype for automated guidance on trade-off decisions when applying safety and security patterns on a given (unsafe) baseline architecture. Based on models that abstract the vehicle’s functionality and its software and hardware components, as well as an engine for the automated pattern recommendation, we investigate the optimization of HW/SW deployments, and provide a trade-off analysis for different architecture candidates. We implemented our approach in an open-source tool and evaluate it with a model of the Apollo autonomous driving platform.}, doi = {10.1109/ICSA-C57050.2023.00070}, keywords = {Autonomous vehicles, Apollo, model-driven development, system architecture, safety, model-based systems engineering, MbSE, design-space exploration, DSE, AutoFOCUS3, AF3}, } @inproceedings{, author = {Terzimehić, Tarik}, title = {Architecture Synthesis for Optimized and Flexible Production}, booktitle = {2022 IEEE/ACM 44th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)}, publisher = {IEEE}, journal = {2022 IEEE/ACM 44th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)}, year = {2022}, month = may, abstract = {The fourth industrial revolution (Industry 4.0) anticipates frequent synthesis and optimization of different architectural design decisions (ADDs) – such as deployment of software components to hardware components, service composition, production planning, and topology (plant layout) synthesis. The frequent manual search for valid and optimal architectural designs is a time- and cognition-consuming task for an engineer. This asks for automating the process of deriving different ADDs. Although automating different ADDs is intensely investigated in other domains, the current research works 1) require higher engineering effort for specifying architecture optimization problems; 2) conduct (only) sequential ADDs, leading to lower solution quality (i.e., sub-optimal production); 3) neglect reconfigurability and reliability of architectures, and, thereby, offer no solution for production downtime; 4) neglect event-based execution semantics while considering timing-related issues. Therefore, I propose a Satisfiability Modulo Theories (SMT)-based framework for joint synthesis and optimization of multi-dimensional ADDs using industrial automation domain models (e.g., plant topology, product recipes, stations capabilities, etc.). This research should bring the following benefits for the practitioners and researchers: 1) reduction of engineering effort for conducting different ADDs; 2) improvement of different quality attributes (e.g., production performance, reconfigurability, reliability, etc.); 3) guideline/support for a practitioner in choosing ADDs workflow to improve given quality attributes.}, doi = {10.1109/ICSE-Companion55297.2022.9793810}, keywords = {architecture synthesis, optimization, design space exploration, Industry 4.0, deployment, service composition, model-based systems engineering, MbSE}, } @inproceedings{, author = {Terzimehić, Tarik and Dorofeev, Kirill and Voss, Sebastian}, title = {Exploring Architectural Design Decisions in Industry 4.0: A Literature Review and Taxonomy}, booktitle = {Software Engineering 2022 - Fachtagung des GI-Fachbereichs Softwaretechnik}, publisher = {Gesellschaft f{\"{u}}r Informatik (GI)}, journal = {Software Engineering 2022 - Fachtagung des GI-Fachbereichs Softwaretechnik}, year = {2022}, month = feb, abstract = {Paper accepted in the Foundation Track of ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS), 2021. Architectural design decisions, such as service deployment and composition, plant layout synthesis, or production planning, are an indispensable and overarching part of an industrial manufacturing system design. In the fourth industrial revolution (Industry 4.0), frequent production changes trigger their synthesis, and preferably optimization. Yet, knowledge on architecture synthesis and optimization has been scattered around other domains, such as generic software engineering. We take a step towards synthesizing current knowledge on architectural design decisions in Industry 4.0. We developed a taxonomy describing architectural models, design decisions, and optimization possibilities. The developed taxonomy serves as a guideline for comparing different possibilities (e.g., application of different optimization algorithms) and selecting appropriate ones for a given context. Furthermore, we reviewed and mapped 30 relevant research works to the taxonomy, identifying research trends and gaps. We discuss interesting, and yet uncovered topics that emerged from our review.}, isbn = {978-3-88579-714-2}, doi = {10.18420/se2022-ws-030}, keywords = {architecture synthesis, optimization, taxonomy, design space exploration, MbSE, model-based systems engineering, Industry 4.0}, } @inproceedings{, author = {Terzimehić, Tarik and Dorofeev, Kirill and Voss, Sebastian}, title = {Exploring Architectural Design Decisions in Industry 4.0: A Literature Review and Taxonomy}, booktitle = {ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS)}, publisher = {IEEE}, journal = {ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS)}, year = {2021}, month = oct, abstract = {Architectural design decisions, such as service deployment and composition, plant layout synthesis, or production planning, are an indispensable and overarching part of an industrial manufacturing system design. In the fourth industrial revolution (Industry 4.0), frequent production changes trigger their synthesis, and preferably optimization. Yet, knowledge on architecture synthesis and optimization has been scattered around other domains, such as generic software engineering. We take a step towards synthesizing current knowledge on architectural design decisions in Industry 4.0. We developed a taxonomy describing architectural models, design decisions, and optimization possibilities. The developed taxonomy serves as a guideline for comparing different possibilities (e.g., application of different optimization algorithms) and selecting appropriate ones for a given context. Furthermore, we reviewed and mapped 30 relevant research works to the taxonomy, identifying research trends and gaps. We discuss interesting, and yet uncovered topics that emerged from our review.}, doi = {10.1109/MODELS50736.2021.00026}, keywords = {architecture synthesis, optimization, taxonomy, design-space exploration, DSE, model-based systems engineering, MbSE, Industry 4.0}, } @inproceedings{, author = {Dorofeev, Kirill and Bergemann, Sebastian and Terzimehić, Tarik and Grothoff, Julian and Thies, Michael and Zoitl, Alois}, title = {Generation of the Orchestrator Code for Skill-Based Automation Systems}, booktitle = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, publisher = {IEEE}, journal = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, year = {2021}, month = sep, abstract = {Engineering distributed control systems is a complex task, where the complexity and, thus, costs of the software development are growing rapidly. To keep the software complexity at an acceptable level and save time for development and subsequent maintenance, new solutions are sorely needed. In this paper, we investigate the advantages of using skills - universal control device interfaces - for generating complex logic in distributed control environments. By enriching a skill interface with the information about the dynamic behavior of a component under control, we compose the functionalities of individual control devices. The logic, required for such composition, is automatically derived from the interface description and the production plan, identifying the required skill sequence. The evaluation, executed using two industrial demonstrators, shows that the approach successfully handles different behavioral models and is capable of generating fault-tolerant orchestrators, including error handling scenarios. Overall, for developing a complex logic in a distributed skill-based automation system, the proposed approach shows significant savings in development time allowing to automate the skill composition task.}, isbn = {978-1-7281-2989-1}, doi = {10.1109/ETFA45728.2021.9613728}, keywords = {Industry 4.0, skills, service-oriented architecture, IEC 61499, service composition, orchestration, PLC code generation, BaSys, Model-based Systems Engineering, MbSE}, } @inproceedings{, author = {Gampig, Jonas and Terzimehić, Tarik and Dorofeev, Kirill}, title = {PLC Integration into Industry 4.0 Middleware: Function Block Library for the Interaction with REST and OPC UA Asset Administration Shells}, booktitle = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, publisher = {IEEE}, journal = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, year = {2021}, month = sep, abstract = {An asset administration shell (AAS), as a key concept of Industry 4.0 (I4.0), provides a machine-accessible interface to any kind of asset. To enable interoperability and smooth integration of the devices into the I4.0 middleware, an application implementing the device's functionality should be able to interact with different AASs. In this work, we investigate the integration of the Programmable Logic Controller (PLC) runtime systems into the I4.0 middleware. For doing this, we specify the function blocks (FBs) for connecting the PLCs with AASs and other I4.0 components, such as registry and discovery server. We analyze the requirements of such FBs while focusing on REST/HTTP- and OPC UA-based AASs, and provide interface specification for IEC 61499- and IEC 61131-3-based FBs. Furthermore, we implemented an FB library that enables communication with an AAS from the respective control applications. Those FBs allow accessing properties and invoking operations of remote AASs, as well as hosting AASs submodels. Common functionalities, such as registering the runtime system at the registry component, or finding AASs, are also supported. The results obtained in this paper will ease interaction with the complex AAS structure from the low-level devices.}, doi = {10.1109/ETFA45728.2021.9613267}, keywords = {Industry 4.0, model-based systems engineering, MbSE, IEC 61499, IEC 61131-3, asset administration shell, digital twin, PLC, OPC UA, REST}, } @inproceedings{, author = {Terzimehić, Tarik and Dorofeev, Kirill and Bergemann, Sebastian and Zoitl, Alois and Voss, Sebastian}, title = {Towards Service Deployment and Composition in Industry 4.0}, booktitle = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, publisher = {IEEE}, journal = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, year = {2021}, month = sep, abstract = {The fourth industrial revolution (Industry 4.0) anticipates unplanned changes of production processes. Production changes may trigger synthesis, and preferably optimization, of architecture-level decisions, such as service deployment and composition. Performing such architecture-level decisions manually is difficult due to the ever-rising complexity of Industry 4.0 systems. In order to (semi-)automate the architecture synthesis and optimization, we propose an approach of service deployment and composition by using existing domain models. Our contribution is threefold: (1) We suggest a workflow with domain models for architecture synthesis in the industrial automation. (2) We display the formalization on a part of the workflow and provide an initial prototype of service deployment synthesis using a satisfiability modulo theories (SMT) solver. (3) We envision a way of service composition and code generation, and prototypically implemented it as conclusion of the suggested workflow. We demonstrate the practical use of the proposed approach in the Industry 4.0 scenario, i.e., flexible production of new products.}, doi = {10.1109/ETFA45728.2021.9613327}, keywords = {Industry 4.0, IEC 61499, deployment synthesis, service composition, code generation, model-based systems engineering, MbSE, design-space exploration, DSE}, } @inproceedings{, author = {Terzimehić, Tarik and Bayha, Andreas and Dorofeev, Kirill}, title = {Function Blocks for the Interaction with the Asset Administration Shell}, booktitle = {Proceedings of the {IEEE} International Conference on Emerging Technologies And Factory Automation ({ETFA})}, year = {2019}, month = sep, abstract = {An asset administration shell (AAS), as a key concept of the Industry 4.0, provides a machine accessible interface to any kind of asset. An application implementing the devices functionality should be able to interact with different AASs. In this work, we specify the function blocks (FBs) for accessing properties and invoking operations of AASs. We analyzed the nature and requirements of such FBs while focusing on REST/HTTP- and OPC UA-based AASs and provided IEC 61499-based implementation. The expected outcome of this paper will ease an interaction with the complex AAS structure from the low-level devices.}, doi = {10.1109/ETFA.2019.8868995}, keywords = {Industry 4.0, IEC 61499, IEC 61131-3, asset administration shell, digital twin, PLC, OPC UA, REST, model-based systems engineering, MbSE}, } @inproceedings{, author = {Terzimehić, Tarik and Wenger, Monika and Voss, Sebastian and Gr{\"{u}}ner, Sten and Elfham, Haitham}, title = {SMT-Based Deployment Calculation in Industrial Automation Domain}, booktitle = {Proceedings of the {IEEE} International Conference on Emerging Technologies And Factory Automation ({ETFA})}, publisher = {IEEE}, year = {2019}, month = sep, abstract = {The desired flexibility of industrial automation systems foresees among others flexible deployment and execution of control applications on distributed control nodes. This task can be performed more efficiently by an automated deployment algorithm yielding a valid deployment and optimizing nonfunctional objectives. Although extensively investigated, automated deployment approaches for the automotive domain cannot be translated to industrial control applications, due to a different execution semantics. Thus, in this paper, we present a method of satisfiability modulo theories (SMT)-based automated deployment of the industrial automation systems. We formalize and implement domain-relevant constraints and objectives. Our contribution is threefold: 1) we formalize the functional coupling and end-to-end deadline constraints and objectives while considering the semantics of control applications, 2) we encode the deployment problem into an SMT form, and 3) we validate the approach on an abstract example and a domain-relevant use case. The results obtained in this paper will allow application engineers to fulfill functional and real-time requirements by automatically solving the deployment problem.}, doi = {10.1109/ETFA.2019.8868247}, keywords = {BaSys 4.0, Model-based systems engineering, MbSE, deployment, Industry 4.0, IEC 61499, SMT, E2E latency, functional coupling, design-space exploration, DSE}, } @inproceedings{, author = {Terzimehić, Tarik}, title = {Optimization and Reconfiguration of IEC 61499-based Software Architectures}, booktitle = {ACM/IEEE 21st International Conference on Model Driven Engineering Languages and Systems (MODELS) - Doctoral Symposium}, journal = {ACM/IEEE 21st International Conference on Model Driven Engineering Languages and Systems (MODELS) - Doctoral Symposium}, year = {2018}, month = oct, abstract = {The fourth industrial revolution (Industry 4.0) strives for an optimized and flexible production process to reduce configuration costs. To achieve such a production process, first architecture-level decisions (i.e. deployment configuration, scheduling, etc.) are optimized. Following, these optimized architectural configurations are applied to dynamically reconfigure industrial control applications. To calculate software configurations, current research applies Design Space Exploration (DSE) techniques embedded into the IEC 61499 model-based approach. However, this research either applies simple and non-applicable constraints and objectives for real-life problems or considers architectural optimization solely at the design phase. Thus, reconfiguring industrial control applications is still an exhausting and manual task that requires production process' downtime. In this Ph.D. thesis, I handle the automatically optimized reconfiguration of the industrial automation systems. In particular, I propose applying DSE to calculate architectural configurations of IEC 61499-based control applications. To define different configuration problems from real-world situations, I identify domain-specific constraints and objectives. Furthermore, I will tackle the problem of runtime reconfiguration by applying several optimization strategies in various context scenarios and investigating an incremental search for new optimal configurations.}, doi = {doi.org/10.1145/3270112.3275336}, keywords = {Architectural Optimization, DSE, MbSE, model-based systems engineering, Industry 4.0, IEC 61499}, } @inproceedings{, author = {Gr{\"{u}}ner, Sten and Malakuti, Somayeh and Schmitt, Johannes and Terzimehić, Tarik and Wenger, Monika and Elfham, Haitham}, title = {Alternatives for Flexible Deployment Architectures in Industrial Automation Systems}, booktitle = {23rd International Conference on Emerging Technologies And Factory Automation (ETFA)}, journal = {23rd International Conference on Emerging Technologies And Factory Automation}, year = {2018}, month = sep, abstract = {One of the main challenges of future industrial systems is to flexibly (re)deploy control applications on hardware controllers - a feature that is missing in most state of the art automation systems. Due to the heterogeneous structure of control systems, e.g. different standards and hardware, a silver bullet architecture for flexible deployment seems to be infeasible. Instead we propose an abstract architecture covering different concrete reconfiguration system architectures along with a taxonomy for design decisions for the realization of such a system. The capability of the abstract architecture is demonstrated by mapping three fundamentally different concrete reconfiguration system architectures and is verified on an industrial use case of a logistic system of an aluminum cold rolling plant.}, doi = {10.1109/ETFA.2018.8502526}, keywords = {MbSE, model-based systems engineering, deployment, reconfiguration}, } @inproceedings{, author = {Terzimehić, Tarik and Voss, Sebastian and Wenger, Monika}, title = {Using Design Space Exploration to Calculate Deployment Configurations of IEC 61499-based Systems}, booktitle = {14th IEEE International Conference on Automation Science and Engineering (IEEE CASE 2018)}, publisher = {IEEE}, journal = {14th IEEE International Conference on Automation Science and Engineering (IEEE CASE 2018)}, year = {2018}, month = aug, abstract = {Continuous digitalization in the industry leads to new, highly complex systems that increase configuration costs. In particular, software and hardware changes cause major downtime. To dynamically reconfigure control system and avoid downtime, it is necessary to calculate valid or optimal deployment configurations. Previous research applies Design Space Exploration (DSE) techniques embedded into model-based design methodologies to calculate deployment configurations. However, current research either aims domains other than industrial automation or applies simple and, for real-life problems, not applicable constraints and objectives. Thus, the deployment of software components to hardware components is still an exhausting and manual task. In this work, we take first steps towards an automatically optimized deployment of the industrial automation systems. In particular, we propose applying DSE to calculate deployment configurations of IEC 61499-based control applications. In order to reduce the exploration space, we identify domain-specific constraints and objectives. Furthermore, we extend the IEC 61499 System and Application models' descriptions by proposing relevant hardware and software annotations. We exhibit the applicability of the identified annotations, constraints and objectives on the example of an Industry 4.0 relevant case study.}, doi = {10.1109/COASE.2018.8560591}, keywords = {IEC 61499, control system, design-space exploration, DSE, deployment, Industry 4.0, Model-based Systems Engineering, MbSE}, } @inproceedings{, author = {Terzimehić, Tarik and Voss, Sebastian and Wenger, Monika and Aravantinos, Vincent}, title = {Applying DSE for Solving the Deployment Problem in Industry 4.0}, booktitle = {14th Dagstuhl Workshop on Model-Based Development of Embedded Systems (MBEES)}, publisher = {fortiss GmbH}, journal = {14th Dagstuhl Workshop on Model-Based Development of Embedded Systems (MBEES)}, year = {2018}, month = apr, keywords = {Model-based Systems Engineering, MbSE, design-space exploration, DSE}, } @inproceedings{, author = {Terzimehić, Tarik and Wenger, Monika and Zoitl, Alois and Bayha, Andreas and Becker, Klaus and M{\"{u}}ller, Thorsten and Schauerte, Hubertus}, title = {Towards an Industry 4.0 Compliant Control Software Architecture Using IEC 61499 & OPC UA}, booktitle = {IEEE International Conference on Emerging Technologies And Factory Automation (ETFA)}, year = {2017}, abstract = {The fourth industrial revolution introduced additional requirements on the industrial systems' control software in order to cope with current manufacturing systems' flexibility demands. These requirements include, among others, a dynamic reconfigurability, software reusability and an external service orchestration. This work presents the design of an industry 4.0 compliant control software architecture resulting from an iterative design process. The architecture is based on the reconfiguration services of the IEC 61499 standard and the service orchestration via OPC UA. We demonstrate the software architecture's compliance to the industry 4.0 requirements on an aluminum cold rolling mill plant demonstrator.}, doi = {10.1109/ETFA.2017.8247718}, keywords = {Industry 4.0, MbSE, model-based systems engineering, OPC UA, IEC 61499}, }