The higher a class' complexity, the more difficult it is to maintain it without breaking existing functionality. Unit test coverage serves as a backstop to inadvertently breaking functionality during maintenance. Combining high complexity with low coverage in a class means that maintenance will be fraught with danger. Lowering complexity and/or increasing coverage, will free maintainers of the class to work efficiently and with confidence.

