August 2018
Beginner
594 pages
22h 33m
English
As is the case with other quality attributes, the complexity of the software plays a role in testability. Reducing dependencies and isolating modules (isolability), decreases the complexity of the software.
When we discussed maintainability, we mentioned that minimizing the complexity of architectural elements can be accomplished by reducing the number of lines of code in modules, increasing cohesion and reducing coupling. Techniques that increase maintainability also increase the controllability of elements. This has a direct and positive impact on testability.
In addition to the structural complexity of components, there is behavioral complexity. Non-determinism is one type of behavioral complexity. If some algorithm ...