Development Artist

[Epic Device] #2. 기능 설계 본문

Project_Personal

[Epic Device] #2. 기능 설계

JMcunst 2022. 1. 13. 15:16
728x90
반응형

UseCase

 UseCase Model을 아는가? 일단 UseCase는 "비공식적으로, 목적을 충족시키기 위해 액터가 시스템을 사용하는 텍스트 형식의 스토리"로 설명할 수 있다. 이런 UseCase의 집합을 UseCase Model이라고 한다. 

 

 이번 개발에는 이 UC 모델을 바탕으로 설계를 해보려고 한다. 완전 타이트한 형식을 따르기 보다는 참고 정도로 러프하게 작성하는 점을 고려하자. 사실, 아래의 UseCase처럼 잘게 쪼갤 필요는 없다. 원래는 더 상위레벨로 UseCase를 만들어야 한다. (ex 가입하기, 탈퇴하기, 회원정보수정하기를 회원관리하기 하나로 묶어주는,,, 뭐 그런식.) 

 

 하지만, 혼자 개발을 하려는 입장에서 아래 처럼 해놓으면 빠르게 개발을 할 수 있을 것으로 판단하였다. 하나의 API 수준으로 작성한다고 봐도 무방할 듯 하다.


UseCase 1 : 가입하기

범위 : 회원 관리

수준 : 비회원을 회원으로 전환 시키기 위한 목적.

Actor : 비회원

관련자 :

- 관리자 : 성공적으로 가입이 되기를 기대한다. 

사전조건 : 안드로이드 or IOS 앱 설치가 가능한 상태.

성공 시나리오 :

1. 가입하기를 누른다.

  1a. 이메일 가입을 한다.   

  1b. 구글 or Facebook로 가입한다. 

2. 필요한 정보를 입력한다.

  2a. 이메일, 서버, 닉네임, 프로필이미지, 인사말

3. 시스템은 신청자를 인증한다.

4. 시스템은 가입을 승인한다.

  4a. 이메일 인증이 완료된 자.

 

UseCase 2 : 회원정보 수정하기

범위 : 회원 관리

수준 : 회원이 회원정보를 수정하기 위한 목적.

Actor : 회원

관련자 :

- 관리자 : 회원이 수정 프로세스가 성공적이길 기대한다. 

사전조건 : 안드로이드 or IOS 앱 설치가 되어 있는 상태.

성공 시나리오 :

1. 수정하기를 누른다.

2. 회원정보를 수정한다.

  2a. 프로필 이미지, 인사말

3. 저장하기를 누른다.

4. 시스템은 회원 정보를 업데이트한다.

 

UseCase 3 : 탈퇴하기

범위 : 회원 관리

수준 : 회원을 비회원으로 전환 시키기 위한 목적.

Actor : 회원

관련자 :

- 관리자 : 회원이 성공적으로 비회원으로 전환되길 기대한다. 

사전조건 : 안드로이드 or IOS 앱 설치가 되어 있는 상태.

성공 시나리오 :

1. 회원이 탈퇴하기를 누른다.

2. 시스템은 한번 더 체크한다. 

3. 시스템은 승인한다. 

 

UseCase 4 : 신고하기

범위 : 회원 관리

수준 : 회원이 다른회원의 부적절한 행위를 시스템에 알리기 위한 목적

Actor : 회원

관련자 :

- 회원(피신고자) : 신고의 대상이 된 자.  

- 관리자 : 신고자의 신고 요청을 받게 되는 자.

사전조건 

성공 시나리오 :

1. 신고하기를 누른다.

2. 신고 내용을 적는다.

3. 작성 버튼을 누른다.

4. 시스템은 신고 내용을 처리한다. 

 

UseCase 5 : 기사단 가입하기

범위 : 기사단

수준 : 기사단이 없는 회원 기사단 가입시키기 위한 목적.

Actor : 회원 

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

사전조건 : 기사단이 없는 회원.

성공 시나리오

1. 메인의 기사단탭에 + 버튼을 클릭한다.

2. 가입할 기사단을 검색한다.

3. 가입정보를 입력한다.

4. 가입 요청을 한다.

5. 해당 기사단의 단장에게 알림이 간다.

6. 해당 기사단의 단장이 승인한다.

 

UseCase 6 : 기사단 만들기

범위 : 기사단

수준 : 비회원을 회원으로 전환 시키기 위한 목적.

Actor : 회원 

관련자 :

- 관리자 : 기사단 만들기 요청이오면 승인권한이 있는 자.

사전조건 : 기사단이 없는 회원.

성공 시나리오 :

1. 메인의 기사단탭에 + 버튼을 클릭한다.

2. 기사단 만들기를 클릭한다.

3. 기사단 정보를 입력한다.

  3a. 중복확인

4. 시스템에 요청한다.

 

UseCase 7 : 기사단 만들기 승인하기

범위 : 기사단

수준 : 관리자가 기사단 만들기 요청을 한 회원을 승인하기 위한 목적.

Actor : 관리자

관련자 :

- 단장 : 기사단의 단장인 회원.

사전조건 : 기사단이 없는 회원이 신청해야 한다.

성공 시나리오 :

1. 관리자가 관리자 페이지에 접근

2. 기사단 생성 요청을 승인한다.

 

UseCase 8 : 피신고자 정지

범위 : 회원 관리

수준 : 관리자가 비적절한 행위를 한 회원을 정지시키기 위한 목적.

Actor : 관리자

관련자 :

- 신고자 : 신고한 자

- 피신고자 : 신고의 대상이 된 자.  

사전조건

성공 시나리오 :

1. 관리자가 관리자 페이지에 접근.

2. 피신고자를 정책에 의해 판단하여 정지.

 

UseCase 9 : 전쟁 등록하기

범위 : 기사단

수준 : 기사단 소속 인원이 전장 상대의 기사단을 등록하기 위한 목적.

Actor : 기사단 소속 인원

관련자

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 월, 수, 금, 오전 3시~ 익일 오전3시까지

성공 시나리오 :

1. 기사단 채널에 접속.

2. 전쟁 등록하기 클릭.

3. 상대 기사단 정보 입력.

4. 시스템 전쟁 세팅.

 

UseCase 10 : 단원 조회하기

범위 : 기사단

수준 : 기사단 소속 인원이 다른 기사단원들의 정보를 보기 위한 목적.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널에 접속.

2. 조회탭 클릭.

3. 시스템 해당 기사단원 조회해 노출.

 

UseCase 11 : 채팅하기

범위 : 기사단

수준 : 기사단 소속 인원들끼리 서로 채팅 하기 위한 목적.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널에 접속.

2. 채팅탭 클릭.

 

UseCase 12 : 전쟁 히스토리 보기

범위 : 기사단

수준 : 여태까지 진행한 전쟁에 대한 히스토리를 보기 위함.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널에 접속.

2. 기사단 히스토리 탭 클릭.

3. 시스템 기사단의 히스토리 조회해 노출.

 

UseCase 13 : 기사단 상대 스펙 등록하기

범위 : 기사단 

수준 : 전쟁 중 상대 스펙을 등록하기 위한 목적.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널 접속.

2. 현재 진행 중인 상대 기사단 클릭.

3. 등록하기 클릭

4. 상대 스펙 정보 입력

5. 시스템 해당 스펙 등록완료.

 

UseCase 14 : 기사단 상대 스펙 수정하기

범위 : 기사단 

수준 : 전쟁 중 상대 스펙을 등록하기 위한 목적.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널 접속.

2. 현재 진행 중인 상대 기사단 클릭.

3. 상대 스펙 중 하나 클릭.

4. 수정하기 클릭.

5. 해당 상대 스펙 정보 수정. 

6. 시스템 해당 상대 스펙 수정완료.

UseCase 15 : 기사단 상대 스펙 삭제하기

범위 : 기사단 

수준 : 전쟁 중 상대 스펙을 등록하기 위한 목적.

Actor : 기사단 소속 인원

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태.

성공 시나리오 :

1. 기사단 채널 접속.

2. 현재 진행 중인 상대 기사단 클릭.

3. 상대 스펙 클릭.

4. 삭제하기 클릭.

5. 시스템 해당 스펙 정보 삭제.

 

UseCase 16: 기사단 상대 스펙 보기

범위 : 기사단

수준 : 전쟁 중 상대 스펙을 조회하기 위한 목적.

Actor : 기사단 소속 인원

기사단 있는 플레이어

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 :  해당 기사단 소속인 상태. 

성공 시나리오

1. 기사단 채널 접속.

2. 현재 진행 중인 상대 기사단 클릭.

3. 상대 스펙 클릭.

4. 시스템 저장된 상대 스펙 조회해서 노출.

 

UseCase 17 : 단원 제명하기

범위 : 기사단

수준 : 기사단 단장이 단원들을 제명하기 위한 목적.

Actor : 단장

관련자 :

- 단장 : 기사단을 관리하는 자.

- 부단장 : 기사단을 관리하는 자. 

- 단원 : 기사단 소속 인원

사전조건 : 해당 기사단 소속인 상태, 권한은 단장 권한 소유자.

성공 시나리오 :

1. 기사단 채널 접속.

2. 조회탭 클릭.

3. 단원 제명 클릭.

4. 시스템 해당 회원 소속 기사단 정보 삭제.

UseCase 18 : 나의 실레나 히스토리 조회

범위 : 나의 실레나

수준 : 회원이 등록한 실레나 히스토리를 조회하기 위한 목적.

Actor : 회원

관련자 

- 관리자 : 회원이 빠르게 조회할 수 있도록 지원한다.

사전조건 : 안드로이드 or IOS 앱 설치가 되어 있는 상태.

성공 시나리오 :

1. 메인에서 나의 실레나 탭 클릭.

2. 시스템 해당 회원 실레나 히스토리 조회해서 노출.

  2a. 검색기간 제공

UseCase 19 : 나의 실레나 히스토리 등록

범위 : 나의 실레나

수준 : 회원이 

Actor : 회원이 실레나 히스토리를 기록할 수 있게끔 하기 위한 목적.

관련자 :

- 관리자 : 회원이 빠르게 등록을 할 수 있도록 지원한다.

사전조건 : 안드로이드 or IOS 앱 설치가 되어 있는 상태.

성공 시나리오 :

1. 메인에서 나의 실레나 탭 클릭.

2. 등록하기 클릭.

3. 실레나 정보 입력.

4. 시스템 해당 히스토리 저장.

UseCase 20 : 실레나 시뮬레이터

범위 : 실레나 시뮬레이터

수준 : 실레나 벤픽과 승리를 돕기 위한 목적.

Actor : 회원

관련자 :

- 관리자 : 회원이 빠르게 시뮬레이션 할 수 있도록 지원한다.

사전조건 : 안드로이드 or IOS 앱 설치가 되어 있는 상태.

성공 시나리오 :

1. 메인에서 시뮬레이터 탭 클릭.

2. 시작 클릭.

3. 회원의 클릭에 따라 시스템 적절한 정보 노출.

4. 초기화.


 쓰고 보니, 정말 정말 UseCase를 작성한 것이 아니라는 것을 알았다. 만약에 UseCase 또는 UseCase Model을 참고할 예정이라면 위의 작업은 절대 참고하면 안될 것 같다. 

 

 그렇다면, 오롯히 나의 개발을 위한 정리가 되었다... 망했다.

 

 UseCase Diagram도 작성을 하면 좋겠으나, 나중에 UseCase를 다룰 기회가 있다면 그때 제대로 작성하고 Diagram도 첨부하겠다.

 

 

728x90
반응형

'Project_Personal' 카테고리의 다른 글

[Epic Device] #6. 개발 스택  (0) 2022.01.18
[Epic Device] #5. Mockup  (0) 2022.01.14
[Epic Device] #4. CODE  (0) 2022.01.14
[Epic Device] #3. ERD 설계  (0) 2022.01.13
[Epic Device] #1. 개요  (0) 2022.01.13
Comments