유스케이스 다이어그램이란
- 사용자의 관점에서 시스템의 서비스 및 그와 관련한 외부 요소를 보여주는 다이어그램
- 주로 기능적 요구사항의 식별을 위해 사용됨
- 비기능적 요구사항을 추출하기에는 적절하지 않음
- 요구사항 분석 시 사용. 유스케이스 모델링 -> 요구사항 상세 기술서 -> 요구사항 명세서
- 유스케이스 모델링을 통해 요구사항 상세 기술서를 작성하고 이를 바탕으로 요구사항 명세서(SRS, Software Requirement Specificat`ion)를 작성
유스케이스 다이어그램의 구성 요소
시스템
- 만들고자 하는 애플리케이션을 의미
- 시스템 안에 있는 것들이 구현의 대상이고, 시스템 밖에 있는 것들은 만들지 않음
- 표기법
- 유스케이스를 둘러싼 사각형의 틀을 그리고, 시스템 명칭을 사각형 안쪽 상단에 기술
액터
- 시스템 외부에 있으면서 시스템과 상호 작용을 하는 다른 시스템
- 액터는 꼭 사람일 필요 없음
- 액터는 항상 시스템 밖에 위치함
- 표기법
- 사람 모양으로 표현하고 그 아래에 액터명을 표시
유스 케이스
- 시스템이 액터에게 제공해야 하는 기능의 집합
- 유스케이스의 이름은 명사보다 동사로 작성하는 게 좋음
- 보다 의미 전달이 명확함
관계
- 액터와 유스케이스 사이의 의미 있는 관계를 의미함
- 종류
- 연관 관계
- 의존 관계
- 포함관계, 확장관계
- 일반화 관계
연관 관계 (association)
- 유스 케이스와 액터 간 상호작용이 있음을 표현
- 유스케이스와 액터를 실선으로 연결
포함 관계 (include)
- 포함되는 유스케이스는 포함하는 유스케이스를 실행하기 위해 반드시 실행되어야 하는 경우에 적용
- 포함하는 유스케이스에서 포함되는 유스케이스 방향으로 화살표 점선으로 연결하여 표현하고 <<include>>라고 표기
- 여러 곳에서 해당 기능을 사용할 때 유스케이스로 뽑아서 포함 관계로 표현
- A includes B로 해석
- 아래 예시에서는 '송금한다'가 '본인인증 한다'를 포함한다로 해석. (송금하려면 본인인증을 반드시 해야함)
확장 관계 (extend)
- 특정 조건에 따라 확장 기능 유스케이스를 수행하기도 하는 경우에 적용
- 확장 기능 유스케이스에서 확장 대상 유스케이스 방향으로 화살표를 점선으로 연결하여 표현하고 <<extend>>라고 표기유
- A extends B로 해석
- 아래 예시에서 '파일 첨부한다'가 '글을 등록한다'를 확장함. (글을 등록할 때 조건에 따라 파일을 첨부)
일반화 관계 (generalization)
- 유사한 유스케이스들 또는 액터들을 모아 그들을 추상화한 유스케이스 또는 액터와 연결시켜 그룹핑
- 구체적인 유스케이스에서 추상적인 유스케이스 방향으로 끝부분이 삼각형의 테두리로 표현된 화살표를 실선으로 연결하여 표현
유스케이스 다이어그램 작성 시 주의사항
- 유스케이스는 단순하게 유지해야한다!
- 세부사항을 포착하는데 집착하지마라
반응형