๊ฐ๋ฐ ๊ธฐ๊ฐ : 2024.09.28 ~ 2024.11.28
๋ฐฐํฌ ์ฃผ์ : https://www.corecord.site
โ๋ช ๋ง๋ ๋ํ๋ฅผ ๋๋ด์ ๋ฟ์ธ๋ฐ ๊ฒฝํ ์ ๋ฆฌ๊ฐ ๋๋ฌ์ด์!โ
โ๊ฒฝํ์ ๋งํ๋๊น ๋์ ์ญ๋์ ์ฐพ์์ค์โ
๋ชจ์๋ชจ์(MOAMOA)๋ ๋ง๋งํ๊ฒ ๋๊ปด์ง๋ ๊ฒฝํ ์ ๋ฆฌ๋ฅผ ๋งค์ผ ์กฐ๊ธ์ฉ ํ๋๋ก ๋๊ณ , AI๊ฐ ๊ฒฝํ์ ๋ถ์ํด ๋๋ง์ ์ญ๋์ ์ฐพ์์ค์!
๐ ๊ฒฝํ๊ณผ ์ญ๋์ ๋ชจ์๋ชจ์!
์๋ ํ์ธ์, AI ์ญ๋ ๋ถ์ ์๋น์ค โ๋ชจ์๋ชจ์โ๋ฅผ ๋ง๋ ํ โ๋ซ๋ซโ์ ๋๋ค. ๐ฉ๐ปโ๐ซ๋ชจ์๋ชจ์๋ ์ทจ์ค์ 9๋ช ์ด ๋ง๋ ์ทจ์ ์ค๋น ์๋น์ค์์.
๊ทธ๋์ ๋๊ตฌ๋ณด๋ค ์ ์ ์ Pain Point๋ฅผ ์ ์๊ณ ์์ฃ .โ๊ฒฝํ ์ ๋ฆฌ๋ ๊ฐ ์ก๊ณ ํด์ผ ํ๋ ๋ถ๋ด์ค๋ฌ์ด ์ผโ ์ด๋ผ๋ ํต๋ ์ ๊นจ๊ธฐ ์ํด ๋ชจ์๋ชจ์๋ฅผ ๋ง๋ค์์ด์.
์ ์ ์ ๋ฐ์ผ๋ฆฌ ๊ฒฝํ์ ์ญ๋๊ณผ ์ฐ๊ฒฐํด, ์น์ดํ๊ฒ ๋ชจ์ ๊ฒฝํ์ด ํ๋ฐ๋์ง ์๋๋ก ๋์๋๋ฆด๊ฒ์!
๋ง์ฐํ๊ณ ๋ต๋ตํ ์ทจ์ ์ค๋น, ํ ๋ซ๋ซ๊ฐ ๋ง๋ค์ด ๊ฐ ๋ณํ๋ฅผ ๊ธฐ๋ํด ์ฃผ์ธ์๐
๋ถ์ผ | ์ด๋ฆ | ํฌ์ง์ |
---|---|---|
PM | ์ต์ํ | ๐ย PM, ์๋น์ค ๊ธฐํ - ์๋น์ค ์ ์ฑ ํ๋ฆฝ, ๋น์ฆ๋์ค ๋ชจ๋ธ ๊ตฌ์ถ |
๊ธฐํ ๋ฆฌ๋ | ์ค๋ฏผ์ง | ๐์๋น์ค ๊ธฐํ - ์ ์ ๋ฆฌ์์น, ์์ด์ดํ๋ ์ ์์ฑ, UX writing |
๊ธฐํ | ์์์ | ๐ ์๋น์ค ๊ธฐํ - ์๋น์ค ์ ์ฑ ํ๋ฆฝ, ๋น์ฆ๋์ค ๋ชจ๋ธ ๊ตฌ์ถ |
๋์์ธ ๋ฆฌ๋ | ๊นํ๊ฒฐ | ๐ ๋์์ธ ๋ฆฌ๋, ux/ui๋์์ธ, gui ๋์์ธ |
๋์์ธ | ๊น์น์ | ๐ข ux/ui๋์์ธ, gui ๋์์ธ |
ํ๋ก ํธ์๋ ๋ฆฌ๋ | ์ค์ ๋ฏผ | ๐ฆ ํ๋ก ํธ์๋ ๋ฆฌ๋, ํ๋ฉด UI ๊ตฌํ, ์๋ฒ ์ฐ๋ |
ํ๋ก ํธ์๋ | ์์ฐ์ | ๐ฑ ํ๋ฉด UI ๊ตฌํ, ์๋ฒ ์ฐ๋ |
๋ฐฑ์๋ ๋ฆฌ๋ | ๊น๋ค์ | ๐ป ๋ฐฑ์๋ ๋ฆฌ๋, DB ๋ฐ API ๊ตฌ์ถ, ์๋ฒ ๋ฐฐํฌ |
๋ฐฑ์๋ | ์ค์ธ์ฐ | ๐ฅ๏ธ DB ๋ฐ API ๊ตฌ์ถ, ์๋ฒ ๋ฐฐํฌ |
๐ฉ๐ปโ๐ซ ์ธ ์ค ์์ฝ
- ์ฑ์ฉ ์ธ์์ ์ถ์ ๋ฐ ๋ถ๊ท์น์ ์ธ ์ฑ์ฉ ๊ธฐ๊ฐ ๋ฑ์ผ๋ก ์ธํด ์ผ์ด๋ฒ๋ฆฐ ์ทจ์ ์์ฅ
- ๊ฒฝ์๋ ฅ์ ์ป๊ธฐ ์ํ โ์คํ ์ ์โ (์คํ ์ํฅ ํ์คํ)
- ๊ฒฐ๊ตญ, ๊ฒฝํ์์ ๋น๋กฏํ ๋๋ง์ ํต์ฌ ์ญ๋(ํ์ด๊ธฐ) ์ ๋ฝ์๋ด๋ ๊ฒ์ด ์ค์ํด์ง
๐ค โ์ ๊ฒฝํ ์ ๋ฆฌ ํด์ผ ํ๋๋ฐ .. ์ธ์ ๋ค ํ์ง? ๋ฏธ๋ฆฌ ํ ๊ฑธ โ
์ธํด์ผ๋ก ์ผํ๋ฉด์ ๊ฒฝํ์ด ์ํ์ง๋ ๊ฒ ์์ฌ์ ๋
ธ์
์ ๊ธฐ๋กํ์ง๋ง,
๋ง์ ์์์ ์ธ ๋ ํฐ ๋์์ด ๋์ง ์์์ด์.
๊ธฐ๋ก์ ํ๋์ฉ ํ์ด๋ณด๋ฉฐ ๊ฒฝํ์ ์ ๋ฆฌํ๊ณ ์ญ๋์ ๋์ถํ๋ ๊ณผ์ ์ด ๋ถ๋ด์ค๋ฌ์ ๊ณ , ๋์ถฉ ์ ์ด๋ ๋ฉ๋ชจ๋ ํต์ฌ์ ํ์
ํ๊ธฐ ์ด๋ ต๋๋ผ๊ณ ์.
๊ทธ๋์ ๋ง๋ค์์ด์. ๋งค์ผ์ ๊ฒฝํ์ ๊ฐํธํ๊ฒ ๊ธฐ๋กํ๊ณ ๋ถ์๊น์ง ๋์์ฃผ๋ ์๋น์ค โ๋ชจ์๋ชจ์โ๋ฅผ์!
์ผ์ด๋ถ์ ์ทจ์ ์์ฅ, ์คํ ์ ์ ์๋.
์ฐจ๋ณํ๋ ๋๋ง์ ๊ฒฝํ๊ณผ ์ญ๋์ผ๋ก ๊ฒฝ์๋ ฅ์ ๊ฐ์ถ๋ ๊ฒ์ด ์ค์ํด์ก์ด์.
๐ก ํ ๋ซ๋ซ๋ ,
(1) ๊ธฐ๋กํ ๊ฒฝํ์ ์ ์ฌ์ ์์ ํ์ฉํ ์ ์๋
(2) ๋์ ์ญ๋์ด ๋๋ณด์ด๋๋ก ๊ฒฝํ์ ๋ถ์ํด์ฃผ๋
๊ฒฝํ ์ ๋ฆฌ ์๋น์ค๋ฅผ ๊ธฐํํด ์ทจ์ค์์ ๊ฒฝํ ์ ๋ฆฌ ๋ถ๋ด์ ๋๊ณ ์ถ์ด์.
๐ฏ ๊ฒฝํ ๊ธฐ๋ก ๋ฐ ์ญ๋ ๋ถ์์ด ํ์ํ ์ทจ์ค์
-
๊พธ์คํ ๊ฒฝํ์ ๊ธฐ๋กํ๊ณ ์ถ์ ์ทจ์ค์
- ๋ค์ํ ๊ฒฝํ์ ๊พธ์คํ ๊ธฐ๋กํ์ฌ ์ด๋ฅผ ์๊ธฐ์๊ฐ์๋ ๋ฉด์ ์ ํ์ฉํ๊ณ ์ถ์ด์
- ๊ธฐ๋ก๋ ๊ฒฝํ์ ๋ชจ์ ์ฒด๊ณ์ ์ผ๋ก ์ ๋ฆฌํ์ฌ ๊ตฌ์ฒด์ ์ธ ์ญ๋์ ๋์ถํ๊ณ ์ถ์ด์
- ๋ฐ์ ์ผ์ ์์์ ๋ถ๋ด ์์ด ๊ฒฝํ์ ๊ธฐ๋กํ๊ณ ์ถ์ด์
-
์์ ์ ๊ฒฝํ์์ ํต์ฌ ์ญ๋์ ์๊ณ ์ถ์ ์ทจ์ค์
- ๋ด ๊ฒฝํ์ ์ง๋ฌด ์ญ๋๊ณผ ์ด๋ป๊ฒ ์ฐ๊ฒฐํด์ผ ํ ์ง ๋ง๋งํด์
- ๋ด ๊ฒฝํ์ด ์ด๋ค ์ญ๋์ ๊ธธ๋ฌ์ฃผ์๋์ง ์์๋ด์ด ๋์ ์ญ๋๊ณผ ๋ถ์กฑํ ์ ์ ํ์ ํ๊ณ ๋ฐ์ ์ํค๊ณ ์ถ์ด์
- ๋์ ์ญ๋์ ์ด์ฉํด์ ์๊ธฐ์๊ฐ์๋ ๋ฉด์ ์์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ๊ณ ์ถ์ด์
๐ค ์ทจ์ค์ / ์ต๋ฏผ์ (25. ์ฌ์)
1๏ธโฃย Situation
- ์ทจ์ ์ ์ํด ๋ค์ํ ๊ฒฝํ ์๋ ์ค
- ๋ํ๊ต ์กธ์ ์ ์๋๊ณ ์ทจ์ ์ค๋น ๋ณํ ์ค
2๏ธโฃย Pain Point
- ๊ฒฝํ๋ค์ ์ ๋์ ๋ ๊ธฐ๋กํ์ง ์์ ๊ฒฝํ ์ ๋ฆฌ์ ๋ง์ ์๊ฐ ์์
- ๊ฒฝํ๊ณผ ์ง๋ฌด ์ญ๋์ ์ ๋๋ก ์ฐ๊ฒฐํ์ง ๋ชปํด, ์๊ธฐ์๊ฐ์ ์์ฑ ์ ๋ณธ์ธ์ ์ด๋ป๊ฒ ์ดํํด์ผ ํ ์ง ๊ฐ์ ์ก์ง ๋ชปํจ
โ๏ธ ๊ฒฝํ ๊ธฐ๋ก
(1) ๋น ๋ฅด๊ณ ๊ฐํธํ๊ฒ, ๊พธ์คํ๊ฒ โก๏ธย AI ์ฑํ
๊ธฐ๋ก, ๋ฉ๋ชจ ๊ธฐ๋ก
(2) ๊ฒฝํ ๊ตฌ์ฒดํ โก๏ธย ๊ฒฝํ ๊ธฐ๋ก / ์ญ๋ ๋ถ์์ ์ต์ ํ๋ ํ๋กฌํํธ ํ์ฉ
๐ ์ญ๋ ๋ถ์
(1) AI ๊ฒฝํ ์์ฝ โก๏ธย ๊ฒฝํ์์ ํต์ฌ ๋ด์ฉ์ ์ถ์ถํด์
(2) AI ์ญ๋ ๋ถ์ โก๏ธย ์์ฑํ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ์ ์ ์ ๊ฒฝํ๊ณผ ์ญ๋์ ์ ๊ธฐ์ ์ผ๋ก ์ฐ๊ฒฐํด์
๋ชจ์๋ชจ์๋ โ๊ฒฝํ ์ ๋ฆฌ๋ ๊ฐ ์ก๊ณ ํด์ผ ํ๋ ๋ถ๋ด์ค๋ฌ์ด ์ผโ์ด๋ผ๋ ๊ณ ์ ๊ด๋
์ ๊นจ๊ธฐ ์ํด ๋ง๋ค์ด์ก์ด์!
์ทจ์ค์์๊ฒ โ๋ง๋งํ๊ณ ๊ท์ฐฎ์ ์ผโ๋ก ์ฌ๊ฒจ์ง๋ ๊ฒฝํ ์ ๋ฆฌ.
โ ๋ชจ์๋ชจ์๋ ์ ์ ์ ์ฑํฅ์ ๋ฐ๋ผ ๊ฒฝํ ์ ๋ฆฌ ๋ฐฉ์์ ๋ ๊ฐ์ง๋ก ์ ์ํ๊ณ ์์ด์.
์น๊ตฌ์ ๋ํํ๋ฏ ๊ธฐ๋กํ๋ AI ์ฑํ
๊ธฐ๋ก๊ณผ, ๋น ๋ฅด๊ฒ ์ ๋ฆฌํ๋ ๋ฉ๋ชจ ๊ธฐ๋ก์ผ๋ก ๋งค์ผ์ ๊ธฐ์ต์ ๋ชจ์๋ณด์ธ์!
โ ๋ชจ์๋ชจ์โ๋ ๊ฒฝํ ๊ธฐ๋ก๊ณผ ์ญ๋ ๋ถ์์ ์ต์ ํ๋ AI ์๋น์ค๋ก, ๊ฒฝํ ์ ๋ฆฌ์์ ๋๋ผ๋ ์ฌ์ฉ์ ๋ถ๋ด์ ์ค์ฌ์ค์.
๊ธฐ์กด ์์ฑํ AI์ ๋ฌ๋ฆฌ, ์ฌ์ฉ์๊ฐ AI ํ๋กฌํํธ๋ฅผ ์ง์ ์์ฑํ์ง ์์๋ STAR ๊ธฐ๋ฒ-ํ๋กฌํํธ ์์ง๋์ด๋ง ๊ณ ๋ํ๋ฅผ ํตํด ๊ฒฝํ์ ๊ตฌ์ฒดํํ๊ณ ํต์ฌ ์ญ๋์ ์๋์ผ๋ก ๋ฝ์์ค์
๊ฒฝํ์์ ์ด๋ค ์ญ๋์ ๋ฐํํ๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋ค๋ฉด?
โ ๋ชจ์๋ชจ์โ๋ ์ญ๋ ํค์๋๋ก ๊ฒฝํ์ ๋ชจ์๋ณผ ์ ์์ด์. ๋์ ๊ฐ์ ์ ์๋ ค์ฃผ๋ ์ญ๋ ๊ทธ๋ํ๋ ํ์ฉํด๋ณด์ธ์!
๐ฌย AI ์ฑํ
๊ธฐ๋ก : AI์ ๊ฒฝํ ๊ตฌ์ฒดํ
- STAR ๊ธฐ๋ฒ์ ํ์ตํ ์ฑํ ํ๋กฌํํ ์ผ๋ก ๊ณ ๋ํ๋ ๋ต๋ณ์ ๋ฐ์ ์ ์์ด์
- ์น๊ตฌ์ฒ๋ผ ๋ํํ๋ฉด ์์ฐ์ค๋ฝ๊ฒ ๊ฒฝํ์ด ์ ๋ฆฌ๋ผ์
๐ย ๋ฉ๋ชจ ๊ธฐ๋ก : ๊ฐํธํ๊ณ ๋น ๋ฅด๊ฒ ๊ธฐ๋กํ๋ ๋ฐฉ๋ฒ
- ๋ถ๋ด ์์ด ๋น ๋ฅด๊ฒ ๊ธฐ๋กํ ์ ์์ด์
๐๏ธย ๊ฒฝํ ๋ชจ์๋ณด๊ธฐ : ์ฒด๊ณ์ ์ธ ๊ฒฝํ ์ ๋ฆฌ
- ๋ ์ง๋ณ, ๊ฒฝํ ์ข ๋ฅ๋ณ, ์ญ๋ ํค์๋๋ณ๋ก ํด๋๋งํด์
- ํ์ํ ๋ด์ฉ์ ๋น ๋ฅด๊ฒ ์ฐพ์ ํ์ฉํ ์ ์์ด์
๐ย ์ญ๋ ํค์๋ ๋ชจ์๋ณด๊ธฐ : ์ญ๋๋ณ๋ก ์ ๋ฆฌ๋ ๊ฒฝํ
- ํน์ ์ญ๋๊ณผ ๊ด๋ จ๋ ๊ฒฝํ์ ์์ฝ๊ฒ ์ฐพ์ ํ์ฉํ ์ ์์ด์
๐ย ์ญ๋ ๊ทธ๋ํ : ํ๋์ ๋ณด๋ ๋์ ์ญ๋ ๊ทธ๋ํ
- ๋์ ๊ฐ์ ์ด ๋ฌด์์ธ์ง ํ์ธํด ๋ณด์ธ์
๐ฉ๐ปโ๐ปย ๊ฒฝํ ์์ฝ โ ํต์ฌ ์ญ๋ ์ถ์ถ โ ํผ๋๋ฐฑ
- ๊ฒฝํ๋ณ๋ก ํต์ฌ ์ญ๋์ ์ถ์ถํ๊ณ ์์ธ ๋ถ์ ๋ด์ฉ์ ์ ๊ณตํด์
- ๊ฒฝํ์ ๋ํ ๊ตฌ์ฒด์ ์ธ ํผ๋๋ฐฑ์ ์ง์ํด์
๋ชจ์๋ชจ์๋ AI๋ฅผ ํ์ฉํด ๋ฐ์ผ๋ฆฌ ๊ฒฝํ์ ๊ธฐ๋กํ๊ณ ๊ฒฝํ ์ ๋ฆฌ๋ฅผ ๋์์ฃผ๋ ์๋น์ค์
๋๋ค!
X์ถ
: ๊ธฐ๋ก ๋ฐฉ์ (์๊ธฐ ์์ฑ โ AI ์ง์)- ๊ฒฝํ ๊ธฐ๋ก์ ํผ์ ํ๋๊ฐ? AI์ ๋์์ ๋ฐ๋๊ฐ?
Y์ถ
: ๊ฒฝํ ์ ๋ฆฌ ์คํ์ผ (์ผ์์ ์ธ ๊ธฐ๋ก โ ๊ฐ ์ก๊ณ ์ ๋ฆฌ)- ์ผ์์ ์ผ๋ก ๊ฒฝํ์ ๋ชจ์ผ๋๊ฐ? ๊ฐ ์ก๊ณ ์ ๋ฆฌํ๋๊ฐ?
ConventionType: ๊ตฌํํ ๋ด์ฉ
convention type | description |
---|---|
feat |
์๋ก์ด ๊ธฐ๋ฅ ๊ตฌํ |
add |
ํ์ผ ๋ฐ ์ฝ๋ ์ถ๊ฐ |
chore |
๋ถ์์ ์ธ ์ฝ๋ ์์ ๋ฐ ๊ธฐํ ๋ณ๊ฒฝ์ฌํญ |
docs |
๋ฌธ์ ์ถ๊ฐ ๋ฐ ์์ , ์ญ์ |
fix |
๋ฒ๊ทธ ์์ |
rename |
ํ์ผ ๋ฐ ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ |
test |
ํ ์คํธ ์ฝ๋ ์ถ๊ฐ ๋ฐ ์์ , ์ญ์ |
refactor |
์ฝ๋ ๋ฆฌํฉํ ๋ง |
!hotfix |
develop ๋ธ๋์น์ ๊ธํ๊ฒ ์ปค๋ฐํด์ผ ํ๋ ๊ฒฝ์ฐ |
- Issue Title :
ConventionType: ์์ ํ ๋ด์ฉ
- ๋ชจ๋ ์์
์
Issue
๋ฅผ ๋ง๋ ํ, ํด๋น ์ด์ ๋ฒํธ์ ๋ํ branch๋ฅผ ํตํด ์ํ - ์ํํ ์์ ์ ๋ํ ์ค๋ช ๊ณผ ํ ์ผ์ ์์ฑ
- Pull Request Title :
[ContentionType/#์ด์๋ฒํธ] ์์ ํ ๋ด์ฉ
- ์ํํ ์์ ์ ๋ํ ์ค๋ช ์ ์์ฑํ๊ณ ๊ด๋ จ ์คํฌ๋ฆฐ์ท์ ์ฒจ๋ถ
- Reviewer, Assigner, Label, Project, Milestone, ๊ด๋ จ ์ด์๋ฅผ ํ๊ทธ
- ์์ ์ค ์ฐธ๊ณ ํ ์๋ฃ ํน์ reviewer์๊ฒ ์ ํ ๋ด์ฉ์ด ์๋ค๋ฉด ํ๋จ์ ์์ฑ
- Branch Name :
ConventionType/#์ด์๋ฒํธ
Pull Request
๋ฅผ ํตํด develop branch์ merge ํ, ํด๋น branch ์ ๊ฑฐ
ConventionType: ๊ตฌํํ ๋ด์ฉ
convention type | description |
---|---|
feat |
์๋ก์ด ๊ธฐ๋ฅ ๊ตฌํ |
refactor |
์ฝ๋ ๋ฆฌํฉํ ๋ง |
style |
์ฝ๋ ์๋ฏธ์ ์ํฅ์ ์ฃผ์ง ์๋ ๋ณ๊ฒฝ์ฌํญ (์ฝ๋ ํฌ๋งทํ , ์คํ ์์ ๋ฑ) |
chore |
๋น๋ ๋ถ๋ถ ํน์ ํจํค์ง ๋งค๋์ ์์ ์ฌํญ ๋ฐ ๊ธฐํ ๋ณ๊ฒฝ์ฌํญ |
fix |
๋ฒ๊ทธ ์์ |
remove |
ํ์ผ ๋ฐ ์ฝ๋ ์ญ์ |
- Issue Title :
[ConventionType] : ์์ ํ ๋ด์ฉ
- ๋ชจ๋ ์์
์
Issue
๋ฅผ ๋ง๋ ํ, ํด๋น ์ด์ ๋ฒํธ์ ๋ํ branch๋ฅผ ํตํด ์ํ - ์ํํ ์์ ์ ๋ํ ์ค๋ช ๊ณผ ํ ์ผ์ ์์ฑ
- Pull Request Title :
#์ด์๋ฒํธ [ContentionType] : ์์ ํ ๋ด์ฉ
- ์ํํ ์์ ์ ๋ํ ์ค๋ช ์ ์์ฑํ๊ณ ํ์์ ๊ด๋ จ ์คํฌ๋ฆฐ์ท์ ์ฒจ๋ถ
- Reviewer, Assigner, Label, Project, Milestone, ๊ด๋ จ ์ด์๋ฅผ ํ๊ทธ
- ์์ ์ค ์ฐธ๊ณ ํ ์๋ฃ ํน์ reviewer์๊ฒ ์ ํ ๋ด์ฉ์ด ์๋ค๋ฉด ํ๋จ์ ์์ฑ
- Branch Name :
์ปจ๋ฒค์ ๋ช /์์ ๋ด์ฉ
Pull Request
๋ฅผ ํตํด develop branch์ merge ํ, ํด๋น branch ์ ๊ฑฐ
https://spiny-lake-7e5.notion.site/API-10b37be2e3fa8020a345c0aa4089a0a0?pvs=4
1) ๊ฐ๋ฐ ๋จ๊ณ
- ์ฝ๋ ์์ฑ
- IntelliJ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค.
- ๋ฒ์ ๊ด๋ฆฌ
- Git์ ํตํด ๋ก์ปฌ์์ ์์ฑ๋ ์ฝ๋๋ฅผ GitHub๋ก ํธ์ํฉ๋๋ค.
develop
๋ธ๋์น์๋ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ๊ฑฐ์น ํ ๋ณํฉ๋ฉ๋๋ค.
2) CI (Continuous Integration)
GitHub Actions๋ฅผ ํ์ฉํ์ฌ develop
๋ธ๋์น์ ์ฝ๋๊ฐ ํธ์๋ ๋ CI ์์
์ด ์๋์ผ๋ก ์คํ๋ฉ๋๋ค.
- ์ฝ๋ ์ฒดํฌ์์ ๋ฐ ํ๊ฒฝ ์ค์
actions/checkout
์ก์ ์ ํตํด ์ต์ ์ฝ๋๋ฅผ ์ฒดํฌ์์ํฉ๋๋ค.- Amazon Corretto JDK 21์ ์ค์ ํ์ฌ Spring Boot ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ ํ๊ฒฝ์ ์ค๋นํฉ๋๋ค.
- ํ์ํ ๋ฆฌ์์ค ํ์ผ ์์ฑ
- ์ค์ ํ์ผ๊ณผ ํ ์คํธ ํ์ผ์ ์์ฑํ๊ณ , GitHub Secrets๋ฅผ ํตํด ๋ณด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํฉ๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์
๋น๋
- Gradle์ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํฉ๋๋ค.
- Docker ์ด๋ฏธ์ง ์์ฑ ๋ฐ Docker Hub ํธ์
- Docker Hub์ ๋ก๊ทธ์ธํ์ฌ ์ธ์ฆ์ ์ํํฉ๋๋ค.
- Docker ์ด๋ฏธ์ง๋ฅผ ๋น๋ํ๊ณ , ์ด๋ฅผ Docker Hub ๋ ์ง์คํธ๋ฆฌ์ ํธ์ํฉ๋๋ค.
3) CD (Continuous Deployment)
CD ์์
์ GitHub Actions์ deploy.sh
์คํฌ๋ฆฝํธ๋ฅผ ํ์ฉํ์ฌ Docker ์ด๋ฏธ์ง๋ฅผ Amazon EC2 ์ธ์คํด์ค์ ๋ฐฐํฌํ๊ณ , Blue-Green ๋ฐฐํฌ ์ ๋ต์ ํตํด ๋ฌด์ค๋จ ๋ฐฐํฌ๋ฅผ ์ง์ํฉ๋๋ค.
- ๋์ปค ์ด๋ฏธ์ง ๋ฐฐํฌ
- CI์์ ์์ฑ๋ ์ต์ Docker ์ด๋ฏธ์ง๋ฅผ EC2 ์ธ์คํด์ค์์ ๋ค์ด๋ก๋ํ์ฌ ๋ฐฐํฌ ์ค๋น๋ฅผ ํฉ๋๋ค.
- Green ํ๊ฒฝ ์ปจํ
์ด๋ ์คํ
- ์๋ก์ด ์ ํ๋ฆฌ์ผ์ด์ ์ปจํ ์ด๋๋ฅผ ์คํํฉ๋๋ค. ์คํ ๊ฐ๋ฅํ ํฌํธ๋ฅผ ์๋์ผ๋ก ํ ๋นํ๋ฉฐ, ๊ธฐ์กด ์ ํ๋ฆฌ์ผ์ด์ (Blue ํ๊ฒฝ)๊ณผ ๋ ๋ฆฝ์ ์ผ๋ก ๋์ํฉ๋๋ค.
- Health Check
- ์๋ก์ด ์ปจํ ์ด๋์ ์ํ๋ฅผ ํ์ธํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ ์์ ์ผ๋ก ์คํ ์ค์ธ์ง ๊ฒ์ฆํฉ๋๋ค. ๋ฐฐํฌ ์คํจ ์ ๊ธฐ์กด ํ๊ฒฝ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์์ ์ ์ค๋จํฉ๋๋ค.
- Nginx๋ฅผ ํตํ ํธ๋ํฝ ์ค์์นญ
- Nginx ์ค์ ์ ์ ๋ฐ์ดํธํ์ฌ ํธ๋ํฝ์ Green ํ๊ฒฝ์ผ๋ก ์ ํํฉ๋๋ค. ์ค์๊ฐ ํธ๋ํฝ ์ค์์นญ์ผ๋ก ์ฌ์ฉ์ ์์ฒญ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค.
- Blue ํ๊ฒฝ ์ข
๋ฃ
- Green ํ๊ฒฝ ๋ฐฐํฌ๊ฐ ์ฑ๊ณตํ๋ฉด ๊ธฐ์กด Blue ํ๊ฒฝ ์ปจํ ์ด๋๋ฅผ ์์ ํ๊ฒ ์ข ๋ฃํ์ฌ ๋ฆฌ์์ค๋ฅผ ์ ๋ฆฌํฉ๋๋ค.