Skip to content

Requirements

๋ฐฐ์œค์ˆ˜ edited this page Sep 2, 2021 · 6 revisions

๊ธฐ๋Šฅ ๋ฆฌ์ŠคํŠธ์—…

Bare-minimum

Front

  • ๋ฐฐํฌ ์ž๋™ํ™” ํ™˜๊ฒฝ ์„ค์ • (S3)

  • ๋ฉ”์ธ ํŽ˜์ด์ง€

    • ๋ฉ”์ธ ํŽ˜์ด์ง€ ๋ชจ๋“  ๊ธฐ๋Šฅ
    • ์ค„์ž„๋ง ๊ฒ€์ƒ‰
  • ๋”๋ณด๊ธฐ ํŽ˜์ด์ง€

    • Map์„ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ๋ Œ๋”๋ง
    • ์ค„์ž„๋ง ์ข‹์•„์š” ๋ฒ„ํŠผ ๊ตฌํ˜„
  • ๋งˆ์ด ํŽ˜์ด์ง€

    • ์ž‘์„ฑ ๊ธ€ ์‚ญ์ œ ๊ตฌํ˜„
    • ์ž‘์„ฑ ๊ธ€ ํด๋ฆญ ์‹œ ์ˆ˜์ • ๋ชจ๋‹ฌ ๊ตฌํ˜„
  • ๊ฐœ์ธ์ •๋ณด ์ˆ˜์ • ํŽ˜์ด์ง€

    • ์œ ์ € ์ •๋ณด ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ •
    • ์œ ์ € ํƒˆํ‡ด ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๋กœ๊ทธ์ธ / ํšŒ์›๊ฐ€์ž… / ๋กœ๊ทธ์•„์›ƒ ๋ชจ๋‹ฌ

    • JSONwebtoken ์œผ๋กœ ํ† ํฐ ์ธ์ฆ ๊ตฌํ˜„
    • ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ (ID / PW ์–‘์‹)
  • ๊ธ€ ์ž‘์„ฑ / ์ˆ˜์ • ๋ชจ๋‹ฌ

    • ๊ธ€ ์ž‘์„ฑ ๊ธฐ๋Šฅ ๋ฐ ์ˆ˜์ • ๊ตฌํ˜„

Back

  • API Docs ํ† ๋Œ€๋กœ Routing
  • Server - DB Schema ํ† ๋Œ€๋กœ ๊ด€๊ณ„ ์„ค์ •
  • ๋ฐฐํฌ ์ž๋™ํ™” ํ™˜๊ฒฝ ์„ค์ • (EC2 , RDS)
  • ๋กœ๊ทธ์ธ ์ด์ „ API ๊ตฌํ˜„
    • ํšŒ์› ๊ฐ€์ž… / ํšŒ์› ํƒˆํ‡ด ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • tokenFunction module ๊ตฌํ˜„

Advanced

Front

  • ๋ฐ˜์‘ํ˜• ์›น ํŽ˜์ด์ง€

    • Nav ๋””์Šคํ”Œ๋ ˆ์ด On / Off
    • Width ๊ฐ’์— ๋”ฐ๋ฅธ Header / Body ๋ณ€๊ฒฝ
  • ๋กœ๊ณ  ํด๋ฆญ ์‹œ ๋ฉ”์ธ ํŽ˜์ด์ง€๋กœ ์ด๋™

  • ํƒˆํ‡ด ํ™•์ธ ๋ชจ๋‹ฌ

    • ํƒˆํ‡ด ์—ฌ๋ถ€ ์žฌํ™•์ธํ•˜๋Š” ๋ชจ๋‹ฌ ๊ตฌํ˜„

Back

  • ๋กœ๊ทธ์ธ ์ดํ›„ API ๊ตฌํ˜„

    • ์œ ์ € ์ •๋ณด ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ์ž‘์„ฑ ๊ธ€ ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ์ƒˆ ๊ธ€ ์“ฐ๊ธฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ์ข‹์•„์š” ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… ์‹œ ์œ ์ € ๋น„๋ฐ€๋ฒˆํ˜ธ ํ•ด์‹ฑ

  • ์œ ์ € ํšŒ์›๊ฐ€์ž… ์‹œ ๊ธฐ๋ณธ์œผ๋กœ ํ• ๋‹นํ•  ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๊ตฌํ˜„

Nightmare

Front

  • ์•„์ด๋”” / ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ ๊ธฐ๋Šฅ

  • ๋งˆ์ดํŽ˜์ด์ง€

    • ๊ธ€ ๋ชฉ๋ก ์ „์ฒด ์„ ํƒ ๋ฒ„ํŠผ
    • ์ž‘์„ฑ ๊ธ€ ๋ชฉ๋ก ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ(์ตœ์‹  ์ˆœ, ์ถ”์ฒœ ์ˆœ)
  • OAuth 2.0 ์‚ฌ์šฉํ•œ ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

  • ๊ฐœ์ธ์ •๋ณด ์ˆ˜์ • ํŽ˜์ด์ง€

    • ํ”„๋กœํ•„ ์‚ฌ์ง„ ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๋งˆ์ดํŽ˜์ด์ง€

    • ์ถ”์ฒœ ์ˆ˜ ํด๋ฆญ / ํ˜ธ๋ฒ„ ๋ˆ„๋ฅด๋ฉด ์ข‹์•„์š” ํ•œ ์œ ์ €๋“ค ๋ณด์—ฌ์ฃผ๊ธฐ ๊ธฐ๋Šฅ

Back

  • ์œ ์ € ํ”„๋กœํ•„ ์‚ฌ์ง„ ์ˆ˜์ • API ๊ตฌํ˜„
  • ์•„์ด๋”” / ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ์นด์นด์˜ค ์†Œ์…œ ๋กœ๊ทธ์ธ OAuth 2.0 ๊ตฌํ˜„

์ตœ์†Œ ๊ธฐ๋Šฅ

  • ํšŒ์›๊ฐ€์ž…

    • ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ (์ด๋ฉ”์ผ, ๋น„๋ฐ€๋ฒˆํ˜ธ ํ˜•์‹ / ์ค‘๋ณต ์œ ์ € ๊ฒ€์‚ฌ)
    • ์„œ๋น„์Šค ์ž์ฒด ํšŒ์›๊ฐ€์ž…
  • ๋กœ๊ทธ์ธ

    • ์„œ๋น„์Šค ์ž์ฒด ๋กœ๊ทธ์ธ
    • ์†Œ์…œ ๋กœ๊ทธ์ธ
    • ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์•ˆ๋‚ด ๋ฉ”์„ธ์ง€ (์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.)
    • ์ฟ ํ‚ค or ํ† ํฐ
  • ๋กœ๊ทธ์•„์›ƒ

    • ๋กœ๊ทธ์•„์›ƒ ์‹œ ํŽ˜์ด์ง€ ์ „ํ™˜
    • ๋ฒ„ํŠผ
    • ๋ชจ๋‹ฌ (๋กœ๊ทธ์•„์›ƒ ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?)
  • ๋งˆ์ด ํŽ˜์ด์ง€

    • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ •
    • ์œ ์ € ๊ฐœ์ธ์ •๋ณด ์ˆ˜์ • (๋‹‰๋„ค์ž„, ํ”„์‚ฌ)

์ถ”๊ฐ€ ๊ธฐ๋Šฅ

  • ๋žœ๋”ฉํŽ˜์ด์ง€

    • ํ—ค๋”

      • ๋กœ๊ณ 
      • Nav ๋ฐ”
        • ๋กœ๊ทธ์ธ ์ƒํƒœ์ผ ๋•Œ
          • ๋งˆ์ดํŽ˜์ด์ง€ ๋ฒ„ํŠผ
          • ํ”„์‚ฌ
          • ๊ฐœ์ธ ์ •๋ณด ์ˆ˜์ • ๋ฒ„ํŠผ
        • ๋กœ๊ทธ์•„์›ƒ ์ƒํƒœ์ผ ๋•Œ
          • ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ
          • ํšŒ์›๊ฐ€์ž… ๋ฒ„ํŠผ
    • ๋ฐ”๋””

      • ๊ฒ€์ƒ‰ ๋ฐ”

        • ๊ฒ€์ƒ‰ ๋ฒ„ํŠผ(ํด๋ฆญ or Enter)
        • DB์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋กœ ์ž๋™์™„์„ฑ
      • ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ฐ”

        • ๋‹จ์–ด : ๋‹จ์–ด ๋œป
        • ์ข‹์•„์š” ๋ฒ„ํŠผ
        • ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ
      • ์ค„์ž„๋ง ์ถ”๊ฐ€ ๋ฒ„ํŠผ

        • ํšŒ์›๊ฐ€์ž…

        • ๊ธ€ ์ž‘์„ฑ ๋ฐ ์ˆ˜์ • ๋ชจ๋‹ฌ

    • ํ‘ธํ„ฐ

      • copyright JURIMMA
  • ๋กœ๊ทธ์ธ ๋ชจ๋‹ฌ

    • ๊ธฐ์กด ํšŒ์›์ธ ๊ฒฝ์šฐ
      • ์•„์ด๋”” ์ธํ’‹
      • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ธํ’‹
      • ์•„์ด๋”” / ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ
    • ํšŒ์›๊ฐ€์ž…์ธ ๊ฒฝ์šฐ
      • ์ด๋ฆ„
      • ์ด๋ฉ”์ผ
      • ๋น„๋ฐ€๋ฒˆํ˜ธ
      • ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์ž…๋ ฅ
    • ์†Œ์…œ ๋กœ๊ทธ์ธ(์นด์นด์˜ค ํšŒ์›๊ฐ€์ž…) ๋ฒ„ํŠผ
    • ์ผ๋ฐ˜ ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ
  • ๋งˆ์ด ํŽ˜์ด์ง€

    • ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ๊ธ€ ๋ชฉ๋ก

    • ์ž‘์„ฑ ๊ธ€ ์‚ญ์ œ ๋ฒ„ํŠผ

    • ์ž‘์„ฑ ๊ธ€ ์ „์ฒด ์„ ํƒ (์ฒดํฌ๋ฐ•์Šค)

    • ๊ธ€ ์ž‘์„ฑ ๋ฐ ์ˆ˜์ • ๋ชจ๋‹ฌ

      • ๋‹จ์–ด ์ด๋ฆ„
      • ๋‹จ์–ด ๋œป ์ˆ˜์ •(์ธํ’‹)
      • ์ข‹์•„์š” ํ‘œ์‹œ ์˜์—ญ
      • ์ €์žฅ ๋ฒ„ํŠผ
  • ๊ฐœ์ธ์ •๋ณด์ˆ˜์ • ํŽ˜์ด์ง€

    • ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ

    • ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ

    • ํ”„์‚ฌ ๋ณ€๊ฒฝ

    • ํšŒ์› ํƒˆํ‡ด?

      • ํšŒ์› ํƒˆํ‡ด ๋ชจ๋‹ฌ

        • ๋กœ๊ณ 
        • ํƒˆํ‡ด ๋ฒ„ํŠผ
        • ์ทจ์†Œ ๋ฒ„ํŠผ
  • ๋”๋ณด๊ธฐ ํŽ˜์ด์ง€

    • ์„œ์น˜์ฐฝ์— ์ž…๋ ฅํ•œ ๊ฐ’(๋‹จ์–ด)๊ณผ ๋˜‘๊ฐ™์€ DB ๋ฐ์ดํ„ฐ ๋ชฉ๋ก๋“ค