Quality Assurance is not an optional add-on to projects. It is an integral part of the software development process, especially so when using Object Technology.
The philosophy behind Software Craftsmanship Inc. is one of using the software that is produced by a team to inspect their development process to see where it can be improved. All Software that is produced is characteristic of the team of developers who produced it, in the same way that authors have their own distinctive style when writing books. From this viewpoint it is possible to assess what is missing from the development processes, by looking at the software that was produced by that development process.
The Test Driven Development using JUnit talk, especially the Quality First strategy as applied in eXtreme Programming seems to be a very promising avenue for achieving high quality, robust systems.
My quality assurance checklists for Use Cases and OO designs are now available.