Quality by Design

The most effective way to deliver a quality product comes from spending the time with a development team to educate and coach the team on how to write the code in a way which makes bugs obvious to see and only need to be fixed in one spot.

A helpful analogy for this is imagine the typical trouble of finding a problem with water piping in a conventional house where there is a blockage. Now instead imagine you living in a house where all the places the pipes were the walls were made up of transparent easily removed panels. The pipes themselves would also be transparent and composed of easy modular sections that can be simply removed and replaced.

In such a house it becomes trivial and easy to quickly see any blockages, leaks or other problems with the pipes. It’s super fast to then fix the problem.

This the house we are building with the new version of Iguana. It’s by far the best way to deliver a top quality product since by making the code very simple and transparent it becomes easy to resolve the most difficult bugs like race conditions. Traditional QA where the burden is falling on testers isn’t sufficient to find 90% of those types of bugs.

Modularity and visibility comes from developing the code:

  • Using small functions

  • Tight adherence to separation of concerns.

  • Breaking things apart into small files with good tracing.

Getting a team to the point that they have the confidence and knowledge of how build and construct code this way is not an overnight process. It takes a team learning from first hand experience of seeing the difference between when they construct code in this way versus the more typical approaches for the industry.