객체지향의 사실과 오해
서적 참고
유스케이스(Usecase)
- 유스케이스는 사용자의 목표를 달성하기 위해 사용자와 시스템 간에 이뤄지는 상호작용의 흐름을 텍스트로 정리한 것이다.
유스케이스 특징
1. 유스케이스는 사용자와 시스템 간 상호작용을 보여주는 '텍스트'다.
- 유스케이스의 핵심은 사용자와 시스템 간의 상호작용을 일련의 이야기 흐름으로 표현하는 것이다.
- 다이어그램에 노력을 쏟지 말고, 유스케이스에 담겨있는 이야기에 집중해야한다.
2. 하나의 시나리오가 아니라 여러 시나리오들의 집합이다.
- 시나리오는 유스케이스를 통해 시스템을 사용하는 하나의 특정 이야기 또는 경로이다.
- ex> 이자 계산이라는 유스케이스가 있다고 해보자, 이자 계산은 2개의 시나리오를 포함하는데
- 첫번째 시나리오: 예금주가 계좌를 선택하고 당일까지의 이자액을 계산한다.
- 두번째 시나리오: 예금주가 계좌를 선택하고 특정일까지 이자액을 계산한다.
- 즉, 유스케이스는 사용자 목표를 가지는 시나리오들의 집합이라고 할 수 있다.
3. 단순한 피처(feature)목록은 아니다.
- 피처 란, 시스템의 기능을 하나하나 전부 열거한 것이다.
- 각 기능 별 연관성 없이 열거한 것이 피처이다.
- 유스케이스는 각 기능들을 하나의 큰 카테고리로 묶어, 기능들을 연관짓게 하는 것이라고 볼 수 있다.
4. 사용자 인터페이스와 관련된 세부 정보를 포함하면 안된다.
- 유스케이스는 사용자 관점에서 시스템의 행위에 초점을 맞춰 작성해야한다.
- 사용자 인터페이스를 배제한 형식을 본질적인 유스케이스(essential usecase)라고 한다.
5. 내부 설계와 관련된 정보를 포함하면 안된다.
- 마찬가지로 사용자 관점에서 시스템의 기능을 유스케이스로 표현해야하지, 내부 설계를 설명하는것이 아니다.
'프로그래밍' 카테고리의 다른 글
[클린코드] 6장 객체와 자료구조 (0) | 2023.10.15 |
---|---|
Architecture Decision Record (ADR)이란? (0) | 2023.05.27 |
VisualStudio Copilot 설치하기 (0) | 2023.03.30 |
[MinIO] MinIO Windows에 설치하기 (0) | 2023.03.10 |
Zero Copy 란? (0) | 2023.03.05 |