๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

[ํ”„๋กœ์ ํŠธ ์ง„ํ–‰] ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๋ฐฉ๋ฒ•

๐Ÿš€ ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๊ฐ€์ด๋“œ (5๋‹จ๊ณ„ + MVP ๊ด€์ )

์ดˆ๊ธฐ ๊ธฐํš·๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ๋Š” ์ œํ•œ๋œ ๋ฆฌ์†Œ์Šค ์†์—์„œ ๋ฆฌ์Šคํฌ๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ MVP๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค.
์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ๊ธฐํš → ์„ค๊ณ„ → ๊ตฌํ˜„ → ๊ฒ€์ฆ → ์šด์˜์˜ 5๋‹จ๊ณ„ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋”ฐ๋ผ๊ฐ€๋ฉฐ, ๊ฐ ๋‹จ๊ณ„์—์„œ ์ทจํ•  ์ˆ˜ ์žˆ๋Š” ๋…ธ๋ ฅ๊ณผ ์„œ๋น„์Šค/๊ธฐ์ˆ  ๊ด€์ ์—์„œ์˜ MVP ์„ฑ๊ฒฉ์„ ํ•จ๊ป˜ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.


1๏ธโƒฃ ๊ธฐํš (Planning)

  • ํ”„๋กœ์ ํŠธ ๋ชฉํ‘œ ์ˆ˜๋ฆฝ: ์™œ ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋Š”์ง€, ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๊ฒƒ์ธ์ง€ ์ •์˜.
  • ์š”๊ตฌ์‚ฌํ•ญ ์ •๋ฆฌ: MoSCoW ๋ฐฉ์‹(Must/Should/Could/Won’t)์œผ๋กœ ๋ถ„๋ฅ˜.
Must = MVP ๋ฒ”์œ„
Should/Could = ํ›„์† ํ™•์žฅ ๊ธฐ๋Šฅ
Won’t = ์ด๋ฒˆ ๋‹จ๊ณ„์—์„œ๋Š” ํ•˜์ง€ ์•Š์Œ
  • ์šฐ์„ ์ˆœ์œ„ ๋ช…ํ™•ํ™”: “๋ชจ๋“  ๊ฑธ ๋‹ค ํ•˜๊ฒ ๋‹ค”๋Š” ์ ‘๊ทผ์€ ์œ„ํ—˜. ์ œํ•œ๋œ ๋ฆฌ์†Œ์Šค์—์„œ MVP ์ง€์—ฐ์„ ๋ง‰๋Š” ๊ฒŒ ํ•ต์‹ฌ.

๐Ÿ‘‰ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™”:

  • ์ดˆ๊ธฐ ๊ฐ€์„ค์ด ํ‹€๋ฆด ์ˆ˜ ์žˆ์Œ์„ ์ธ์ • → ์ง๊ด€์ด ์•„๋‹Œ ๊ฒ€์ฆ ๊ธฐ๋ฐ˜์œผ๋กœ ์ ‘๊ทผ.
  • ๊ธฐ๋Šฅ ์ •์˜ ์‹œ ๋ฐ˜๋“œ์‹œ “์ง€๊ธˆ ํ•„์š”ํ•œ๊ฐ€?”๋ฅผ ์ž๋ฌธ.

2๏ธโƒฃ ์„ค๊ณ„ (Design/Architecture)

  • ํ”„๋กœํ† ํƒ€์ž…: UX ์ค‘์‹ฌ์˜ ์ „์ฒด ์„œ๋น„์Šค ํ๋ฆ„ ๊ฒ€์ฆ (Figma, ์™€์ด์–ดํ”„๋ ˆ์ž„). ์ฝ”๋“œ ๋ถˆํ•„์š”.
  • POC(Proof of Concept): ๋ถˆํ™•์‹ค์„ฑ์ด ํฐ ๊ธฐ๋Šฅ๋งŒ ๊ธฐ์ˆ ์ ์œผ๋กœ ๊ฒ€์ฆ.
์˜ˆ: OAuth Redirect ํ”Œ๋กœ์šฐ, PWA ์•Œ๋ฆผ ๋™์ž‘, DB ์„ฑ๋Šฅ ํ™•์ธ.

 

  • ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„: ๋ชจ๋“ˆํ™”, ํ™•์žฅ์„ฑ, ๋น ๋ฅธ ๋ฐฐํฌ ๊ฐ€๋Šฅ์„ฑ์„ ๊ณ ๋ ค.
  • ADR ๊ธฐ๋ก: “์™œ ์ด ๋ฐฉ์‹์„ ์„ ํƒํ–ˆ๋Š”๊ฐ€?”๋ฅผ ๋‚จ๊น€.

๐Ÿ‘‰ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™”:

  • ํ”„๋กœํ† ํƒ€์ž…: ์ „์ฒด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ํ™•์ธ
  • POC: ๋ถ€๋ถ„์  ๊ธฐ์ˆ  ๋ฆฌ์Šคํฌ ๊ฒ€์ฆ
  • ํŠน์ • ๊ธฐ์ˆ ์— ๋ฝ์ธ๋˜์ง€ ์•Š๋„๋ก ๋‹จ์ˆœํ•˜๊ณ  ์œ ์—ฐํ•œ ๊ตฌ์กฐ ์„ ํƒ

3๏ธโƒฃ ๊ตฌํ˜„ (Implementation/Development)

  • ์งง์€ ๊ฐœ๋ฐœ ์‚ฌ์ดํด: ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ์ž‘๊ฒŒ ๋ฐฐํฌ, ์ ์ง„์  ํ™•์žฅ.
  • PR Preview & Dev ํ™˜๊ฒฝ ๋ถ„๋ฆฌ: Preview์—์„œ๋Š” ๋กœ๊ทธ์ธ ์šฐํšŒ, Dev์—์„œ ์‹ค๋กœ๊ทธ์ธ ๊ฒ€์ฆ.
  • ๊ธฐ์ˆ  ๋ถ€์ฑ„ ๊ด€๋ฆฌ:
    • Tech Debt ํ‹ฐ์ผ“ ๋ณ„๋„ ๊ด€๋ฆฌ (๐Ÿ› Tech Debt: ๋กœ๊ทธ์ธ ์ž„์‹œ ์ฒ˜๋ฆฌ, ๋ฆฌํŒฉํ† ๋ง ํ•„์š”)
    • ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์ฝ”๋ฉ˜ํŠธ์—๋งŒ ๋‚จ๊ธฐ์ง€ ๋ง ๊ฒƒ.
  • ๊ธฐ์ˆ  ์„ ํƒ: ์†๋„ ์šฐ์„ , ์ ์ • ๊ธฐ์ˆ  ์ฑ„ํƒ.

๐Ÿ‘‰ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™”:

  • ํด๋ฆฐ ์ฝ”๋“œ๋ณด๋‹ค “๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ” ์šฐ์„ 
  • ๊ธฐ์ˆ  ๋ถ€์ฑ„๋Š” ๊ธฐ๋ก๋งŒ ๋‚จ๊ธฐ๊ณ  MVP ๋‹จ๊ณ„์—์„œ๋Š” ์†๋„๋กœ ๋ฐ€์–ด๋ถ™์ž„

4๏ธโƒฃ ๊ฒ€์ฆ (Verification/Testing)

  • ํ…Œ์ŠคํŠธ ์ตœ์†Œํ™” ์ „๋žต:
    • Smoke Test: ๋กœ๊ทธ์ธ ์„ฑ๊ณต ํ›„ ํ™ˆ ์ด๋™, ๋ฐ˜๋ ค๋™๋ฌผ ๋“ฑ๋ก ์‹œ ๋ชฉ๋ก ๋…ธ์ถœ
    • Given-When-Then ํ˜•์‹ ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ ๋ˆ„๊ตฌ๋‚˜ ์ฝ๊ธฐ ์‰ฝ๊ฒŒ
  • QA & ์‚ฌ์šฉ์ž ํ”ผ๋“œ๋ฐฑ: ๋น ๋ฅธ ์ฃผ๊ธฐ๋กœ ํ”ผ๋“œ๋ฐฑ ์ˆ˜์ง‘
  • ์ž๋™ํ™” ๊ณ ๋ ค: ํ•ต์‹ฌ ๊ธฐ๋Šฅ๋งŒ ์šฐ์„ , ์ ์ง„์ ์œผ๋กœ ์ปค๋ฒ„๋ฆฌ์ง€ ํ™•๋Œ€

๐Ÿ‘‰ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™”:

  • ์ „์ฒด ์ปค๋ฒ„๋ฆฌ์ง€๋ณด๋‹ค MVP์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์ •์ƒ ๋™์ž‘ ์—ฌ๋ถ€์— ์ง‘์ค‘
  • ํ”ผ๋“œ๋ฐฑ ์‚ฌ์ดํด์„ ์งง๊ฒŒ ๊ฐ€์ ธ๊ฐ€์„œ ๋ฌธ์ œ ๋ฐœ๊ฒฌ → ๋น ๋ฅธ ์ˆ˜์ •

5๏ธโƒฃ ์šด์˜ (Operation/Maintenance)

  • ๋ชจ๋‹ˆํ„ฐ๋ง: ์„œ๋ฒ„ ๋กœ๊ทธ, ํ—ฌ์Šค์ฒดํฌ(/health), ์—๋Ÿฌ ๋กœ๊น…(Sentry ๋ฌด๋ฃŒ ํ”Œ๋žœ).
  • ์•Œ๋ฆผ ์‹œ์Šคํ…œ: UptimeRobot ๊ฐ™์€ ๋ฌด๋ฃŒ ๋„๊ตฌ๋กœ ์žฅ์•  ๊ฐ์ง€.
  • ๋ฐฐํฌ ์ „๋žต: CI/CD ํŒŒ์ดํ”„๋ผ์ธ, Canary/Blue-Green ๋ฐฐํฌ ๊ณ ๋ ค.
  • ์ง€์†์  ๊ฐœ์„ : ๊ธฐ๋กํ•ด๋‘” Tech Debt ๋ฆฌํŒฉํ† ๋ง, ์„ฑ๋Šฅ ์ตœ์ ํ™”, ๋ณด์•ˆ ๋ณด์™„.

๐Ÿ‘‰ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™”:

  • “์„œ๋น„์Šค๊ฐ€ ์‚ด์•„ ์žˆ๋Š”์ง€”๋งŒ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ฆ ๊ฐ€๋Šฅํ•˜๋ฉด ์ถฉ๋ถ„
  • ์šด์˜ ์ค‘์—๋„ ํ”ผ๋ด‡ ๊ฐ€๋Šฅ์„ฑ์„ ์—ด์–ด๋‘๊ณ , ๋น ๋ฅธ ๋ฐฐํฌ/์ˆ˜์ • ํ™˜๊ฒฝ ์œ ์ง€

๐Ÿ“Œ MVP์˜ ๊ด€์ 

์„œ๋น„์Šค ๊ด€์ ์˜ MVP (๋„๋ฉ”์ธ ์ „๋ฌธ๊ฐ€)

  • ๊ฐœ๋ฐœ์ž๊ฐ€ ํŒ๋‹จํ•œ MVP๊ฐ€ ์ •๋‹ต์ด๋ผ๊ณ  ๋‹จ์ •ํ•˜์ง€ ๋ง ๊ฒƒ.
  • ๊ธฐํš์ž์˜ ๊ฐ€์„ค(์ง๊ด€)์€ ํ‹€๋ฆด ์ˆ˜ ์žˆ์Œ์„ ์ „์ œ๋กœ ํ•ด์•ผ ํ•จ.
  • ์‹คํŒจ ์ž์ฒด๋ฅผ ๋ง‰์„ ์ˆ˜๋Š” ์—†์ง€๋งŒ, ์‹คํŒจ ์‹œ ๋น ๋ฅด๊ฒŒ ์ „ํ™˜(ํ”ผ๋ด‡) ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‹จ์ˆœ·๋ชจ๋“ˆํ™”๋œ ๊ตฌ์กฐ์™€ ๋น ๋ฅธ ์ˆ˜์ •·๋ฐฐํฌ ํ™˜๊ฒฝ ํ™•๋ณด๊ฐ€ ํ•„์š”.
  • ํŠน์ • ๊ธฐ์ˆ ์— ๊ณผ๋„ํ•˜๊ฒŒ ๋ฝ์ธ๋˜์ง€ ์•Š๋Š” ์„ ํƒ์ด ์ค‘์š”.

๐Ÿ‘‰ ์ถ”๊ฐ€ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™” ์ „๋žต

  • ๋ถˆํ•„์š”ํ•œ ๊ธฐ๋Šฅ์€ ๋ฐฐ์ œ, ํ•„์ˆ˜ ๊ธฐ๋Šฅ์—๋งŒ ์ง‘์ค‘
  • ์ดˆ๊ธฐ์—๋Š” “ํด๋ฆฐ ์ฝ”๋“œ”๋ณด๋‹ค ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ๋” ๊ฐ€์น˜ ์žˆ์Œ

๊ธฐ์ˆ  ๊ด€์ ์˜ MVP (๊ฐœ๋ฐœ์ž)

  • ์–ด๋–ค ๊ธฐ์ˆ ์ด “์ ์ •๊ธฐ์ˆ ”์ธ์ง€ ํŒ๋‹จํ•˜๋Š” ๊ฒŒ ํ•ต์‹ฌ.
  • ์ตœ๋Œ€ํ•œ ํฌ๊ธฐํ•  ๊ฒƒ๊ณผ, ํฌ๊ธฐํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์„ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„.
  • ๊ธฐ์ˆ ๋ณด๋‹ค ์ค‘์š”ํ•œ ๊ฑด ์†๋„. ์–ธ์ œ๋‚˜ ์„œ๋น„์Šค์˜ ์ƒ์กด์ด ์ตœ์šฐ์„ .

๐Ÿ‘‰ ์ถ”๊ฐ€ ๋ฆฌ์Šคํฌ ์ตœ์†Œํ™” ์ „๋žต

  • ๊ธฐ์ˆ  ๋ถ€์ฑ„๋Š” ๊ธฐ๋ก๋งŒ ํ•ด๋‘๊ณ  MVP ๋‹จ๊ณ„์—์„œ๋Š” ์†๋„๋กœ ๋Œ€์‘
  • ๋ฆฌํŒฉํ† ๋ง์€ ํ›„์† ๋‹จ๊ณ„์—์„œ ์ง„ํ–‰

โœ… ์ตœ์ข… ์ •๋ฆฌ

  • 5๋‹จ๊ณ„(๊ธฐํš → ์„ค๊ณ„ → ๊ตฌํ˜„ → ๊ฒ€์ฆ → ์šด์˜)๋กœ ํ”„๋กœ์ ํŠธ ๋ฆฌ์Šคํฌ๋ฅผ ๊ด€๋ฆฌ
  • MVP๋Š” ์„œ๋น„์Šค ์ƒ์กด์„ ์œ„ํ•œ ์ตœ์†Œ ๋‹จ์œ„
  • ์„œ๋น„์Šค ๊ด€์ : ๋น ๋ฅธ ํ”ผ๋ด‡ ํ™˜๊ฒฝ ํ™•๋ณด
  • ๊ธฐ์ˆ  ๊ด€์ : ์†๋„๋ฅผ ์šฐ์„ , ๊ธฐ์ˆ  ๋ถ€์ฑ„๋Š” ๊ธฐ๋ก๋งŒ

๐Ÿ‘‰ ๊ฐœ๋ฐœ์ž์˜ ์—ญํ• ์€ ์‹คํŒจ ๊ฐ€๋Šฅ์„ฑ์„ ์ „์ œ๋กœ ๋น ๋ฅด๊ฒŒ ํ”ผ๋ด‡ํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.