Assertions or more generally "Programming by contract"
have gained widespread acceptance in the computer science
community as a means for correct program development. However,
the literature lacks an empirically evaluation of the benefits a
programmer gains by using assertions in his software
development. This paper reports about two controlled experiments
to close this gap. Both experiments compared "Programming by
contract" to the traditional programming style without
assertions. The evaluation suggests that assertions tend to
decrease the programming effort and that assertions lead to more
reliable programs compared to those programs written without
using them