본문 바로가기
Programming/TDD Project

Pull Request 001 - 요구 사항 분석

by JKROH 2023. 9. 21.
반응형

[요구 사항은 언제든 추가, 삭제 및 수정 될 수 있습니다.]

 

  • 회원 가입이 가능해야 한다.
    • 이메일, 비밀번호, 닉네임, 전화번호, 성별나이, 역할(바버 / 고객)은 반드시 입력해야 하며, (역할을 바버로 선택한 경우) 근무 중인 샵을 입력할 수 있어야 한다.
      • 만일 근무 중인 샵이 등록되어 있지 않다면, 먼저 회원 가입을 하고 샵을 등록해야 한다.
      • 만일 근무 중인 샵이 없다면, 아무 것도 입력하지 않을 수 있어야 한다.
    • 네이버 이메일 인증 API를 이용하여 이메일 인증을 진행해야 한다.
  • 로그인이 가능해야 한다.
    • 이메일, 비밀번호를 입력해야 한다.
  • OAuth 로그인이 가능해야 한다.
    • 카카오톡, 구글을 우선 적용한다.
    • 가능하다면 네이버 로그인도 적용한다.
  • 회원 정보 페이지 조회 및 회원 정보 수정, 회원 탈퇴를 할 수 있어야 한다.
    • 닉네임, 비밀번호의 수정이 가능해야 한다.
    • 회원 사진을 추가할 수 있어야 한다.
    • 최근 예약한 샵의 정보가 조회 가능해야 한다.
    • 작성한 게시글이 조회 가능해야 한다.
    • 바버의 경우, 근무 중인 샵을 수정할 수 있어야 한다.
  • 바버샵을 등록할 수 있어야 한다.
    • 바버로 로그인한 사용자만 해당 기능을 수행할 수 있어야 한다.
    • 샵의 이름, 사진, 주소, 전화 번호, 소개글을 입력해야 한다.
    • 해당 바버샵이 실제로 등록된 샵인지 검증할 수 있어야 한다.
  • 각 바버샵의 정보를 조회할 수 있어야 한다.
    • 해당 바버샵의 대표 사진, 주소, 전화 번호, 평점, 근무 중인 직원, 작성된 리뷰, 예약 일정을 확인할 수 있어야 한다.
  • 지도에서 바버샵을 검색하고 검색한 바버샵에 예약할 수 있어야 한다.
    • 네이버 지도 API, 또는 카카오 맵 API를 사용하여 주변 바버샵을 검색할 수 있어야 한다.
    • 검색한 샵의 예약 일정을 확인할 수 있어야 한다.
    • 고객이 예약 신청을 하면, 샵에서 해당 요청을 확인할 수 있게 이메일, 푸시 알람 등을 보내야 한다.
    • 예약이 확정되면, 해당 샵의 일정을 수정해야 한다.
  • 자유 게시판, 구인 구직 게시판, 리뷰 게시판이 있어야 한다.
  • 게시글을 작성할 수 있어야 한다. 
    • 로그인 한 사용자만 해당 기능을 수행할 수 있게 제한해야 한다.
    • 구인 구직 게시판의 경우, 구인과 구직을 구분한 글머리가 선택 가능해야 한다.
    • 리뷰 게시판의 경우, 해당 샵을 실제로 이용하였다는 증빙이 가능해야 한다.
      • 예약 기능을 통해 예약한 이후, 해당 시간이 지나면 리뷰를 작성할 수 있게 한다.
    • 제목, 본문을 작성해야 한다.
      • 만일 둘 중 하나가 채워지지 않았거나 내용이 특정 분량을 만족하지 않으면, 예외 처리하고 게시글을 등록할 수 없게 한다.
  • 게시글의 수정, 삭제가 가능해야 한다.
    • 게시글을 작성한 이용자만 해당 기능을 수행할 수 있게 제한해야 한다.
    • 게시글 수정 시, 수정 시간이 갱신되어야 한다.
  • 게시글을 조회할 수 있어야 한다.
    • 비회원의 경우에도 게시글을 조회할 수 있도록 해야 한다.
    • 게시글 조회 시 조회 수가 증가해야 한다.
  • 게시글을 추천, 비추천 할 수 있어야 한다.
    • 로그인 한 사용자만 해당 기능을 수행할 수 있게 제한해야 한다.
    • 중복 추천 또는 비추천이 불가능하게 설정해야 한다.
    • 비추천 수가 추천 수에 비해 20 이상 높으면, 해당 게시글은 삭제한다.
  • 게시글에 댓글을 작성할 수 있어야 한다.
    • 로그인 한 사용자만 해당 기능을 수행할 수 있게 제한해야 한다.
  • 댓글의 수정, 삭제가 가능해야 한다.
    • 댓글을 작성한 이용자만 해당 기능을 수행할 수 있게 제한해야 한다.
    • 댓글 수정 시, 수정 시간이 갱신되어야 한다.
  • 댓글을 조회할 수 있어야 한다.
    • 비회원의 경우에도 댓글을 조회할 수 있도록 해야 한다.
  • 댓글을 추천, 비추천 할 수 있어야 한다.
    • 로그인 한 사용자만 해당 기능을 수행할 수 있게 제한해야 한다.
    • 중복 추천 또는 비추천이 불가능하게 설정해야 한다.
반응형

댓글