카테고리 없음

Documenting Software Architecture 2ed - 모듈뷰

[짱가™] 2011. 4. 27. 14:22

( 원서를 보면서 요약하려니... 참... 요약할게 눈에 띄지 않는다. 원서 읽는 것에 대해서 조금더 신경을 쓰면 조금씩 나아지리라 생각해본다.
2011.


 Architecture Style  의 사용이유 : 디자인 결정에 대한 이미 존재하는 패키지들을 사용하는 것이 새롭게 시작하는 것보다 나은 선택방식이다 

스타일의 세가지 카테고리
-       Module
-       Component & Connector
-       Allcation Style

스타일 가이드의  outline
Element, Relations, Properties
Constraints
Reason
Notation
Relation to other styles

Notation  종류
Informal notations
Semiformal notations
Formal notations
 

Module Views
-       Module Structure  를 표현 , 원리와 설계요소 그리고 시스템의 모듈을 표현
-       Elements : 책임,
-       Relations :  is-part-of, Depends on, Is-a   

6개의 중요한 모듈 뷰 스타일
- Decomposition style

주로 is-part-of  관계로 이루어진 모듈 뷰 스타일
decomposition style 은 관리 가능한 모듈로 이루어짐
모듈과 서브 모듈간의 책임을 할당하는 방법에 대한 관점으로 표현한다.

-
Uses style
depends-on  관계에 특화된 uses
모듈간의 의존성을 관리한다.
점진적인 개발에 대한 지원과 변경에 대한 영향도 분석의 효율성을 위한 뷰가 될 수 있다.

-
Generalization style
 is-a  관계로 이루어진 elements 를 표현하는 스타일
일반화와 특수화 간의 관계를 표현가능하게 한다.
객체 지향 시스템의 광범위한 표현으로 볼수 있다.
상속은 모듈간에 이루어지게 된다.

-
Layered style
 allowed-to-use  관계를 가진다.
모듈 그룹으로써 시스템을 분할하고 책임/역할의 응집을 가능하게 한다.
이 그룹들은 layer 라고 불려지며  allowed-to-use 관계에 의해 단방향으로 연결을 할 수 있다. 
layered design 은 시스템의 이동성과 수정용이성을 달성하게 한다.

-
Aspects style
 cross cutting concern 을 위한 책임을 가진 모듈로 이루어진 아키텍처 
 cross-cutting 관심사를 위한 책임으로써의 aspect  라고 불리우는 특별한 모듈을 보여준다.
이 뷰는 AOP를 사용해서 구현되는 시스템에 유용하게 사용된다.

-
Data model style

 데이타 엔티티와 관계간의 구조를 보여주는 스타일
data-centric system 에서 성능과 수정용이성을 달성하게 하는 스타일이다.