Within such a complex environment, quality (i.e., the absence of software faults) of smart contracts plays a vital role. Residual bugs in smart contracts (software faults that may be activated due to absent or inadequate protection mechanisms, or that were not detected by verification activities like testing or static analysis) have been linked to failures in blockchain systems and are known to be the cause of severe security problems [1]}, [2]}, as, for instance, the infamous DAO attack demonstrated [3]}.
