3.3.5 영향을 받는 품질 속성
• 이해 가능성 : 추상화의 이해 가능성이 불리한 이유는 특정 메서드가 추상화에서 빠진 이유를 이해하기 어렵기 때문이다.
• 변경 가능성과 확장 가능성 : 추상화의 변경 가능성과 확장 가능성이 영향을 받아서는 안 된다. 하지만 상호 보완적인 메서드를 여러 추상화에 걸쳐 분리할 때 추상화에서 메서드 하나를 변경하거나 개선하면 다른 관련된 추상화에 영향을 미칠지도 모른다.
• 재사용 가능성 : 연산 중 몇몇을 추상화에서 제공하지 않으면 새로운 맥락에서 추상을 재사용하기가 더 어렵다. 지원하지 않는 연산을 명시적으로 제공할 필요가 있기 때문이다.
• 안정성 : 불완전한 추상화는 필요한 기능을 구현하지 않기에 결함을 초래할 수도 있다. 게다가 메서드가 빠지면 사용자는 우회책을 이용하여 필요한 기능을 제공하려고 할 것이다. 이것은 실수하기 쉽고 실행 시간 문제로 이어질 수 있다. 예를 들어, 잠금용 메서드는 추상화에서 제공하지만 잠금 해제용 메서드는 제공하지 않을 때 클라이언트는 잠금을 해제할 수 없을 것이다. 클라이언트는 자신의 코드에서 잠금 해제 기능을 구현하려고 추상화의 내부 자료 구조에 직접 접근을 시도할지도 모른다. 이런 직접적인 접근은 실행 시간 오류로 이어질 것이다.