An important responsibility for many software architects is fostering and defending nonfunctional software qualities. These qualities are numerous, and they can interact in complex ways, so techniques for keeping abreast of them are vital for gauging the health of a software architecture.
This presentation focuses on a single quality attribute, testability, and in particular explores how maintaining testability will tend to improve many other attributes. Among other things, highly testable code is modular and loosely coupled by nature, is maintainable, supports scaling out development, and can improve feedback loops. By ensuring testability in a system you not only support these and other related qualities, but you also provide an important means to verify that they are being met. Ultimately, it looks at how testability (and testedness) can be useful and reliable proxy or approximation for a wide range of qualities.
Watch this video on http://vimeo.com/user22258446/review/79092605/0a672644d9
Download presentation slides from http://software-architect.co.uk/brands/sa/library/Austin_Bingham_Primacy_of_Testability.pdf