BLOG main image
분류 전체보기 (344)
NWC Consulting (1)
서비스 (173)
출판 (169)
일반 (0)
195,318 Visitors up to today!
Today 34 hit, Yesterday 86 hit
daisy rss
2013.05.06 12:19

이미 앞에서도 이야기 했듯이, 저자들은 기능이 아키텍처를 결정하는데 별 상관이 없는 것으로 이야기하고 있다.

Functionality has the strangest relationship to architecture. First of all, functionality does not determine architecture.

필자는 구조를 기능구조와 비기능구조로 나누어야 하고, 기능구조도 아키텍처에 포함해야 하며기능구조는 도메인구조를 반영해야 한다고 강하게 주장한다.

'도메인구조를 반영해서 기능구조를 만든다'는 말에는 '도메인구조를 이해하고 이를 그대로 반영한다'는 의미가 강해게 암시되는 것 같다. 이 의미를 좀 더 확장하면, 의사결정할 일이 없다는 의미도 될 수 있을 것 같고, 이를 더 확장하면 도메인 구조를 설계하는 것이 아니라 제약사항으로 받아들여진다는 의미가 될 수도 있을 것 같다.

하지만, 현실적으로 도메인에는 소프트웨어 시스템 개발에 사용할 도메인구조가 명시적으로 제시되지 않는다. 도메인구조는 특정한 방법론이나 접근 방법에 의해 논리구조가 결정된다. 논리구조는 얼마나 기술적으로 잘 구현할 것인지가 배제된 것으로 철저하게 기능에 의해 결정된다. 도메인의 변화가 발생했을 때 그 변화를 유의미하게 반영하기 위해서는 도메인구조를 시스템구조로 반영해야 한다. 이 구조가 잘 못 결정되면 수정용이성과 같은 품질속성에도 큰 영향을 미치게 되는 것이다.

소프트웨어 시스템은 도메인에 영향에서 절대 자유로울 수 없기 때문에 도메인구조에 해당하는 기능구조에 큰 영향을 받는다. 이러한 이유로 구조설계의 많은 노력이 기능구조에 들여져야 하는 것이다. 

저자들은 마치 기능을 품질속성 중심으로 결정된 구조에 태우는 것처럼 이야기한다. 저자들의 이러한 설명은 이 책을 통해 공부하는 아키텍처들에게 도메인구조는 버려두고 품질속성에 충실한 구조 만을 만들어내는 우를 범하게 할 수 있다. 이러한 경우에 발생할 수 있는 일반적인 우가 도메인구조를 반영하지 않는 모듈구조일 것이다.

But although functionality is independent of any particular structure, functionality is achieved by assigning responsibilities to architectural elements, resulting in one of the most basic of architectural structures.
저작자 표시 비영리 변경 금지
신고
Name
Password
Homepage
Secret

티스토리 툴바