소프트웨어 아키텍처 4+1 뷰 개념
고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 소프트웨어적인 접근 방법
4개의 분리된 구조로 구성되는 아키텍처 개념을 제시하고, 이 4개의 구조가 서로 충돌되지 않는지, 요구사항을 충족하는지 증명하기 위한 체크 방법으로 유스케이스를 사용한다.
아키텍처 뷰?
소프트웨어 아키텍처를 바라보는 시각에 따른 표현방법
소프트웨어 아키텍처 4+1뷰 구성요소
4+1에서 1은 유스케이스 이고 4는 논리 뷰, 구현 뷰, 프로세스 뷰, 배포 뷰의 해결 영역으로 구성되어있다.
유스케이스 뷰 (Usecase View) |
다른 뷰를 검증하는데 사용 사용자, 설계자, 개발자, 테스트 관점 |
유스케이스 다이어그램 |
논리 뷰 (Logical View) |
시스템 기능 적인 요구사항이 어떻게 제공되는지 클래스나 컴포넌트의 종류와 관계를 설명하고 설계가 실제로 구현 되는지 설명 설계자 관점 (순서도나 UML 그리는 시점) |
클래스/시퀀스 다이어그램 |
프로세스 뷰 (Process View) |
시스템의 비기능적인 속성으로 자원의 효율적인 사용, 병행 실행, 비동기, 이벤트 처리 등을 표현한 뷰 성능, 확장성, 효율성 관련 시스템 통합자의 관점 |
시퀀스/협력 다이어그램 |
구현 뷰 (Implementation View) |
개발 환경 안에서 정적인 소프트웨어 모듈의 구성을 보여주는 뷰 컴포넌트 구조와 의존성을 보여주고 컴포넌트에 관한 부가적인 정보 정의 실제 구현할 수 있는지 여부를 확인 직접 만드는 개발자의 관점 |
컴포넌트 다이어그램 |
배포 뷰 (Deployment View) |
컴포넌트가 물리적 환경에서 배치 연결 작업이 어떻게 실행 되는지를 매핑해서 보여주는 뷰 | 배치(배포) 다이어그램 |
프로세스(Process)란?
운영체제가 관리하는 실행 단위로 프로세서에 의해 처리되는 PCB를 가진 시스템 프로그램
배포 뷰는 집으로 따지면 이방이 크게 작네 여기에 이 가구가 들어가면 되겠다 이렇게 배치를 어떻게 할 것인가 하는 뷰이다.
참고로
UML 4+1 View 라고 1998년도에 발표된 자료는 아래 와 같이
설계(Design view), 구현 (Implementation view), 프로세스(Process view), 배치(Deployment view), 유스케이스(Use case view) 로 구성 되어있다.
그리고 1995년도에 Achitectural Blueprints라는 논문에서 발표한 4+1 view 모델은 아래와 같이 구성 되어있고
현재는 이 UML 4+1 View와 Achitectural Blueprints 논문에서 발표한 4+1 view가 합쳐진 자료들을 많이 찾을 수 있고
UML 4+1 뷰를 쓰든 혼용된걸 쓰든 틀린건 아니라고 한다.
소프트웨어 아키텍처 란?
https://moo-you.tistory.com/218
'정보처리기사' 카테고리의 다른 글
소프트웨어 아키텍처 비용 평가 모델 종류 (0) | 2021.06.03 |
---|---|
소프트웨어 아키텍처 패턴 (0) | 2021.06.02 |
소프트웨어 아키텍처(Software Architecture) 란? (0) | 2021.05.28 |
현행 시스템 파악 (0) | 2021.05.27 |
선택 정렬 (Selection sort) 오름차순, 내림차순 (0) | 2021.05.14 |
댓글