문제
소프트웨어 설계에서 **모듈화(Modularity)**의 개념과 장점을 설명하시오.
정답
모듈화는 복잡한 시스템을 기능적으로 독립된 작은 단위인 모듈로 나누어 설계하는 기법이다. 주요 장점으로는 복잡성 관리, 재사용성 향상, 유지보수 용이성, 개발 효율성 증대, 테스트 용이성 등이 있다.
모듈화기능적 독립복잡성 관리재사용성유지보수개발 효율성테스트 용이성
해설
모듈화는 큰 문제를 작은 문제로 분해하는 분할 정복 접근법의 소프트웨어 설계 적용이다. 각 모듈이 명확한 책임을 가지고 독립적으로 동작할 수 있도록 설계하여 전체 시스템의 복잡도를 관리하고 개발 생산성을 높인다.