Conference Paper

Industry Voices on Software Engineering Challenges in Cyber-Physical Production Systems Engineering

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Cyber-Physical Production Systems (CPPSs) are envisioned as next-generation adaptive production systems combining modern production techniques with the latest information technology. A CPPS creates a complex environment between different domains (mechanical, electrical, software engineering), requiring multidisciplinary solutions to tackle growing complexity issues and reduce (maintenance) effort. Software plays an increasingly important role in assuring an effective and efficient operation of CPPSs. However, software engineering methods applied for CPPSs seem to lag behind modern software engineering methods, where tremendous progress has been made in the last years. We initiated the Software Engineering in Cyber-Physical Production Systems Workshop (SECPPS-WS) to analyze and overcome this gap. After two instances with mostly academic participants, we conducted a full-day workshop with nine industry representatives from eight companies that develop and maintain CPPSs. Each industry representative presented their current work and challenges. We collected these challenges and condensed a categorized list of challenges backed by industry statements and literature. This paper presents the resulting list and pointers to (partial) solutions to offer guidance for academia and identify promising research opportunities in this area.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... Q4 How can an IIoT application be developed by an interdisciplinary team as required in such a setting? Often, interdisciplinarity is seen as a special challenge when realizing, e.g., data analysis [16] or cyber-physical systems [11]. ...
Preprint
Full-text available
For a broader adoption of AI in industrial production, adequate infrastructure capabilities are crucial. This includes easing the integration of AI with industrial devices, support for distributed deployment, monitoring, and consistent system configuration. Existing IIoT platforms still lack required capabilities to flexibly integrate reusable AI services and relevant standards such as Asset Administration Shells or OPC UA in an open, ecosystem-based manner. This is exactly what our next level Intelligent Industrial Production Ecosphere (IIP-Ecosphere) platform addresses, employing a highly configurable low-code based approach. In this paper, we introduce the design of this platform and discuss an early evaluation in terms of a demonstrator for AI-enabled visual quality inspection. This is complemented by insights and lessons learned during this early evaluation activity.
Article
Full-text available
The Internet of Things promises to bring significant improvements to manufacturing by facilitating the integration of manufacturing devices to collect sensor data and to control production processes. In contrast to previous industrial revolutions , today's change is driven by applied computer science technologies on several layers: Improved interfaces for human interaction in conjunction with artificial intelligence will allow companies to easily utilize the information that is available through digital shadows, an appropriate reduction of the reality, in an interconnected World Wide Lab (WWL) of previously isolated data sources from different stakeholders. We derive a systematized research roadmap to bring the envisioned advances quickly to reality in this conservative setting.
Chapter
Full-text available
Smart manufacturing demands to process data in domain-specific real-time. Engineering models created for constructing, commissioning, planning, or simulating manufacturing systems can facilitate aggregating and abstracting the wealth of manufacturing data to faster processable data structures for more timely decision making. Current research lacks conceptual foundations for how data and engineering models can be exploited in an integrated way to achieve this. Such research demands expertise from different smart manufacturing domains to harmonize the notion space. We propose a conceptual model to describe digital shadows, data structures tailored to exploit models and data in smart manufacturing, through a metamodel and its notion space. This conceptual model was established through interdisciplinary research in the German excellence cluster “Internet of Production” and evaluated in various real-world manufacturing scenarios. This foundation for an understanding helps to manage complexity, automated analyses, and syntheses, and, ultimately, facilitates cross-domain collaboration.
Conference Paper
Full-text available
Process discovery from event logs as well as process prediction using process models at runtime are increasingly important aspects to improve the operation of digital twins of complex systems. The integration of process mining functionalities with model-driven digital twin architectures raises the question which models are important for the model-driven engineering of digital twins at designtime and at runtime. Currently, research on process mining and model-driven digital twins is conducted in different research communities. Within this position paper, we motivate the need for the holistic combination of both research directions to facilitate harnessing the data and the models of the systems of the future at runtime. The presented position is based upon continuous discussions, workshops, and joint research between process mining experts and software engineering experts in the Internet of Production excellence cluster. We aim to motivate further joint research into the combination of process mining techniques with model-driven digital twins to efficiently combine data and models at runtime.
Article
Full-text available
Software-intensive Cyber-Physical Production Systems (SiCPPS), like metallurgical plants or manufacturing plants, are highly variable systems of systems that frequently evolve. They typically involve a large number of heterogeneous components (mechanical, electrical, mechatronic, software) that can be configured and combined in different ways. Variability results not only from hardware and software components but also development processes, disciplines (mechanical, electrical, software engineering), methods, and tools. Dealing with variability in industry currently depends too much on mostly tacit domain expert knowledge and custom-built tools focusing on very specific artifacts and software and hardware platforms. Existing research in the area of SiCPPS does not explicitly and systematically deal with variability. Promising software engineering methods and tools, e.g., from the area of Software Product Lines, need to be adapted for the particular challenges in SiCPPS. In this research preview paper, we discuss open research issues, research goals, and propose a research agenda towards mastering variability in SiCPPS.
Article
Full-text available
Smart Cyber-Physical Systems (sCPS) are a novel kind of Cyber- Physical System engineered to take advantage of large-scale cooperation between devices, users and environment to achieve added value in the face of uncertainty and changing environments. Examples of sCPS include modern traffic systems, Industry 4.0 systems, systems for smart buildings, and smart energy grids. The uniting aspect of all these systems is that to achieve their high level of intelligence, adaptivity and ability to optimize and learn, they rely heavily on software. This makes them software-intensive systems, where software becomes their most complex part. Engineering sCPS thus becomes a recognized software engineering discipline, which, due to specifics of sCPS, can only partially rely on the existing body of knowledge in software engineering. In fact, it turns out that many of the traditional approaches to architecture modeling and software development fall short in their ability to cope with the high dynamicity and uncertainty of sCPS. This calls for innovative approaches that jointly reflect and address the specifics of such systems. This paper maps the discussions and results of the Fourth International Workshop on Software Engineering for Smart Cyber-Physical Systems (SEsCPS 2018), which focuses on challenges and promising solutions in the area of software engineering for sCPS.
Article
Full-text available
Knowledge Management in the era of Industry 4.0 (KM 4.0) in both human- and technology-oriented perspectives is a strategic and operational function comprising exploration and exploitation processes. It is responsible to accomplish two major tasks. First, KM 4.0 should continuously support value generation through enhancing and balancing need- or opportunity-driven knowledge generation and knowledge utilization capacities. Second, KM 4.0 should persistently facilitate developing and protecting human-machine collective intelligence across manufacturing enterprises and in particular smart factories. Hence, KM 4.0 is an enabler to maximize competitive advantages and derive business values in the manufacturing enterprises. The revival of AI and emergence of autonomous and learnable technologies challenge the unique role of human as a knowledge actor, decision-maker, problem-solver and learner. What are the considerations on rethinking KM approaches in relation to the march of technological enhancements? This paper proposes a definition and discusses the theoretical foundation of KM 4.0 as well as related practical aspects that should be taken into consideration, especially in dynamic, data-driven and hybrid human-machine working environments in smart factories.
Article
Full-text available
Handling large-scale software variability is still a challenge for many organizations. After decades of research on variability management concepts, many industrial organizations have introduced techniques known from research, but still lament that pure textbook approaches are not applicable or efficient. For instance, software product line engineering—an approach to systematically develop portfolios of products—is difficult to adopt given the high upfront investments; and even when adopted, organizations are challenged by evolving their complex product lines. Consequently, the research community now mainly focuses on re-engineering and evolution techniques for product lines; yet, understanding the current state of adoption and the industrial challenges for organizations is necessary to conceive effective techniques. In this multiple-case study, we analyze the current adoption of variability management techniques in twelve medium- to large-scale industrial cases in domains such as automotive, aerospace or railway systems. We identify the current state of variability management, emphasizing the techniques and concepts they adopted. We elicit the needs and challenges expressed for these cases, triangulated with results from a literature review. We believe our results help to understand the current state of adoption and shed light on gaps to address in industrial practice.
Article
Full-text available
Industry 4.0 integrates cyber-physical systems with the Internet of Things to optimize the complete value-added chain. Successfully applying Industry 4.0 requires the cooperation of various stakeholders from different domains. Domain-specific modeling languages promise to facilitate their involvement through leveraging (domain-specific) models to primary development artifacts. We aim to assess the use of modeling in Industry 4.0 through the lens of modeling languages in a broad sense. Based on an extensive literature review, we updated our systematic mapping study on modeling languages and modeling techniques used in Industry 4.0 (Wortmann et al., Conference on model-driven engineering languages and systems (MODELS’17), IEEE, pp 281–291, 2017) to include publications until February 2018. Overall, the updated study considers 3344 candidate publications that were systematically investigated until 408 relevant publications were identified. Based on these, we developed an updated map of the research landscape on modeling languages and techniques for Industry 4.0. Research on modeling languages in Industry 4.0 focuses on contributing methods to solve the challenges of digital representation and integration. To this end, languages from systems engineering and knowledge representation are applied most often but rarely combined. There also is a gap between the communities researching and applying modeling languages for Industry 4.0 that originates from different perspectives on modeling and related standards. From the vantage point of modeling, Industry 4.0 is the combination of systems engineering, with cyber-physical systems, and knowledge engineering. Research currently is splintered along topics and communities and accelerating progress demands for multi-disciplinary, integrated research efforts.
Article
Full-text available
This paper summarizes a vision of the challenges facing the so-called “Industry of the Future” as studied by the research community of the IFAC Coordinating Committee 5 on Manufacturing and Logistics Systems, which includes four Technical Committees (TC). Each TC brings its own vision and puts forward trends and issues important and relevant for future research. The analysis is performed on the enterprise-level topics with an interface too other relevant systems (e.g., supply chains). The vision developed might lead to the identification of new scientific control directions such as Industry 4.0 technology-enabled new production strategies that require highly customised supply network control, the creation of resilient enterprise to cope with risks, developments in management decision-support systems for the design, and scheduling and control of resilient and digital manufacturing networks, and collaborative control. Cobots, augmented reality and adaptable workstations are a few examples of how production and logistic systems are changing supporting the operator 4.0. Sustainable manufacturing techniques, such closed-loop supply chains, is another trend in this area. Due to increasing number of elements and systems, complex and heterogeneous enterprise systems need to be considered (e.g., for decision-making). These systems are heterogeneous and build by different stakeholders. To make use of these, an environment is needed that allows the integration of the systems forming a System-of-Systems (SoS). The changing environment requires models which adapt over time. Some of the adaptation is due to learning, other mechanisms include self-organisation by intelligent agents. In general, models and systems need to be modular and support modification and (self-)adaptation. An infrastructure is needed that supports loose coupling and evolving systems of systems. The vision of the overall contribution from the research community in manufacturing and logistics systems, over the next few years is to bring together researchers and practitioners presenting and discussing topics in modern manufacturing modelling, management and control in the emerging field of Industry 4.0-based resilient and innovative production SoS and supply networks.
Article
Full-text available
Industry 4.0 is originally a future vision described in the high-tech strategy of the German government that is conceived upon information and communication technologies like Cyber-Physical Systems, Internet of Things, Physical Internet, and Internet of Services to achieve a high degree of flexibility in production (individualized mass production), higher productivity rates through real-time monitoring and diagnosis, and a lower wastage rate of material in production. An important part of the tasks in the preparation for Industry 4.0 is the adaption of the higher education to the requirements of this vision, in particular the engineering education. In this work, we introduce a road map consisting of three pillars describing the changes/enhancements to be conducted in the areas of curriculum development, lab concept, and student club activities. We also report our current application of this road map at the Turkish German University, Istanbul.
Article
Full-text available
Context: A software product line is a means to develop a set of products in which variability is a central phenomenon captured in variability models. The field of SPLs and variability have been topics of extensive research over the few past decades. Objective: This research characterizes systematic reviews (SRs) in the field, studies how SRs analyze and use evidence-based results, and identifies how variability is modeled. Method: We conducted a tertiary study as a form of systematic review. Results: 86 SRs were included. SRs have become a widely adopted methodology covering the field broadly otherwise except for variability realization. Numerous variability models exist that cover different development artifacts, but the evidence is insufficient in quantity and immature, and we argue for better evidence. SRs perform well in searching and selecting studies and presenting data. However, their analysis and use of the quality of and evidence in the primary studies often remains shallow, merely presenting of what kinds of evidence exist. Conclusions: There is a need for actionable, context-sensitive, and evaluated solutions rather than novel ones. Different kinds of SRs (SLRs and Maps) need to be better distinguished, and evidence and quality need to be better used in the resulting syntheses.
Article
Full-text available
The Industry 4.0 (I4.0) adoption comprises the change of traditional factories into smart using the ICTs. The goal is to monitor processes, objects, machinery, and workers in order to have real-time knowledge about what is going on in the factory and for achieving an efficient data collection, management and decision-making that help to improve the businesses in terms of product quality, productivity and efficiency. Internet of Things (IoT) will have an important role in the I4.0 adoption because future smart factories are expected to rely with IoT infrastructures composed of constellations of hundreds or thousands of sensor devices spread all over the industrial facilities. However, some problems could arise in the massive IoT deployment in a medium-high factory: thousands of IoT devices to cope from different technologies and vendors could mean dozens of vendor tools and user interfaces to manage them. Moreover, the heterogeneity of IoT devices could entail different communication protocols, languages and data formats, which can result in lack of interoperability. On the other hand, conventional IT networks and industrial machinery are expected to be managed together with the IoT infrastructure, maybe using a tool or a set of tools, for orchestrating the whole smart factory. This work meets these challenges presenting an open-source software architecture solution based on OpenDaylight (ODL), a Software Defined Network (SDN) controller, for orchestrating an industrial IoT scenario. This work is addressed by shedding light on critical aspects from the SDN controller architectural choices, to specific IoT interfaces and the difficulties for covering the wide range of communication protocols, popular in industrial contexts. Such a global view of the process, gives light to practical difficulties appearing in introducing SDN in industrial contexts, providing an open-source architecture solution that guarantees devices and networks interoperability and scalability, breaking the vendor lock-in barriers and providing a vendor-agnostic solution for orchestrating all actor of an I4.0 smart factory.
Article
Full-text available
Context: Software Product Lines (SPL) evolve when there are changes in the requirements, product structure or the technology being used. Different approaches have been proposed for managing SPL assets and some also address how evolution affects these assets. Existing mapping studies have focused on specific aspects of SPL evolution, but there is no cohesive body of work that gives an overview of the area as a whole. Objective: The goals of this work are to review the characteristics of the approaches reported as supporting SPL evolution, and to synthesize the evidence provided by primary studies about the nature of their processes, as well as how they are reported and validated. Method: We conducted a systematic literature review, considering six research questions formulated to evaluate evolution approaches for SPL. We considered journal, conference and workshop papers published up until March 2017 in leading digital libraries for computer science. Results: After a thorough analysis of the papers retrieved from the digital libraries, we ended up with a set of 60 primary studies. Feature models are widely used to represent SPLs, so feature evolution is frequently addressed. Other assets are less frequently addressed. The area has matured over time: papers presenting more rigorous work are becoming more common. The processes used to support SPL evolution are systematic, but with a low level of automation. Conclusions: Our research shows that there is no consensus about SPL formalization, what assets can evolve, nor how and when these evolve. Case studies are quite popular, but few industrial-sized case studies are publicly available. Also, few of the proposed techniques offer tool support. We believe that the SPL community needs to work together to improve the state of the art, creating methods and tools that support SPL evolution in a more comparable manner.
Conference Paper
Full-text available
Smart IT has an increasing influence on the control of daily life. For instance, smart grids manage power supply, autonomous automobiles take part in traffic, and assistive robotics support humans in production cells. We denote such systems as Cyber-physical Systems (CPSs), where cyber addresses the controlling software, while physical describes the controlled hardware. One key aspect of CPSs is their capability to adapt to new situations autonomously or with minimal human intervention. To achieve this, CPSs reuse, reorganize and reconfigure their components during runtime. Some components may even serve in different CPSs and different situations simultaneously. The hardware of a CPS usually consists of a heterogeneous set of variable components. While each component can be designed as a software product line (SPL), which is a well established approach to describe software and hardware variability, it is not possible to describe CPSs' variability solely on a set of separate, non-interacting product lines. To properly manage variability, a CPS must specify dependencies and interactions of its separate components and cope with variable environments, changing requirements, and differing safety properties. In this paper, we i) propose a classification of variability aspects, ii) point out current challenges in variability modeling, and iii) sketch open research questions. Overall, we aim to initiate new research directions for variable CPSs based on existing product-line techniques.
Article
Full-text available
Smart Cyber--Physical Systems (sCPS) are modern CPS systems that are engineered to seamlessly integrate a large number of computation and physical components; they need to control entities in their environment in a smart and collective way to achieve a high degree of effectiveness and efficiency. At the same time, these systems are supposed to be safe and secure, deal with environment dynamicity and uncertainty, cope with external threats, and optimize their behavior to achieve the best possible outcome. This "smartness" typically stems from highly cooperative behavior, self--awareness, self--adaptation, and selfoptimization. Most of the "smartness" is implemented in software, which makes the software one of the most complex and most critical constituents of sCPS. As the specifics of sCPS render traditional software engineering approaches not directly applicable, new and innovative approaches to software engineering of sCPS need to be sought. This paper reports on the results of the Second International Workshop on Software Engineering for Smart Cyber--Physical Systems (SEsCPS 2016), which specifically focuses on challenges and promising solutions in the area of software engineering for sCPS.
Chapter
Full-text available
To engineer large, complex, and interdisciplinary systems, modeling is considered as the universal technique to understand and simplify reality through abstraction, and thus, models are in the center as the most important artifacts throughout interdisciplinary activities within model-driven engineering processes. Model-Driven Systems Engineering (MDSE) is a systems engineering paradigm that promotes the systematic adoption of models throughout the engineering process by identifying and integrating appropriate concepts, languages, techniques, and tools. This chapter discusses current advances as well as challenges towards the adoption of model-driven approaches in cyber-physical production systems (CPPS) engineering. In particular, we discuss how modeling standards, modeling languages, and model transformations are employed to support current systems engineering processes in the CPPS domain, and we show their integration and application based on a case study concerning a lab-sized production system. The major outcome of this case study is the realization of an automated engineering tool chain, including the languages SysML, AML, and PMIF, to perform early design and validation.
Article
Full-text available
Many of today’s software systems accommodate different usage and deployment scenarios. Intentional and unintentional variability in functionality or quality attributes (e.g., performance) of software significantly increases the complexity of the problem and design space of those systems. The complexity caused by variability becomes increasingly difficult to handle due to the increasing size of software systems, new and emerging application domains, dynamic operating conditions under which software systems have to operate, fast moving and highly competitive markets, and more powerful and versatile hardware. This paper reports results of the first International Workshop on Variability and Complexity in Software Design that brought together researchers and engineers interested in the topic of complexity and variability. It also outlines directions the field might move in the future
Article
Full-text available
Context: Continuous delivery is a software development discipline in which software is always kept releasable. The literature contains instructions on how to adopt continuous delivery, but the adoption has been challenging in practice. Objective: In this study, a systematic literature review is conducted to survey the faced problems when adopting continuous delivery. In addition, we identify causes for and solutions to the problems. Method: By searching five major bibliographic databases, we identified 293 articles related to continuous delivery. We selected 30 of them for further analysis based on them containing empirical evidence of adoption of continuous delivery, and focus on practice instead of only tooling. We analyzed the selected articles qualitatively and extracted problems, causes and solutions. The problems and solutions were thematically synthesized into seven themes: build design, system design, integration, testing, release, human and organizational and resource. Results: We identified a total of 40 problems, 28 causal relationships and 29 solutions related to adoption of continuous delivery. Testing and integration problems were reported most often, while the most critical reported problems were related to testing and system design. Causally, system design and testing were most connected to other themes. Solutions in the system design, resource and human and organizational themes had the most significant impact on the other themes. The system design and build design themes had the least reported solutions. Conclusions: When adopting continuous delivery, problems related to system design are common, critical and little studied. The found problems, causes and solutions can be used to solve problems when adopting continuous delivery in practice.
Article
Full-text available
The development of software-intensive technical systems involves several engineering disciplines like mechanical, electrical, control, and particularly software engineering. Model-based Systems Engineering (MBSE) coordinates these disciplines throughout the development by means of discipline-spanning processes and a system model. Such a system model provides a common understanding of the system under development and serves as a starting point for the discipline-specific development. An integral part of MBSE is the requirements engineering on the system level. However, these requirements need to be refined for the discipline-specific development to start, e.g., into specific requirements for the embedded software. Since existing MBSE approaches lack support for this refinement step, we conceived in previous work a systematic transition from MBSE to model-based software requirements engineering. We automated the steps of the transition where possible, in order to avoid error-prone and time-consuming manual tasks. In this paper, we extend this approach with support for subsequent process iterations and provide an algorithm for the automated steps. We illustrate the approach and perform a case study with an example of an automotive embedded system.
Article
Full-text available
Coping with evolution in automated production systems implies a cross-disciplinary challenge along the system's life-cycle for variant-rich systems of high complexity. The authors from computer science and automation provide an interdisciplinary survey on challenges and state of the art in evolution of automated production systems. Selected challenges are illustrated on the case of a simple pick and place unit. In the first part of the paper, we discuss the development process of automated production systems as well as the different type of evolutions during the system's life-cycle on the case of a pick and place unit. In the second part, we survey the challenges associated with evolution in the different development phases and a couple of cross-cutting areas and review existing approaches addressing the challenges. We close with summarizing future research directions to address the challenges of evolution in automated production systems.
Conference Paper
Full-text available
Shortening product lifecycles and small lot sizes require manufacturing systems to adapt increasingly fast. Many existing machine tools, handling and logistics systems are already generic and not bound to a specific product a-priori. Yet this flexibility and reconfigurability on the asset level is lost in automated systems that are limited to executing a small set of predefined actions in a fixed sequence. The SkillPro\footnote{Skill-based Propagation of Plug'n'Produce-Devices in Reconfigurable Production Systems by AML; The project SkillPro (Grant 314247) has received funding from the European Union’s Seventh Framework Programme for research, technological development and demonstration under grant agreement no ICT-287733.} project aims to develop a holistic service-oriented framework for modelling and orchestration of modern adaptable manufacturing systems. The core concept is a unified abstraction for manufacturing tasks: skills provided by the available assets and the requirements of the different production steps. The skill-based system model enables the transition from generic high-level descriptions to low-level formats that can be directly executed. Self-describing assets can be added, changed and removed at runtime, taking into account technical and economic conditions to best achieve the manufacturing goals.
Article
Full-text available
One of the most significant directions in the development of computer science and information and communication technologies is represented by Cyber-Physical Systems (CPSs) which are systems of collaborating computational entities which are in intensive connection with the surrounding physical world and its on-going processes, providing and using, at the same time, data-accessing and data-processing services available on the internet. Cyber-Physical Production Systems (CPPSs), relying on the newest and foreseeable further developments of computer science, information and communication technologies on the one hand, and of manufacturing science and technology, on the other, may lead to the 4th Industrial Revolution, frequently noted as Industry 4.0. The key-note will underline that there are significant roots generally – and particularly in the CIRP community – which point towards CPPSs. Expectations and the related new R&D challenges will be outlined.
Conference Paper
Full-text available
Technical systems contain mechanical, electrical, and software parts. Consequently, they are developed by engineers of the re-spective disciplines. However, current industrial practice as well as existing development processes do not account for the required tight integration between the engineers of the different disciplines. Processes become even more complex, when self-adaptive systems are built. In this paper, we present a development process for self-adaptive mechatronic systems which particularly addresses the in-tegration between the disciplines concerned with the development of software, namely control and software engineering. We illus-trate the process by presenting examples from the development of autonomous railway vehicles which build convoys to improve en-ergy efficiency.
Article
Full-text available
In the world of model-driven engineering (MDE) support for traceability and maintenance of traceability infor-mation is essential. On the one hand, classical traceability approaches for MDE address this need by supporting auto-mated creation of traceability information on the model ele-ment level. On the other hand, global model management approaches manually capture traceability information on the model level. However, there is currently no approach that supports comprehensive traceability, comprising traceabil-ity information on both levels, and efficient maintenance of traceability information, which requires a high-degree of automation and scalability. In this article, we present a com-prehensive traceability approach that combines classical traceability approaches for MDE and global model man-agement in form of dynamic hierarchical mega models. We further integrate efficient maintenance of traceability infor-mation based on top of dynamic hierarchical mega models. The proposed approach is further outlined by using an indus-trial case study and by presenting an implementation of the concepts in form of a prototype.
Article
Full-text available
The extraction of non-trivial software product lines (SPL) from a legacy application is a time-consuming task. First, developers must identify the components responsible for the implementation of each program feature. Next, they must locate the lines of code that reference the components discovered in the previous step. Finally, they must extract those lines to independent modules or annotate them in some way. To speed up product line extraction, this paper describes a semi-automatic approach to annotate the code of optional features in SPLs. The proposed approach is based on an existing tool for product line development, called CIDE, that enhances standard IDEs with the ability to associate background colors with the lines of code that implement a feature. We have evaluated and successfully applied our approach to the extraction of optional features from three non-trivial systems: Prevayler (an in-memory database system), JFreeChart (a chart library), and ArgoUML (a UML modeling tool).
Conference Paper
Functionally described capabilities play an important role in the virtualization of manufacturing and the resource-specific realization with the skill-based approach. The importance of this modeling can be seen in a formalization of production capabilities for a holistic usage in a workflow from product orders towards manufacturing on the shop floor. This paper presents a concept for modeling and usage of functionally described capabilities along this workflow with combined modeling approaches. Therefore, the formalism and the setup of product requirements, functionally described capabilities, Petri Net Plans for creation of resource-specific process sequences, and at least their execution with skills are considered. The application and validation of this concept on a virtualized demonstrator example is shown. The achieved results for a given application from a product order towards its simulated manufacturing are presented.
Article
Feature models are a de facto standard for representing the commonalities and variability of product lines and configurable software systems. Requirements-level features are commonly implemented in multiple source code artifacts, resulting in complex dependencies at the code level. As developers add and evolve features frequently, it is challenging to keep feature models consistent with their implementation. This article thus presents an approach combining feature-to-code mappings and code dependency analyses to inform engineers about possible inconsistencies. We focus on code-level changes requiring updates in feature dependencies and constraints. Our approach uses static code analysis and a variation control system to lift complex code-level dependencies to feature models. We present the suggested dependencies to the engineer in two ways: directly as links between features in a feature model and as a heatmap visualizing the dependency changes of all features in a model. We evaluate our approach by analyzing the evolution history of two case study systems: the Pick-and-Place Unit and the KePlast product line of our industry partner KEBA AG. We present results of evaluating the utility (RQ1) and performance (RQ2) of our approach, as well as the quality of the suggestions (RQ3).
Article
Context Industry 4.0 has substantially changed the manufacturing processes, leading to smart factories with full digitalization, intelligence, and dynamic production. The need for rigorous and continuous development of highly networked software-intensive Industry 4.0 systems entails great challenges. Hence, Industry 4.0 requires new ways to develop, operate, and evolve these systems accordingly. Objective We introduce the view of Continuous Systems and Software Engineering for Industry 4.0 (CSSE I4.0). Method Based on our research and industrial projects, we propose this novel view and its core elements, including continuous twinning, which is also introduced first in this paper. We also discuss the existing industrial engagement and research that could leverage this view for practical application. Results There are still several open issues, so we highlight the most urgent perspectives for future work. Conclusions A disruptive view on how to engineer Industry 4.0 systems must be established to pave the way for the realization of the fourth industrial revolution.
Conference Paper
Technical Debt (TD) has proven to be a suitable communication concept for software-intensive contexts to raise awareness regarding longterm negative effects of deviations from standards and guidelines. TD has also been introduced to systems engineering domain, to communicate design shortcomings in long-running, software-assisted systems. We analysed potential TD in the engineering data exchange for production system engineering. Similar to requirements engineering in software-intensive systems, data exchange in the design phase plays an integral part in Software Engineering (SE) for Production Systems Engineering: Specifications, and physical logic have to be derived from heterogeneous plant models or parameter tables designed by different stakeholders. However, traditional procedures and inadequate tool support lead to inefficient data extraction and integration. We identified debt arising from knowledge representation, data model and the exchange process. The refinement validation of identified TD was achieved through semi-structured interviews with representatives in two analysed companies. In an online survey with ten participants from an industrial consortium we evaluated whether the identified TD concepts also applied to other companies, which is true for the majority of TD. Furthermore, we discuss promising TD management strategies to repay and manage negative effects and the accumulation of additional debt, such as improved communication, test-driven model engineering and visualisation of engineering models.
Conference Paper
Multi-disciplinary data exchange still poses many challenges: Heterogeneous data sources, diverging data views, and lack of communication lead to defects, late resolving of errors, and mismatches over the project lifecycle. Semantic approaches such as ontologies are a viable solution to derive common concepts between disciplines to limit negative effects in their collaboration. However, the application of these semantic approaches is still quite limited due to its inherent complexity. The purpose of this paper, is to discuss the concept of local glossaries as a step towards a Common Concept Glossary (CCG) method: A tool-supported method to enable and simplify the creation of common concepts derived from local glossaries that are built by discipline-specific workgroups. The local concepts can aid by making changes visible and enabling traceability and maintainability of common models between different disciplines.
Chapter
Creating business value with data analytics is a continuous process that requires to effectively consider the design and deployment of powerful analytics solutions. This requires a significant effort in understanding, customizing, assembling and adapting these solutions to the specific environment. However, this might be different from one context to another. The objective of this paper is to discuss the use of data analytics in Industry 4.0 by harvesting some challenges and lessons-learnt. A case-based approach is followed, as a research methodology to explore and understand complex and common issues related to data analytics. Scalability, interoperability and standardization are among the topics that are reviewed.
Conference Paper
High availability of automation systems is one of the main goals for the companies from all industrial branches. To achieve and maintain this high availability, the condition monitoring of the automation systems is an essential building block. However, as automation systems become increasingly equipped with numerous mechanical, electrical, and software components, creating a condition monitoring solution is becoming more and more challenging and requires knowledge from multiple engineering disciplines. Today, creating a condition monitoring solution is mostly based on the experience and preferences of the developers without a systematic and interdisciplinary method. Today, methods and tools supporting an interdisciplinary development exist. However, they do not fully consider condition monitoring relevant information. In addition, tools that increase software productivity and ease the adjustment of condition monitoring software are lacking. The main goal of this paper is to narrow the condition monitoring expertise gap by proposing convenient, systematic, and automated techniques to support the development of condition monitoring solutions from their design to their implementation. To achieve this goal, we propose an extension of the CONSENS systems engineering method to face issues caused in the design phase. By adopting a Model-Driven Development (MDD) approach, we propose a Domain-Specific Language (DSL) for condition monitoring that promotes increased understandability, and automation during the software implementation phase.
Conference Paper
The study presented in this paper aims to provide evidence for the hypothesis that software product line research has been changing and that the works in industry and academia have diverged over time. We analysed a subset (140) of all (593) papers published at the Software Product Line Conference (SPLC) until 2017. The subset was randomly selected to cover all years as well as types of papers. We assessed the research type of the papers (academic or industry), the kind of evaluation (application example, empirical, etc.), and the application domain. Also, we assessed which product line life-cycle phases, development practices, and topics the papers address. We present an analysis of the topics covered by academic vs. industry research and discuss the evolution of these topics and their relation over the years. We also discuss implications for researchers and practitioners. We conclude that even though several topics have received more attention than others, academic and industry research on software product lines are actually rather in line with each other.
Article
Cyber-physical systems constitute a disruptive technology across many industries, with a strong impact on economies and social processes. Their applications in many domains, from manufacturing to agriculture and from critical infrastructure to assistive living, brings challenges in technology, business, law and ethics.
Article
For software engineering research to increase its impact and steer our community toward a more successful future, it must foster context-driven research. Such research focuses on problems defined in collaboration with industrial partners and is driven by concrete needs in specific domains and development projects.
Conference Paper
Cars of the future (ADAS – Autonomous self-driving assistant) will need to cover a number of new standards for mechatronic design and networking of the car in the cloud. This includes job roles for ISO 26262, IEC 61508 (functional safety), SAE J3061 (cybersecurity), etc. For instance, a car driving on a street will exchange information with neighbouring cars and learn the right steering angle, speed, etc. while the driver is using the car like a work place. Manufacturers plan to produce from 2030 only cars which have such a self-driving function incorporated. The design of new electric cars will require new infrastructures, new energy management, new battery concepts, and also new materials design (light weight and still resistant), and the job role pool will include these key skills as well. The production of cars will be with connected plants, robots to be programmed, and central production servers to coordinate the industry 4.0 type of production virtually across the world. And the new cybersecurity norm SAE J3061 will develop further in the next years because by moving the cars to the cloud and the production to industry 4.0 leaves Europe’s industry vulnerable to attacks if this is not handled. Also the medical systems move towards an IoT (Internet of Things) approach where people receive implants which read out the data and transport them to the mobile which forwards the data to a medical service in the cloud where data are used by states and hospitals.
Conference Paper
In recent years, there has been growing interest in research on sustainability in software engineering. Despite active research in this area, there is still a lack of understanding of how sustainability is perceived by software professionals. To understand how software sustainability is currently dealt with in practice, we performed an interview study with 10 software project team leads from nine companies in Austria. Our study shows that practitioners regard software sustainability as important but are technically minded with respect to sustainability. Organizational and economic issues are addressed, but environmental considerations are missing. The perceived influence of various project factors on sustainability is partly diverse, suggesting that the meaning of sustainability needs to be refined for the specific project and application context.
Chapter
The Internet of Things and Services opens new perspectives for goods and value-added services in various industrial sectors. Engineering of industrial products and of industrial production systems is a multi-disciplinary, model- and data-driven engineering process, which involves engineers coming from several engineering disciplines. These engineering disciplines exploit a variety of engineering tools and information processing systems. This book discusses challenges and solutions for the required information processing and management capabilities within the context of multi-disciplinary engineering of production systems. The authors consider methods, architectures, and technologies applicable in use cases according to the viewpoints of product engineering and production system engineering, and regarding the triangle of (1) the product to be produced by (2) a production process executed on (3) a production system resource. This chapter motivates the need for better approaches to multi-disciplinary engineering (MDE) for cyber-physical production systems (CPPS) and provides background information for non-experts to explain the interaction between production engineering, production systems engineering, and enabling contributions from informatics. Furthermore, the chapter introduces a set of research questions and provides an overview on the book structure, chapter contributions, and benefits to the target audiences.
Article
Automotive systems are highly complex and customized systems containing a vast amount of variability. Feature modeling plays a key role in customization. Empirical evidence through industry application, and in particular methodological guidance of how to structure automotive product lines and their feature models is needed. The overall aim of this work is to provide guidance to practitioners how to structure automotive product lines and their feature models, understanding strengths and weaknesses of alternative structures. The research was conducted in three phases. In the first phase, the context situation was understood using interviews and workshops. In the second phase, possible structures of product lines and feature models were evaluated based on industry feedback collected in workshops. In the third phase, the structures were implemented in the tool GEARS and practitioner feedback was collected. One key challenge was the unavailability of structuring guidelines, which was the focus of this research. The structures considered most suitable for the automotive product line were multiple product lines with modular decomposition. The structures most suitable for the feature model were functional decomposition, using context variability, models corresponding to assets, and feature categories. Other structures have been discarded, and the rationales have been presented. It was possible to support the most suitable structures with the commercial tool GEARS. The implementation in GEARS and the feedback from the practitioners provide early indications for the potential usefulness of the structures and the tool implementation.
Article
Requirements for implemented system can be extracted and reused for a production of a new similar system. Extraction of common and variable features from requirements leverages the benefits of the Software Product Lines Engineering (SPLE). Although various approaches have been proposed in feature extractions from Natural Language (NL) requirements, no related literature review has been published to date for this topic. This paper provides a systematic literature review (SLR) of the state-of-the-art approaches in feature extractions from NL requirements for reuse in SPLE. We have included 13 studies in our synthesis of evidence and the results showed that Hybrid Natural Language Processing approaches were found to be in common for overall feature extraction process. A mixture of automated and semi-automated feature clustering approaches from data mining and information retrieval were also used to group common features, with only some approaches coming with support tools. However, most of the support tools proposed in the selected studies were not made available publicly and thus making it hard for practitioners’ adoption. As for the evaluation, this SLR reveals that not all studies employed software metrics as ways to validate experiments and case studies. Finally, the quality assessment conducted confirms that practitioners’ guidelines were absent in the selected studies.
Conference Paper
Increasing complexity of machine and plant automation represents a growing challenge in its innovation process. Dependencies between various engineering disciplines and the different frequencies of innovation cycles further complicate the analysis, modeling and design of machine and plant automation. In order to investigate innovation impacts and to derive management measures, interviews with experts from machine and plant manufacturing companies were conducted. Paradigm changes were identified as innovation triggers; missing solutions for module management as well as the diversity of variants and versions were considered as innovation inhibitors. The results of the interviews, regarding the specification of the identified innovation triggers and inhibitors, are presented.
Article
Software product lines (SPLs) are used in industry to develop families of similar software systems. Legacy systems, either highly configurable or with a story of versions and local variations, are potential candidates for reconfiguration as SPLs using reengineering techniques. Existing SPLs can also be restructured using specific refactorings to improve their internal quality. Although many contributions (including industrial experiences) can be found in the literature, we lack a global vision covering the whole life cycle of an evolving product line. This study aims to survey existing research on the reengineering of legacy systems into SPLs and the refactoring of existing SPLs in order to identify proven approaches and pending challenges for future research in both subfields. We launched a systematic mapping study to find as much literature as possible, covering the diverse terms involved in the search string (restructuring, refactoring, reengineering, etc. always connected with SPLs) and filtering the papers using relevance criteria. The 74 papers selected were classified with respect to several dimensions: main focus, research and contribution type, academic or industrial validation if included, etc. We classified the research approaches and analyzed their feasibility for use in industry. The results of the study indicate that the initial works focused on the adaptation of generic reengineering processes to SPL extraction. Starting from that foundation, several trends have been detected in recent research: the integrated or guided reengineering of (typically object-oriented) legacy code and requirements; specific aspect-oriented or feature-oriented refactoring into SPLs, and more recently, refactoring for the evolution of existing product lines. A majority of papers include academic or industrial case studies, though only a few are based on quantitative data. The degree of maturity of both subfields is different: Industry examples for the reengineering of the legacy system subfield are abundant, although more evaluation research is needed to provide better evidence for adoption in industry. Product line evolution through refactoring is an emerging topic with some pending challenges. Although it has recently received some attention, the theoretical foundation is rather limited in this subfield and should be addressed in the near future. To sum up, the main contributions of this work are the classification of research approaches as well as the analysis of remaining challenges, open issues, and research opportunities.
Article
Software Product Lines (SPLs) are a successful approach to software reuse in the large. Even though tools exist to create SPLs, their evolution is widely unexplored. Evolving an SPL manually is tedious and error-prone as it is hard to avoid unintended side-effects that may harm the consistency of the SPL. The main contribution of this paper is the conceptual basis of a system for the evolution of model-based SPLs, which maintains consistency of models and feature mapping. As further contribution, a novel classification is introduced that distinguishes evolutions by their potential to harm the mapping of an SPL. In addition, multiple remapping operators are presented that can remedy the negative side-effects of evolutions in order to co-evolve the feature mapping. Finally, an implementation of the evolution system in the SPL tool FeatureMapper is provided to demonstrate the capabilities of the presented approach when co-evolving models and feature mapping of an SPL.