
129
5
장
진화하는 아키텍처 토폴로지
CHAPTER
5
진화하는 아키텍처 토폴로지
아키텍처에 대한 논의가 깊어지면 결국 커플링이라는 주제가 마지막까지 남는다. 커플링이란
아키텍처 일부분들이 서로 연결을 맺거나 의존하는 방식이다. 결합은 필요악이라 매도하는 아
키텍트가 많지만 복잡한 소프트웨어를 컴포넌트 의존성 또는 커플링 없이 구축하기란 쉽지 않
다. 따라서 진화적 아키텍처는 커플링의 적정 수준에 주목한다. 커플링을 맺을 아키텍처를 식
별하고 최소한의 오버헤드와 비용을 들여 최대한의 이득을 볼 수 있어야 한다.
이번 장은 커플링이 아키텍처 구조에 미치는 영향과, 아키텍처 발전 효율을 높이기 위한 구조
평가 기법을 설명한다. 또한 아키텍처 토폴로지
architecture
topology
컴포넌트 단계부터 시스템 수준
까지 상세하게 설명하고 조언을 곁들인다. 이번 장을 모두 마치면 아키텍처 커플링을 더욱 깊
이 이해하게 될 것이다.
5.1
진화 가능한 아키텍처 구조 진화 가능한 아키텍처 구조
서로 다른 아키텍처 스타일은 서로 다른 진화 특성을 보이지만 스타일 자체는 진화 능력을 제
어하는 데 본질적으로 아무런 영향을 미치지 않는다. 오히려 진화는 아키텍처가 지원하는 커
플링 특성과 관련이 있다. 사람들은 지금까지의 경험을 통해 소프트웨어의 진화성을 결정하는
핵심 동력 두 ...