A6조 팀 프로젝트 S.A
2023. 5. 22. 17:20ㆍteam/team project
AIA6 S.A (Starting Assignments)
팀 소개
- 팀명: 벼락치기
- 팀원: 이주한, 송지명, 최준영, 박진식, 이지훈
- 프로젝트 소개: 장르와 평점을 기준으로 영화를 추천해주는 사이트 입니다.
- 역할
- 송지명 (TMDB크롤링 & DB에 저장 ⇒ 머신러닝[Super Main])
- 박진식 (output중에서 한 개를 선택하게 될 경우 백 엔드 동작 ⇒ 머신러닝)
- 최준영 (프론트 엔드 ⇒ 머신러닝)
- 이지훈 (후기 CRUD, 좋아요 기능 ⇒ 머신러닝)
- 이주한 (로그인 / 회원가입 / 마이페이지, TMDB크롤링 & DB에 저장 ⇒ 머신러닝[Sub])
- 기능:
- 로그인 / 회원가입
- 회원가입(이메일 or 소셜은 추후 논의)
- 로그인
- 로그아웃
- 마이페이지
- 영화
- 후기 CRUD (TextField 짧게 한줄평 느낌으로!)
- 좋아요 기능
- 영화 추천 과정
- 관심있는 장르 or 영화 수집 페이지
- TMDB API 중 Trending 랜덤 10개 띄워주기 (영화 제목 / 포스터)
- 하나를 선택 = input, 근데 없으면?(다시 검색하기 - 또 스무개/위에서 띄운 10개는 제외)
- 3~5개의 output중에서 하나를 고르면(영화 제목 / 포스터)
- 해당 영화 줄거리 / 포스터 / 후기 + AI가 input과 장르가 유사하고 평점이 높은 영화 추천 3개 (영화 상세 페이지)
- 로그인 / 회원가입
- 추가기능(시간이 남으면 구현 도전!)
- 좌측 메뉴 바 슬라이드 인 / 슬라이드 아웃 기능
- 영화 추천 페이지 모달 기능
- 디자인 조금 더 다듬기
- 구글 소셜 로그인 기능
Wireframe
API 명세서
로그인 요청 | POST | /users/sign-in/ | • user_name : 사용자 ID • password: 사용자 Password |
성공: 200 Ok 실패: 401 Unauthorized |
POST : 토큰 형식으로 아이디와 패스워드를 입력 받고 로그인을 할 수 있게 합니다. |
회원가입 | POST | /users/sign-up/ | • user_name : 사용자 ID • password: 사용자 Password • email: 사용자 email • re_password: Password 확인 |
성공: 201 Created 실패: 400 Bad Request |
POST : POST 요청을 처리하며, 새로운 사용자를 생성합니다. |
사용자 정보 삭제 | DELETE | /users/mypage/ <int:user_id>/ |
• user_id : 사용자 ID |
성공: 204 No Content 실패: 400 Bad Request |
DELETE : 사용자의 정보를 삭제합니다. |
마이 페이지 | GET | /user/mypage/ <int:user_id>/ |
• user_id : 사용자 ID |
성공: 200 Ok 실패: 400 Bad Request |
해당 유저의 정보와 해당 유저가 작성한 모든 후기를 불러옵니다. |
후기 작성 | POST | /review/<str:title>/ | • content : 후기 내용 • user_id : 사용자 ID • title : 영화 제목 |
성공: 201 created 실패: 400 bad request |
해당 영화의 후기를 작성합니다. |
후기 수정 | PUT | /review/<int:review_id>/ | • user_id : 사용자 ID • content : 후기수정 내용 • review_id : 후기 ID |
성공: 200 Ok 실패: 400 Bad Request |
해당 유저가 작성한 후기를 수정합니다. |
후기 삭제 | DELETE | /review/<int:review_id>/ | • user_id : 사용자 ID • review_id : 후기 ID |
성공: 204 No Content 실패: 400 Bad Request |
해당 유저가 작성한 후기를 삭제합니다. |
좋아요 | POST | /review/<int:review_id>/like/ | • user_id : 사용자 ID • review_id : 후기 ID |
성공: 200 Ok 실패: 400 Bad Request |
해당 유저가 마음에 드는 후기에 좋아요를 남길 수 있습니다. |
메인 페이지 | GET | /main/ | 성공: 200 Ok 실패: 400 Bad Request |
모든 영화중 무작위로 10개를 출력합니다. | |
영화 추천 상세 페이지 | GET | /recommendation/<int:movie_id>/ | • movie_id : 영화ID |
성공: 200 Ok 실패: 400 Bad Request |
유저가 선택한 영화의 상세 정보와 추천 영화들을 출력합니다. |
ERD
Team Convention
- 식사 시간
- 저녁시간: 6~7시
- 점심시간: 12시~2시 사이
- 회의 시간: 아침 9시, 점심 2시, 저녁 8시
- 휴식 시간: 가능하면 시간당 10분씩은 쉬기로
- 그 외 규칙
- 좋은 의견이나 개선해야할 부분이 있다면 적극적으로 제안하기
Git Convention
- Commit convention
- gitmoji 활용 (다소 번거로울 수 있으나 gitmoji 사용이 Git 협업에 도움이 될 것으로 생각 됩니다. 참여 부탁 드립니다!)
- Local repository branch 전략
- 본인의 git 원격 저장소로 fork
- ⇒ 본인 로컬 저장소로 clone
- ⇒ 본인 로컬 저장소에서 작업 하기 전 항상 branch 생성하고 branch에서 작업
- ⇒ branch에서 작업 끝나면 main branch로 merge
- ⇒ 로컬에서 merge 완료되면 pull request 진행
- Pull request convention
- pull request는 될 수 있으면 동시에 여러 명이 아닌 한 번에 한 명씩 순서대로 진행할 것(이렇게 해야 결과물들이 계속 최신화되면서도 에러나 충돌을 막을 수 있을 것으로 예상)
- pull request가 있다면 당시에 팀원들에게 전파 후 바로 pull 받아볼 수 있도록 조치하여팀원들의 local repository의 main branch와 원본 repository의 main branch의 버전이 항상 동일하도록 노력 할 것
- 항상 본인의 Pull Request 전에 앞선 Pull Request가 있었는지 확인
- 있다면 원본 repository의 main branch를 본인 local 환경의 main branch로 pull 받아 본인의 결과물과 합쳐본 후 에러 유무와 충돌 유무를 확인
- 에러나 충돌이 있다면 해결 후 pull request 진행
'team > team project' 카테고리의 다른 글
A7 - Eco Canvas 로고 (0) | 2023.07.05 |
---|---|
미니 팀 프로젝트 피드백 해결 과정 - 2 (0) | 2023.03.19 |
미니 팀 프로젝트 피드백 해결 과정 - 1 (4) | 2023.03.17 |