Skip to content

SideProjectSFY/getchaBE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

GetchaBE Project

๐Ÿ“‹ ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

ํ”„๋กœ์ ํŠธ ์ •๋ณด

  • ํ”„๋กœ์ ํŠธ๋ช…: ๊ฒŸ์ฑ (Getcha)
  • ์ง„ํ–‰์ผ์ž: 2025.11.13 ~ 2025.12.21
  • ๊ฐœ๋ฐœํ™˜๊ฒฝ: Java(Spring Boot), Vue.js

ํƒ€๊ฒŸ์ธต

ํ’ˆ์ ˆ๋กœ ์ธํ•ด ๊ตฟ์ฆˆ๋ฅผ ์‚ฌ์ง€ ๋ชปํ•œ 2030 ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋•ํ›„

ํ”„๋กœ์ ํŠธ ๋ชฉํ‘œ

  • ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ฐ ์บ๋ฆญํ„ฐ ๊ตฟ์ฆˆ ๊ธฐ๋ฐ˜ ๊ฐœ์ธ ๊ฐ„ ๊ฒฝ๋งค ํ”Œ๋žซํผ ๊ตฌ์ถ•
  • ๊ฐ€์ƒํ™”ํ ๊ธฐ๋ฐ˜ ์•ˆ์ „ ๊ฑฐ๋ž˜ ์‹œ์Šคํ…œ ์ œ๊ณต
  • ์‚ฌ์šฉ์ž ๊ด€์‹ฌ ์• ๋‹ˆ ๋ชฉ๋ก์„ ํ†ตํ•œ ์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ AI ๊ตฟ์ฆˆ ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ
  • ์•ˆ์ •์ ์ธ UX ์ œ๊ณต์„ ์œ„ํ•œ ๊ฒฝ๋งค ๊ด€๋ จ ์•Œ๋ฆผ + ๊ฒฝ๋งค ํƒ€์ด๋จธ ๊ตฌํ˜„

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ

๊ฐœ๋ฐœ ์–ธ์–ด ๋ฐ ๋„๊ตฌ

  • Database: MySQL, MyBatis
  • Backend: Java 17, Eclipse/IntelliJ, Springboot 3.4.12 / Gradle
  • etc: Spring Security, Jwt, Cookie/Session, Swagger
  • AI
    • HuggingFace Inference API (ํ…์ŠคํŠธ ์ž„๋ฒ ๋”ฉ ์ƒ์„ฑ)
    • Pinecone API (Vector DB ์ €์žฅ ๋ฐ ์œ ์‚ฌ๋„ ๊ฒ€์ƒ‰)
  • External API
    • TMDB API (์• ๋‹ˆ ๊ด€๋ จ ์ •๋ณด)
    • PortOne API (๊ฒฐ์ œ ์—ฐ๋™)

๐Ÿ“Š ๊ธฐ๋Šฅ์  ์š”๊ตฌ์‚ฌํ•ญ

๊ธฐ๋Šฅ์  ์š”๊ตฌ์‚ฌํ•ญ (Functional Requirements)

1. ํšŒ์›/์ธ์ฆ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FU-101 ํšŒ์›๊ฐ€์ž… - ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋“ฑ๋ก
- ๊ฐ€์ž… ์‹œ ๊ธฐ๋ณธ ์ง€๊ฐ‘ ์ž๋™ ์ƒ์„ฑ
- ์‹ ๊ทœ ๊ฐ€์ž… ์ด๋ฒคํŠธ ๊ณจ๋“œ ์ถฉ์ „ (50,000 ๊ณจ๋“œ)
ํšŒ์› ๊ฐ€์ž… ํŽ˜์ด์ง€
FU-102 ์ด๋ฉ”์ผ ์ธ์ฆ - SMTP ๊ธฐ๋ฐ˜ ์ธ์ฆ ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€
FU-103 ๋กœ๊ทธ์ธ - Spring Securtiy JWT ๊ธฐ๋ฐ˜ ์ธ์ฆ
- Access Token ๋ฐœ๊ธ‰
๋กœ๊ทธ์ธ ํŽ˜์ด์ง€
FU-104 ํ”„๋กœํ•„ ์กฐํšŒ - ๋‹‰๋„ค์ž„, ํ”„๋กœํ•„ ํฌ์Šคํ„ฐ ์กฐํšŒ ๊ธฐ๋Šฅ ์ œ๊ณต ๋งˆ์ดํŽ˜์ด์ง€
FU-105 ํ”„๋กœํ•„ ์ˆ˜์ • - ๋‹‰๋„ค์ž„, ํ”„๋กœํ•„ ํฌ์Šคํ„ฐ ๋ณ€๊ฒฝ ๊ธฐ๋Šฅ ์ œ๊ณต ๋งˆ์ดํŽ˜์ด์ง€
FU-106 ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ - TMDB API๋ฅผ ์—ฐ๋™ํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ข‹์•„ํ•˜๋Š”
์• ๋‹ˆ๋ฉ”์ด์…˜ ๋“ฑ๋ก ๋ฐ ์ˆ˜์ • (AI ์ถ”์ฒœ์˜ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ)
- ํ•„์ˆ˜ 3๊ฐœ ๋“ฑ๋ก
๋งˆ์ดํŽ˜์ด์ง€
FU-107 ํšŒ์› ํƒˆํ‡ด
(= ๋น„ํ™œ์„ฑํ™”)
(1) ํƒˆํ‡ด ๊ฐ€๋Šฅ ์ƒํƒœ
- ๊ฒฝ๋งค ๋Œ€๊ธฐ ์ƒํƒœ ๊ตฟ์ฆˆ ๋“ฑ๋ก๊ธ€ ์‚ญ์ œ ์‹œ
- ์˜ˆ์น˜๊ธˆ unlock ์ƒํƒœ(์ตœ๊ณ ์ž…์ฐฐ๊ฐ€๊ฐ€ ์•„๋‹Œ ์ƒํƒœ) ๊ฐ€์ƒํ™”ํ๋กœ ๋ˆ ๋ฐ˜ํ™˜ ์‹œ
(2) ์ฒ˜๋ฆฌ ์š”์ฒญ ์ƒํƒœ
- ๊ฒฝ๋งค ์ง„ํ–‰ ์ƒํƒœ: ๋‚™์ฐฐ or ํŒจ์ฐฐ ๋œ ํ›„ ํƒˆํ‡ด ์š”์ฒญ
- ์˜ˆ์น˜๊ธˆ lock ์ƒํƒœ: ๋‚™์ฐฐ or ํŒจ์ฐฐ ๋œ ํ›„ ํƒˆํ‡ด ์š”์ฒญ
๋งˆ์ดํŽ˜์ด์ง€

2. ๊ตฟ์ฆˆ ๋“ฑ๋ก ๋ฐ ๊ฒฝ๋งค ์ƒํƒœ๊ด€๋ฆฌ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FA-201 ๊ตฟ์ฆˆ ๋“ฑ๋ก [๋“ฑ๋ก ์ •๋ณด]
- ์ œ๋ชฉ, ๊ตฟ์ฆˆ ๊ด€๋ จ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์„ ํƒ, ๊ตฟ์ฆˆ ์ข…๋ฅ˜(์นดํ…Œ๊ณ ๋ฆฌ)
- ์ƒํ’ˆ ์„ค๋ช…, ์ด๋ฏธ์ง€(๋‹ค์ค‘ ์—…๋กœ๋“œ) ๋“ฑ๋ก
[๊ฒฝ๋งค ์กฐ๊ฑด ์„ค์ •]
- ์‹œ์ž‘๊ฐ€ (ํ•„์ˆ˜)
- ์ƒํ•œ๊ฐ€/์ฆ‰์‹œ๊ตฌ๋งค๊ฐ€ (์„ ํƒ)
- ์ตœ์ดˆ ๊ฒฝ๋งค ๊ธฐ๊ฐ„ (๊ธฐ๋ณธ ๊ฐ’ 2~3์ผ ์„ค์ •, ์ตœ๋Œ“๊ฐ’ 14์ผ)
๊ตฟ์ฆˆ ๋“ฑ๋ก ํŽ˜์ด์ง€
FA-202 ๊ตฟ์ฆˆ ๋ชฉ๋ก ์กฐํšŒ
(๊ฒ€์ƒ‰/ํ•„ํ„ฐ)
- ํ•„ํ„ฐ(์ƒํƒœ/์นดํ…Œ๊ณ ๋ฆฌ/์ •๋ ฌ) ๊ธฐ๋Šฅ
- ๊ฒ€์ƒ‰(์• ๋‹ˆ๋ฉ”์ด์…˜/์ œ๋ชฉ) ๊ธฐ๋Šฅ
- ๋ฌดํ•œ ์Šคํฌ๋กค(=๋”๋ณด๊ธฐ) ๊ธฐ๋Šฅ
๊ตฟ์ฆˆ ๋ชฉ๋ก ํŽ˜์ด์ง€
FA-203 ๊ตฟ์ฆˆ ๊ธ€ ์ƒ์„ธ ์กฐํšŒ - ์ œ๋ชฉ, ๊ตฟ์ฆˆ ๊ด€๋ จ ์• ๋‹ˆ๋ฉ”์ด์…˜, ๊ตฟ์ฆˆ ์ข…๋ฅ˜, ์ƒํ’ˆ ์„ค๋ช…, ์ด๋ฏธ์ง€
- ์‹œ์ž‘๊ฐ€, ์ƒํ•œ๊ฐ€/์ฆ‰์‹œ๊ตฌ๋งค๊ฐ€, ๊ฒฝ๋งค ํƒ€์ด๋จธ, ์ฐœ ์ˆ˜
- ์ฐธ์—ฌ์ž ๋ฆฌ์ŠคํŠธ, ๊ฒฝ๋งค ์ƒํƒœ, ํŒ๋งค์ž ๋‹‰๋„ค์ž„, ๋Œ“๊ธ€ ๋ฆฌ์ŠคํŠธ ํ™•์ธ
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FA-204 ๊ฒฝ๋งค ๋“ฑ๋ก ๋‚ด์šฉ ์ˆ˜์ • - ๊ฒฝ๋งค ๋Œ€๊ธฐ ์ƒํƒœ์ผ ๋•Œ๋งŒ ์ˆ˜์ • ๊ฐ€๋Šฅ ๊ตฟ์ฆˆ ์ˆ˜์ • ํŽ˜์ด์ง€
FA-205 ๋“ฑ๋ก ๊ฒฝ๋งค ๊ธ€ ์‚ญ์ œ - ๋‚ด๊ฐ€ ๋“ฑ๋กํ•œ ๊ฒฝ๋งค ๊ธ€ ์‚ญ์ œ ๊ธฐ๋Šฅ (*๊ฒฝ๋งค ๋Œ€๊ธฐ/์™„๋ฃŒ/์ข…๋ฃŒ ํ›„) ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FA-206 ๊ฑฐ๋ž˜ ์ค‘์ง€(ํŒจ์ฐฐ=์ข…๋ฃŒ) - ํŒ๋งค์ž๊ฐ€ ๊ฑฐ๋ž˜์ค‘์ง€ ๊ฐ€๋Šฅ
- ๊ฑฐ๋ž˜์ค‘์ง€ ์‹œ Lock ์ƒํƒœ์˜ ์ฐธ์—ฌ์ž์—๊ฒŒ ์˜ˆ์น˜๊ธˆ ํ™˜์›
- ๊ฑฐ๋ž˜์ค‘์ง€ ์•Œ๋ฆผ ๋ฐœ์†ก
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FA-207 ๊ฒฝ๋งค ์ƒํƒœ ๊ด€๋ฆฌ - ๊ฒฝ๋งค ๋Œ€๊ธฐ: ๋“ฑ๋ก ์งํ›„
- ๊ฒฝ๋งค ์ง„ํ–‰: ์ฒซ ๊ตฌ๋งค์ž(์ž…์ฐฐ) ๋ฐœ์ƒ ์‹œ์ ๋ถ€ํ„ฐ
- ๋‚™์ฐฐ(=์™„๋ฃŒ): ์ž…์ฐฐ์ž ์žˆ๋Š” ์ƒํƒœ๋กœ ๊ฒฝ๋งค๊ธฐ๊ฐ„ ์ข…๋ฃŒ ๋˜๋Š” ์ฆ‰์‹œ ๊ตฌ๋งค๊ฐ€ ์ž…์ฐฐ ์‹œ
- ํŒจ์ฐฐ(=์ข…๋ฃŒ): ํŒ๋งค์ž๊ฐ€ ๊ฑฐ๋ž˜ ์ค‘์ง€๋ฅผ ๋ˆ„๋ฅผ ๊ฒฝ์šฐ ๋˜๋Š” ์ž…์ฐฐ์ž ์—†๋Š” ์ƒํƒœ๋กœ ๊ฒฝ๋งค๊ธฐ๊ฐ„ ์ข…๋ฃŒ ์‹œ
์„œ๋น„์Šค ๋กœ์ง ๋‹จ

3. ๊ฒฝ๋งค ๋ฐ ์ž…์ฐฐ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FB-301 ์ž…์ฐฐ ๊ฐ€๊ฒฉ ์ œ์‹œ - ์ฒซ ์ž…์ฐฐ์ธ ๊ฒฝ์šฐ ์‹œ์ž‘๊ฐ€ ์ด์ƒ ๊ฑฐ๋ž˜์ œํ•œ๊ธˆ์•ก(500๋งŒ์›) ์ดํ•˜
- ํ˜„์žฌ ์ตœ๊ณ ๊ฐ€๋ณด๋‹ค ๋†’๊ณ  ๊ฑฐ๋ž˜์ œํ•œ๊ธˆ์•ก(500๋งŒ์›) ์ดํ•˜์ธ ๊ธˆ์•ก ์ œ์‹œ
- ๋ณด์œ ํ•œ ์ฝ”์ธ ์ด์ƒ์˜ ๊ธˆ์•ก์€ ์ œ์‹œ ๋ถˆ๊ฐ€
- ์ž…์ฐฐ ์‹œ ๊ฒฝ๊ณ  ์•Œ๋ฆผ์ฐฝ (์ž…์ฐฐ ํ›„ ์ทจ์†Œ ๋ถˆ๊ฐ€)
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
(๋‚ด ์ž…์ฐฐ ๋ฒ„ํŠผ)
FB-302 ์ž…์ฐฐ ๊ธˆ์•ก Lock - ์ž…์ฐฐ ์‹œ ๊ตฌ๋งค์ž๊ฐ€ ์ž…์ฐฐํ•œ ๊ธˆ์•ก์„ ์ฆ‰์‹œ ์˜ˆ์น˜๊ธˆ์œผ๋กœ Lock
- ๋‚™์ฐฐ ์‹œ ์ฝ”์ธ ๋ถ€์กฑ ๋ฐฉ์ง€ ๋ฐ ๊ณ ์˜์  ๊ฒฝ๋งค ๋ฐฉํ•ด ๋ฐฉ์ง€
์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FB-303 ์ด์ „ ์˜ˆ์น˜๊ธˆ ํ•ด์ œ - ์ตœ๊ณ ์ž…์ฐฐ์ž ๋ณ€๊ฒฝ ์‹œ ๊ธฐ์กด ์ž…์ฐฐ์ž ์˜ˆ์น˜๊ธˆ Unlock ๋ฐ ํ™˜์› ์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FB-304 ๊ฒฝ๋งค ํƒ€์ด๋จธ - Javascript ๊ธฐ๋ฐ˜ ๊ฒฝ๋งค ์นด์šดํŠธ๋‹ค์šด ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FB-305 ๊ฒฝ๋งค ์ž๋™ ์ข…๋ฃŒ - (1) ์„ค์ •๋œ ๊ฒฝ๋งค ๊ธฐ๊ฐ„ ๋งŒ๋ฃŒ ์‹œ
- (2) ์ƒํ•œ๊ฐ€(์ฆ‰์‹œ๊ตฌ๋งค๊ฐ€) ๋„๋‹ฌ ์‹œ
์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FB-306 ๊ฑฐ๋ž˜ ์ •์‚ฐ(๋‚™์ฐฐ) - (1) ๊ตฌ๋งค์ž์—๊ฒŒ ์˜ˆ์น˜๊ธˆ ์ „์†ก (ํŒ๋งค์ž์—๊ฒŒ ์ด๋™)
- (2) ํŒ๋งค์ž(๋‚™์ฐฐ์ž) ๊ฑฐ๋ž˜ ๋‚™์ฐฐ ์•Œ๋ฆผ ์ „์†ก
์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FB-307 ์ฐธ์—ฌ์ž ๋ฆฌ์ŠคํŠธ ์กฐํšŒ - ๊ฒฝ๋งค์— ์ฐธ์—ฌํ•œ ์ฐธ์—ฌ์ž๋“ค์˜ ์ด๋ฆ„๊ณผ ๊ธˆ์•ก ๋ฆฌ์ŠคํŠธ ์กฐํšŒ ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€

4. ๊ฐ€์ƒํ™”ํ ๋ฐ ๊ฑฐ๋ž˜ ์ •์‚ฐ ๊ธฐ๋Šฅ (Wallet Core)

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FC-401 ์ž์‚ฐ ํ˜„ํ™ฉ - ์ž”์•ก ๋ฐ ์˜ˆ์น˜๊ธˆ ์ด์•ก ์กฐํšŒ ๋งˆ์ดํŽ˜์ด์ง€ > ์ž์‚ฐ ํ˜„ํ™ฉ
FC-402 ๊ณจ๋“œ ์ถฉ์ „ - PortOne API ๋ฅผ ํ™œ์šฉํ•œ ๊ฒฐ์ œ ์—ฐ๋™ ๊ธฐ๋Šฅ ๋งˆ์ดํŽ˜์ด์ง€ > ์ž์‚ฐ ํ˜„ํ™ฉ ๋‚ด ๊ณจ๋“œ ์ถฉ์ „ํ•˜๊ธฐ ๋ฒ„ํŠผ
FC-403 ๊ฑฐ๋ž˜ ๋‚ด์—ญ ์ƒ์„ธ
(๋‚ ์งœ ํ•„ํ„ฐ๋ง)
- ์ž…์ฐฐ, ์˜ˆ์น˜๊ธˆ(lock/unlock), ๋‚™์ฐฐ, ํ™˜๋ถˆ ๋“ฑ ๊ฑฐ๋ž˜ ๋‚ด์—ญ ์ „์ฒด ๊ธฐ๋ก
- ์‹œ์ž‘์ผ์ž, ์ข…๋ฃŒ์ผ์ž ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ
- ๋ฌดํ•œ ์Šคํฌ๋กค(=๋”๋ณด๊ธฐ) ๊ธฐ๋Šฅ
๋งˆ์ดํŽ˜์ด์ง€ > ๊ฑฐ๋ž˜ ๋‚ด์—ญ

5. ์†Œ์…œ ๋ฐ ์•Œ๋ฆผ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FD-501 ๊ตฟ์ฆˆ ์ฐœ ๊ธฐ๋Šฅ - ์‚ฌ์šฉ์ž๊ฐ€ ๊ด€์‹ฌ ๊ตฟ์ฆˆ๋ฅผ ์ฐœํ•˜์—ฌ ๋ชฉ๋ก ๊ด€๋ฆฌ (์ฐœ ๋ฆฌ์ŠคํŠธ) ๊ตฟ์ฆˆ ์ƒ์„ธ, ๊ตฟ์ฆˆ ๋ชฉ๋ก, ๋งˆ์ดํŽ˜์ด์ง€
FD-502 ๊ฒฝ๋งค ์•Œ๋ฆผ - (1) ๊ฒฝ๋งค ๋งˆ๊ฐ 1์‹œ๊ฐ„ ์ „ ์•Œ๋ฆผ
- (2) ์ตœ๊ณ ์ž…์ฐฐ ๊ฐฑ์‹  ์‹œ ์•Œ๋ฆผ ๋ฐœ์†ก
์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FD-503 ๊ฑฐ๋ž˜ ์•Œ๋ฆผ - ๋‚™์ฐฐ/ํŒจ์ฐฐ(=๊ฑฐ๋ž˜์ค‘์ง€)/์ •์‚ฐ ๊ฒฐ๊ณผ ์•Œ๋ฆผ ๋ฐœ์†ก ์„œ๋น„์Šค ๋กœ์ง ๋‹จ
FD-504 ๋ชฉ๋ก ๋ฐ ์ƒํƒœ - ์•Œ๋ฆผ ๋ชฉ๋ก ์กฐํšŒ ๋ชจ๋“  ํŽ˜์ด์ง€ ์šฐ์ธก ์ƒ๋‹จ
FD-505 ๋“ฑ๋ก ๊ฒฝ๋งค ๊ธ€ ์กฐํšŒ - ๋‚ด๊ฐ€ ๋“ฑ๋กํ•œ ๊ฒฝ๋งค ๊ธ€ ์กฐํšŒ ๊ธฐ๋Šฅ ๋งˆ์ดํŽ˜์ด์ง€
FD-506 ์ฐธ์—ฌ ๊ฒฝ๋งค ๊ธ€ ์กฐํšŒ - ๋‚ด๊ฐ€ ์ฐธ์—ฌํ•œ ๊ฒฝ๋งค ๊ธ€ ์กฐํšŒ ๋งˆ์ดํŽ˜์ด์ง€
FD-507 ๊ด€์‹ฌ ์• ๋‹ˆ ๋ชฉ๋ก ์กฐํšŒ - ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ชฉ๋ก ์กฐํšŒ ๋งˆ์ดํŽ˜์ด์ง€

6. AI ์ถ”์ฒœ ๋ฐ ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FE-601 [User] ๊ด€์‹ฌ ์• ๋‹ˆ ์„ค์ •
๋ฐ ๋ฒกํ„ฐ ๋™๊ธฐํ™”
- TMDB API๋ฅผ ํ†ตํ•ด ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ฒ€์ƒ‰ ๋ฐ ์„ ํƒ
- ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ(์ œ๋ชฉ, ์ค„๊ฑฐ๋ฆฌ, ์žฅ๋ฅด) ์กฐํšŒ
- ์œ ์ € ํ”„๋กœํ•„์— ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ID ์ตœ๋Œ€ 3๊ฐœ ๋งคํ•‘ ์ €์žฅ
ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€
FE-602 [AI] ์‚ฌ์šฉ์ž ๊ด€์‹ฌ ์• ๋‹ˆ ๊ธฐ๋ฐ˜ ์• ๋‹ˆ ์ถ”์ฒœ
(Vector Similarity)
- ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•œ ๊ด€์‹ฌ ์• ๋‹ˆ 3๊ฐœ์˜ ํ…์ŠคํŠธ ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ถ”์ฒœ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ชฉ๋ก ์ƒ์„ฑ
- ์ถ”์ฒœ ๊ฒฐ๊ณผ๋Š” ์บ์‹ฑํ•˜์—ฌ ์žฌ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ์‘๋‹ต ์†๋„ ๊ฐœ์„ 
- ํ”„๋กœํ•„์—์„œ ๊ด€์‹ฌ ์• ๋‹ˆ ๋ณ€๊ฒฝ ์‹œ ์ถ”์ฒœ ์บ์‹œ๋ฅผ ๋ฌดํšจํ™”ํ•˜๊ณ  ์žฌ์ถ”์ฒœ์ˆ˜ํ–‰
- ์‚ฌ์šฉ์ž ์„ ํ˜ธ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋ฐ˜์˜ํ•œ ๊ฐ€์ค‘ ํ‰๊ท  ๋ฐฉ์‹์œผ๋กœ ์ทจํ–ฅ ๋ฒกํ„ฐ ์ƒ์„ฑ
- ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๊ฐ€ ๋†’์€ ์• ๋‹ˆ๋ฉ”์ด์…˜ Top-N ์ถ”์ฒœ
๋งˆ์ดํŽ˜์ด์ง€
FE-603 [AI] ์ถ”์ฒœ ์• ๋‹ˆ ๊ธฐ๋ฐ˜ ๊ตฟ์ฆˆ ์ถ”์ฒœ - AI ์ถ”์ฒœ ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ์—ฐ๊ด€๋œ ๊ตฟ์ฆˆ ๋ชฉ๋ก ์กฐํšŒ
- ํŒ๋งค์ž๊ฐ€ ๋ณธ์ธ์ธ ๊ตฟ์ฆˆ ๋ฐ ์ด๋ฏธ ์ฐœํ•œ ๊ตฟ์ฆˆ ์ œ์™ธ
- ์ด๋ฏธ ๋‚™์ฐฐ/ํŒจ์ฐฐ(์ข…๋ฃŒ)๋œ ๊ฒฝ๋งค ๊ตฟ์ฆˆ๋Š” ์ถ”์ฒœ ๋Œ€์ƒ์—์„œ ์ œ์™ธ
๋ฉ”์ธํŽ˜์ด์ง€

7. ๋Œ“๊ธ€ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FG-701 ๋Œ“๊ธ€ ์ž‘์„ฑ (Parent) - ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž๊ฐ€ ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€ ํ•˜๋‹จ์— ๋ฌธ์˜/์˜๊ฒฌ ์ž‘์„ฑ ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FG-702 ๋Œ€๋Œ“๊ธ€ ์ž‘์„ฑ (Child) - 1์ฐจ ๋Œ“๊ธ€์— ๋Œ€ํ•œ ๋‹ต๊ธ€ ์ž‘์„ฑ ๊ธฐ๋Šฅ
- ๋Œ€๋Œ“๊ธ€๊นŒ์ง€๋งŒ ํ—ˆ์šฉ (๋Œ€๋Œ€๋Œ“๊ธ€ ๋ถˆ๊ฐ€)
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FG-703 ๋Œ“๊ธ€ ๋ชฉ๋ก ์กฐํšŒ - ๊ณ„์ธตํ˜• ๊ตฌ์กฐ ๋…ธ์ถœ
- ์ž‘์„ฑ์ผ ์ˆœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ, ๋Œ€๋Œ“๊ธ€์€ ๋“ค์—ฌ์“ฐ๊ธฐ๋กœ ๊ตฌ๋ถ„
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FG-704 ๋Œ“๊ธ€ ์ˆ˜์ • - ์ž‘์„ฑ์ž ๋ณธ์ธ๋งŒ ์ˆ˜์ • ๊ฐ€๋Šฅ ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FG-705 ๋Œ“๊ธ€ ์‚ญ์ œ - ์ž‘์„ฑ์ž ๋ณธ์ธ๋งŒ ์‚ญ์ œ ๊ฐ€๋Šฅ
- ๋Œ€๋Œ“๊ธ€์ด ๋‚จ์•„์žˆ๋Š” ๋ถ€๋ชจ๋Œ“๊ธ€์ด ์‚ญ์ œ๋œ ๊ฒฝ์šฐ (์‚ญ์ œ๋œ ๋Œ“๊ธ€์ž…๋‹ˆ๋‹ค.)๋กœ ํ‘œ๊ธฐ
- ๋Œ€๋Œ“๊ธ€์ด ์—†๋Š” ๋ถ€๋ชจ๋Œ“๊ธ€ or ๋Œ€๋Œ“๊ธ€์ผ ๊ฒฝ์šฐ ๋ฐ”๋กœ ์‚ญ์ œ ์ฒ˜๋ฆฌ
๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€
FG-706 ํŒ๋งค์ž ์‹๋ณ„ ํ‘œ์‹œ - ๋Œ“๊ธ€ ์ž‘์„ฑ์ž๊ฐ€ ํ•ด๋‹น ๊ตฟ์ฆˆ 'ํŒ๋งค์ž'์ผ ๊ฒฝ์šฐ ๋‹‰๋„ค์ž„ ์˜† ๋ฐฐ์ง€ ํ‘œ์‹œ ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€

8. ์‹ ๊ณ  ๋ฐ ์šด์˜ ๊ธฐ๋Šฅ

ID ํ•ญ๋ชฉ ์ƒ์„ธ ์„ค๋ช… ํŽ˜์ด์ง€
FF-801 ์‹ ๊ณ  ์ ‘์ˆ˜ - ์‹ ๊ณ ๋œ ๊ฒŒ์‹œ๋ฌผ/์‚ฌ์šฉ์ž ๊ด€๋ฆฌ
- ์‹ ๊ณ  ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ alert์œผ๋กœ ํ‘œ๊ธฐ๋งŒ ํ•จ (UI ๊ตฌํ˜„)
๊ตฟ์ฆˆ ์ƒ์„ธ / ํ”„๋กœํ•„
FF-802 ํ™˜๋ถˆ ์š”์ฒญ ๋ฌธ์˜ - ๋ชจ๋“  ํŽ˜์ด์ง€ ํ•˜๋‹จ์— ์ „ํ™”๋ฒˆํ˜ธ ๋‚จ๊ธฐ๋Š” ํ˜•์‹์œผ๋กœ ์ฒ˜๋ฆฌ ๋ชจ๋“  ํŽ˜์ด์ง€ ํ•˜๋‹จ

๐Ÿ—ƒ๏ธ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

getcha/
โ”œโ”€โ”€ frontend/                   # getchaFE ์ฐธ๊ณ 
โ”‚
โ”œโ”€โ”€ backend/                    # getchaBE (Spring boot)
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ””โ”€โ”€ main/
โ”‚   โ”‚       โ”œโ”€โ”€ resources/
โ”‚   โ”‚       โ”‚   โ”œโ”€โ”€ mappers/   
โ”‚   โ”‚       โ”‚   โ”œโ”€โ”€ getchaDDL.sql
โ”‚   โ”‚       โ”‚   โ”œโ”€โ”€ application-local.yml   
โ”‚   โ”‚       โ”‚   โ””โ”€โ”€ application.yml   
โ”‚   โ”‚       โ””โ”€โ”€ java/
โ”‚   โ”‚           โ””โ”€โ”€ com/ssafy/backend
โ”‚   โ”‚               โ”œโ”€โ”€ users/
โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller/
โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ service/
โ”‚   โ”‚               โ”‚   |   โ””โ”€โ”€ impl/   
โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ model/
โ”‚   โ”‚               โ”‚       โ”œโ”€โ”€ mapper
โ”‚   โ”‚               โ”‚       โ”œโ”€โ”€ user  
โ”‚   โ”‚               โ”‚       โ”œโ”€โ”€ responseDTO   
โ”‚   โ”‚               โ”‚       โ””โ”€โ”€ requestDTO   
โ”‚   โ”‚               โ”œโ”€โ”€ auth/
โ”‚   โ”‚               โ”œโ”€โ”€ goods/
โ”‚   โ”‚               โ”œโ”€โ”€ bid/
โ”‚   โ”‚               โ”œโ”€โ”€ comment/   
โ”‚   โ”‚               โ”œโ”€โ”€ notification/
โ”‚   โ”‚               โ”œโ”€โ”€ wallet/
โ”‚   โ”‚               โ”œโ”€โ”€ wish/
โ”‚   โ”‚               โ”œโ”€โ”€ anime/
โ”‚   โ”‚               โ”œโ”€โ”€ payment/   
โ”‚   โ”‚               โ”œโ”€โ”€ ai/   
โ”‚   โ”‚               โ”œโ”€โ”€ common/
โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ enums/
โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ exception/
โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ service/
โ”‚   โ”‚               โ”‚   |   โ””โ”€โ”€ impl/  
โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ config/
โ”‚   โ”‚               โ””โ”€โ”€ BackendApplication.java
โ”‚   โ”œโ”€โ”€ build.gradle
โ””โ”€โ”€ README.md


๐Ÿ— ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜ (๋ฏธ์ˆ˜์ •)


๐Ÿ’Ž ERD ๋‹ค์ด์–ด๊ทธ๋žจ

ERD ๋‹ค์ด์–ด๊ทธ๋žจ


๐Ÿ’ป ํ™”๋ฉด ๊ตฌ์„ฑ

์ฃผ์š” ํ™”๋ฉด ๋ชฉ๋ก

  1. ํ—ค๋”

    ๊ตฌ์„ฑ ์š”์†Œ
    • Getcha ๊ธ€์ž & ๋กœ๊ณ 
    • ์•Œ๋ฆผ ํ™•์ธ
    • ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ
      • ๋กœ๊ทธ์ธ ํ•œ ์ƒํƒœ์ผ ๋•Œ (๋งˆ์ดํŽ˜์ด์ง€, ์ฐœ)
      • ๋กœ๊ทธ์•„์›ƒ ํ•œ ์ƒํƒœ ์ผ ๋•Œ (๋กœ๊ทธ์ธ ๋ฒ„ํŠผ, ํšŒ์›๊ฐ€์ž… ๋ฒ„ํŠผ)
  2. ํšŒ์› ๊ฐ€์ž…

    ๊ตฌ์„ฑ ์š”์†Œ
    • ๋‹‰๋„ค์ž„
    • ์ด๋ฆ„
    • ๋น„๋ฐ€๋ฒˆํ˜ธ
    • ์ด๋ฉ”์ผ (= ์•„์ด๋””)
    • ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ (๊ด€์‹ฌ ์• ๋‹ˆ ์ฒซ๋ฒˆ์งธ ํฌ์Šคํ„ฐ์ด๋ฏธ์ง€)
    • ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ (ํ•„์ˆ˜)
    • ๊ณ„์ขŒ ์€ํ–‰ ๋ฐ ๊ณ„์ขŒ๋ฒˆํ˜ธ
  3. ๋ฉ”์ธ ํŽ˜์ด์ง€

    ๊ตฌ์„ฑ ์š”์†Œ
    • ์ƒ๋‹จ : ๋กœ๊ทธ์ธํ•œ ์œ ์ €์—๊ฒŒ ๋งž๋Š” AI ์ถ”์ฒœ ์ƒํ’ˆ
    • ์ค‘์•™ : ์ƒํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ ๋ณ„ ๋ฆฌ์ŠคํŠธ (+ALL ํฌํ•จ)
  4. ๊ตฟ์ฆˆ ๋ฆฌ์ŠคํŠธ ํŽ˜์ด์ง€

    ๊ตฌ์„ฑ ์š”์†Œ
    • ํ•„ํ„ฐ(์ƒํƒœ / ์นดํ…Œ๊ณ ๋ฆฌ / ์ •๋ ฌ) & ๊ฒ€์ƒ‰
    • ๊ตฟ์ฆˆ ๋“ฑ๋ก ๋ฒ„ํŠผ (๋กœ๊ทธ์ธ ์‹œ)
    • ๊ตฟ์ฆˆ ์นด๋“œ
      • ๊ฒฝ๋งค ์ƒํƒœ ๋ฑƒ์ง€ (์ง„ํ–‰ ์ค‘, ์™„๋ฃŒ, ์ข…๋ฃŒ)
      • ๊ตฟ์ฆˆ ๋Œ€ํ‘œ ์ด๋ฏธ์ง€
      • ์ œ๋ชฉ
      • ํ˜„์žฌ ์ž…์ฐฐ๊ฐ€ ๊ธˆ์•ก
        • ๋Œ€๊ธฐ ๋ฐ ์ž…์ฐฐ์ž ์—†์ด ์ข…๋ฃŒ๋œ ๊ฒฝ์šฐ ์‹œ์ž‘๊ฐ€ ๊ธˆ์•ก
      • ํŒ๋งค์ž ๋‹‰๋„ค์ž„ / ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ œ๋ชฉ / ์นดํ…Œ๊ณ ๋ฆฌ
      • ๊ฒฝ๋งค ํƒ€์ด๋จธ / ์ฐœ ์ˆ˜
  5. ๊ตฟ์ฆˆ ๋“ฑ๋ก / ์ˆ˜์ • ํŽ˜์ด์ง€

    ๊ตฌ์„ฑ ์š”์†Œ
    • ์ œ๋ชฉ / ์• ๋‹ˆ๋ฉ”์ด์…˜ / ์นดํ…Œ๊ณ ๋ฆฌ / ์„ค๋ช…
    • ๊ตฟ์ฆˆ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ (๋‹ค์ค‘ ์—…๋กœ๋“œ ๊ฐ€๋Šฅ/ 1๊ฐœ์ด์ƒ ํ•„์ˆ˜)
    • ์‹œ์ž‘๊ฐ€ (ํ•„์ˆ˜)
    • ์ƒํ•œ๊ฐ€/์ฆ‰์‹œ๊ตฌ๋งค๊ฐ€ (์„ ํƒ)
    • ์ตœ์ดˆ ๊ฒฝ๋งค๊ธฐ๊ฐ„ (2์ผ ~ 14์ผ ์ค‘ ํƒ / ํ•„์ˆ˜)
  6. ๊ตฟ์ฆˆ ์ƒ์„ธ ํŽ˜์ด์ง€

    ๊ตฌ์„ฑ ์š”์†Œ
    • ์ˆ˜์ • / ์‚ญ์ œ ๋ฒ„ํŠผ (๊ฒฝ๋งค ์ฐธ์—ฌ์ž๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์—๋งŒ)
    • ๊ฒฝ๋งค ์ค‘์ง€ ๋ฒ„ํŠผ (์ง„ํ–‰ ์ค‘์ธ ๊ฒฝ์šฐ์—๋งŒ)
    • ์ œ๋ชฉ
    • ํŒ๋งค์ž ๋‹‰๋„ค์ž„ / ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
    • ๊ฒฝ๋งค ์ƒํƒœ ๋ฑƒ์ง€ (์ง„ํ–‰ ์ค‘, ์™„๋ฃŒ, ์ข…๋ฃŒ)
    • ์‹œ์ž‘๊ฐ€ / ์ฆ‰์‹œ ๊ตฌ๋งค๊ฐ€ ๊ธˆ์•ก
    • ํ˜„์žฌ ์ž…์ฐฐ๊ฐ€ ๊ธˆ์•ก (์ง„ํ–‰ ์ค‘ ์ผ ๊ฒฝ์šฐ์—๋งŒ)
    • ๊ฒฝ๋งค ์ฐธ์—ฌ์ž ๋ฆฌ์ŠคํŠธ (์ˆœ์œ„)
    • ๊ฒฝ๋งค ํƒ€์ด๋จธ (๋‚จ์€ ๊ฒฝ๋งค ๊ธฐ๊ฐ„)
    • ์„ค๋ช… / ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ œ๋ชฉ / ์นดํ…Œ๊ณ ๋ฆฌ / ์ฐœ ๊ฐฏ์ˆ˜
    • ๋Œ“๊ธ€
      • 2์ฐจ ๋Œ€๋Œ“๊ธ€๊นŒ์ง€๋งŒ ๊ฐ€๋Šฅ
  7. ๋งˆ์ดํŽ˜์ด์ง€

    ๊ตฌ์„ฑ ์š”์†Œ
    • ์ฐœ ๋ฆฌ์ŠคํŠธ
    • ๋“ฑ๋ก ๊ฒฝ๋งค ๊ธ€ ๋ฆฌ์ŠคํŠธ
    • ์ฐธ์—ฌ ๊ฒฝ๋งค ๊ธ€ ๋ฆฌ์ŠคํŠธ
    • ๊ฑฐ๋ž˜ ๋‚ด์—ญ ๋ฆฌ์ŠคํŠธ
    • ์ž”์•ก ํ˜„ํ™ฉ
    • ๊ด€์‹ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ฆฌ์ŠคํŠธ
    • ์ •๋ณด ์ˆ˜์ • (๋‹‰๋„ค์ž„, ์ข‹์•„ํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜)

About

Back

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages