- Strong test suite
- Delete duplication as much as possible by using any techniques such as method extraction and keeping classes and methods small.