[소프트웨어공학] 유스케이스 다이어그램(Use-case Diagram)
이전 포스팅에서 구조 다이어그램에 해당하는 클래스 다이어그램과 컴포넌트 다이어그램에 대해 알아보았습니다.
이번 포스팅에서는 행위 다이어그램에 해당하는 유스케이스 다이어그램(Use-case Diagram)에 대해 알아보도록 하겠습니다.
- 구조 다이어그램(Structure Diagram)
클래스 다이어그램(Class Diagram)컴포넌트 다이어그램(Component Diagram)
- 행위 다이어그램(Behavior Diagram)
- 유스케이스 다이어그램(Use-case Diagram)
- 시퀀스 다이어그램(Sequence Diagram)
- 콜라보레이션 다이어그램(Collaboration Diagram)
- 상태 다이어그램(State chart Diagram)
- 활동 다이어그램(Acticity Diagram)
Use Case Diagram
Actor와 Use Case의 관계를 도식화
- Actor는 시스템과 상호 작용하는 어떤 것을 말한다. (사람, 컴퓨터 시스템, 조직)
- 시나리오
- actor와 시스템의 활동 및 상호간의 활동에 대한 명확한 순서 표현
- Use Case Instance
- 하나의 특정한 스토리 또는 경로
- Use Case는 Actor가 목적을 이루기 위해 시스템 사용과 관련된 성공 및 실패 시나리오의 집합
Use Case 텍스트의 내용
Use Case 포함관계, 확장관계
- 포함관계 "Included use case required, not optional"
Use Case의 포함관계는 하나의 Use Case가 다른 Use Case의 실행을 전제로 할 때 형성됩니다.
포함하는 Use Case에서 포함되는 Use Case 방향으로 점선 화살표를 표기하고 $<<$include$>>$ 라고 표기합니다.
위의 예시에서 "체크아웃"은 "지불"이라는 기능이 반드시 실행되어야 동작함을 나타냅니다.
즉, 포함관계는 기능에 포함되는(화살표가 가르키는) Use Case가 반드시 실행됨을 전제로 하고 있습니다.
- 확장관계 "Extending use case is optional, supplementary"
Use Case의 확장관계는 포함관계와는 다르게 선택적 행위입니다.
확장 기능 Use Case에서 확장 대상 Use Case 방향으로 화살표를 점선으로 연결하고 $<<$extend$>>$라고 표기합니다.
위의 그림과 같이 Actor가 주문 결제를 하기 위해서는 온라인 송금, 카드 결제, 휴대폰 결제, 마일리지 결제를 선택할 수 있습니다. 하지만 단 한 가지도 선택이 안된다면, 주문 결제를 진행할 수 없기 때문에 최소 한개를 선택해야 합니다.
포함관계에서는 화살표의 방향이 Actor에서 나가는 화살표의 방향과 동일하고,
확장관계에서는 화살표의 방향이 Actor에서 나가는 화살표가 가르키는 Use Case로 들어오는 방향임을 확인할 수 있습니다.
'[컴퓨터공학] > [소프트웨어공학]' 카테고리의 다른 글
[소프트웨어공학] SOLID - 단일 책임 원칙(Single Responsibility Principle) (0) | 2022.05.01 |
---|---|
[소프트웨어공학] 순차 다이어그램(Sequence Diagram) (0) | 2022.03.22 |
[소프트웨어공학] 컴포넌트 다이어그램(Component Diagram) (0) | 2022.03.18 |
[소프트웨어공학] 클래스 다이어그램(Class Diagram) (0) | 2022.03.17 |
[소프트웨어공학] UML 정의와 종류 (0) | 2022.03.16 |