RUP 4+1 뷰: Difference between revisions

From CS Wiki
 
(2 intermediate revisions by 2 users not shown)
Line 7: Line 7:


== 구성 ==
== 구성 ==
.


== 유스케이스 뷰 ==
== 유스케이스 뷰 ==
;사용자, 설계자, 개발자 및 테스터의 관점
;주로 사용자의 관점
* 외부 액터가 인식하는 시스템의 기능성을 설명
* 외부 액터가 인식하는 시스템의 기능성을 설명
* 주로 UseCase Diagram, Activity Diagram으로 표현
* 주로 UseCase Diagram, Activity Diagram으로 표현
Line 16: Line 15:


== 논리 뷰 ==
== 논리 뷰 ==
;설계자와 개발자 관점
;설계자(분석자)의 관점
* 시스템 내부를 조망하고 시스템의 기능성이 어떻게 제공되는지 설명
* 시스템 내부를 조망하고 시스템의 기능성이 어떻게 제공되는지 설명
* 정적 구조와 동적 구조를 다룸
* 정적 구조와 동적 구조를 다룸
** 정적 구조: 클래스, 객체, 관계(Class Diagram, Object Diagram)
** 정적 구조: 클래스, 객체, 관계(Class Diagram, Object Diagram)
** 동적 구조: 객체가 다른 객체에게 메시지를 전달할 때 발생하는 협동구조(Statechart Diagram, Sequence
** 동적 구조: 객체가 다른 객체에게 메시지를 전달할 때 발생하는 협동구조(Statechart Diagram, Sequence Diagram, Collaboration Diagram, Activity Diagram)
Diagram, Collaboration Diagram, Activity Diagram)
 
== 프로세스 뷰 ==
== 프로세스 뷰 ==
;개발자와 시스템 통합자 관점
;시스템 통합자 관점
* 프로세스와 프로세서로 구분되는 시스템의 분할을 설명
* 프로세스와 프로세서로 구분되는 시스템의 분할을 설명
* 시스템의 비기능적인 속성으로서 자원의 효율적인 사용, 병행 실행 및 비동기, 이벤트의 처리 등
* 시스템의 비기능적인 속성으로서 자원의 효율적인 사용, 병행 실행 및 비동기, 이벤트의 처리 등
Line 30: Line 27:


== 구현 뷰 ==
== 구현 뷰 ==
'''시스템통합자의 관점'''
* 구현 모듈과의 의존성 표현
* 구현 모듈과의 의존성 표현
* 컴포넌트 구조와 의존성을 보여주고 컴포넌트에 관한 부가적인 정보 정의
* 컴포넌트 구조와 의존성을 보여주고 컴포넌트에 관한 부가적인 정보 정의

Latest revision as of 18:36, 27 September 2022

Philippe Kruchten이 Rational Unified Process(RUP)에서 제안한 소프트웨어 아키텍처 뷰 모델

4+1뷰.png

  • 표준이 아니므로 설명하는 사람마다 조금씩 차이가 있다.
  • Implementation View cf. Development View, Deployment View cf. Physical View

구성[edit | edit source]

유스케이스 뷰[edit | edit source]

주로 사용자의 관점
  • 외부 액터가 인식하는 시스템의 기능성을 설명
  • 주로 UseCase Diagram, Activity Diagram으로 표현
  • 유스케이스 뷰는 시스템 검증 시에도 활용

논리 뷰[edit | edit source]

설계자(분석자)의 관점
  • 시스템 내부를 조망하고 시스템의 기능성이 어떻게 제공되는지 설명
  • 정적 구조와 동적 구조를 다룸
    • 정적 구조: 클래스, 객체, 관계(Class Diagram, Object Diagram)
    • 동적 구조: 객체가 다른 객체에게 메시지를 전달할 때 발생하는 협동구조(Statechart Diagram, Sequence Diagram, Collaboration Diagram, Activity Diagram)

프로세스 뷰[edit | edit source]

시스템 통합자 관점
  • 프로세스와 프로세서로 구분되는 시스템의 분할을 설명
  • 시스템의 비기능적인 속성으로서 자원의 효율적인 사용, 병행 실행 및 비동기, 이벤트의 처리 등
  • 상태 다이어그램, 순차 다이어그램, 협동 다이어그램, 활동 다이어그램, 컴포넌트 다이어그램(Component Diagram)과 배치 다이어그램(Deployment Diagram) 등으로 표현

구현 뷰[edit | edit source]

시스템통합자의 관점

  • 구현 모듈과의 의존성 표현
  • 컴포넌트 구조와 의존성을 보여주고 컴포넌트에 관한 부가적인 정보 정의

배치 뷰[edit | edit source]

개발자, 시스템 통합자 및 테스터 관점
  • 컴포넌트가 물리적인 아키텍처에 어떻게 배치되는가를 보여주는 맵핑
  • 배치 다이어그램으로 표현