→ 단일 책임 원칙에 위반 → 클래스 별 책임 분배로 객체 지향적 설계 요구
각 클래스가 명확한 하나의 책임만 가지도록 기능별로 클래스를 따로 분리시키기
SystemCompatibilityChecker → 시스템 호환성만 검사
NetworkInterfaceDiscovery → 인터페이스 검색만 담당
NetworkInterfaceValidator → 유효성 검증만 담당
NetworkInterfaceGuide → 사용자 가이드만 담당
장점
단점