โ SDLC (Software Development Life Cycle)
- ์ํํธ ์จ์ด์ ๊ฐ๋ฐ ์ฃผ๊ธฐ
โ ๋จ๊ณ๋ณ ์
๋ ฅ ๋ฐ ์ถ๋ ฅ๋ฌผ
- ๊ฐ๋ฐ ๋จ๊ณ์ ์
๋ ฅ๋ฌผ : use case, Domain model
- ์ค๊ณ ๋จ๊ณ์ ์ถ๋ ฅ๋ฌผ : Interaction diagram Design class diagram
โ ์ค์๋ชจ๋ธ
- ํญํฌ์ ๋ชจํ : ์ ํต์ ๋ฐฉ๋ฒ
- ํ๋กํ ํ์ดํ ๋ชจํ : ์ฌ์ฉ์์ ํผ๋๋ฐฑ์ ์ค์
- ์ ์ฆ์ ๋ชจํ : ์๊ธฐ ๊ด๋ฆฌ ์ค์ฌ
โ Waterfall Model
์ต์ด์ ์ฒด๊ณ์ ์ผ๋ก ์ค์ ๋ ๋จ๊ณ
1970๋
๋ ํญ๊ณต ๋ฐฉ์ ์ํํธ์จ์ด ๊ฐ๋ฐ ๊ฒฝํ์ผ๋ก ์ต๋ ๋จ
๊ฐ ๋จ๊ณ๊ฐ ๋ค์ ๋จ๊ณ ์์ ์ ์ ๋๋์ผ ํจ
์ฐ์ถ๋ฌผ์ ์ค์ฌ์ผ๋ก ๊ฐ ๋จ๊ณ๋ณ๋ก ๋
๋ฆฝ์ ์ธ ์กฐ์ง์ผ๋ก ์ํ ๊ฐ๋ฅ.
๋จ์ํ๊ฑฐ๋ ์์ฉ๋ถ์ผ๋ฅผ ์ ์๊ณ ์๋ ๊ฒฝ์ฐ ์ ํฉํจ.
๊ณํ -> ๋ถ์ -> ์ค๊ณ -> ๊ฐ๋ฐ

๊ฐ๋ฐ ์ค, ์ฌ์ฉ์์ ์์ฌ ๋ฐ์์ด ์ด๋ ค์ ์๋๋๋ก ์์ฑ๋์๋์ง ํ์ธ ์ด๋ ค์.
์ฆ, ๋ถ์๋จ๊ณ์ ์ค์๊ฐ ์ํ๋จ๊ณ์์ ๋ฐ๊ฒฌ๋จ
์ฒ์ ๋จ๊ณ์ ๊ฐ์กฐ๋ ์ฝ๋ฉ ๋ฐ ํ
์คํธ๊ฐ ์ง์ฐ๋๊ฒ ๋จ.
์ธ๋ชจ์๋ ๋ฌธ์์ ์์ฐ ๊ฐ๋ฅ์ฑ์ด ๋ง์.
Q. 1000๋ผ์ธ ์ฝ๋๊ฐ ์์ ๋, 10000๋ผ์ธ ๊ธธ์ด์ ํ๋ก๊ทธ๋จ์ ์์ฑํ๊ธฐ ์ํด์๋ ์ผ๋ง๋ ๊ฑธ๋ฆด๊น?
A. 20M/M -> ํ๋ก์ ํธ์ ํฌ๊ธฐ(๊ตฌํ๋ ๊ธฐ๋ฅ ๋ฐ ์ฝ๋)๊ฐ ์ปค์ง์๋ก, ์๊ตฌ๋๋ ๋ณ๊ฒฝ ์ฌํญ ๋ํ ํฌ๊ฒ ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ.
[ํด๊ฒฐ ๋ฐฉ๋ฒ]
- ๋ถ์์ ์ํด์ ์๊ตฌ์ฌํญ์ ํ์คํ๊ฒ ๋์ถํ๊ฑฐ๋,
- ๋ถ์,์ค๊ณ ๋จ๊ณ์์ ์๊ตฌ๋๋ ๋ณ๊ฒฝ์ฌํญ์ ์์ฉํ ์ ์๋๋ก ๋๋นํ๋ค.
โ ํ๋กํ ํ์ดํ ๋ชจํ
ํ๋กํ ํ์
์ ์ ๊ฐ๋ฐํ๋ ํ์์ผ๋ก ํ์ฌ, ํญํฌ์ ๋ชจ๋ธ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํจ.
์ด๋ ์ฌ์ฉ์๊ฐ ์ฐธ๊ฐ. But, ์ฌ์ฉ์๊ฐ ์ํ๋ ๊ธฐ๋ฅ์ ๋งค์ฐ ๋ถํ์คํ๋ฏ๋ก, ์ฌ๊ฐ๋ฐ์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ๋ง์ ์ผ์ ์ ๋ง์ถ๊ธฐ๊ฐ ์ด๋ ต๋ค.

โ ๋์ ํ ๋ชจ๋ธ(Spiral Model)
๋ฐฐ๊ฒฝ : ํ๋กํ ํ์
๋ชจ๋ธ์ ๋๊ท๋ชจ์ด๊ฑฐ๋, ๋ค์ํ ๋ฌธ์ ๋ฅผ ํฌํจํ๋ ํ๋ก์ ํธ์๋ ์ ํฉํ์ง ์์. (๊ณ์ ํ๋กํ ํ์
์ ์์ ํ๊ณ ๋ ์์ ํด์ค์ผ ํ๋ ๋ฌธ์ ๋ฐ์)
- ์ํํธ์จ์ด์ ๊ธฐ๋ฅ์ ๋๋์ด ์ ์ฆ์ ์ผ๋ก ๊ฐ๋ฐํจ์ผ๋ก์จ ์คํจ์ ์ํ์ ์ค์
- ์ฃผ์ ์ฑ๊ณต ์์ธ์ ๋ฐํ์ผ๋ก ์ฐ์ ์์๋ฅผ ์ ํด ๊ฐ๋ฐํ๊ณ , ์ฌ๋ฌ๊ฐ์ง ์ํ ์์๋ฅผ ์ฐพ์๋ด๋ ๊ฒ
- ๋๊ท๋ชจ ์์คํ
๊ฐ๋ฐ์ ์ ํฉํ๋, ์ํ ๋ถ์ ๋ฐ ๊ด๋ฆฌ๊ฐ ๋งค์ฐ ์ค์ํ๋ค.
[๋ฐ๋ณต ๋จ๊ณ]
- ๊ณํ์๋ฆฝ : ๋ชฉํ, ๊ธฐ๋ฅ์ ํ, ์ ์ฝ์ฌํญ์ ์๋ฆฝ
- ์ํ ๋ถ์ : ๊ธฐ๋ฅ ์ ํ์์์ ์ฐ์ ์์ ๋ฐ ์ํ์์๋ฅผ ๋ถ์.
- ๊ฐ๋ฐ : ์ ํ๋ ๊ธฐ๋ฅ์ ๊ฐ๋ฐ.
- ํ๊ฐ : ๊ฐ๋ฐ๋ ๊ฒฐ๊ณผ๋ฅผ ํ๊ฐ.
โ UP(Unified Process)
๊ฐ์ฒด ์งํฅ ์์คํ
์ ๊ตฌ์ถํ๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ๋ก
- ๋ฐ๋ณต์ ์ด๊ณ ์ ์ง์ ์ธ ๊ฐ๋ฐ์ด ์ด๋ฃจ์ด์ง
๊ฐ iteration(๋ถ์, ์ค๊ณ, ๊ตฌํ, ์ํ, ํตํฉ)๊ณผ์ ์ ๋ฐ๋ณตํ๋ฉฐ ์ ์ ์์ฑ๋ ์์คํ
์ผ๋ก ๋ฐ์ ์ํค๋ ๊ฒ.
์ด์ iteration์ ํผ๋๋ฐฑ์ด ๊ทธ ๋ค์ iteration์ ์๊ตฌ์ฌํญ ๋ฐ ๋ถ์ ์ค๊ณ์ ๋ฐ์๋๋ค.
๋ฐ๋ณต์ ๊ฐ๋ฐ์ ํญํฌ์ ๋ชจ๋ธ์ ์ฌ์ฉ์์์ feedback ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ค.

โ ๋ฐ๋ณต์ ๊ฐ๋ฐ์ ์ฅ์
- ํ๋ก์ ํธ์์ ๋ณ๊ฒฝ์ ํ์์ ์ธ๋ฐ, ์ด๋ฌํ ๋ณ๊ฒฝ์ ๋ํด์ ๋์ ์ ์์ฑ์ ๊ฐ์ง๋ค.
- (๊ฐ๋ฐ -> ํผ๋๋ฐฑ -> ์กฐ์ )
๋์ ์ํ ์ฌํญ๋ค์ ๋ํด์ ๋น ๋ฅธ ๋์ฒ๊ฐ ๊ฐ๋ฅํ๋ค.
์ด๋ฐ ์งํ์ํฉ์ ๋์ผ๋ก ๋ณผ ์ ์์ด, ๋น ๋ฅธ ํผ๋๋ฐฑ๊ณผ ์ ํฉํ๋ก ์ฌ์ฉ์๊ฐ ๋ง์กฑํ๋ ์์คํ
์ด ๋๋ค.
์๋ฒฝํ ๋ถ์์ ํ ํ์๊ฐ ์์ด, ๋ณต์กํ๊ณ ๋ง์ ์ผ์ ํ ํ์๊ฐ ์๋ค.
N๋ฒ์งธ ๋ฐ๋ณต์์ ์ป์ ํผ๋๋ฐฑ N+1๋ฒ์งธ ๋ฐ๋ณต์ ๋ฐ์๋์ด, ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ํฅ์์ํจ๋ค.
โ ๋ฐ๋ณต์ ๊ธฐ๊ฐ
- 4์ฃผ๊ฐ ์ ๋นํ๋ค.
- ๋ฐ๋ณต์ ๋ฐ๋์ ํ์๋ฐ์คํ(๊ณ ์ ๊ธฐ๊ฐ)ํด์ผ ํ๋ค.
- ์ด๊ธฐ ๋ฐ๋ณต์์ ๋์ ์ํ์ฌํญ ๋ฐ ๊ฐ์น๊ฐ ๋์ ์ฌํญ ๋ฐ๊ฒฌํ๋ค.
- ํ๊ฐ, ํผ๋๋ฐฑ, ์๊ตฌ ์ฌํญ๋ค์ด ์ฌ์ฉ์์ ์ง์์ ์ฐ๊ด๋๋ค.
- ์ด๊ธฐ ๋ฐ๋ณต ์ ์์ง์ ์ด๊ณ ํต์ฌ์ ์ธ ์ํคํ
์ณ๋ฅผ ๊ฐ๋ฐํ๋ค.
โ UP์ ๊ฐ๋ฐ ๋จ๊ณ ๊ฐ๋ฐ ์ ์ฒด์์์ ์ฃผ์ 4๋จ๊ณ
Inception(๋์
)
- ์ ์ฒด์ ์ธ ๋น์ , ๋น์ง๋์ค ์ผ์ด์ค, ๋ฒ์ ์ถ์
- ํ๋น์ฑ ๊ฒํ
Elaboration(์ ๋ จ)
- ์ ์ ๋ ๋น์ , ํต์ฌ ์ํคํ
์ฒ(๊ตฌ์กฐ)์ ๋ฐ๋ณต์ ์ธ ๊ตฌํ.
- ๋์ ์ํ ํญ๋ชฉ์ ํด๊ฒฐ, ๋๋ถ๋ถ์ ์๊ตฌ์ฌํญ ๋ฐ ๋ฒ์๋ฅผ ์๋ณ, ํ์ค์ ์ธ ์ถ์
Construction(๊ตฌ์ถ)
- ๋จ์์๋ ๋ฎ์ ์ํ ํญ๋ชฉ๊ณผ ์ข๋ ์ฌ์ด ๋ถ๋ถ์ ๋ฐ๋ณต์ ๊ตฌํ, ๋ฐฐ์น ์ค๋น
- ํต์ฌ ์ํคํ
์ฒ์์ ๋ชปํ ๊ฒ์ ๋ง๋ฌด๋ฆฌ
Transition(์ ์ด)
- ๋ฒ ํ ํ
์คํธ ๋ฐ ๋ฐฐ์น