Title :
On Moving Test-Driven Development from the Business World into a Biomedical Engineering Environment
Author :
Qiao, Juan ; Smith, Michael ; Miller, James
Author_Institution :
Univ. of Calgary, Calgary
Abstract :
Test-driven development (TDD), a core Extreme Programming business-world practice, has been shown as a viable approach towards reducing product defects. The production of an "executable specification (test) document" permits the customer, with developer assistance, to explore the design parameters for the project before code is created. Given the "zero-tolerance" to defects required in biomedical products, an investigation was made to see whether the TDD business-world advantages move into the biomedical area. One key difference between the two environments is that biomedical product development is often preceded by fundamental research as the scientific solution is unknown or uncertain. In this paper, we report on the use of MUnit, a test framework for MATLAB. A key reason for using a TDD approach to MATLAB development is that the same tests, appropriately translated, can be used in the verification of the final (non-MATLAB) code running on an embedded biomedical device. Using the development of a new MR dynamic susceptibility contrast algorithm as an example, we demonstrate why the standard TDD constructs used in business TDD JUnit, and echoed in MUnit, are insufficient for a design process that involves scientific exploration. Our extended version of MUnit is compared with MTest, a commercially available model-based testing framework for MATLAB/Simulink.
Keywords :
biomedical engineering; high level languages; product development; production engineering computing; quality management; Extreme Programming; MATLAB/Simulink; MR dynamic susceptibility contrast algorithm; MTest; MUnit; biomedical engineering environment; biomedical product development; business world; embedded biomedical device; executable specification document; model-based testing framework; product defects reduction; test-driven development; Algorithm design and analysis; Biomedical engineering; Business; Heuristic algorithms; MATLAB; Process design; Product development; Production; Standards development; Testing;
Conference_Titel :
Electrical and Computer Engineering, 2007. CCECE 2007. Canadian Conference on
Conference_Location :
Vancouver, BC
Print_ISBN :
1-4244-1020-7
Electronic_ISBN :
0840-7789
DOI :
10.1109/CCECE.2007.387