소프트웨어 아키텍처 4+1 뷰 모델
SW설계UML
읽는데 4분 소요
처음 쓰여진 날: 2025-09-26
마지막 수정일: 2025-09-26
조회수: 17
요약
소프트웨어 아키텍처 4+1 뷰 모델을 알아봅니다. 정처기 대비를 위한 외우는 방법과 주관식 문제가 포함되어 있습니다.
키워드표
뷰 | 핵심 키워드 |
---|---|
유스케이스 뷰 | 사용자 기능, 시나리오, 유스케이스 다이어그램 |
논리 뷰 | 기능적 요구사항, 정적 구조, 클래스 다이어그램 |
프로세스 뷰 | 비기능적 요구사항, 동적 동작, 시퀀스 다이어그램 |
구현 뷰 | 소프트웨어 모듈, 컴포넌트 구조, 컴포넌트 다이어그램 |
배포 뷰 | 물리적 아키텍처, 하드웨어 배포, 배포 다이어그램 |
UML 다이어그램을 먼저 확인하세요
소프트웨어 아키텍처 4+1 뷰 모델
"이렇게 많은 UML 다이어그램을 언제 다 쓰지?" 라는 생각이 드시나요? 맞아요. 그래서 등장한 것이 바로 4+1 뷰 모델입니다. 복잡한 시스템을 5가지 다른 관점(View)으로 나누어 체계적으로 바라보는 방법론이죠. 각 뷰는 특정 이해관계자(개발자, 설계자, 사용자 등)에게 필요한 정보만 보여줍니다.
유스케이스 뷰 (Use Case View)
- 관점: 모든 이해관계자
- 설명: 시스템의 핵심 기능(사용자에 의해 인식되는 기능)을 정의하고 다른 뷰들을 이끌어가는 시나리오입니다. "사용자가 시스템으로 무엇을 할 수 있는가?"에 답합니다.
- 관련 UML 다이어그램: 유스케이스 다이어그램, 활동 다이어그램, 시퀀스 다이어그램
논리 뷰 (Logical View)
- 관점: 설계자, 개발자
- 설명: 시스템의 기능적 요구사항과 정적인 구조를 보여줍니다. "시스템이 기능적으로 어떻게 구성되는가?"에 답합니다.
- 관련 UML 다이어그램: 클래스 다이어그램, 객체 다이어그램
프로세스 뷰 (Process View)
- 관점: 시스템 통합자
- 설명: 시스템의 동적인 동작, 프로세스 간의 통신 및 동시성을 다룹니다.(시스템의 비기능적 요구사항) "시스템이 어떻게 살아 움직이는가?"에 답합니다.
- 관련 UML 다이어그램: 시퀀스 다이어그램, 통신 다이어그램, 활동 다이어그램
구현 뷰 (Implementation View)
- 관점: 프로그래머
- 설명: 실제 개발 환경의 관점에서 소프트웨어 모듈, 컴포넌트 구조를 보여줍니다. "소프트웨어는 어떻게 구현되고 관리되는가?"에 답합니다.
- 관련 UML 다이어그램: 컴포넌트 다이어그램, 패키지 다이어그램
배포 뷰 (Deployment View)
- 관점: 시스템 엔지니어
- 설명: 소프트웨어가 어떤 하드웨어(물리적인 아키텍처)에 어떻게 배포되는지를 보여줍니다. "시스템은 어떤 물리적 환경에 놓이는가?"에 답합니다.
- 관련 UML 다이어그램: 배포 다이어그램
이렇게 4+1 뷰 모델을 활용하면 복잡한 시스템의 아키텍처를 다양한 관점에서 명확하게 이해하고, 모든 이해관계자가 효과적으로 소통할 수 있습니다.
문제 | 4+1 뷰 모델을 모두 쓰시오. |
답변 | 1: 2: 3: 4: 5: |
정답 | 정답 보기 |
문제 | 소프트웨어 아키텍처 4+1 뷰 중 시스템의 기능적인 요구사항이 어떻게 제공되는지 설명해주는 설계자 및 개발자 관점 뷰는 ( ) 뷰입니다. |
답변 | |
정답 | 정답 보기 |
문제 | 소프트웨어 아키텍처 4+1 뷰 중 시스템의 비기능적인 속성으로서 자원의 효율적인 사용, 병행 실행, 비동기, 이벤트 처리등을 표현한 개발자, 시스템 통합자 관점 뷰는 ( ) 뷰입니다. |
답변 | |
정답 | 정답 보기 |
문제 | 소프트웨어 아키텍처 4+1 뷰 중 개발 환경 안에서 정적인 소프트웨어 모듈의 구성을 보여주는 뷰로 컴포넌트 구조와 의존성을 보여주고 컴포넌트에 관한 부가적인 정보를 정의하는 뷰는 ( ) 뷰입니다. |
답변 | |
정답 | 정답 보기 |