In programming, one is require to solidify the code by performing a good amount of testing. This process takes time but the results are worth it.
In any form of engineering, the importance of quality of a product cannot be emphasized enough. In building a car or constructing a building, utmost care is taken to ensure the solidity of the product so that the user is left with a feeling of safety and satisfaction.
A similar approach would be good for software.