모듈 설계 원리 중 정보 은닉(information hiding)에 대한 설명으로 가장 적절한 것은?
1
변경 가능성이 큰 설계 결정과 자료 표현을 모듈 내부에 감추고 외부에는 필요한 인터페이스만 공개한다.
정답 근거외부 모듈이 변경 가능한 내부 표현에 직접 의존하지 않게 하여 변경 파급을 줄이는 정보 은닉의 설명이다.
2
상위 기능을 세부 기능으로 반복 분해하여 처리 절차를 단계적으로 구체화한다.
오답 이유상위 기능을 세분화하는 설명은 단계적 상세화에 가깝고, 내부 설계 결정을 감추는 정보 은닉과 판단 기준이 다르다.
3
여러 모듈이 같은 전역 자료 영역을 공유하여 상태를 직접 읽고 쓴다.
오답 이유전역 자료 영역의 직접 공유는 공통 결합을 만들어 모듈 사이 의존성을 높인다.
4
서로 관련된 기능을 한 모듈에 모아 기능적 응집도를 높이는 것만을 뜻한다.
오답 이유한 모듈의 기능들이 하나의 책임에 집중하는지는 응집도의 판단 기준이며 정보 은닉의 정의 자체는 아니다.
정답·상세해설
정답 1번
정보 은닉은 변경될 가능성이 큰 설계 결정이나 자료 표현을 모듈 경계 안에 감추고, 다른 모듈에는 필요한 인터페이스만 공개하는 원리다. 단계적 상세화는 기능 분해 절차이고, 전역 자료 공유는 공통 결합을 만들며, 기능적 응집은 모듈 내부 기능의 관련성을 나타내므로 ①이 가장 적절하다.