본문 바로가기

Homo Faber/Techniques17

설계 원리 (Design Principles) 현재까지 잘 알려진 설계 원리들은 다음과 같다. DRY (Don't Repeat Yourself) - 한번 이상 동일하거나 유사한 코드를 작성하지 말라. 'Once and Only Once' 원리라고도 함. SCP (Speaking Code Principle) - 코드는 그 목적과 상호교류해야 함. 코드에 있는 주석은 코드가 그 목적과 비효율적으로 상호교류함을 나타낼 수 있음. OCP (Open Closed Principle) - 설계 단위는 변화(adjustment)에 열려있어야 함. 그러한 변화(adjustment, 조정)은 기존 클라이언트를 쓸모없게 만들어서는 안됨. 상속은 이러한 목적을 달성하게 하는 메커니즘 중의 하나임. 하위클래스는 상위클래스의 클라이언트들이 유효하게 유지한 채로 변경이 될 수.. 2008. 2. 21.
비즈니스 컴포넌트 식별 및 구조(4) - 비즈니스 컴포넌트 식별 비즈니스 컴포넌트는 업무 관점에서 식별된 비즈니스 프로세스 모델을 통해서 식별되는 과정을 거친다. 또한, 이러한 식별 과정에서 컴포넌트는 더 정제되어서 인터페이스나 오퍼레이션들이 식별되며 구체화된다. 비즈니스 프로세스 분석 비즈니스 분석은 프로세스, 자원, 조직으로 구분될 수 있으며, 이들은 상호 종속적인 관계이다. 조직은 특정 프로세스를 수행하고, 프로세스는 수행하는 조직과 입력물 혹은 생성되는 출력물인 자원 모두를 필요로 한다. 또한, 자원은 조직의 자산이며, 프로세스에 의해서 사용되거나 산출된다. 이렇게 비즈니스 수행 액터에 의해서 중요하게 보이는 비즈니스의 식별 가능한 덩어리를 비즈니스 요소라고 한다.[9] 비즈니스 요소 중에 비즈니스 프로세스 자원은 일반적으로 계층적인 구조를 갖게 되는데, 크게.. 2008. 2. 18.
비즈니스 컴포넌트 식별 및 구조(3) - 컴포넌트 클러스터링 컴포넌트 클러스터링 컴포넌트는 객체들의 집합으로 이루어지며, 객체들의 묶음(clustering)을 통해 컴포넌트가 구성되며, 컴포넌트 클러스터링이란 객체들을 어떤 기준으로 묶어서 컴포넌트를 만든다는 의미이다. 클러스터링은 문제 영역(problem area)을 서로 독립된 세부 영역(sub-area)으로 나누는 것으로, 상호작용을 최대한 줄이고 (병행하거나 순차적인 방법 등으로), 통합에 대한 위험성을 최대한 줄여주는 목적을 가지고 있다. 클러스터링을 하고자 하는 자의 관점이나 특별한 목적에 의해서, 객체를 같이 묶는 방법과 객체들의 집합을 세부 집합으로 나눈 방법 모두를 의미한다. 각각의 클러스터는 설계 프로젝트나, 보서의 책임성 등이 어떠한 것을 포함하고 있는지를 열거함으로써 이러한 것들의 범위를 정의.. 2008. 2. 14.
비즈니스 컴포넌트 식별 및 구조(2) - 배경 배경 SOA(Service-Oriented Architecture)는 기존의 CBD(Component-Based Development) 방식과 연계가 되면서 최근에 각광을 받는 아키텍처가 되고 있다. 기존의 컴포넌트나 인터페이스 중심의 아키텍처가 비즈니스적으로 의미가 있는 서비스 중심의 아키텍처로 패러다임이 이동하면서 기존의 개발 방식과 차이가 발생하게 되었다.[1] "SOA" 용어 - 비즈니스 정의 : 경쟁적인 우위를 위한 민첩한 비즈니스 환경을 만들면서 IT를 사용하는 노력을 줄이거나 없애주고 IT의 비즈니스적 가치를 양적으로 측정하는 비즈니스, 프로세스, 조직, 관리, 기술적인 방법들의 총칭. - (IBM에서 소개된) 또 다른 비즈니스 정의 : 비즈니스 프로세스들의 요소들과 변경되는 비즈니스 우월권.. 2008. 2. 14.
반응형