본문 바로가기

: Architecture

[UML] Use Case Diagram

반응형

Use Case Diagram

제목은 Use case diagram 이지만, 주로 use case 에 대한 정리가 되어버렸다. use case 에 대해서 제대로 알고 있다면, diagram 을 그리는 것은 어렵지 않다고 생각한다.

 

Use cases

우선 actor 의 개념을 먼저 정리하고 내려가겠다.

Actor
actor는 특정 역할을 가진 시스템과 상호작용을 하는 유저이다. 유저는 꼭 사람일 필요는 없다. 기관, 장치, 외부 시스템일 수도 있다.

Primary Actor / <<Secondary Actor>>
직관적으로도 알 수 있겠지만, Primary는 Usecase 를 진행하는 주체이며, Secondary는 Primary 가 상호작용에서 관련있는 객체이다.

 

Use case
시스템의 목표를 달성하기 위해서 특정 역할(들)을 가진 사용자들이 어떻게 사용하는지를 글로 표현한 것
UP (Uniified Process)에서 Functional Requirement로 사용한다(대체되어 진다).

Usecase 는 다이어그램이 아니다. 텍스트로 기술한다.

  • 3 레벨의 포멧: brief(OOA) -> casual(OOA) -> fully dressed(OOD)
  • Brief
    • Main Success Scenario 를 문장으로 작성하는 것
  • Casual
    특정 케이스에서 결과로 가는 과정을 시나리오로 나눠서 기술
    • Main Success Scenario 
    • Alternate Scenario
    • Exceptional Scenario
  • Fully Dressed
    사전조건이 존재하고, 이 케이스의 발생한 조건들에 대해 기술되어 있어야 한다. 
    • (Added) Preconditions
    • Main Success Scenario
    • Extensions(== Alternate Scenario)

 

Essensical Style
추상적으로 작성해서(==필수한 권한 및 기능에 대해서) 추상적으로 작성한다.

 

Black-Box Use Cases
시스템 내부 동작에 대해 기술하지 않는다.

 

 

Use Case Diagram

Usecase는 시스템의 목표를 달성하기 위해서 Actor들이 어떻게 사용하는지를 글로 표현한 것
UP (Uniified Process)에서 Functional Requirement로 사용한다.

Actor

사람모양으로 표시한다.

 

 

Relationship

association ( --- )

useCase와 actor의 관계를 표현

 

generalization ( --|> )

한 모델(하위)이 다른 모델(상위)을 기반으로하는 관계

 

include

기능이 다른 기능에 포함관계인 경우에 사용

 

extend

usecase의 역할을 확장하는 경우 (선택적 사용)

 

 

참고)

https://www.uml-diagrams.org/use-case-diagrams.html

https://www.ibm.com/docs/en/rsm/7.5.0?topic=diagrams-include-relationships 

 

 

반응형

': Architecture' 카테고리의 다른 글

[OOAD] SOLID  (0) 2022.06.23
[OOAD] GRASP  (0) 2022.06.22
[UML] Sequence Diagrams  (0) 2022.06.17
[UML] Class Diagram  (0) 2022.06.17