On the relation between design contracts and errors: a software development strategy | IEEE Conference Publication | IEEE Xplore