Welcome to embedded world Newsroom!
Every modern electronic device incorporates software. At embedded world 2020, suppliers will present development software to bring the processors of intelligent devices to life. At the embedded world Conference visitors can inform themselves about the challenges and progress of software development.
In the course of the constantly increasing use of embedded systems, for example in medical technology, in automation and in the automotive sector, the demands on the systematic, quality-assured development of systems are growing significantly. More and more system functions are implemented by software, which does not only drastically increase the size, but also the complexity of the systems. Furthermore, many system functions are no longer realized by individual components alone, but by the interaction of several subsystems. For example, some driver assistance systems in a vehicle require information not only from the radar and camera systems, but also from other sensors in the vehicle itself, in order to initiate appropriate interventions in the electronic brake and engine control systems. The view of the entire system is indispensable, which focuses on the interaction of the various control units involved.
In order to meet both the high quality and safety requirements and the increasing complexity of the systems, the discipline of systems engineering was developed. A fundamental factor is the holistic consideration of the three classical development disciplines mechanics, electronics and software.
Systematic approach: the development process
An indispensable precondition in systems engineering is a well-defined structure of the development process. In the field of software development, various process models were defined, which have been consistently extended to include the system view. One of the best-known models is the V-model, which was developed in Germany in the mid-1980s, while the Capability Maturity Model CMMI was established in the USA. Both approaches describe the different development steps from capturing, recording, and documentation of requirements, through system design and implementation, to verification and validation, including analysis, testing and maintenance. Over the course of time, an iterative, incremental approach has established itself as an alternative to these sequential procedures. Agile methods are the most frequently used example. They were originally developed and are now widely used in the IT sector and have found their way into the development of embedded systems in recent years. The goal of this approach is to focus more on the actual product and less on process artefacts.
In order to achieve the required complete system view during the development of embedded systems at the modeling level as well, the software-related Unified Modelling Language UML was extended in the direction of SysML, which focuses on the overall system.
For verification and validation of embedded systems, two fundamentally different approaches have to be distinguished. In static analysis, the program code is first examined without execution of the software and without considering any hardware. Here, numerous formal errors in the code can be detected at an early stage of development. The interaction of software and hardware is then tested during dynamic tests. In the case frequently encountered in practice that not all hardware components are available at the start of the test, an incremental procedure has proven to be successful, in which the hardware is integrated step by step in so-called hardware-in-the-loop tests until the level of the overall system is reached.
Urgently required: Safety and Security
In embedded systems, the software cannot and must not be dealt with without taking hardware and system aspects into account. Particularly, when it comes to the development of software for high-reliability and safety-relevant systems, the earliest possible consideration of the overall system is decisively important. An essential challenge here is the traceability of requirements and design decisions from the system to the software level and vice versa, as already required in various standards. This traceability makes it possible to check whether all requirements have been taken into account in the design and in the realization and validation of the system. At the same time, it facilitates the recognition of the effects of subsequent changes in the specification, design and software and taking them into account accordingly.
Embedded systems are increasingly being used in areas and applications, where the task of a system function is to protect the life and limb of individuals or where system malfunction, for example in assistance systems, can cause corresponding hazards. Therefore, the functional safety of the system plays a decisive role in systems engineering. The system must be developed and rigorously tested according to the most powerful methods and standards available today. Existing standards such as ISO 26262 define clear guidelines for the development and operation of the system. In addition, there are software-specific standards, which aim to guarantee the quality of the software. An important example is the MISRA standard developed by the English Motor Industry Software Reliability Association. An essential question remains whether and how agile methods can be an effective and efficient alternative in the application field of embedded systems. The toughest challenge in this context is to meet the requirements for the development of safety-critical systems, since the verifiability of their functionality as well as the traceability of the development process are of decisive importance for the approval of such systems.
Protection from attacks
In addition to functional safety, security is becoming increasingly important. This includes the protection the system and its components against unauthorised interference which could impair the data and thus the functionality of the system and, in extreme cases, cause danger to life and limb by manipulating data, for example in an electronic braking system. Effective measures against the "hacking" of embedded systems must be further developed and tested in practice.
An additional important factor with regard to the correct functioning of software in embedded systems is the real-time behavior of the program. In numerous applications, for example when initiating emergency braking of a vehicle, it is important that the system acts in good time, i.e. neither too early nor too late. Here, again, the system view is indispensable. An additional challenge is the increasing use of multi-core processors, which, due to the true concurrency of processors, places new demands on software and system design in particular.
And, of course, the use of artificial intelligence also has a decisive influence on the development and use of embedded systems, especially with regard to the predictable behavior and safety of the system. In addition, the first promising approaches to the use of AI in quality assurance of embedded systems, for example for the intelligent evaluation of analysis and test results, can be observed. This potential needs to be further explored and assessed in terms of its strengths and weaknesses.
At the embedded world Conference 2020 in Nuremberg, 8 sessions and 5 classes in the field of software and systems engineering are planned over all three conference days with the aim of addressing all these aspects competently and comprehensively. In order to achieve a fruitful exchange of experiences, we count on your active participation.
embedded world Conference
These topics relating to "Intelligent and Autonomous Systems" will also be in the limelight at the world's largest leading trade fair and the embedded world Conference taking place in Nuremberg from 25 to 27 February 2020. In a total of 26 lectures in four specialized sessions, experts will provide answers to the above questions over two whole days.
The program of the embedded world Conference is available at www.embedded-world.eu.
Author: Prof. Dr.-Ing. Dipl.-Ing. Dipl. Wirt.-Ing. Axel Sikora, Chairman of the embedded world Conference.