@requiem @vertigo @cstanhope what we recognise as test driven development in computer software is virtually unheard of in other engineering disciplines. Processes like hazop and squad checks are more like intensive/comprehensive code reviews.
Hazop is kind of equivalent to devising the tests I guess, but the process is waaaay more involved than how unit tests seem to be created. For example in a process control system's safeguard system PLCs every single potential execution path is enumerated and examined even if it seems nonsensical.
Typical computer software is too complex to expect 100% coverage I guess but in the unit tests I see they sometimes seem to miss wide swaths of potential scenarios because they don't fit the use case.