본문 바로가기

전체 글196

Component Refactoring [1] 컴포넌트를 대상으로 하는 리팩토링은 그 작업 자체만으로도 많은 부분에 영향을 미칠 수 있다. 또한, 컴포넌트의 어떠한 부분을 초점으로 접근할 것인가에 따라 그 접근방법이 다양하고, 그에 따른 리팩토링 전략도 달라질 수 있다. 우선은 컴포넌트를 리팩토링을 하기 전에 컴포넌트가 갖게 되는 뷰에 따라 어떠한 품질 속성들을 요구하는지에 대해 살펴보면 아래 그림과 같다. 컴포넌트 기반 구조 (Component Infrastructure) - 컴포넌트의 기반 구조 차원에서 컴포넌트는 표준화(standardability), 유사성(conformability), 가용성(availability) 등의 품질 속성을 말할 수 있다. 이는 컴포넌트의 구조를 이루는 뼈대에 해당하는 부분이 얼마나 견고하고 일관성 있게 만들어졌는.. 2008. 11. 12.
컴포넌트 클러스터링 [5] 3.5 기타 아래 표는 다양한 클러스터링 기준을 제시한다. 기업 내의 조직 의 책임이 강조되는 시스템의 경우 소유권을 중심으로 클러스터링을 하며, 레거시를 기반으로 하는 클러스터링, 위치에 따른 클러스터링, 그 외에도 다양한 방식의 클러스터링 기준을 아래표로 존재한다. 컴포넌트 클러스터링 기준은 컴포넌트화를 위한 조직의 비즈니스 드라이버에 의해 좌우된다. 아래 표에서 제시한 10 가지 클러스터링은 하나 이상의 기준이 복합적으로 적용될 수 있다. 그림 3-5. 기타 컴포넌트 클러스터링 기준 소유권에 따른 클러스터링 : 데이터와 활동이 조직의 부서에 의한 사용 혹은, 조직의 부서의 관리 목표에 따라 클러스터링 된다. 결국 조직 구조와 일치하는 시스템 구조를 만들게 된다. 이것은 시스템이 조직 단위 사이의 의.. 2008. 11. 6.
컴포넌트 클러스터링 [4] 3.4 역할 클러스터링의 대상이 되는 객체/컴포넌트의 역할에 따른 클러스터링이 가능하다. 따라서 임의의 객체/컴포넌트는 예를 들면, Controller의 역할을 수행하기 위해 클러스터를 형성한다. 다음 그림은 컴포넌트를 위한 여섯 가지 역할을 제시한다. 이 역시 컴포넌트 클러스터링을 위한 또 하나의 기준이 될 수 있다. 컴포넌트 클러스터링 목표 도메인의 특성에 따라 새로운 역할이 존재할 수 있으며, 시스템에 새로운 역할의 추가 및 기존 역할의 확장을 할 수 있다. 역할을 클러스터링에 사용하는 방식은 RDD (Responsibility Driven Design) 기반의 OOAD 기법에서 가져온 개념으로 일부는 비즈니스 컴포넌트를 구성하는 내부의 소규모 컴포넌트들에 역할과 책임을 부여할 때 사용할 수 있다... 2008. 11. 6.
컴포넌트 클러스터링 [3] 3.3 유형 컴포넌트의 유형은 크게 데이터 중심, 프로세스중심, 규칙 중심의 컴포넌트로 나눌 수 있다. 컴포넌트 클러스터링을 위해 이러한 유형을 식별하는 작업이 필요하다. 일단 유형이 식별되면 하나의 비즈니스 컴포넌트를 구성하기 위해 데이터는 데이터 끼리, 프로세스는 프로세스 끼리, 비즈니스 규칙은 비즈니스 규칙 끼리 함께 묶어서 하나의 클러스터를 형성하며, 이 클러스터는 컴포넌트의 후보가 된다. 이외에 컴포넌트화 접근방법에 따라 데이터-드리븐, 프로세스-드리븐, 비즈니스 규칙-드리븐, 협업-드리븐, 유스케이스-드리븐 등 다양한 정책을 기반으로 할 수 있다. 그림 3-3. 유형에 의한 컴포넌트 분류 커플링(coupling)에는 한 컴포넌트가 다른 컴포넌트를 호출하는 두 컴포넌트 간의 운영 종속성 (ope.. 2008. 11. 6.
반응형