We used DSB and Defsys to coordinate this development. Instead, Egret and its applications were developed concurrently in a deeply co-evolutionary manner. The third essential component of our product engineering was automated regression testing. We approached testing from a purely pragmatic point of view. We realized that unless testing was virtually free, we wouldn't do it.
All tests consist of calls to the public interface of classes.
Minimal attempt at breadth. A satisfactory test suite for a component called every public function at least once. More than one function could be called in a given test case, of course. Incremental test suite development. The set of tests included with the initial release of a component could be relatively small.