Design-for-Testability for Object-Oriented Software 1
Jeffery Payne, Roger T. Alexander, Charles Hutchinson · 1997
There are many reasons why object-oriented (OO) design and development has become the norm for software creation. Two primary reasons are the positive impacts that abstraction/inheritance and information hiding have on the development process. There is little debate that data abstraction coupled with inheritance provides a powerful software design mechanism. Likewise, hiding data and internal operations behind a public interface encourages development of clean, self-contained software components. Both techniques facilitate software reuse, which many experts feel will result in significant software productivity gains as OO design technology matures.