Use Case Diagram?
"액터"와 "시스템"의 상호작용을 표현하는 다이어그램으로, 사용자 시점에서의 시스템 기능과 서비스를 보여준다.
여기서 액터란, 시스템 외부에서 상호작용하는 존재로 사용자가 될 수 있고 외부 시스템이 될 수도 있다.
Use Case Diagram의 구성
시스템을 사용하는 액터를 priamary actor, 시스템과 상호작용하는 외부 시스템을 secondary actor라 부른다. secondary actor는 시스템 박스인 scope 밖에 네모를 그리고 <<actor>>를 적어서 표현한다.
시스템 내부에 있는 동그라미, UseCase는 사용자의 요구사항을 구조화한 시스템이 제공해주는 서비스 및 기능이다.
액터와 유스케이스간의 관계는 선으로 표현한다.
include
특정 유스케이스가 실행되기 위해서 반드시 실행되어야하는 유스케이스는 더 선행되어야 할 유스케이스 방향으로 점선 화살표를 연결한 다음 << include >>를 적어준다.
위 예제의 경우에는 게시판에 글을 쓰기 위해선 로그인을 해야만 한다. 따라서 글쓰기에서 로그인으로 향하는 점선화살표가 그려진다.
extend
특정 유스케이스에서 확장되는 유스케이스는 점선 화살표로 연결한 다음 << extend >>를 적어준다. 작은 기능에서 큰 기능을 향하는 방향의 화살표를 그려야 한다. "파일 첨부를 하기 위해선 글쓰기가 선행되어야 한다" 라고 생각하면 include와 화살표 방향이 같다.
위 예제의 경우에는 게시글에 파일을 첨부할 수 있다. 여기서 파일 첨부는 해도 되고 안해도 되는 옵션이다. 따라서 extend로 연결해준다.
generalization
일반화는 OOP의 상속 개념을 생각하면 쉽다. 파일 첨부에서 파일은 이미지 파일과 동영상 파일 등등으로 나뉠 수 있을 것이다. 파일 첨부는 포괄적인 개념, 이미지 파일과 동영상 파일은 구체화된 개념이라 했을 때 구체화된 개념에서 포괄적인 개념을 향하는 화살표를 그린다.
'학교강의필기장 > OOP' 카테고리의 다른 글
Domain Model (0) | 2023.12.10 |
---|---|
System Sequence Diagram (0) | 2023.12.10 |
2. UML (1) | 2023.10.29 |
1. 객체 지향 패러다임 (0) | 2023.10.28 |
0. 객체지향개발론 개요 (1) | 2023.10.28 |