아웃소싱 프로젝트 1일차

박재성·2025년 1월 7일
0

오늘은 팀원들과 프로젝트의 요구사항을 분석하고, 필수~도전 기능 중 본인이 하고싶은 것 포함 할 일을 나누고, 기초 골격인 API 명세서를 만들었습니다.

📚Team Todo

📖우현

  • 프론트
  • 소셜로그인
  • 회원가입, 로그인
  • 유저

📖호진

  • 가게
  • 프론트

📖윤현

  • 리뷰
  • 검색

📖재성

  • 메뉴
  • 주문
  • 가게 대시보드

📌My Todo

  • 메뉴
    • 메뉴 생성/수정
      • 메뉴 생성, 수정은 사장님만 할 수 있습니다.
      • 사장님은 본인 가게에만 메뉴를 등록할 수 있습니다.
    • 메뉴를 단독으로 조회할 수는 없으며, 가게 조회 시 함께 조회됩니다.
    • 메뉴 삭제
      • 본인 가게의 메뉴만 삭제할 수 있습니다.
      • 삭제 시, 메뉴의 상태만 삭제 상태로 변경됩니다.
        • 가게 메뉴 조회 시 삭제된 메뉴는 나타나지 않습니다.
        • 주문 내역 조회 시에는 삭제된 메뉴의 정보도 나타납니다.
  • 주문
    • 고객은 메뉴를 주문할 수 있습니다.
      • 각 주문에는 하나의 메뉴만 주문할 수 있습니다. ❗ 장바구니는 도전 기능입니다.
    • 사장님은 주문을 수락할 수 있으며, 배달이 완료될 때까지의 모든 상태를 순서대로 변경 합니다.
    • 주문 요청 및 상태 변경
      • 새로운 주문이거나 주문의 상태가 변경될 때는 AOP에 의해 로그를 남겨야합니다.
        - 로그에는 요청 시각, 가게 id, 주문 id가 필수로 포함되어야합니다.

        ⚠️ 예외처리

      • 가게에서 설정한 최소 주문 금액을 만족해야 주문이 가능합니다.

      • 가게의 오픈/마감 시간이 지나면 주문할 수 없습니다.

  • 가게 대시보드
    • 사장님은 본인의 가게에 대한 통계를 볼 수 있습니다.
      • 일간/월간 고객수
      • 일간/월간 매출

📌Convention

⭐Git

feat : 새로운 기능 추가

fix : bug fix

docs : 문서 수정

style : 세미콜론 같은 코드의 사소한 스타일 변화.

refactor : 변수명 수정같은 리팩터링

test : 테스트 코드 추가 & 수정

chore : 중요하지 않은 일

⭐PR

  • 레이어 단위로 나누어 PR 작성
  • 추가 적인 기능은 기능별로 나누어 PR 작성

⭐Parameter

  • 3개 이상 부터 줄바꿈

🌟작성 예시

public void createUser(
							String name,
							String password,
						  String email
) {

}

⭐주석

  • 검증 로직 함수에 작성
  • 추가적으로 구체적인 설명이 필요한 로직의 경우 작성 가능

🌟작성 예시

 	/**
     * 이메일 형식 검증
     */
    private static boolean validateEmail(String email) {
        return pattern.matcher(email).matches();
    }

⭐Test

  • given / when / then 구조로 작성
  • 테스트 코드 메서드 이름 작성시 메서드명_상황_결과 형식으로 작성

🌟작성 예시

@Test
void createUser_ValidInput_Success() {
		// given
		
		// when
		
		// then
}

0개의 댓글