The development of embedded control systems in Simulink usually continues with automatic code generation, the build process, and several tests: software-in-the-loop (SiL), hardware-in-the-loop (HiL), and system tests in the real environment of the controller, the vehicle. Our test-driven control-system design cycle integrates into this process because it doesn't interrupt the system's model-based architecture. Furthermore, the next development cycle usually considers the results of SiL, HiL, or the system tests. With TDD, such changes cause one or more new tests, which describe the modified requirements either with a modified or different process model or with a stimulus from measurements. All previously defined tests ensure the controller's basic behavior, leading to higher quality for the complete system. In addition, we believe we can extend our approach to different types of real-time systems and evaluate how to use TDD for their development
['Thomas Dohmke', 'H. Gollee']
Test-Driven Development of a PID Controller