소리치는 아키텍처아키텍처의 테마이바 야콥슨이 Object Oriented Software Engineering이란 책에서소프트웨어 아키텍처도 애플리케이션 유스케이스에 대해 소리처야 한다라고 말한다.
아키텍처를 프레임워크 중심으로 만들어버리면 유스케이스가 중심이 되는 아 ...
업무규칙업무규칙은 사업적으로 수익을 얻거나 비용을 줄일 수 있는 규칙 또는 절차다.컴퓨터상으로 구현했는지와 상관없이, 업무규칙은 사업적으로 수익을 얻거나 비용을 줄일 수 있어야 한다.
핵심 규칙과 핵심 데이터는 본질적으로 결합되어 있기 때문에 객체로 만들 좋은 후보가 ...
정책과수준소프트웨어 시스템이란 정책을 기술한것
동일한 이유로 동일한 시점에 변경되는 정책은 동일한 수준에 위치하며, 동일한 컴포넌트에 속해야 한다.
수준수준을 엄밀하게 정의하자면 입력과 출력까지의 거리이다.
시스템의 임력과 출력 모두로부터 멀리 위치할수록 정책의 수준 ...
경계 해부학경계 횡단하기런타임에 경계를 횡단한다.적절한 위치에서 경계를 횡단하게 하는 비결은 소스코드 의존성 관리에 있다.
두려운 단일체아키텍처 경계 중에서 가장 단순하며 가장 흔한 형태는 물리적으로 엄격하게 구분되지 않는 형태다.
이 형태에선 함수와 데이터가 단일 프 ...
선긋기(Boundaries)소프트웨어 아키텍처는 선을 긋는 기술이며 이 선을 경계라 부른다.
관련이 있는 것과 없는 것 사이에 선을 긋는다.
경계는 변경의 축이 있는 지점에 그어진다.
GUI와 업무 규칙과는 다른 시점에 다른 속도로 변경되므로 둘사이엔 반드시 경계가 필 ...
독립성좋은 아키텍처는 다음을 지원해야 된다.
시스템의 유즈케이스
시스템의 운영
시스템의 개발
시스템의 배포
유즈케이스시스템의 아키텍처는 시스템의 의도를 지원해야 한다는 뜻이다.
운영운영 관점에서는 덜 실질적이며 덜 피상적인 업무를 맡는다.
개발시스템을 설계하는 조직 ...
아키텍처란?소프트웨어 아키텍트는 프로그래머이며, 앞으로도 계속 프로그래머로 남는다.
아키텍처의 주된 목적은 시스템 생명주기를 지원하는 것이다. 시스템의 수명과 관련된 비용은 최소화하고, 프로그래머의 생산성은 최대화하는 데 있다.
개발팀 구조가 다르다면 아키텍처 관련 결 ...
컴포넌트 결합도ADP: 의존성 비순환 원칙컴포넌트 의존성 그래프에 순환이 있어서는 안된다.
숙취 증후군은 많은 개발자가 동일한 소스파일을 수정하는 환경에서 발생한다.
해결책으로 두가지 방법이 있다
주단위 빌드
의존성 비순환 원칙
주 단위 빌드일주일에 4일동안은 서 ...
컴포넌트(Components)컴포넌트는 배포 단위다. 컴포넌트는 시스템의 구성 요소로 배포할 수 있는 가장 작은 단위다.
잘설계된 컴포넌트라면 반드시 독립적으로 배포 가능한 따라서 독립적으로 개발 가능한 능력을 갖춰야 한다.
링킹 로더의 등장으로 프로그래머는 프로그램을 ...