개발될 시스템과 관련된 외부 요소들, 즉 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수행할 수 있는 기능을 사용자의 관점(View)에서 표현한 것
특징
구성 요소
| 시스템(System)/ 시스템 범위
| System Scope | 시스템 내부에서 수행되는 기능들을 외부 시스템과 구분하기 위해 시스템 내부의 유스케이스들을 사각형으로 묶어 시스템의 범위를 표현 |
|---|---|
| 액터 | |
| Actor | - 시스템과 상호작용을 하는 모든 외부 요소, 사람이나 외부 시스템을 의미 |
시스템을 구성하는 클래스, 클래스의 특성인 속성과 오퍼레이션, 속성과 오퍼레이션에 대한 제약 조건, 클래스 사이의 관계를 표현한 것
특징
구성 요소
| 클래스 Class | - 각각의 객체들이 갖는 속성과 오퍼레이션을 표현
접근 제어자
| 접근제어자 | 표현법 | 내용 |
|---|---|---|
| public | + | 어떤 클래스에서라도 접근 가능 |
| private | - | 해당 클래스 내부에서만 접근 가능 |
| protected | # | 동일 패키지 내의 클래스 또는 해당 클래스를 상속 받은 외부 패키지의 클래스에서 접근 가능 |
| package | ~ | 동일 패키지 내부에 있는 클래스에서만 접근이 가능 |
시스템이나 객체들이 메시지를 주고받으며 시간의 흐름에 따라 상호 작용하는 과정을 액터, 객체, 메시지 등의 요소를 사용하여 그림으로 표현한 것
특징
구성 요소
| 액터
| Actor | - 시스템으로부터 서비스를 요청하는외부 요소, 사람이나 외부 시스템 |
|---|---|
| 객체 | |
| Object | - 메시지를 주고 받는 주체 |
| 생명선 | |
| Lifeline | - 객체가 메모리에 존재하는 기간, 객체 아래쪽에 점선을 그어 표현 |
| 실행 상자 | |
| Active Box | - 객체가 메시지를 주고 받으며 구동되고 있음을 표현 |
| 메시지 | |
| Message | - 객체가 상호 작용을 위해 주고 받는 메시지 |
| 회귀 메시지 | |
| Reply/Return Message | - 객체가 처리한 반환값이 담긴 메시지 |
| 제어블록 | |
| Loop | - 반복 처리되는 영역을 표시 |