| DaimlerChrysler's Experience with Tessy |
Tessy Timeline
During the early 90’s of the previous century, developers of embedded software, including those within the automobile industry, had little choice when it came to systematically and automatically testing their code. It was primarily for this reason that the Research and Technology department of the former Daimler-Benz AG in Berlin set about developing Tessy, a tool that would solve this problem.
By 1997, Daimler-Benz began putting Tessy to use and the versions available at the time ran on Unix.
Current Usage at DaimlerChrysler
Tessy is currently in widespread use throughout the DaimlerChrysler organization. One of the numerous development departments to use the tool is EP / MEI, located in Sindelfingen, Germany. The department initially used Tessy with the C166 microcontroller from Infineon.
Today, EP / MEI uses a Freescale MPC microcontroller and it develops control software mainly for 6- and 8-cylinder gasoline engines. In fact, the engine control software for the 12-cylinder Maybach, the most luxurious model in the DaimlerChrysler fleet, was developed using Tessy.
A typical project at the department consists of about 90 functions in C and all of these are tested using Tessy. A function normally has an average of 20 interface elements (i.e. input or output variables). In order to comprehensively test a function, a total of about 500 test steps partitioned into 20 to 30 test cases are required.
Tessy is considered to be particularly useful for testing control software and implementing state-machines.
The Benefits of Using Tessy
Improved Reliability
The main reason for DaimlerChrysler to begin using Tessy was to create highly reliable and resilient software. Tessy helps to detect errors from very early on in the development process, i.e. prior to system integration and road trials. A positive by-product of using Tessy for systematic and repeatable testing over the last couple of years is that it has greatly helped DaimlerChrysler in implementing a well-defined software development process.
Faster Development
DaimlerChrysler have discovered that Tessy speeds up the development process. Why?
Since Tessy automatically generates the test driver (i.e. the code to call the function under test) even an inexperienced developer is able to commence testing by simply providing the test data. But there is another reason why development is faster. Developers will nearly always manually test a piece of software they have written, just to try it out. This manual testing is usually haphazard, incomprehensive, undocumented and unrepeatable and therefore goes to waste. In the case of Tessy, this time and effort are saved since systematic testing begins immediately after coding, leading to reliable and well-documented results.
Reduced Workload
Tessy has a high acceptance rate among DaimlerChrysler’s developers and it is considered to be an invaluable tool for the software development process. It simplifies setting up the test environment and it allows easy isolation of faults from early on. Without Tessy, testing would be in the form of hardware-in-the-loop (HIL) tests or in-vehicle testing while on the road. The latter requires a far greater effort, with results that are often inaccurate and unrepeatable. Tessy provides results that are easily verified and serve as a reference for further tests (i.e. for regression testing).
Developers have also found the training and support available with Tessy to be well structured and comprehensive and they were able to receive this training step-by-step while working on their projects.
Conclusion
Regarding unit testing, Tessy met all of the expectations of DaimlerChrysler’s EP / MEI department. It will therefore be used in future projects, not only in EP / MEI, but also in other departments all over the world (e.g. at Chrysler in the US).