Skip to content

백엔드 기능목록(2차 스프린트)

teo edited this page Jul 14, 2023 · 1 revision

스터디 개설 기능

  • 스터디를 개설할 수 있다.

    • [정책] 스터디명, 전체 사이클 수, 사이클 당 스터디 시간이 필요하다.
    • [정책] 스터디명은 최대 10자로 한다.
    • [정책] 스터디명은 영문도 가능하다.
    • [정책] 사이클은 최소 1번, 최대 8번으로 한다.
    • [정책] 사이클 당 스터디 시간은 20분에서 40분 사이로 한다.
  • 참여코드를 생성할 수 있다.

    • [정책] 참여코드는 알파벳 대문자 6자로 한다.
    • [정책] 스터디 상태와 무관하게 참여코드는 고유해야 한다.

스터디 참여 기능

  • 참여 가능한 스터디인지 판단할 수 있다.

    • [정책] 참여코드를 통해 개설된 스터디인지 판별해야 한다.
    • [예외] 개설되지 않은 스터디에 참여하려고 하면 예외를 반환한다.
  • 참여코드와 멤버 아이디를 통해 스터디의 정보와 닉네임을 반환할 수 있다.

    • [예외] 멤버 아이디가 유효하지 않은 경우 예외를 반환한다.
  • 스터디에 참여할 수 있다.

    • [정책] 스터디 아이디와 닉네임을 통해 멤버 아이디를 발급할 수 있다.
    • [정책] 닉네임은 1자 이상, 10자 이하여야 한다.
    • [예외] 한 스터디 내에서 닉네임이 중복되면 예외를 반환한다.

스터디 정보 조회 기능

  • 존재하지 않는 스터디를 조회하면 예외를 반환한다.

  • 스터디에 참여하지 않은 멤버를 조회하면 예외를 반환한다.

  • 스터디에 속하는 특정 멤버에 대한 정보를 조회할 수 있다.

    • [정책] 스터디 아이디와 멤버 아이디를 통해 다음의 항목을 조회할 수 있다.
      • 스터디 이름, 스터디 총 사이클, 사이클 당 학습시간, 멤버의 현재 사이클, 멤버의 진행 상태
  • 스터디 메타데이터 및 참여한 모든 스터디원에 대한 정보를 조회할 수 있다.

    • [정책] 스터디 아이디를 통해 다음의 항목을 조회할 수 있다.
      • 스터디 이름, 스터디 총 사이클, 사이클 당 학습시간, 전체 스터디원 닉네임 리스트
  • 스터디에 참여한 특정 스터디원의 콘텐츠를 조회할 수 있다.

    • [정책] 특정 멤버에 대해 다음과 같은 항목을 조회할 수 있다.
      • 현재까지 진행한 사이클 정보 리스트
        • 사이클 정보는 사이클 번호, 계획, 회고를 포함한다.
  • 멤버는 현재 사이클의 계획을 조회할 수 있다.


스터디 진행 기능

  • 멤버는 스터디 진행 단계를 넘길 수 있다.

    • [정책] 진행 단계에서는 회고 단계로만 넘길 수 있다.
    • [예외] 순서에 맞지 않는 단계로 넘기려는 경우 예외를 반환한다.
  • 멤버는 현재 사이클의 계획을 작성할 수 있다.

    • [정책] 멤버 아이디와 사이클 수를 입력받는다.
    • [정책] 각 항목은 10자 이상, 500자 이하이다.
    • [정책] 계획을 작성하면 스터디 단계가 계획에서 진행으로 넘어간다.
    • [예외] 계획에서 필수항목이 빈 값이면 예외를 반환한다.
  • 멤버는 현재 사이클의 회고를 작성할 수 있다.

    • [정책] 멤버 아이디와 사이클 수를 입력받는다.
    • [정책] 각 항목은 10자 이상, 500자 이하이다.
    • [예외] 회고에서 하나의 항목이라도 빈 값이면 예외를 반환한다.
Clone this wiki locally