By Werner Damm (OFFIS e.V.) and Moshe Cohen (I-Logix Inc.) While people seem willing to buy software for PCs that crashes regularly, embedded software in products like cars, trains, airplanes, cellular phones, swithing systems, elevators, or medical devices must meet significantly higher product quality standards. To ensure high availability, the design process for embedded software must address the challenge of stringent time-to-market and quality requirements in the face of an exponential growth both in function complexity and distribution. Advanced validation techniques are fast becoming essential in mastering this challenge.
By Tom Bienmüller, Udo Brockmeyer, Hans Jürgen Holberg, and Hartmut Wittke The Statemate Verification Environment offers a various number of analysis capabilities that can be performed by easy to use push button technology. This paper gives a brief overview of the existing model debugging features for Statemate models.
In the meantime it is generally accepted that model driven development is the premise to deliver more embedded functionality in shorter time, in other words with less cost. An additional significant benefit of applying model driven methods for developing embedded software is higher quality of the developed software due to early verification means like model in the loop (MiL ) simulation. However, testing of the embedded software is usually still done in a more traditional way, using processes and methods adequate for the software development processes of the 80s and 90s. In fact, there is indeed a significant gap between the high level of productivity of the software engineers, using models to develop the software, and the lower level of productivity of the engineers responsible to perform the testing and quality assurance. An alarming effect is that the quality of the embedded software products decreases, in particular since time-to-market constrains do not relax. In this article we show how to complement model driven development with a model based back-to-back testing approach, and how this leads to significantly improved quality and testing efficiency. The complete model based software verification approach is explained in the context of model driven development using Matlab, Simulink and TargetLink. This approach seamlessly integrates MiL, SiL , and PiL testing activities, thereby automating many of the ordinary testing activities. Even more, it shows how the development of the necessary test vectors is highly automated such that the complete verification of the embedded software can be done in much less time than today.
The model-based software development process is generally accepted in the automotive and aerospace domain. More or less seamless tool-chains support the model-based approach in order to help improving the functional safety aspects of such processes while keeping the efficiency under growing complexity concerns. In the last decade, fundamental progress and improvements in the area of modelling, simulation and automatic code generation have been achieved. Even in the area of fully automated structural testing, various solutions have been successfully entered the tool-chains. Concerning the verification of functional requirements in the model-based domain, there is still big room for improvements. Especially the demand of having an automatic, scalable approach for functional testing and formal verification is not yet achieved. This paper presents an automatic approach that has been developed in order to efficiently support international standards regarding functional safety, like ISO 26262 for automotive. It presents an integrated method to use automatically synthesized C-code observer fragments from formalized specifications. Then requirements based functional test and formal verification can be almost automated as the synthesised C-code observers are automatically embedded into a test and verification tool environment. This includes the model, code and object code levels such that a very general use of C-observers can be shown. The automation of this approach includes the requirements-based test case generation, automatic test execution and analysis, as well as test quality measurement and coverage of requirements. The described method effectively and smoothly fits into the framework of software quality standards as it is for instance specified in the new automotive standard for functional safety ISO 26262. The approach has already been implemented in a first version for the Matlab/Simulink tool chain on top of the production code generator TargetLink from dSPACE. Further future potential of such observer technology, for instance 'embedded diagnostics' by using C-observers, will also be discussed.