Design by Contract, Components and Debugging. | AMiner