Skip to main content
Tuesday, November 11, 2014 - 8:30am - 12:00pm
Half-day Tutorials

Software Design for Testability

Testability is the degree to which a system can be effectively and efficiently tested. This key software attribute indicates whether testing (and subsequent maintenance) will be easy and cheap—or difficult and expensive. In the worst case, a lack of testability means that some components of the system cannot be tested at all. Testability is not free; it must be explicitly designed into the system through adequate design for testability. Peter Zimmerer describes influencing factors (controllability, visibility, operability, stability, simplicity) and constraints (conflicting nonfunctional requirements, legacy code), and shares his experiences implementing and testing highly-testable software. Peter offers practical guidance on two key actions: (1) designing well-defined control and observation points in the architecture, and (2) specifying testability needs for test automation early. He shares creative and innovative approaches to overcome failures caused by deficiencies in testability. Peter presents a new and comprehensive strategy for testability design that you can implement to gain the benefits in a cost-efficient manner.

Peter Zimmerer, Siemens AG

A principal engineer at Siemens AG, Corporate Technology, in Munich, Germany, Peter Zimmerer has been working in the field of software testing and quality engineering for more than twenty years. Peter performs consulting, coaching, and training on test management and test engineering practices in real-world projects, driving research and innovation in this area. An ISTQB® Certified Tester Full Advanced Level, Peter is a member of the German Testing Board, has authored several journal and conference contributions, and is a frequent speaker at international conferences.

read more