
| 기능 | 기능명 | 난이도 | 난이도 분석 | 담당자 |
|---|---|---|---|---|
| 1. 데이터베이스 설계 | 테이블 설계 | 🔥🔥 High | 기록, 유리병 편지, 사용자 등 여러 테이블 간 관계 설정 필요 | A |
| 데이터베이스 구축 | 🔥 Medium | 설계된 테이블을 DB에 적용하고, 기본 데이터 입력 | A | |
| 2. API 개발 | API 명세서 검토 | 🔥 Medium | API 요구사항 정리 및 문서화, 프론트엔드 협업 필요 | A |
| 사용자 관리 API 개발 | 🔥 Medium | 기본 CRUD 구현, OAuth 연동 전이라 단순한 인증 방식 적용 가능 | B | |
| 기록 관리 API 개발 | 🔥🔥 High | 이미지 업로드, 데이터 저장 로직 필요 (파일 서버 연동 시 추가 복잡성) | C | |
| 통계 관리 API 개발 | 🔥🔥 High | 기록 데이터 분석, 태그별 사용량 집계, 통계 캐싱 필요 | C | |
| 유리병 편지 API 개발 | 🔥🔥 High | 랜덤 메시지 매칭, 익명성 유지, 데이터 암호화 필요 | B | |
| 3. OAuth 인증 구현 | 2.3.1 구글 드라이브 인증 | 🔥🔥🔥 Very High | Google OAuth 2.0 인증 로직 구현, 액세스 토큰 관리 | 김민지 |
| 4. 데이터 백업 기능 | 2.4.1 데이터 파일 생성 | 🔥 Medium | JSON 또는 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