The prototypical implementation was presented to different customers and received a positive response, with many of those customers facing the challenges mentioned with regard to variant and

2 www.pure-systems.com

product line co-evolution. Thus, our method addresses a highly relevant topic in the industrial domain.

*Fig. 18-4: Updating a variant in pure::variants preserving local changes*

#### **18.4 Propagating Changes from Application Engineering Level to Domain Engineering Level**

#### **18.4.1 The Challenge of Lifting Changes**

Propagating updates from the AE level to the DE level produces a few challenges. Introducing changes from the AE level to the DE level may result in conflicts, as development may go ahead at the DE level as well. Detecting changes and applying them to DE level artifacts is made more complicated here, as, in feature-oriented programming, there is often a mapping between features and implementation artifacts. Depending on the variability specification mechanism used, reconstructing the feature mapping from AE level artifacts is often not straightforward. In constructive mechanisms - for example, when constructing a 150% model - references to features may still exist in AE level artifacts. Yet, with transformational approaches, feature references are usually removed during the generation of AE level artifacts. However, reconstructing this mapping on the AE level is crucial for assigning changes to the correct features.

*Challenges in propagating changes from the AE level*

Our goal is to lower the barrier for adopting changes to variants in product line engineering by supporting the propagation of changes from a variant's working copy to the product line. To adequately propagate changes to the DE level, we have to a) detect changes, b) make the feature information available at AE level, c) assign changes to features or the codebase, and d) resolve each conflicting co-change. We propose a process that detects changes in the working copy of a variant then maps them to the appropriate features and transfers them semi-automatically to the product line.

#### **18.4.2 A Process for Lifting Changes**

Similar to updating the working copy of variants with changes from the product line, detecting co-changes requires a three-way comparison of the artifacts in questions when lifting changes to the product line. Here, two possible approaches are conceivable. In the first approach, changes in the working copy of the variant (*Variant A',*  see Figure 18-1) are detected by comparing it to its base version (*Variant A at T0*). The changes detected are then translated and applied to the base version of the product line (*Product Line Assets at T0*), resulting in a new product line version. These two versions are then compared with the updated product line (*Product Line Assets at*

*Fig. 18-5: Activities for propagating changes from the AE level to DE level*

*T1*) in a three-way comparison to detect and resolve conflicting cochanges. In the second approach, co-changes are instead detected and resolved on the AE level artifacts and only then translated and applied to the product line. This approach follows the process of updating the working copy of a variant (see Section 18.3.3) with changes from the product line, as co-changes are identified and resolved through a three-way differencing and merge on the three different variant versions.

We follow the second approach, as this approach builds upon the previously proposed process for updating a variant. The proposed process for this approach is presented in Figure 18-5. It consists of four steps: first, we update the working copy of a variant with changes *Process description for propagating changes from the AE level*

*Prerequisites for propagating changes*

*Approaches to propagating changes*  in the product line through a three-way merge on the artifacts of the three different variant versions. In addition to resolving conflicting co-changes, we also calculate regression deltas between the new variant versions (*Variant A* derived from the *Product Line Assets* at T1 and the working copy of *Variant A resulting from the merge*). These regression deltas represent the changes detected that will be applied to the DE level artifacts. However, changes must first be assigned to their corresponding feature (*Seed feature information*), and for this we require access to domain knowledge at AE level. To this end, in the second step, we annotate AE level assets with feature information. These annotations are the input in the third step to assign each change to a corresponding feature. Finally, in the fourth step, we translate and apply changes to DE level artifacts. In the following, we focus on the second and third steps, which we present in more detail.

#### **18.4.3 Deducing Feature Information**

Conflicting co-changes must also be resolved if changes from the AE level are to be propagated to the DE level. Changes must also be assigned to a feature to be made available to other variants of the product line. However, developers at the AE level implement changes concerning the variant's configuration, and information about individual features is usually not available. Changes at AE level can change the implementation of existing features or the codebase (e.g., bug fixing) or add new features (implementation of new functionalities). Before we can assign changes to features, the changes must first be detected, and domain knowledge must be made available at AE level. *Conflicts when updating DE level artifacts*

#### **Underlying Model**

Artifacts, their content, and their relationships can be represented abstractly as a graph ܩ) = ܸ,ܧ(. Here, the set of vertices *V* represents artifacts or elements of artifacts in the desired granularity, and the set of typed edges ܧ = ܸ × ܸ × ܶ represents their relationships, where *T* is the set of kinds of relationships identified. One possible realization of this data structure is object diagrams, which adequate transformations can extract directly from a development project and which we can employ to identify the impact of individual changes [Butting et al. 2018]. We use this data structure as an internal representation of model artifacts to abstract from concrete syntax changes. *General model description*

Besides the internal representation of model artifacts, we annotate elements (vertices) with features, which we store as a mapping ܽ: ܸ ∪ ܧ → ܨ, where *F* is the set of features. In our representation, the common codebase is mapped to the root feature, which is thereby represented as well. After the second phase (*Seed feature information*), each model element and each relationship of the base variant is annotated with exactly one feature. When assigning changes to features, we calculate recommendation values for each change and feature pair; that is, we calculate a mapping ݎ ∶ ܥ × ܨ] → 0, 1 [that assigns to each pair *(c, f)* the probability that change *c* belongs to feature *f*. Here, ܿ ∈ ܥ, ܽ݊݀ ݂ ∋ ܨ, where *C* is the set of changes. Furthermore, we then calculate ݎ)݁, ݂(, ݎௗௗ(݁, ݂), ܽ݊݀ ݎௗ(݁, ݂), which state whether the removal, the addition, or the modification of a model element *e* may belong to a feature *f*.

#### **Seeding Feature Information**

Since changes in AE level artifacts are applied to model elements of implementation artifacts, information about which model elements belong to which feature is essential to allow informed decisions when assigning changes to features. While feature-oriented programming usually includes a feature mapping that assigns implementation artifacts or even model elements to features, this mapping is usually not available at AE level. The availability of the feature mapping at AE level depends on the variability mechanism and the variant generation process. If feature information is part of implementation artifacts at AE level, then even assigning changes to features may be trivial, as application engineers can implement changes in the scope of the corresponding feature directly.

In most cases, feature information is not part of the resulting implementation artifacts. One example of this is transformational approaches, which transform some core model based on the selected features without traces of these transformations at AE level. As feature information is not available at AE level, we can instead reconstruct this information through the variant generation process. This can either be done directly during the initial variant generation or be recomputed from the product line. With the former, the feature information would have to be computed and derived for all variants, even if changes in a variant are never propagated to the product line. The latter would require the version of the product line, including generators employed at the point in time when the variant was generated. In either case, the goal is to annotate each model element *Description of annotations and recommendation values*

*Prerequisites for seeding feature information*

*Required domain knowledge*

of the desired granularity of the unmodified variant at AE level with the corresponding feature.

*Introducing new artifacts at AE level*

In addition to the feature annotation derived from the product line, we require application engineers to annotate which major changes at AE level (e.g., the introduction of new artifacts) represent new features. Since these features are not (yet) known in the product line, it is otherwise not possible to distinguish between new features and changes to an existing feature. In contrast to variability mining, it is not possible to compare several variants to identify new features, since changes usually affect a single working copy of a variant. Instead, by partially annotating changes with a new feature, the full variant may be explored through further analysis. The resulting feature annotation of elements is used in the following to assign changes to specific features.

#### **Assigning Changes to Features**

*Prerequisites for assigning changes to features*

With a complete annotation of the original model elements with features, and incomplete information about new features, we can annotate the remaining changes with features through further analysis. Generally, this can only be achieved partially automatically through a recommendation engine. In some cases, annotating changes with features may be computed fully automatically depending on the quality of analyses employed, the unambiguity of the resulting annotations, and on conflicts in other variants when propagating changes to DE level artifacts.

*Noteworthy feature relationships for the recommendation*

*Removal of model elements*

As before, we focus on the three operations add, remove, and modify. Furthermore, we incorporate domain knowledge into our analysis; that is, we consider the *parent-child* relationship and the *requires* relationship of features. Using well-formedness rules together with domain knowledge enables us to limit the set of features that can contain a particular change. The concrete implementation, however, depends on the modeling language and variability specification mechanism used. The notes here provide the basis for implementing appropriate analyses for the respective circumstances.

A model element can only be removed in the feature that introduced it (the annotated feature) or in any of its dependent features. We call a feature *f1* dependent on a feature *f2* if *f1* is in a childhierarchy of *f2* or if *f1* requires *f2*. Dependent features can be removed only if the variability specification mechanisms support removing elements that have been introduced in another feature (e.g., transformational variability specification mechanisms). If model element *e* is removed at AE level, then ܽ(݁) = ݂ (model element e is annotated with feature f) implies ݎ)ݎ݁݉ ݁, ݂ = (1) whether the removal of *e* may occur in feature *f*) and in the latter case, this also ଵ݂ ݁, ݁݉ݎ)ݎ implies ) = 1*,* where *f*1 is dependent on feature *f*.

Similar to the removal of elements, a model element can only be modified in the feature that introduced it or in any of its dependent features. Therefore, if model element *e* is modified at AE level, then ܽ(݁) = ݂ (model element *e* is annotated with feature *f*) implies ݎௗ(݉݀ ݁, ݂ = (1 and in the latter case, this also implies ଵ݂ ݁, ݁݉ݎ)ௗݎ ) = 1*,* where *f*1 is dependent on feature *f*.

Any domain-specific or general-purpose language supports relationships between model elements, where relationships between two elements can be expressed by the relation ܴ ⊆ ܧ × ܧ, where (݁ଵ , ݁ଶ ) ∈ ܴ states that model element *e1* relates to model element *e*2 in some way. Common relationships are containment relationships and references to other elements. Examples of the former are classes in Java that contain fields and method declarations. An example of the latter are transitions between two states in an automaton that reference their source and target state. Model elements must be introduced in the same feature that introduces a relationship on that feature, or in any of that feature's parent features - that is, if there is a relationship (݁ଵ , ݁ଶ ) between model element ݁ଵ and ݁ଶ , and ܽ((݁ଵ , ݁ଶ )) = ݂ (the relation is annotated with feature *f*), then ݎௗௗ(ܽ݀݀ ݁ଵ ,݂) = 1, ݎௗௗ(ܽ݀݀ ݁ଶ ,݂) = 1, ݎௗௗ(ܽ݀݀ ݁ଵ , ݂ଵ ) = 1, and ݎௗௗ(ܽ݀݀ ݁ଶ ,݂ଵ ) = 1 for all features *f1* in the parent-hierarchy of feature *f.*

We compute the overall recommendation ݎ for each change with ݎ)݁, ݂ = (ݎ)݁, ݂ (+ ݎௗௗ(݁, ݂) + ݎௗ(݁, ݂) by merging the recommendations of ݎ, ݎௗௗ, and ݎௗ. The highest recommended feature *f* for each model element *e* is returned by the recommendation engine.

#### **18.4.4 Applicability and Limitations**

The proposed update process and the proposed recommendation mechanism are general enough to be applicable for different variability specification mechanisms and can be realized for different modeling languages. This is because we generally regard models as constructs consisting of model elements and relationships between these elements. Implementation of the recommendation mechanism and of the update process for different modeling languages, however, requires additional implementation effort, as for each modeling language, we have to identify possible relationships between artifacts *Modification of model elements*

*Addition of model elements*

*Calculating overall recommendation value* and extract these to transfer them into the recommendation engine. Furthermore, the proposed recommendation mechanism considers all modeling elements and changes to be equally important. If this is not desired, then weights must be defined for these elements. Moreover, domain engineers still have to manually merge changes into the product line artifacts, as recommendations provide only a general idea as to which features particular changes can be applied to. Here, the domain engineers' decisions can be used to limit the decision space further and update recommendations. Updating product line artifacts with changes from the AE level may and will cause conflicts in existing variants. Developers must integrate the process for propagating changes into the product line's development process and define how conflicts across variants will be resolved. Finally, the accuracy of the recommendations depends on the granularity of the overlying model, the maturity of the analysis, and the differencing algorithms employed. Here, we consider only syntactic changes, but algorithms that analyze semantic changes could also be used to enhance recommendations.

#### **18.5 Conclusion**

Variability and configurability play a pivotal role for CESs and CSGs. Product line engineering is an approach for structured reuse and management of CES and CSG variability. To meet new requirements, product lines evolve, and their variants can be updated accordingly. However, in industrial practice, individual variants are modified, which yields the threat of incompatibility. In this article, we proposed an approach to keep product lines and their variants synchronized. With this approach, the benefits of performing evolution at both product line level and variant level are combined. With a high degree of automation, engineers can perform evolution at variant level without the drawback of a high manual effort to synchronize the product line with the modified variant. Consequently, our contributions make product line engineering more applicable for industrial practice.

#### **18.6 Literature**

[Batory 2005] D. Batory: Feature Models, Grammars, and Propositional Formulas. In: International Conference on Software Product Lines, Springer, Berlin, Heidelberg, September 2005, pp. 7-20.

**Open Access** This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.

The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

Manfred Broy, Technical University of Munich Wolfgang Böhm, Technical University of Munich Bernhard Rumpe, RWTH Aachen University

## Advanced Systems Engineering

### Contribution of the SPES Methodology and Open Research Questions

*Advanced systems engineering (ASE) is a new paradigm for agile, efficient, evolutionary, and quality-aware development of complex cyber-physical systems using modern digital technologies and tools. ASE is essentially enabled by smart digital modeling tools for specifying, modeling, testing, simulating, and analyzing the system under development embedded in a coherent and consistent methodology.*

*The German Federal Ministry of Education and Research (BMBF) projects SPES2020, SPES\_XT, and CrESt offer such a methodology and framework for model-based systems engineering (MBSE). The framework provides a comprehensive methodology for MBSE that is independent of tools and modeling languages. The framework also offers a comprehensive set of concrete modeling techniques and activities that build on a formal, mathematical foundation. The SPES framework is based on four principles that are of paramount importance: (1) Functional as well as non-functional requirements fully modeled and understood at system level. (2) Consistent consideration of interfaces at each system level. (3) Decomposition of systems into subsystems and their interfaces. (4) Models for a variety of cross-sectional topics (e.g., variability, safety, dynamics).*

#### **19.1 Introduction**

*Cyber-physical systems*

Many systems and technical products developed today and in the future are or will be cyber-physical systems. These systems exhibit physical as well as smart, complex, and high-performance functionality, are typically not "stand alone," being instead connected to users and to other systems via digital networks such as the Internet, and their services mutually use and complement each other. It is recognizable that to a certain extent, subsystems, which are created by heuristic procedures, are built into the systems, — for example, by "learning procedures."

Typical for those cyber-physical systems is that they embody software intensively, which enables powerful and connected functionalities that go dramatically beyond what was possible in the past for rather isolated mechatronic systems. The high proportion of software leads to an extensive design space in which the most diverse requirements can be identified. Therefore, the identification of a requirements concept is of particular importance. This also creates extensive potential for innovation, both in terms of purely logical functionality but also very much in human-centered human-machine interaction and automation up to full autonomy.

Cyber-physical systems are characterized by the fact that they usually have mechatronic components, especially sensors and actuators to enable the interaction between physical and software components as well as an interaction of the systems with their environment. These new forms of software enable functionalities through the use of advanced software technology, including artificial intelligence methods, and enable human-centered user interfaces for these systems.

*Software as a driving factor*

It is particularly noteworthy that today's systems contain an extensive proportion of software for good reasons, as this enables functionalities that were completely out of scope even a few years ago. Due to the strong networking, it is obvious to connect systems with completely different tasks and functionalities — in order to use functionality from other systems, but also to make functionality available for other systems and thus increase the degree of automation and optimization.

#### **19.2 Advanced Systems Engineering**

The systems of the future are characterized by the following features: *System characteristics*

These features are also reflected in the required development approaches and determine the characteristics of the advanced systems engineering (ASE) approach. Accordingly, ASE is characterized by the following features:

*Characteristics of the ASE approach*

through simulation, generation and automated deduction and quality verification

It is evident that these points interactwith, complement, and reinforce each other.

#### **19.3 MBSE as an Essential Basis**

#### *Formal system model*

The approach pursued by MBSE is clearly distinguished from the document-centered, manual approach that is still widely used today. Objectives, functions, components, interfaces, or quality properties that a system fulfils or provides are described by explicit model elements based on well-defined and well-understood concepts of the domain. A number of modeling concepts are used in model-based development. The concepts are selected in such a way that they capture the essential system properties clearly and precisely. A separate theory can be specified for each of these modeling concepts. The same applies to the description of the relationship between the different modeling concepts used. This has the advantage that users trained in the approach (similar to programming languages) are familiar with the concepts and know which models they have to apply to certain questions. Engineers thus also know the basic problems they have to deal with in order to create the models in a goal-oriented way and use them in system analysis or synthesis. Model-based development is much more than just drawing or setting up models; it also includes the comprehensive use of an elaborated modeling approach.

Pre-built model types, based on a scientific foundation, guarantee properties such as compositionality, which clearly defines the integration of subsystems described by models (such as communication via an interface) and reuse. The models must be coordinated in terms of content and engineers must understand exactly how the different modeling approaches interact. One important point is the semantic coherence across model boundaries and the boundaries of modeling languages, which ensures that a comprehensive model of the system is created. A system description is then no longer this vaguely informal structure of documents, but rather an interwoven network of standardized models that form a common whole. An instance of the system model, which in this form is then consistently stored in a central model repository ("single point of truth"), is managed. Stakeholders have different views of this central system model that are tailored precisely to their respective roles in the product life cycle (for example, function developer, architect, service). This avoids undetected inconsistencies and, in particular, simplifies the ability to change the models, thus reducing a significant cost driver.

The transition from textual descriptions in natural language to models also has the advantage of reducing ambiguities, making consistency and completeness verifiable, and improving communication between stakeholders. The more formal the model used, the less ambiguity there is in the description. More importantly, formal models enable automatic analyses—for example, to check the interaction of the individual components—and they also allow the use of generators to generate parts of other models and artifacts (such as code or test cases) from elaborated system models.

This shows that model-based development constitutes *one,* perhaps *the* key to advanced systems engineering with a high level of tool support.

Another important point here is the possibility of tool-supported development of systems. Here, the software is of particular interest in two respects: on the one hand, the development of systems in their inevitable complexity will be supported in a way that is indispensable to advance such systems in general; on the other hand, supported development requires comprehensive, systematic modeling and thus a virtual registration of the systems. This means that these models can be used as digital twins for the operation of the systems and thus ensure even more extended functionalities. The software optimizes itself during development, so to speak.

Three aspects of MBSE must be considered separately, but nevertheless skillfully coordinated with each other:

*Methodology:* A system model, which in turn consists of a multitude of model types, is itself a complex artifact that cannot be created effectively and efficiently without an underlying sciencebased methodology. Therefore, an MBSE methodology includes the *Tool-supported development*

*Aspects of MBSE*

definition of the relevant model types and their relationships. Furthermore, it defines views of the system model, which structure the complex overall model into several, less complex models that are adapted to the given development situation. Examples of views include functional and logical or technical architecture views. An MBSE methodology also describes possibilities for analysis and generation of the specific models. The degree of formalization of the models defined in the system model determines the degree of automation of analyses and model generation. A high degree of automation, which of course must also be supported by the tools used, allows in turn an iterative and agile development process, such as in pure software development.

*Modeling language:* The modeling language defines the syntax and semantics used to describe the models of the methodology in concrete terms — for example, which textual or graphical notations are allowed (syntax). The semantics of a modeling language defines the meaning of these notations. The problem here is that many of the common modeling languages (such as SysML) have at best a loosely defined semantics. This causes problems similar to those of natural language descriptions.

*Tools:* The methodology and language must be supported by appropriate tools in order to make efficient use of the possibilities offered by models. It is also crucial that the tool chains used are compatible with each other and that the tools used support the chosen methodology and the modeling language both syntactically and semantically and with a high degree of automation.

#### **19.4 The Integrated Approach of SPES and SPES\_XT**

In the BMBF project SPES2020 [Pohl et al. 2012] and its successors SPES\_XT [Pohl et al. 2016] and CrESt, a methodology and framework for MBSE were developed that allow efficient model-based development of embedded systems. The SPES framework provides a comprehensive methodology for MBSE that is independent of tools and modeling languages. The framework also offers a comprehensive set of concrete modeling techniques and activities that build on a formal, mathematical foundation. The SPES framework is based on four principles of paramount importance:

*Principles of the SPES modeling framework*

A system model in the SPES approach is a conceptual ("generic") model for the description of systems and their properties, consisting of: *System model in SPES*

The core of the methodology is the *universal interface concept*, which defines interfaces for all elements, each consisting of the interface syntax and a description of the behavior observable at the element boundary. Requirements, functions, and logical or technical components are thus described via the interface and are connected to each other via their interfaces. The interface concept provides the basic decomposition and modularity.

Views [IEEE42010 2011] in the SPES framework are the requirements view, functional view, logical view, and technical view. They decompose the system into the logical or technical components involved. Crosscutting topics supplement the models of the views accordingly. For example, this allows aspects of the functional safety of systems to be described and analyzed. The SPES framework is open to the addition of new views, such as a geometric view.

In order to make the complexity of the system and the associated development process manageable, relevant architectural components are considered as independent (sub)systems according to the principle of "divide and rule." For these systems, models and views are created according to the SPES approach. This creates predefined views for the system and its subsystems with matching levels of granularity. The modeling of the system at the different levels of granularity determines the subject of the discourse (scope) and is an

*Universal interface concept*

*Views and crosscutting*

*topics*

*Levels of granularity*

*Mathematical foundation*

important tool in model-based development to reduce system complexity and to make the development process manageable.

The SPES MBSE methodology follows a strict system-centric approach that specifies a system at several levels of granularity. At the highest level of granularity, there are always the models that represent the system under consideration as a whole. At (varying numbers of) further levels of granularity, increasingly fine subsystems are successively considered, and further details are modeled. Although "top-down" is the basic principle, iterative, agile, and evolutionary processes are also supported. The mathematical model FOCUS, on which the SPES framework is based, ensures the consistency of the models of systems and subsystems. Levels of granularity help to (1) control the complexity of the system under consideration, (2) perform checks on the system at different levels of complexity, (3) distribute development tasks—for example, to suppliers—and (4) reuse individual models several times. Since the principle of granularity levels is based only on the interface concept, the mechanism allows the integration of the different engineering disciplines (mechanical engineering, electrical engineering, software engineering). As long as the interface concept is realized, the methods, processes, or tools used to develop the subsystems at the lower levels of granularity are irrelevant.

*Consistency of the models*

*Agile and iterative development*

Besides abstraction and granularity, consistency is an important feature of the models in the SPES framework. We distinguish between horizontal consistency and vertical consistency. Two models are horizontally consistent if they belong to different views of the same system (i.e., are within one level of granularity) and do not represent contradictory properties of the system under consideration. Two models are vertically consistent if they belong to one view at different levels of granularity and do not represent contradictory properties of the system under consideration with regard to the specific view.

The SPES framework does not specify the order in which the different models should be created for the views. Thus, the SPES method can be used to implement top-down as well as bottom-up approaches and iterative or incremental development and even evolution. As mentioned above, the mechanism of granularity levels allows the integration of different approaches and development tools, as typically required for mechatronic systems. Since the formal basis of the SPES methodology also supports under-specification, it is possible to extend and successively refine the models iteratively step by step. This means in particular that the model-based approach does not contradict but rather supplements the basic principles of agile development. Techniques such as "continuous integration" can also be used in a purposeful manner. It should be emphasized that this form of an agile approach is not just code-centric but also modelcentric.

In the CrESt project, the SPES framework was extended to support collaboration and dynamics (formation of system networks at runtime) in systems. The existing viewpoint structure was essentially retained, but the models contained within the structure were extended by additional model types and information.

#### **19.5 Methodological Extensions: From SPES to ASE**

Advanced systems engineering (ASE) is definitely a new paradigm for agile, efficient, evolutionary, and quality-aware development of complex cyber-physical systems using modern digital technologies and tools. As said earlier, ASE is essentially enabled by smart digital modeling tools for specifying, modeling, testing, simulating, and analyzing the system under development embedded in a coherent and consistent methodology.

Model-based systems engineering is thus a core element of ASE and the SPES methodology, as a fully model-based approach, therefore provides an excellent basis for ASE. In particular, the SPES methodology includes:

*Extension towards networks of systems*

*SPES contribution to ASE*

 Extension of the SPES framework towards aspects such as dynamic networking and collaboration of systems at runtime in the CrESt project; for this purpose, a number of additional crosscutting topics were defined, and the models of the existing viewpoints were supplemented accordingly

New methodological and crosscutting issues would be, for example:

The models, methodology, and techniques developed in the SPES, SPES\_XT, and CrESt projects were deliberately written independently of a specific modeling language in order to ensure the greatest possible range of application. In industrial practice, especially in small and medium-sized enterprises, it has been shown that almost all MBSE implementation projects rely on SysML as a modeling language, despite all the open questions and shortcomings associated with it. The reason for this is the spread of SysML in companies as well as the support of SysML in many MBSE tools available in practice. Due to the spread and acceptance of SysML, it must be explicitly supported as a modeling language both syntactically and semantically with the SPES methodology. A research project based on the SPES framework is planned that will break down the current barriers to the industrial introduction of MBSE and thus pave the way for a broad industrial *SysML as a modeling language*

adoption of the SPES methodology based on common language syntax and pragmatic tools.

Parts of future systems will be determined by the use of techniques such as machine learning (ML) or, more generally, artificial intelligence (AI). Integrating AI components into embedded systems leverages the considerable potential of current and future AI technologies in embedded systems. Their use enables future embedded systems to suitably process the constantly growing volume of information resulting from digitalization and to adapt to changing conditions and to the knowledge gained from the data at runtime. In order to be able to develop such systems efficiently, the explicit modeling methods available must be extended by implicitly learned modeling techniques. In principle, the approach presented here is already suitable for systems that have AI components. The universal interface concept of the SPES framework provides a sustainable basis for this. However, it has to be considered that the behavior of such systems is subject to a certain variability during runtime — for example, if the component continues to learn during runtime.

One central challenge for the integration of AI methods into embedded systems is therefore the guarantee (verifiability) of the essential functionality and quality properties of the systems — and this despite the fact that system components cannot be completely specified and are often non-deterministic or even dynamically adapting due to adaptations of the systems at runtime that could not be foreseen at development time.

#### **19.6 Conclusion**

ASE requires a clean scientific foundation and a consistent integration of software development and system development methods when designing software-intensive cyber-physical systems. Central to advanced systems engineering is the use of digital techniques in both the product and the development process and the exploitation of the synergies between them. The preliminary work in the area of modelbased development of software-intensive systems offers an ideal entry point. Nothing less than a paradigm shift from the engineering of mechanical machines to the integrated engineering of networked, information-centric mechanical systems must be mastered.

*Artificial intelligence*

*Quality properties*

#### **19.7 Literature**

**Open Access** This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.

The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

## Appendices

## A – Author Index

#### **A**

**Akili, Samira** Humboldt-Universität zu Berlin Unter den Linden 6 10099 Berlin, Germany

**Albers, Dr. Karsten** INCHRON AG Neumühle 24-26 91056 Erlangen, Germany

#### **Aluko Obe, Patricia**

University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **B**

**Bandyszak, Torsten**

University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **Böhm, Birthe**

Siemens AG Corporate Technology Günther-Scharowsky-Str. 1 91058 Erlangen, Germany

#### **Böhm, Dr. Wolfgang**

Technical University of Munich (TUM) Department of Informatics Boltzmannstr. 3 85748 Garching, Germany

**Bolte, Dr. Benjamin** itemis AG Am Brambusch 15 44536 Lünen, Germany

**Brings, Jennifer** University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **Broy, Prof. Dr. Dr. h.c. Manfred**

Technical University of Munich (TUM) Department of Informatics Boltzmannstr. 3 85748 Garching, Germany

#### **Butting, Arvid**

RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

#### **C**

**Caesar, Birte** Helmut Schmidt University Hamburg Institute of Automation Technology Holstenhofweg 85 22043 Hamburg, Germany

#### **Cârlan, Carmen**

fortiss GmbH Software & Systems Engineering Guerickestr. 25 80805 Munich, Germany

#### **Cioroaica, Emilia**

Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

### **D**

#### **Daun, Dr. Marian**

University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **Dimitrov, Dimitar**

Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

#### **F**

#### **Fay, Prof. Dr.-Ing. Alexander** Helmut Schmidt University Hamburg Institute of Automation Technology Holstenhofweg 85 22043 Hamburg, Germany

#### **Feeken, Linda**

Oldenburg Institute for Information Technology (OFFIS) Escherweg 2 26121 Oldenburg, Germany

### **G**

#### **Gandor, Malin**

Oldenburg Institute for Information Technology (OFFIS) Escherweg 2 26121 Oldenburg, Germany

#### **Gerostathopoulos, Dr. Ilias** Technical University of Munich (TUM)

Boltzmannstr. 3 85748 Garching, Germany

#### **Granrath, Christian**

RWTH Aachen University Junior professorship for mechatronic systems for combustion engines Forckenbeckstr. 4 52074 Aachen, Germany

#### **H**

#### **Hayward, Alexander**

Helmut Schmidt University Hamburg Institute of Automation Technology Holstenhofweg 85 22043 Hamburg, Germany

#### **Hildebrandt, Constantin**

Helmut Schmidt University Hamburg Institute of Automation Technology Holstenhofweg 85 22043 Hamburg, Germany

#### **Hillemacher, Steffen**

RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

### **J**

**Jäckel, Dr. Nicolas** FEV Europe GmbH Ingolstädter Str. 49 80807 Munich, Germany

#### **Jöckel, Lisa** Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

### **K**

**Käser, Lorenz** PikeTec GmbH Waldenserstr. 2-4 10551 Berlin, Germany

#### **Kirchhof, Jörg Christian**

RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

#### **Kläs, Michael**

Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

**Klein, Dr. Cornel** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Klein, Dr. Wolfram** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

#### **Koo, Chee Hung**

Robert Bosch GmbH Corporate Sector Research and Advance Engineering Robert-Bosch-Campus 1 71272 Renningen, Germany

**Krajinski, Lisa**

University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **Kranz, Sieglinde**

Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

#### **Kugler, Christopher**

FEV Europe GmbH Neuenhofstr. 181 52078 Aachen, Germany

**Kuhn, Dr. Thomas** Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

#### **L**

**Laxman, Nishanth** Technical University of Kaiserslautern Department of Computer Science Gottlieb-Daimler-Str. 47 67653 Kaiserslautern, Germany

#### **M**

**Malik, Dr. Vincent** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany **Marmsoler, Dr. Diego** Technical University of Munich (TUM) Department of Informatics Boltzmannstr. 3 85748 Garching, Germany

**Meyer, Max-Arno** RWTH Aachen University Junior professorship for mechatronic systems for combustion engines Forckenbeckstr. 4 52074 Aachen, Germany

**Mirzaei, Elham** InSystems Automation GmbH Wagner-Régeny-Str. 16 12489 Berlin, Germany

**Möhrle, Felix** Technical University of Kaiserslautern Department of Computer Science Gottlieb-Daimler-Str. 47 67663 Kaiserslautern, Germany

#### **N**

**Neumann, Martin** InSystems Automation GmbH Wagner-Régeny-Str. 16 12489 Berlin, Germany

#### **Nieke, Michael**

Technische Universität Braunschweig Institute of Software Engineering and Automotive Informatics Mühlenpfordtstr. 23 38106 Braunschweig, Germany

**Nickles, Jochen** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

#### **O**

**Orth, Dr. Philipp** FEV Europe GmbH Neuenhofstr. 181 52078 Aachen, Germany

#### **P**

**Petrovska, Ana** Technical University Munich (TUM) Department of Informatics Boltzmannstr. 3 85748 Garching, Germany

**Pohl, Prof. Dr. Klaus** University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

**Pudlitz, Florian** Technische Universität Berlin Ernst-Reuter-Platz 7 10587 Berlin, Germany

#### **R**

**Regnat, Nikolaus** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Rösel, Simon** Model Engineering Solutions GmbH Waldenserstr. 2-4 10551 Berlin, Germany

**Rosen, Roland**

Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Rothbauer, Stefan**

Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Rumpe, Prof. Dr. Bernhard**

RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

#### **S**

**Safdari, Samira** Expleo Germany GmbH Wilhelm-Wagenfeld-Str. 1-3 80807 Munich, Germany

**Sauer, Dr. Markus** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Schaefer, Prof. Dr. Ina** Technische Universität Braunschweig Institute of Software Engineering and Automotive Informatics

Mühlenpfordtstr. 23 38106 Braunschweig, Germany

#### **Schlie, Alexander**

Technische Universität Braunschweig Institute of Software Engineering and Automotive Informatics Mühlenpfordtstr. 23 38106 Braunschweig, Germany

**Schlingloff, Prof. Dr. Holger** Fraunhofer Institute for Open Communication Systems FOKUS Kaiserin-Augusta-Allee 31 10589 Berlin, Germany

**Schmalzing, David** RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

**Schneider, Dr.-Ing. Daniel** Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

**Schröck, Dr.-Ing. Sebastian** Robert Bosch GmbH Corporate Sector Research and Advance Engineering Robert-Bosch-Campus 1 71272 Renningen, Germany

**Schulze, Dr. Michael** pure-systems GmbH Otto-von-Guericke-Str. 28 39104 Magdeburg, Germany

**Sohr, Dr. Annelie** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Stierand, Dr. Ingo** Oldenburg Institute for Information Technology (OFFIS) Escherweg 2 26121 Oldenburg, Germany

**Straße, Dr. Alexander auf der** University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

#### **T**

**Terfloth, Axel** itemis AG Am Brambusch 15 44536 Lünen, Germany

**Toborg, Steffen** PikeTec GmbH Waldenserstr. 2-4 10551 Berlin, Germany

**Törsleff, Sebastian** Helmut Schmidt University Hamburg Institute of Automation Technology Holstenhofweg 85 22043 Hamburg, Germany

#### **U**

**Unverdorben, Stephan** Siemens AG Corporate Technology Günther-Scharowsky-Str. 1 91058 Erlangen, Germany

#### **V**

**Velasco Moncada, David Santiago**

Fraunhofer Institute for Experimental Software Engineering (IESE) Fraunhofer-Platz 1 67663 Kaiserslautern, Germany

**Vogelsang, Prof. Dr. Andreas** Technische Universität Berlin Ernst-Reuter-Platz 7 10587 Berlin, Germany

**Vollmar, Jan** Siemens AG Corporate Technology Günther-Scharowsky-Str. 1 91058 Erlangen, Germany

**Voss, Dr. Sebastian** fortiss GmbH Software & Systems Engineering Guerickestr. 25 80805 Munich, Germany

#### **W**

**Wachtmeister, Louis** RWTH Aachen University Software Engineering Ahornstr. 55 52074 Aachen, Germany

**Wehrstedt, Dr. Jan Christoph** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Weyer, Dr. Thorsten** University of Duisburg-Essen paluno – The Ruhr Institute for Software Technology Gerlingstr. 16 45127 Essen, Germany

**Wirtz, Boris** Oldenburg Institute for Information Technology (OFFIS) Escherweg 2 26121 Oldenburg, Germany

#### **Wißdorf, Anna**

PikeTec GmbH Waldenserstr. 2-4 10551 Berlin, Germany

#### **Wolf, Stefanie**

Siemens AG Corporate Technology Günther-Scharowsky-Str. 1 91058 Erlangen, Germany

#### **Wortmann, Dr. Andreas** RWTH Aachen University

Software Engineering Ahornstr. 55 52074 Aachen, Germany

#### **Z**

**Zeller, Dr. Marc** Siemens AG Corporate Technology Otto-Hahn-Ring 6 81739 Munich, Germany

**Zernickel, Jan-Stefan** InSystems Automation GmbH Wagner-Régeny-Str. 16 12489 Berlin, Germany

## B – Partner

#### **Bertrandt GmbH**

The Bertrandt Group has been providing development solutions for the international automotive and aviation industry for over 35 years. A total of around 11,000 employees at 44 locations stand for in-depth know-how, future-oriented project solutions and a high degree of customer orientation.

In the dynamic environment of the automotive and aviation industry, the complexity of individual mobility solutions is constantly increasing. The trends towards environmentally friendly mobility, networking, safety and comfort today require comprehensive technical know-how in product development. As a co-designer of sustainable mobility, Bertrandt is constantly adapting its range of services to the needs of its customers and to changing market conditions. For the international automotive industry, the range of services covers the entire value-added chain of product creation: from the initial idea, through the development and validation of components, modules and systems, to complete vehicles with related services such as quality, supplier and project management or training.

In the field of electronics development, Bertrandt's activities range from the classic areas (infotainment, comfort, chassis, on-board networks, etc.) to the current and new challenges surrounding electrified driving and vehicle networking (Car2X) in the areas of driver assistance systems, automated driving, online services/apps, infrastructure/IT. At the Ingolstadt site, among others, holistic solutions for the automotive industry are developed with a focus on bodywork, interior, electrics/electronics with its own electronics center, powertrain, FE simulation/calculation and testing/trial. In the field of driver assistance systems, the entire development process is covered here, from requirements analysis to software development and overall system testing in various projects.

www.bertrandt.com

#### **Expleo Germany GmbH**

The Expleo Group is a leading international engineering partner with over 12,500 employees in 20 countries worldwide. In Germany, Expleo Germany GmbH with around 1,100 employees offers engineering and product solutions for the automotive, aerospace, industry and transportation sectors - together with its subsidiaries SILVER ATENA and Automotive Solutions Germany (ASG). At 15 locations Expleo develops, tests and supplies software, electronics, special mechanical solutions and customerspecific lighting systems - from the technological idea to series production. In the automotive sector Expleo designs highly automated, networked and electrified mobility and offers demand-based products, components and tools. Expleo bundles expertise and their own IP in specialized Competence Centers.

www.expleo-germany.com

#### **FEV Europe GmbH**

FEV is a leading independent international service provider of vehicle and powertrain development for hardware and software. The range of competencies includes the development and testing of innovative solutions up to series production and all related consulting services. The range of services for vehicle development includes the design of body and chassis, including the fine tuning of overall vehicle attributes such as driving behavior and NVH. FEV also develops innovative lighting systems and solutions for autonomous driving and connectivity. The electrification activities of powertrains cover powerful battery systems, e-machines and inverters. Additionally, FEV develops highly efficient gasoline and diesel engines, transmissions, EDUs as well as fuel cell systems and facilitates their integration into vehicles suitable for homologation. Alternative fuels are a further area of development.

The service portfolio is completed by tailor-made test benches and measurement technology, as well as software solutions that allow efficient transfer of the essential development steps of the above-mentioned developments, from the road to the test bench or simulation.

The FEV Group is growing continuously and currently employs 6700 highly qualified specialists in customer-oriented development centers at more than 40 locations on five continents.

www.fev.com

#### **fortiss GmbH**

The Munich research and transfer institute for software-intensive systems, fortiss GmbH, was founded in 2009 as an affiliated institute of the TU Munich together with the Fraunhofer Gesellschaft and the LfA Förderbank Bayern. The Department of Software and Systems Engineering (Head of Department PD Dr. Schätz) is involved in the project. The department develops cross-domain integrated software and system architectures and related development methods and tools. The department offers comprehensive competence in modern methods and tools for the professional development of software-intensive systems, starting with the elicitation of requirements up to verification and integration. In particular, the goal is to prepare and apply basic methods - such as formal model checking or automatic design space exploration - for engineering applications on an industrial scale. The main focus is on automotive, avionics, rail and energy systems, among others.

www.fortiss.org

#### **Fraunhofer Institute for Open Communication Systems FOKUS**

The Fraunhofer Society for the Advancement of Applied Research is the biggest organization for applied research and development services in Europe, and FOKUS is the largest Fraunhofer institute in the field of Information and Communications Technology. Its main topic is digital networking and its effects on society, economy and technology. Since 1988 it has been supporting commercial enterprises and public administration in the design and implementation of digital change. To this end, Fraunhofer FOKUS offers research services ranging from requirements analysis, consulting, feasibility studies, technology development to prototypes and pilots in its business units. The system quality center of FOKUS is specialized in quality engineering for the internet of things. Via its chief scientist, Prof. Schlingloff, it has strong academic foundations and close connections to Humboldt Universität. It offers services in modelbased development and testing of software-based systems, tool development and tool integration, test design and automation, and support of product qualification and certification. The group provides methods, processes and tools for the development and quality assurance of software-intense systems and services.

www.fokus.fraunhofer.de

#### **Fraunhofer Institute for Experimental Software Engineering (IESE)**

The Fraunhofer Institute for Experimental Software Engineering (IESE) was founded in 1996 and is one of 60 institutes of the internationally operating Fraunhofer-Gesellschaft. IESE currently employs more than 200 people, whose goal is to sustainably transfer scientific results into industrial applications through applied research. One focus of Fraunhofer IESE's work is on methods for developing highly reliable and safety-critical software-intensive embedded systems. IESE's budget volume is well over 12 million euros, and is largely derived from industrial contract research and collaborative and research projects involving industry. Over the past years, Fraunhofer IESE has been involved in a large number of research projects in various fields, such as functional safety, Big Data, or processes, and in many cases has taken leading roles in the project.  IESE has already been significantly involved in the research projects SPES 2020 and SPES\_XT, in particular with contributions to modular model-based safety cases as well as the combination of heterogeneous safety analyses.

www.iese.fraunhofer.de

#### **Helmut Schmidt University Hamburg**

Under the guidance of Prof. Dr.-Ing. Alexander Fay, research at the Institute of Automation Technology at Helmut Schmidt University Hamburg has been focused on modelling languages, methods, and tools for the efficient engineering of complex automation systems, e.g. in manufacturing, process industry, transportation, buildings, and energy distribution. A key element of our research is the creation and use of information models throughout the lifecycle of these systems. These information models are developed and applied for the design, implementation, testing, operation, and modernization of existing systems. A hot topic is how to increase flexibility in such complex systems with the help of modularity and system collaboration, which entails the need to deal with incomplete and inconsistent information models. The institute collaborates with major automation suppliers as well as operators of automated facilities to implement research results and to tackle new research problems of practical importance.

www.hsu-hh.de

#### **Humboldt-Universität zu Berlin**

Humboldt-Universität zu Berlin was the first German university to introduce the unity of research and teaching, to uphold the ideal of research without restrictions and to provide a comprehensive education for its students. Today, Humboldt-Universität is in all rankings among the top German universities. It was chosen "University of Excellence" in June 2012, with a renewed labelling within the Berlin University Alliance in 2019. The computer science department of Humboldt-Universität was founded in 1989. It encompasses 21 research groups, structured into the three clusters "Data and Knowledge Engineering", "Algorithms and Structures", and "Model-driven systems engineering". The research group "Specification, Verification and Test Theory" is headed by Prof. Schlingloff. The group has been working for 15 years on formal methods of software development, mainly in the field of safety-critical embedded systems. It has close connections to Fraunhofer FOKUS, where Prof. Schlingloff is chief scientist. Current research topics include quality assurance of embedded control software, model-based development and model checking, logical specification and verification of requirements, automated software testing, and online monitoring of safety-critical systems with formal methods.

www.hu-berlin.de

#### **INCHRON AG**

INCHRON AG is a specialist in the development methodology of embedded systems with hard real-time requirements. Our mission is to support our customers with our knowledge, experience, advanced tools, and broad industry expertise in the development of embedded systems of any kind and complexity.

With our sophisticated methodology, which undergoes continuous refinement, we shape the future of embedded systems development. The INCHRON Tool-Suite is an essential part of our methodology and provides state-of-the-art tools for analysis, simulation, optimization, and detailed prediction of the dynamic behavior of embedded software. Its successful practical use and integration into development processes of varying operational domains serve to prove the outstanding capabilities of this unique tool. Areas of expertise include:

Autonomous driving is a key focus application for INCHRON. Our customers are already using our approach and tools with great success in the design, optimization, and testing of modern driver assistance systems (ADAS), the preliminary stage to autonomous driving. The use of the solutions INCHRON provides will prove indispensable in the future in coping with the exceptional complexity of such advanced automotive platforms.

www.inchron.com

#### **InSystems Automation GmbH**

InSystems Automation develops innovative automation technology and special machines for production, material flow and quality control. The range of services covers all tasks from the creation of specifications, electrical project planning, installation and programming to commissioning, maintenance and service.

Customers include large and medium-sized manufacturing companies from the cosmetics, pharmaceutical, printing and automotive industries. Compared to competitors, InSystems distinguishes itself primarily by the holistic approach: Construction, mechanical engineering, conveyor technology and software are completely created in-house at InSystems. The company was founded in 1999 by the two managing directors Henry Stubert and Torsten Gast and has grown steadily since then. In the meantime, the company has more than 50 employees and is located in the scientific location Berlin-Adlershof. Further subsidiaries are the independent InSystems Vertriebsgesellschaft mbH in Fürth and InSystems Automation, Inc. in Washington, North Carolina USA. Since 2012, InSystems has specialized in the production of autonomously navigating transport robots developed under the brand name proANT. These robots are manufactured for loads from 30 to 1,000 kg depending on the customer's requirements and are implemented as a fleet into an existing production control system. The vehicles navigate automatically using laser scanners and react independently to changes in their working environment. The vehicles are designed for personal safety and can work with workers without the need for additional safety precautions such as safety fences or separation of traffic routes. If an obstacle appears in the safety field, the vehicle reduces its speed, navigates around the obstacle or stops.

Using a stored environment map, each vehicle independently calculates the optimum route to the destination. The vehicles can be integrated into the production process individually or as a fleet. The vehicles communicate with each other via an encrypted WLAN and avoid each other at an early stage. This prevents traffic jams or mutual obstruction. In addition, the battery condition of the vehicles is regularly checked by a fleet manager, who sends them to the charging station when the charge level is low. In the Showroom Industrie 4.0 (Wagner-Régeny-Str. 16, 12489 Berlin) visitors can get a live impression of the driving behaviour of the transport robots, how they cleverly avoid people and obstacles, automatic load transfers and the supply of a manual workstation.

#### www.asti-insystems.de

#### **itemis AG**

itemis AG is a specialist for model-based software and systems engineering and integrated, modular tool chains. Itemis AG is a leader in developing domain-specific modelling environments on the open source platform Eclipse. With 200 employees, itemis works in Germany and with branches in France, Switzerland and Tunesia for well-known customers and accompanies them with regard to the methodical and tooltechnical implementation of model-based development processes. One focus is the application of model-based development processes in the area of embedded systems.

The main areas of knowledge are domain-specific modelling methods, behavioural modelling & simulation based on different concepts like state machines, componentbased modelling and interface definition languages, code generation, model analysis, artefact traceability for tracking requirements, requirements management, support for industry-specific standards such as AUTOSAR, ReqIF, ISO26262

itemis develops the technical infrastructure for building modelling tools based on various technologies like Eclipse EMF, Xtext, GEF and Xtend, or Jetbrains MPS with extensions like mbeddr. In this role itemis AG provides basic technologies for the implementation of textual and graphical modelling languages. In CrESt, itemis AG focussed on the tool-technical aspects of the research project. In EC1 and EC2, the focus is on the modelling of system architectures. In the MQ3, various cross-cutting aspects of the required tool platform like artefact management and co-simulation were considered.

www.itemis.com

#### **Model Engineering Solutions GmbH**

Model Engineering Solutions GmbH (MES) is the competence center for model-based software. Divided into the three areas (1) MES Quality Tools, (2) MES Test Center and (3) MES Academy, MES offers its customers optimal support for integrated quality assurance. The MES Quality Tools are the software tools for this. The MES Model Examiner® (MXAM) is the first choice for testing modeling guidelines. The MES Test Manager® efficiently implements requirements-based testing in model-based development. The MES Quality Commander® (MQC) is the quality monitoring tool for evaluating the quality and product capability of software and provides decisionrelevant key figures during the development of a product. The MES Test Center includes test services from requirements management to the derivation of test specifications, automated test evaluation and quality monitoring. The MES Academy offers training courses and seminars and supports customers with company-specific consulting and service projects in the introduction and improvement of model-based development processes, such as the fulfillment of standards like ISO 26262. MES customers include well-known OEMs and suppliers to the automotive industry and customers from the automation technology sector worldwide. MES is a TargetLink® Strategic Partner of dSPACE GmbH and a product partner of MathWorks and ETAS.

www.model-engineers.com

#### **OFFIS e.V.**

The OFFIS - Institute for Information Technology was founded in 1991 and is an An-Institute of the University of Oldenburg through a cooperation agreement. Its members are the state of Lower Saxony, the University of Oldenburg as well as professors of the Department of Computer Science and computer science related fields. OFFIS is an application-oriented research and development institute, as a "Center of Excellence" for selected topics in computer science and its application areas. OFFIS focuses its research and development activities on IT systems in the application areas of transportation, health, energy and production. The turnover amounts to over 12 million Euro.

The CrESt project involves the R&D area of transportation, which currently comprises about 60 scientific employees. OFFIS has a total of about 260 employees. The Transportation division focuses its research on methods, tools and technologies in the application field of transportation systems for the development of IT-based reliable, cooperative and supporting systems and their ability to interact and collaborate with people intuitively and efficiently. The Transport R&D area comprises several research groups and combines a broad spectrum of competencies in the fields of cognitive psychology, systems and software engineering, electrical engineering and planning theory. Research focuses on methods, processes and tools for establishing the safety of traffic systems as well as methods for the design and analysis of E/E architectures.

OFFIS is or was involved in relevant BMBF projects and European projects within the framework of H2020, Ecsel and ITEA, among others SPES 2020, SPES\_XT, ARAMIS I+II, CRYSTAL, DANSE, MBAT, COMBEST, ArtistDesign, AMALTHEA4public, ASSUME, SAFE, PANORAMA, CyberFactory#1, VVMethoden, Set Level 4to5, KI-Delta Learning, and KI-Wissen. OFFIS is a member of ASAM and contributes concepts of Traffic Sequence Charts (TSC) to the standardization of OpenScenario and OpenDrive. Through SafeTRANS OFFIS is also a member of EICOSE, the ARTEMIS Innovation Cluster on Transportation. OFFIS is member (Chamber B) of ARTEMISIA.

Within CrESt, OFFIS participates in the topics "Architectures for Adaptive Systems" and "Open Context". One focus is the deepening of understanding open and dynamic context, and architecture design for adaptive systems. OFFIS contributes to the project with the following competences: (1) model-based design methods for safety-critical embedded systems with supporting analysis techniques especially for the aspects realtime and safety (safety analyses), (2) modelling and analysis of adaptive systems and SoS, (3) validation of human-machine cooperation, and (4) risk analyses as well as architectural principles and safety architectures under consideration of the aspect safety. OFFIS also participates in the modelling and simulation of human-machine interaction in context-sensitive system networks.

www.offis.de

#### **PikeTec GmbH**

PikeTec GmbH specializes in the testing and verification of embedded software. With its methods and tools, it significantly simplifies the creation of test cases for embedded systems. Since 2007, PikeTec has therefore been developing and marketing the TPT (Time Partition Testing) test tool. With TPT, tests can be modeled and automatically generated intuitively and flexibly, from simple module tests in MATLAB and Simulink or TargetLink to complex system tests for the vehicle. Tests created with TPT can be reused throughout the development process. TPT is applicable and qualified in the context of the functional safety standards ISO 26262, IEC 61508, EN50128 and DO-178C. The company also accompanies future-oriented software development projects for technical control systems in the form of consulting and engineering services. PikeTec's customers include renowned manufacturers such as VW, Daimler, Bosch and Renault.

www.piketec.com

#### **pure-systems GmbH**

pure-systems is the leading provider of highly innovative software technologies and solutions for Variant Management and Product Line Engineering (PLE). The company helps their customers increase engineering efficiency through systematic reuse of software engineering assets and reduce product time to market by managing complexity of features & dependencies across systems and variants.

pure::variants, as a Standard Enterprise Solution for PLE, provides deep analytic insights into variants, and can deal with both structural and parametric variability, integrating and supporting diverse authoring tools and engineering assets, like requirements, test cases, architecture & model-based development, source code, documentation, Excel feature lists, among others. As a platform solution, pure::variants provides enterprise scalability and public open APIs, while supporting standards like OSLC, VEL (Variability Exchange Language), Eclipse, EMF, AUTOSAR, and etc.

Today, the variant management solutions from pure-systems are deployed and used successfully with Enterprise Customers in the segments of Automotive, Avionics & Aerospace, Defense & Security, Industry Automation & Production, Rail & Transportation and Semiconductor. The training and consulting services by puresystems are offered world-wide with the objective of lasting improvement to system development processes. Typical projects cover issues of requirements, configuration and variant management as well as software architecture and software design.

As product lines and variant management is a relatively new field, continuous research and development is an important part of pure-systems' strategy. Hence, since 2006 pure-systems has also been actively involved in national and European research funding projects (SAFE, ESPA, feasiPLE, DIVa, VARIES, SPES XT, ReVAMP², INLIVE, CrESt) and has supported a number of research projects by providing resources (CESAR, AMPLE, ATESST2, MOBILSOFT, VIVASYS, CRYSTAL).

www.pure-systems.com

#### **Robert Bosch GmbH**

The Bosch Group is a leading global supplier of technology and services. It employs roughly 400,000 associates worldwide (as of December 31, 2019). The company generated sales of 77.7 billion euros in 2019. Its operations are divided into four business sectors: Mobility Solutions, Industrial Technology, Consumer Goods, and Energy and Building Technology. As a leading IoT provider, Bosch offers innovative solutions for smart homes, Industry 4.0, and connected mobility. Bosch is pursuing a vision of mobility that is sustainable, safe, and exciting. It uses its expertise in sensor technology, software, and services, as well as its own IoT cloud, to offer its customers connected, cross domain solutions from a single source. The Bosch Group's strategic objective is to facilitate connected living with products and solutions that either contain artificial intelligence (AI) or have been developed or manufactured with its help. Bosch improves quality of life worldwide with products and services that are innovative and spark enthusiasm. In short, Bosch creates technology that is "Invented for life." The Bosch Group comprises Robert Bosch GmbH and its roughly 440 subsidiary and regional companies in 60 countries. Including sales and service partners, Bosch's global manufacturing, engineering, and sales network covers nearly every country in the world. The basis for the company's future growth is its innovative strength. Bosch employs some 72,600 associates in research and development at 126 locations across the globe, as well as roughly 30,000 software engineers.

www.bosch.com

#### **RWTH Aachen University**

The RWTH Aachen University (RWTH), established in 1870, is divided into nine faculties. Currently around 45,000 students are enrolled in over 150 academic programs. The number of foreign students (8556) substantiates the university´s international orientation. Every year, more than 6,000 graduates and 800 doctoral graduates leave the university. 539 professors as well as 5,894 academic and 2,750 non-academic colleagues work at RWTH University.

The research focus of the Chair of Software Engineering at RWTH Aachen University is the definition and improvement of methods for efficient software development. Current fields of research include model-based or generative software development and cyberphysical systems (CPS). The MontiCore language framework developed at the chair allows the agile and compositional development of modeling languages, as well as their use for analysis, synthesis, and generative software development. Based on MontiCore, further languages and tools for the model-driven development of software from the different domains were developed. MontiArc, a modeling language for hierarchical architectures such as CPS, is particularly noteworthy in this context. It also allows the behavior of individual components to be specified via embedded languages (e.g. statecharts). In the field of automotive software engineering, the chair has a long history of research projects and industrial cooperations with large OEMs. The content of these projects covers the whole range of topics from requirements elicitation as well as function, version and variant modeling to software and hardware architecture as well as its use to support analysis and synthesis activities. A prominent use case is the autonomously driving vehicle Caroline, with which Prof. Rumpe successfully participated in the DARPA Urban Challenge.

The Junior Professorship for Mechatronic Systems for Combustion Engines focusses on the interaction of electronical and mechanical powertrain components with innovative control algorithms. Prof. Dr.-Ing. Jakob Andert heads this interdisciplinary and dynamic field of research, which puts a strong emphasis on software-intensive embedded systems that enable cleaner and more efficient vehicle drive systems. Access to the infrastructure of the Center for Mobile Drives enables the efficient use of synergies and direct interaction with researchers working on various topics related to mobile powertrain technology. Research focuses on electrification and hybridization, electric motors and converters for traction drives, in-cycle combustion control and possibilities of connected and autonomous mobility for the powertrain. Hardware-in-the-loop and real-time co-simulations play a key role in the development of testing and validation methods for the future vehicles, including powertrains as well as ADAS/AD systems of interacting and cooperating vehicles.

www.rwth-aachen.de

#### **Siemens AG**

Siemens AG is a global powerhouse focusing on the areas of electrification, automation and digitalization. One of the world's largest producers of energy-efficient, resourcesaving technologies, Siemens is a leading supplier of systems for power generation and transmission as well as medical diagnosis. In infrastructure and industry solutions the company plays a pioneering role. In more than 200 countries/regions the company has roughly (fiscal year 2019) 385,000 employees of which 39,600 are in digital jobs. For more than 170 years, Siemens stands for technological excellence, innovation, quality, reliability and internationality.

With 2,550 employees worldwide – of which 1,700 are doing research and 300 being engaged in Cybersecurity alone – Corporate Technology (CT) meanwhile since 1905 plays a key role in R&D at Siemens. In research centers located in many different countries, CT works closely with the R&D teams in the Siemens´ Divisions. The CT organization provides expertise regarding strategically important areas to ensure the company's technological future, and to acquire patent rights that safeguard the company's business operations. Against the background of megatrends such as climate change, urbanization, globalization, digitalization and demographic change, CT focuses on innovations that have the potential to change the rules of the game over the long term in business areas that are of interest to Siemens.

CT covers a wide range of technology fields including software and systems innovation, simulation and digital twin, and internet of things, which actively contributed to CrESt.

www.siemens.com

#### **Technical University of Kaiserslautern**

The work carried out at the chair Software Engineering: Dependability (SEDA) of the Technical University of Kaiserslautern (TUK) is focused mainly on techniques for the development and safety assurance of dependable embedded systems. Current research projects address the improvement and automation of model-based techniques in this field as well as dynamic risk assessment and safety assurance under uncertainty.

The chair was involved in the BMBF-funded projects ARAMiS and ARAMiS II as well as the EU-funded EMC² project of the ARTEMIS network. The work is carried out to a large extent in cooperation with partners from the industry. The solutions and tools developed are successfully applied in various domains (e.g. avionics, automotive, commercial vehicles, rail transport). The transfer of the knowledge gained into specialized lectures and theses results in a sustainable strengthening of education.

The SEDA chair was previously involved in the research projects SPES 2020 and SPES\_XT. The work performed and results obtained in these projects provided an excellent basis for the work within CrESt. The main contribution is a new concept for the development of dependable collaborative embedded systems that addresses the challenges arising from a highly dynamic and uncertain environment and open context.

#### www.uni-kl.de

#### **Technical University of Munich**

The Technical University of Munich (TUM) is one of Europe's top universities. It is committed to excellence in research and teaching, interdisciplinary education and the active promotion of promising young scientists. The university also forges strong links with companies and scientific institutions across the world. TUM was one of the first universities in Germany to be named a University of Excellence. Moreover, TUM regularly ranks among the best European universities in international rankings. In CrESt the chair Software & Systems Engineering (Prof. Broy / Prof. Pretschner) was engaged.

Research and teaching of the Software & Systems Engineering Research Group address central topics of software and systems development. These include basics, methods, processes, models, description techniques and tools. Research focuses on the development of safety-critical embedded systems, mobile and context-adaptive software systems, and development methods for powerful industrially applicable software systems. This is supported by numerous research relevant tools. Research in the field of theorem provers aims at the fundamentals of software engineering. The results and work of our chair have been proven in numerous industrial cooperations. They are successfully applied in telecommunications, avionics, automotive engineering, banking and business information systems. The research group is involved in a wide range of fundamental and application-oriented research projects. In addition, we also provide targeted consulting services to companies, develop prototypes and demonstrators.

www.tum.de

#### **Technische Universität Berlin – Daimler Center for Automotive Information Technology Innovations (DCAITI)**

The Daimler Center for Automotive Information Technology Innovations (DCAITI) at the Technische Universität Berlin specializes in future scenarios for automotive electronics. The institute was founded in 2006 as a joint initiative of Daimler AG and the Technische Universität Berlin. On the university campus in the historic Telefunken high-rise building on Ernst-Reuter-Platz, various groups of computer specialists and electrical engineers work together in pre-competitive research projects to develop new hardware and software systems for the vehicles of tomorrow. By collaborating with engineering groups from Daimler AG and faculty teams from the Technical University of Berlin as well as selected Fraunhofer Institutes, DCAITI aims to investigate IT-driven product and process innovations for the automotive sector. While some projects design new driver assistance and warning systems, others are concerned with improving the software development process for in-vehicle systems. Several of these projects are part of larger national and pan-European research initiatives. The DCAITI staff participates in the academic life at the Technische Universität Berlin through teaching assignments and student support. The center encourages students to participate in its projects and gain first-hand experience in automotive electronics in the center's own garage.

www.tu-berlin.de

#### **Technische Universität Braunschweig**

The TU Braunschweig is one of the TU9 universities and is located with many other research institutes in Europe's strongest research region. In total, the TU Braunschweig has about 18,000 students and about 3500 employees. The Institute for Software Engineering and Automotive Information Technology (ISF) at TU Braunschweig has been headed by Prof. Dr.-Ing. Ina Schaefer since its foundation in July 2012. The goal of the research work at ISF is the development of methods and techniques to increase software quality and to improve efficiency in software development. Application areas for the research results are information systems and embedded systems, especially in the automotive sector. In particular, new concepts and methods are developed in order to design software systems in a way that they can be maintained efficiently and easily extended with new functionalities despite their high complexity. A special research focus is the modeling, implementation and analysis of variant-rich and long-lived software systems. Within the framework of the DFG priority program "Design for Future", ISF is engaged in the development of scalable modeling and analysis concepts for durable, variant-rich automation systems. Within the DFG research group "Controlling Concurrent Change" at the TU Braunschweig, the ISF researches validation methods for evolving embedded systems. In the Electromobility Showcase funded by the BMBS, the ISF is involved in the development of a configurable learning platform for electromobility. Since February 2015, the ISF has contributed to the development of implementation and analysis concepts for evolving variant and context-sensitive embedded systems in the automotive sector within the H2020-ICT project "HyVar". In the CrESt project, the TU Braunschweig will mainly contribute to the topic of modeling and analysis of variability. In addition, TU Braunschweig will apply these concepts to the extraction of flexible system architectures and to the modeling of variability of collaborative systems in a dynamic context.

www.tu-braunschweig.de

#### **University of Duisburg-Essen, paluno – The Ruhr Institute for Software Technology**

The University of Duisburg-Essen (UDE) is one of the youngest and largest universities in Germany. Since its foundation in 2003, the UDE has developed into a globally recognized research university with a broad spectrum of subjects ranging from humanities, social sciences and education to economics, engineering, natural sciences and medicine. In the latest Times Higher Education Ranking, the UDE holds down 16th place among the 200 best universities worldwide younger than 50 years old. The UDE research institute paluno (The Ruhr Institute for Software Technology) is an association of ten chairs with a total of more than 100 employees. paluno focuses on application-oriented research on software development methods and software technologies for mobile systems, cloud services, big data applications, cyber-physical systems, and self-adaptive systems. The research activities are conducted in close cooperation with partners from industry and research. Key application areas are logistics, mobility, automotive, energy, and production. The researchers of paluno's Software Systems Engineering group (Prof. Pohl) have been and still are significantly involved in numerous research projects. These include, for example, the Big Data Value eCosystem (BDVe), DataPorts (A Data Platform for the Connection of Cognitive Ports), ENACT (Development, Operation, and Quality Assurance of Trustworthy Smart IoT Systems), FogProtect (Protecting Sensitive Data in the Computing Continuum), RestAssured (Secure Data Processing in the Cloud), and TransformingTransport (Big Data Value in Mobility and Logistics) in the Horizon 2020 Programme of the European Union as well as the joint projects SPES\_XT, SPES 2020 (Software Platform Embedded Systems 2020), and SPEDIT (Software Platform Embedded Systems Dissemination and Transfer) of the Federal Ministry of Education and Research (BMBF).

#### www.uni-due.de

## C – List of Publications

#### **A**

#### **B**

#### **C**

#### **D**

#### **G**

[Greifenberg 2019] T. Greifenberg: Artefaktbasierte Analyse modellgetriebener Softwareentwicklungsprojekte. In: Aachener Informatik-Berichte, Software Engineering, Band 42, Shaker Verlag, 2019.

#### **H**

### **J**

[Jöckel and Kläs 2019] L. Jöckel, M. Kläs: Increasing Trust in Data-Driven Model Validation – A Framework for Probabilistic Augmentation of Images and Meta-Data Generation using Application Scope Characteristics. In: 38th International Conference on Computer Safety, Reliability and Security, SafeComp 2019, Turku, Finland, 2019, pp. 155-164.

[Jöckel et al. 2019] L. Jöckel, M. Kläs, S. Martínez-Fernández: Safe Traffic Sign Recognition through Data Augmentation for Autonomous Vehicles Software. In: 19th IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C), Sofia, Bulgaria, 2019, pp. 540-541.

#### **K**

[Kurpiewski and Marmsoler 2019] D. Kurpiewski, D. Marmsoler: Strategic Logics for Collaborative Embedded Systems: Specification and Verification of Collaborative Embedded Systems using Strategic Logics. In: SICS Software-Intensive Cyber-Physical Systems, Vol. 34, Springer, 2019, pp. 201-212.

#### **L**

#### **M**

[Marmsoler 2017] D. Marmsoler: Dynamic Architectures. Archive of Formal Proofs, 2017.

#### **N**

[Nieke et al. 2018] M. Nieke, C. Seidl, T. Thüm: Back to the Future: Avoiding Paradoxes in Feature-Model Evolution. In: Proceedings of the 22nd International Systems and Software Product Line Conference - Volume B (SPLC), ACM, New York, NY, USA, 2018, pp. 48-51.

#### **P**

#### **R**

#### **S**

#### **T**

#### **U**

#### **V**

#### [Wager and Prehofer 2018] A. Wager, C. Prehofer: Translating Multi-Device Task Models to State Machines. In: 6th International Conference on Model-Driven Engineering and Software Development, SciTePress 2018, pp. 201-208.

#### **Z**

#### **W**