Unit Testing in Product Development


Software development for medical devices requires assessment of safety risk associated with the intended use and an alignment of testing methodology based on the risk level. Unit testing of individual software functions, performed as developers write code, is one software test method that helps ensure software functions perform as intended. While this process is required by the FDA (GPSV) and IEC-62304, it is often seen as a lower priority task in the development process. Unit testing is not a checklist item, but a structured effort that should be executed by an experienced developer working under a flexible, yet rigorous Quality Management System (QMS).

How Sunrise Can Help

Sunrise Labs has extensive experience in Unit Testing, and can tailor the process to meet customer and regulatory requirements. Unit tests are written to verify that the code is a thorough and accurate implementation of the design. Developers usually address and fix errors as they are found. This process helps avoid potential delays later in the development process and ensures cost effiency to Sunrise clients.

Sunrise developers leverage automated tools such as VectorCAST (C or C++ code) and J-Unit (Java Code) to produce a comprehensive Unit Test framework. The output of this testing includes an automated report with coverage metrics.

Benefits

As stated earlier, Unit Tests are required for compliance; yet improperly executed unit testing could result in costly and time-consuming issues found during system integration and testing. To maximize the benefits of unit testing, planning should occur as early in the software development process as possible, including developing test schedules and defining test environment tools, resources, and methodologies. In addition to saving time and budget, conducting thorough unit testing increases the code's reliability in system level testing and provides solid documentation for 510(k) submission.

Learn more about Sunrise's extensive regulatory expertise and lean ISO-13485 processes - click here.