Use case란 무엇일까?

dogbird·2024년 4월 20일
0

OOAD

목록 보기
10/12

Use-Case Model이란?


Use-Case Model은 문맥에 따른 요구사항 작성이라고 할 수 있다. Use-Case는 특히 기능적인 요구사항을 기록하고 생각하는 것으로 OOAD를 포함하여 프로젝트의 여러 측면에 영향을 미친다. Use-case를 적는 것은 System 사용의 스토리를 적는것이다. 그렇기 때문에 Use-case는 요구사항을 이행하고 설명하는 탁월한 기술이라고 할 수 있다.

그렇다면 Use-Case Model은 뭘까? Use-Case Model은 모든 사용 사례의 집합으로 이것은 시스템의 기능과 환경을 나타내는 model이라고 할 수 있다.

UP의 전체적인 산출물은 아래와 같다. 그중에서 Use-Case Model은 점선이 쳐져있는 부분이다.

Use-case는 시스템을 사용하는 actor의 이야기를 글로 표현하는 것이다. 예를 들어 판매과정을 예로 들면 아래와 같이 손님이 물건을 사는 과정을 표현하는 것인 use-case이다.

Actor가 뭐야?
UP에서 Actor란 하나의 역할로 생각하면 된다. Actor는 행동을 하는 사람이 될 수도 있고 컴퓨터 시스템이나 관계자와 같은 조직원이 될 수도 있다. Actor는 system을 주독적으로 사용하는 Primary actor, 서비스를 제공하는 Supporting actor, 눈에 보이지 않지만 동작에 관여하는 Offstage actor가 있다.



Use-case와 Use-Case Model


UP는 요구 사항 discipline 내에서 Use-Case Model을 정의하는데 여기서 햇갈리지 않도록 용어 정리를 1차로 하고 가보자. Use Case와 Use-case Modeling에 대해 좀 더 집고 가자면, Use-case는 다이어그램이 아닌 글로 작성되는 것을 말하고 Use-case Modeling은 다이어그램을 그리는 것이 아니라 텍스트를 작성하는 행위이다. 그럼 이제 Use-case와 Use-Case Model을 각각 알아보도록 하자.

Use Case

Use Cases는 요구사항 이며 주로 기능적 또는 동작 요구사항이다. 시스템이 무엇을 할것인지 나태내고 그것을 정의하고 찾아내는 것이다. Use case는 시스템이 어떻게 작동할지에 대한 contract를 정의한다. 그래서 Use Cases를 시스템 사용에 대한 스토리라고 한다. 이런 측면에서 Use Cases는 요구사항 설명과 이해를 위한 아주 좋은 방법이라고 할 수 있다.

Use Case는 Actor가 성공적으로 완료하는 경우와 실패했을 경우를 모두 적는다. Use Case를 시나리오로 표현할 수 있는데, 시나리오는 행동을 순차적으로 표현한 것으로 Actor와 System사이의 상호관계를 구체적으로 표현한다. 시나리오를 Use-case instace라고도 한다. 시나리오는 예를 들어 현금으로 물건 구매를 성공적으로 진행하는 예시에 대한 것, 물건 구매를 실패하는 것에 대한 예시를 순차적으로 적는 것이다. 아래는 Use Case를 시나리오 적은 것이다.

전체적으로 use case가 어떻게 작성되는지를 나타내는 하나의 예제이다. 성공적으로 시나리오가 완성된 상황을 적고 이외의 다른 방향으로 흘러가게 되는 경우(extention)을 적어둔것을 확인 할 수 있고, 순차적으로 진행 상황을 작성한것을 알 수 있다.


profile
개발세발 개발자. 멋쟁이가 될 때 까지

0개의 댓글