###### tags: `서비스 요구사항` 프로젝트 김농만 요구사항 ==== [toc] :::info **Semantic Versioning** [Ref](https://semver.org/) 프로젝트 김농만은 semantic versioning 규칙을 따른다. **Version: 0.0.1** Major version up: 이전 버전의 기능들과 함께 사용이 불가능한 새로운 기능을 개발할 때마다 Minor version up: 새로운 기능일 추가될 때마다 Patch version up: 현재 기능의 버그를 수정할 때마다 ::: ## 낭만농객 낭만농객은 로컬트립을 이어주는 플랫폼 ## 목적 낭만농객 서비스를 만들어 사용자들이 지친 현대속에서 마음이 따뜻해질 수 있게 함 ## 용어 정의 :::spoiler ### 농만쓰 낭만농객 서비스를 사용하는 모든 가입자 ### 농만이 낭만농객 서비스를 사용하는 가입자 ::: ## 사용자 요구사항 정의 낭만농객 웹 서비스에 대한 요구사항을 정의한다. ### :snowboarder: 인증 사용자가 낭만농객을 이용하기 위해 인증하는 요구사항을 정의한다. - 이메일로 이용을 하는 사용자는 회원가입을 통해 계정을 생성할 수 있다. - 회원가입 시 다음의 **정보**를 기입한다. - 비밀번호 - 이메일 - 이메일은 이메일 인증이 필요로 될 수도 있음 가입 시 중복 방지를 위해:question: - or 이메일 중복을 허용하고 SNS인증만으로, 해결하는 것으로 해도 될 듯 (이 경우 중복 처리에 대한 계획이 필요) - Simple ! > 휴대폰번호와 이름 및 생일과 같은 정보는 일반회원 같은 경우에는 SNS인증을 통해서 가져올 수 있도록 함 > [Ref](https://naamezip.com/)에서 참조.. - 계정을 생성할 때 **속성을** 선택할 수 있다. - [Ref](https://www.baconbox.co/) - **속성 리스트** > 속성 리스트에 대한 정확한 명시가 요구됨 :whale: - 허리 건강도 - 에너자이저 - 보통 - 디스크 - 무릎 건강도 - 무에타이 니킥 - 보통 - 휠체어 - 수저 색 - 금수저 - 은수저 - 흙수저 - 학벌 - 중졸 - 고졸 - 대졸 - 이상형 보는 부위 - 얼굴 - 몸 - 지갑 - 음주 - 맥주 - 소주 - 와인 - 이동 수단 - 뚜벅이 - 자동차 - 스쿠터 - 자전거 등 - 사용자는 생성한 계정으로 **인증** 할 수 있다. - 사용자는 **SNS** 계정으로 **인증** 할 수 있다. - Kakao - Naver - *SNS 계정인증 api 구현 같은 경우에는 일반 회원가입 사용자 인증 구현 후에 이루어질 예정* - 사용자는 계정을 **관리할** 수 있다. - 사용자는 **bio를** 등록할 수 있다. - 자기소개 - 프로파일 사진 - 사용자는 **비밀번호**를 변경할 수 있다. - 이메일로 가입한 사용자는 **비밀번호 찾기** 기능을 이용할 수 있다. - 이메일로 가입한 사용자의 경우 이메일 찾기 기능까지는 제공해주지 않고, 비밀번호 찾기 기능에 대해서만 제공 ### :sailboat: 모듈 사용자가 모듈을 등록하고 신청하는 요구사항을 정의한다. - 사용자는 모듈을 **등록할** 수 있다. - 휴대폰 **인증을** 받은 사용자만 가능 - 모듈등록 시 **템플릿에** 맞게 작업을 진행한다. - 템플릿 구조 - 타이틀 - 썸네일 이미지 - 간단한 설명 - 주소 - 구체적인 설명 - 메인 이미지 - 수용 인원 - 일정 (다중 선택가능) - 날짜 - 시간 - 날짜를 선택하고 24시간 중 1시간 단위로 해서 모듈이 진행되는 시간을 선택가능 - ex) 2020-09-28 19시 - ex) 2020-09-28 19시, 20시, 21시 - ex) 2020-09-28 19시, 2020-09-29 19시 - 가격 - 모듈진행 시간 (시간 단위 선택 가능) - ex) 1시간 - ex) 3시간 - 카테고리 - 숙박 - 식사 - 액티비티 - 해쉬태그 (다중 입력 가능) - UI에 노출이 될 필수 내용을 적을 수 있다. - **제목** - 간단한 **설명** - **썸네일** 사진 - ~~**상세** 내용을 등록할 수 있다.~~ (2차 스코프) ~~- 굵게, 기울임, 사진등록, 정렬 등 블로그 형식~~ - ~~관리자는 등록된 모듈에 대해 **승인을** 줄 수 있다. ~~- 승인된 모듈은 즉시 UI에 표출된다.~~ ~~- 승인과정에서 필요한 내용을 관리자와 사용자가 **대화할** 수 있다.~~(2차 스코프) ~~- 대화가 생성될 때 **알림을** 줄 수 있다.~~ (2차 스코프) - 모듈을 등록한 사용자는 모듈을 **수정할** 수 있다. - 모듈 등록을 한 사용자에 한해 수정가능 - 컨펌을 다시 진행해 주어야 함 - 모듈을 등록한 사용자는 모듈을 **삭제할** 수 있다. - 모듈 등록을 한 사용자에 한해 삭제가능 - 모든 사용자는 모듈을 **확인할** 수 있다. - UI에 노출된 모듈제목, 간단한 설명, 썸네일 사진을 확인할 수 있다. - **Searching** - 해쉬태그 검색 - 해쉬태그 카운팅 - 제목 검색 - **Sorting** - 카테고리 - 모듈의 상세내용을 확인할 수 있다. - 모듈 탭 - 메인 페이지 - 인증된 사용자는 모듈을 **위시리스트에** 등록할 수 있다. - 인증된 사용자는 모듈의 가능시간 단위로 위시리스트에 모듈을 등록할 수 있다. - 위시리스트에 등록시 희망하는 **날짜와 시간**을 선택할 수 있다. (다중선택 가능) - 디자인 컨셉 - (idea.1) 베지터 안경 컨셉 - 모듈의 스펙(?) 을 볼 수 있음 > 위시리스트, 히스토리, 농만이의 여정, 뱃지, 농만쓰 다 묶어서 마이페이지에 넣는 것이 깔끔해 보임 ### :flag-my: 마이페이지 ------- ### :dolphin: 농만이의 여정 사용자가 등록한 농만이의 여정 URL을 토대로 크롤링하여 정보를 표시 - 사용자는 농만이의 여정을 **등록할** 수 있다. - 농만이의 여정 정보가 담긴 URL - SNS URL - **농만이의 여정**(사용자가 올린 SNS)를 확인할 수 있다. - Ref: 베이컨 박스 ### :hamburger: 위시리스트 위시리스트에서는 위시리스트에 추가한 모든 모듈을 보여준다. - 위시리스트에 등록한 모듈을 **확인할** 수 있다. - 날짜와 시간별로 모듈제목을 확인할 수 있다. - 모듈제목을 선택하면 상세내용을 볼 수 있다. - 위시리스트에 등록된 모듈을 **결제할** 수 있다. - 위시리스트에 등록된 모듈에 대해 결제를 진행할 수 있다. ~~- 결제는 PG로 진행 된다. (Scope 3)~~ - 결제는 기업계좌로 진행 된다. - 위시리스트에 등록된 모듈을 **취소할** 수 있다. ### :hibiscus: 히스토리 (결제된 모듈 시각화) 사용자가 여행을 다녀왔던 **히스토리를** 관리하는 요구사항 - 예약신청하여 다녀왔던 모듈을 확인할 수 있다. ### :de: 뱃지 사용자는 경험치에 따라 뱃지를 부여받을 수 있다. - **허클베리핀** - 회원가입을 완료 - **여행의 시작** - 첫 예약 성공 - **짬타이거** - 농장일을 10번 이상 예약 - **추노** - 농장일 예약 후 3번이상 취소 ### :bacon: 농만쓰 사용자는 계정을 생성한 사용자들을 확인할 수 있다. - 농만이의 정보를 확인할 수 있다. - 농만이의 **뱃지** - 농만이의 **특성** - 자기소개 ## 레퍼런스 - [남의집](https://naamezip.com/) - [카우치 서핑](https://www.couchsurfing.com/dashboard) - [나이키런](https://www.nike.com/kr/ko_kr/c/running/nike-run-club) - [베이컨박스](https://www.baconbox.co/)