Aren&#x27;t your second and last sentences in conflict? How could we <i>not</i> expect software to be &quot;occasionally&quot; broken, if it&#x27;s &quot;fine&quot; to make the &quot;occasional&quot; mistake?<p>Of course, making mistakes is only human, but mistakes should never get past the build process (compilation, automated testing). Any mistake that does reflects an error in your design (not making your code amenable to verification) and&#x2F;or your process (not capturing requirements in tests).