프로젝트 역할분담 및 코드 회고

김민지·2025년 2월 14일

프로젝트 역할 분담

3. 프로젝트 역할 분담

기능기능명난이도난이도 분석담당자
1. 데이터베이스 설계테이블 설계🔥🔥 High기록, 유리병 편지, 사용자 등 여러 테이블 간 관계 설정 필요A
데이터베이스 구축🔥 Medium설계된 테이블을 DB에 적용하고, 기본 데이터 입력A
2. API 개발API 명세서 검토🔥 MediumAPI 요구사항 정리 및 문서화, 프론트엔드 협업 필요A
사용자 관리 API 개발🔥 Medium기본 CRUD 구현, OAuth 연동 전이라 단순한 인증 방식 적용 가능B
기록 관리 API 개발🔥🔥 High이미지 업로드, 데이터 저장 로직 필요 (파일 서버 연동 시 추가 복잡성)C
통계 관리 API 개발🔥🔥 High기록 데이터 분석, 태그별 사용량 집계, 통계 캐싱 필요C
유리병 편지 API 개발🔥🔥 High랜덤 메시지 매칭, 익명성 유지, 데이터 암호화 필요B
3. OAuth 인증 구현2.3.1 구글 드라이브 인증🔥🔥🔥 Very HighGoogle OAuth 2.0 인증 로직 구현, 액세스 토큰 관리김민지
4. 데이터 백업 기능2.4.1 데이터 파일 생성🔥 MediumJSON 또는 CSV 형태로 데이터 변환 및 저장김민지
2.4.2 드라이브 업로드🔥🔥 High구글 드라이브 API 또는 iCloud API를 통한 업로드 처리김민지
5. 데이터 복원 기능2.5.1 파일 목록 조회🔥 Medium클라우드 API에서 사용자 데이터 목록 가져오기김민지
2.5.2 파일 다운로드 및 변환🔥🔥 High저장된 파일을 읽어 DB에 반영, 데이터 무결성 체크 필요김민지
6. 파일 동기화 기능 구현2.6.1 데이터 비교 및 업데이트🔥🔥 High기존 데이터와 백업 데이터 비교, 차이 분석 필요A
7. 기본적인 배포 및 테스트2.7.1 API 단위 테스트🔥 Medium주요 API 기능 테스트 코드 작성
2.7.2 배포 준비🔥 Medium서버 및 DB 설정, 배포를 위한 파일 생성

프로젝트 폴더 구조

Route, Controller, Service 구조 참고해서 작성!

SOF-BACKEND/
│── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   ├── feature_request.md
│   ├── workflows/
│   │   ├── deploy.yml
│
│── .vscode/
│   ├── settings.json
│
│── controllers/
│   ├── authController.js
│   ├── backupController.js
│   ├── bottleMessageController.js
│   ├── recordsController.js
│   ├── statisticsController.js
│   ├── userController.js
│
│── middleware/
│   ├── generateToken.js
│
│── migrations/
│   ├── 20250206121007_init/
│   ├── 20250207115400_add_tags_/
│   ├── 20250207140350_add_image_/
│   ├── 20250207145629_add_unique_/
│   ├── 20250209173358_add_guest_/
│   ├── 20250210170915_add_update_/
│   ├── migration_lock.toml
│
│── models/
│   ├── database.js
│
│── node_modules/
│
│── repositories/
│   ├── bottleMessageRepository.js
│   ├── recordRepository.js
│   ├── userRepository.js
│
│── routes/
│   ├── authRoutes.js
│   ├── backupRoutes.js
│   ├── bottleMessageRoute.js
│   ├── records.js
│   ├── statistics.js
│   ├── syncRoutes.js
│   ├── userRoute.js
│
│── services/
│   ├── backupService.js
│   ├── bottleMessageService.js
│   ├── userService.js
│
│── src/
│   ├── app.js
│
│── uploads/
│   ├── (이미지 파일들)
│
│── utils/
│   ├── googleDrive.js
│
│── .env
│── .gitignore
│── app.js
│── backup.sql
│── cronJobs.js
│── package-lock.json
│── package.json
│── README.md
│── root.pem
│── schema.prisma
│── syncRoutes.js

0개의 댓글