๐ ๋์ ์์ฝ
<๊ฐ๋ฐ์๋ ์์์ผํ ์ํํธ์จ์ด ํ ์คํ ์ค๋ฌด ์ 3ํ>
๋ณธ ํฌ์คํ ์ ๊ฐ์ธ์ ์ผ๋ก ๋จ๊ธฐ๊ณ ์ถ์ ๋ถ๋ถ๋ง์
์์ฝํ์ฌ ์์ฑํจ์ ์๋ ค๋๋ฆฝ๋๋ค.
4. ํ ์คํธ ์ค๊ณ ๊ธฐ๋ฒ
4. ํ ์คํธ ์ค๊ณ ๊ธฐ๋ฒ
TC๋ฅผ ๋์ถํ๊ณ ์ํํ์ฌ ํ ์คํธ ๋์์ด ์ด๋ ์์ค๊น์ง ํ ์คํ ๋์๋์ง ํ์ธํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. ๋ค์ํ ์ข ๋ฅ์ ํ ์คํธ ์ค๊ณ ๊ธฐ๋ฒ์ผ๋ก ์ด๋ป๊ฒ TC๋ฅผ ๋์ถํ๊ณ ํ ์คํธ์ ๋ณด์ฅ์ฑ์ ํ๋ณดํด ์ฃผ๋์ง ๋ณด์.
4.1 ํ ์คํธ ์ค๊ณ ๋ฐ ๊ตฌํ ํ๋ก์ธ์ค( Test design & implementation process)
ํ ์คํธ ์กฐ์ง ๊ตฌ์ฑ, ํ ์คํ ๊ณผ ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ์ฑ์๋, ์๊ฐ์ ์ ์ฝ, ์ฐธ์ฌ ์ธ์ ๋ฑ ํ ์คํ ์ ํฉ(context)์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
ํ ์คํธ ์กฐ๊ฑด์ ์๋ณํ๊ธฐ ์ํด ํ ์คํธ ๋ฒ ์ด์์ค๋ฅผ ๋ถ์ํ๋ค.
ํธ๋์ญ์ , ํ์ง ํน์ฑ ๋๋ ๊ตฌ์กฐ์ ์์ ๋ฑ์ด ์๋ค.
ํ ์คํธ ์กฐ๊ฑด๊ณผ ๋ช ์ธ ๋ฐ ์๊ตฌ์ฌํญ ์ฌ์ด์ ์ถ์ ์ฑ(tracebility)๋ฅผ ์ ์งํจ์ผ๋ก์จ ์๊ตฌ์ฌํญ์ด ๋ณ๊ฒฝ ์ ์ํฅ๋ ๋ถ์๊ณผ ์๊ตฌ์ฌํญ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ํ์ธํ ์ ์๋ค.
TC ๊ตฌ์ฑ ์์
์ฌ์ ์กฐ๊ฑด, ์ํ ์ ์ฐจ, ๊ธฐ๋ ๊ฒฐ๊ณผ์ ์คํ ์ฌํ์กฐ๊ฑด ์ธ์๋ ํ ์คํธ ์ผ์ด์ค ID, TC ๋ช , ์ถ์ ์ฑ, ์ค์๋, ๊ฒฐ๊ณผ ๋ฑ ๋ด์ฉ์ ๋ฐ๋ผ ํฌํจ๋๋ค.
ํ ์คํธ ์ํ ์ ์ฐจ : 7๋จ๊ณ ์ด๋ด ๊ถ๊ณ
๊ฒฐ๊ณผ : NOT TESTED, BLOCKED (์ฌ์ ์กฐ๊ฑด์ด ์ถฉ์กฑํ์ง ์์ ํ ์คํธ๊ฐ ์ํ๋์ง ์์)
TC ๋ชฉ์
์ต์ํ์ TC๋ก ๊ฐ๋ฅํ ๋ง์ ๊ฒฐํจ์ ๋ฐ๊ฒฌํ๋ ๊ฒ
๋์์ ๋น ์ง์์ด ํ ์คํธํ์ฌ ์ํ๋ ์์ค์ ํ ์คํธ ๋ณด์ฅ์ฑ(coverage) ํ๋ณดํ ์ ์๋๋ก tc ์ค๊ณํด์ผ ํจ
4.2 ํ ์คํธ ์ค๊ณ ๊ธฐ๋ฒ ์ข ๋ฅ
๋ธ๋ ๋ฐ์ค ๊ธฐ๋ฒ(๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ๊ณผ ๊ฒฝํ ๊ธฐ๋ฐ ๊ธฐ๋ฒ์ ํฌํจ)
๋ด๋ถ ์ฝ๋ ์ฐธ์กฐํ์ง ์๊ณ ํ ์คํธ ๋ฒ ์ด์์ค, ๊ฐ๋ฐ์์ ํ ์คํฐ, ์ฌ์ฉ์๋ค์ ๊ฒฝํ์ ๋ฐํ์ผ๋ก tc ๋์ถ
ํ์ดํธ ๋ฐ์ค ๊ธฐ๋ฒ (๊ตฌ์กฐ ๊ธฐ๋ฐ ๊ธฐ๋ฒ)
์ปดํฌ๋ํธ(๋จ์) ๋๋ sw์ ๊ตฌ์กฐ(์ฝ๋)๋ฅผ ์ค์ฌ์ผ๋ก tc ๋์ถํ๋ ๋ฐฉ๋ฒ
๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ ํน์ง
๊ณต์์ ์ด๊ฑฐ๋ ๋น๊ณต์์ ์ธ ๋ชจ๋ธ์ ์ฌ์ฉ
๊ตฌ์กฐ ๊ธฐ๋ฐ ๊ธฐ๋ฒ์ ํน์ง
์ํ๋ tc ๋ฐํ์ผ๋ก ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ์ธก์ ํ ์ ์์ผ๋ฉฐ, ์ปค๋ฒ๋ฆฌ์ง ๋์ด๊ธฐ ์ํด tc๋ฅผ ์์คํ ์ ์ผ๋ก ๋์ถํด ์ถ๊ฐํ ์ ์๋ค.
๊ฒฝํ ๊ธฐ๋ฐ ๊ธฐ๋ฒ ํน์ง
์ธ๋ ฅ์ ์ง์์ด๋ ๊ฒฝํ์ผ๋ก tc ๋์ถ
sw์์ ์์ฃผ ๋ฐ์ํ๋ ๊ฒฐํจ์ด๋ ๊ฒฐํจ ๋ถํฌ ๋ฑ์ ์ง์
4.3 ๊ธฐ๋ณธ ์ค๊ณ ๊ธฐ๋ฒ(fundamental test design techniques)
๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ
๋๋ฑ ๋ถํ , ๊ฒฝ๊ณ๊ฐ ๋ถ์, ๊ฒฐ์ ํ ์ด๋ธ ํ ์คํ , ์ํ ์ ์ด ํ ์คํ , ์ ์ฆ์ผ์ด์ค ํ ์คํ
์ฃผ์ด์ง ๋ช ์ธ(๊ฐ๋ฐ ์ค๊ณ ๋ชจ๋ธ ํํ)๋ฅผ ๋ฐํ์ผ๋ก tc๋ฅผ ๋์ถํ๋ ๊ฒ์ ์๋ฏธ, ํด๋น tc๋ฅผ ์คํํด ์ค๋ํ ๊ฒฐํจ ์์์ ๋ณด์ฅํจ
๊ณ ๋ คํด์ผ ํ ์ฌํญ
์ํ ๋ค์ด์ด๊ทธ๋จ, ์ ์ฆ์ผ์ด์ค ๋ฑ์ ๋ชจ๋ธ๋ก ํํ๋์ด ์์ง ์์ ๊ฒฝ์ฐ, ๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ์ ์ ์ฉํ๊ธฐ ์ํด์ ํ ์คํธ ์ ๋ฌธ๊ฐ๊ฐ ์๊ตฌ์ฌํญ ๋ถ์์์ ์ค๊ณ์ ๋จผ์ ์์ฑํ ํ tc๋ฅผ ์์ฑํ๋ ๊ฒ์ ๊ณ ๋ คํด์ผ ํ๋ค.
์กฐ๊ธฐ ํ ์คํธ ์ค๊ณ
๋์ํ๋ sw๊ฐ ์์ด๋ ๋ช ์ธ๋ง ์๋ค๋ฉด ๋ช ์ธ ๊ธฐ๋ฐ ๊ธฐ๋ฒ์ผ๋ก tc๋ฅผ ๋์ถํ ์ ์๋ค.
4.3.1.1 ๋๋ฑ ๋ถํ (Equivalence partitioning)
๋๋ฑ ๋ถํ ์์ญ์์ ์ต์ ํ๋ ๊ฐ์ ์ ํํ์ฌ ํ ์คํธ๋ฅผ ์ํํ๋ค.
๋ฑ๊ฐ ์งํฉ์์ ๋ํฏ๊ฐ๋ง ์ ์ : ์ฝํ ๋๋ฑ ๋ถํ ํ ์คํ weak equivalence testing
๊ฐ ๋ฑ๊ฐ ์งํฉ(equivalence class)์์ ํ๋์ ๋ํฏ๊ฐ์ ์ ํํ์ฌ tc๋ฅผ ๊ตฌ์ฑํ๋ค.
๊ฐ ์ธ๋ถํ๋ ๋ฑ๊ฐ ์งํฉ ๊ฐ์ ์กฐํฉ์ ๋ชจ๋ ๊ณ ๋ คํ ์ ์๋ค.
๊ฐํ ๋๋ฑ ๋ถํ ํ ์คํ (strong equivalence partitioning testing)
๊ฐ ๋ฑ๊ฐ ์งํฉ์ ๋ชจ๋ ์กฐํฉ์ ๊ณ ๋ คํ ํ ์คํ
4.3.1.2 ๊ฒฝ๊ณ๊ฐ ๋ถ์(boundary value analysis)
์.. ๋ ๋ผ๊ฐ์ ใ 4.7๊น์ง ํ๋๋ฐ
์ํ ๋ค์ด์ด๊ทธ๋จ์ผ๋ก ์์คํ ์ ์ค๊ณํ๋ ๊ณผ์ ์์ ๋์ถํ ์ ์๋ ๊ฒฐํจ
๋ชจ๋ธ์์ ๊ฒฐํจ
์ด๊ธฐ์ํ ๋๋ฝ, ์ ์ด ๋๋ ์ก์ ใด๋๋ฝ, ๊ฐ๋๋ฅผ ์ ์ด ๋์ ์ํ์ ํ๊ธฐํจ, ๊ฐ๋์ ์ค๋ณต ๋๋ ๋ถ์ผ์น
๊ตฌํ์์ ๊ฒฐํจ(defects in implementation)
์ฌ๋ถ/๋๋ฝ/ํผ์ ์ํ(extra, missing, corrupt state)
์ก์ ์ด ํ๋ฆฌ๊ฑฐ๋ ๋๋ฝ๋จ
์ค๋ํฌ ํจ์ค(sneak paths), ํธ๋ฉ ๋์ด(trap doors, back doors)
tc ์ค๊ณ ์์
์ํ-์ด๋ฒคํธ ํ ์ด๋ธ ๊ตฌ์ฑ
์ ์ด ํธ๋ฆฌ ๊ตฌ์ฑ
๋ฐ์ legal, ๋๋ ์ ํจ valid tc ๊ตฌ์ฑ
๋ฌด๋ฐ์ illegal ๋๋ ๋น์ ํจ invalid tc ๊ตฌ์ฑ
๊ฐ๋ guard ๋๋ ์กฐ๊ฑด tc ๊ตฌ์ฑ
ํ ์คํธ ํ๋ก์์ ๊ตฌ์ฑ
^ : ๊ฐ๋๊ฐ ์กด์ฌํ๋ ์ํ, ๊ฐ๋์ ์๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ ์ด ์ํ๊ฐ ๋ณ๊ฒฝ๋ ์ ์๋ค.
2) ์ ์ด ํธ๋ฆฌ ๊ตฌ์ฑ
๊ฐ ์ํ์์ ์ ์ด ๊ฐ๋ฅํ ์ํ๋ก ํ ๋ฒ์ฉ ์ ์ด๋๋ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ํ ์คํธํ๋ฉด 0-์ค์์น ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋ฌ์ฑํ๊ฒ ๋๋ค.
๋ ๋ฒ์ฉ ์ฐ์์ ์ผ๋ก ์ ์ด๋ ๊ฒฝ์ฐ๋ฅผ ํ ์คํธํ๋ฉด 1-์ค์์น ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋ฌ์ฑ
=> ์ค์์น ์ปค๋น๋ฆฌ์ง์ ์๊ฐ ๋์์ง ์๋ก ์ปค๋ฒํ๋ ๊น์ด ๋ ๋ฒจ์ด ๋์์ ธ ๋ ๊ฐ๋ ๋์ ํ ์คํธ ํ๊ฒ ๋๋ค.
์ฆ, ๊ฐ ์ํ์์ n ๋ฒ์งธ ์ ์ด๋๋ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ํ ์คํธํ๋ฉด ์ํ์ ์ด ํ ์คํ ์ n-1 ์ค์์น ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋ฌ์ฑํ๊ฒ ๋๋ค.
4) ๋ฌด๋ฐ์ tc ๊ตฌ์ฑ
๋น์ ํจํ tc ๋์ถํ๋ ์ค ๋ชจํธ ๋ถ๋ถ ๋ฐ๊ฒฌํ ์ ์๋ค.
์๋ฃ ์ ํ ๊ฐ๋ฅํ ์ํ์์ ๊ธ์ก ์ถ๊ฐ ๋ฃ์ ๊ฒฝ์ฐ ์๋ฃ ์ ํ์ด ๊ฐ๋ฅํด์ผ ํ์ง๋ง ์์ ๋ช ์ธ์๋ ์๋ค.
์ด ๊ฒฝ์ฐ ๊ฒฐํจ์ผ ๊ฐ๋ฅ์ฑ ๋์ผ๋ฏ๋ก ํ์ธํด์ผ ํ๋ค.
์ผ๋ฐ์ ์ผ๋ก ๋ช ์ธ๋ฅผ ํ ์คํ ํ๋ค๊ณ ํํํ๋ฉฐ, ๋ช ์ธ๋ฅผ ํ ์คํ ํจ์ผ๋ก์จ ์ค์ ์์คํ ์ด ๊ฐ๋ฐ๋๊ธฐ ์ ์ ๊ฒฐํจ์ ์๋ฐฉํ ์ ์๋ค.
5) ๊ฐ๋(guard) ๋๋ ์กฐ๊ฑด tc ๊ตฌ์ฑ
์ด๋ฒคํธ๊ฐ ์กฐ๊ฑด์ ํฌํจํ๊ณ ํด๋น ์กฐ๊ฑด์ ๋ฐ๋ผ ๊ธฐ๋๊ฒฐ๊ณผ๊ฐ ๋ฌ๋ผ์ง๋ ๊ฒฝ์ฐ๋ฅผ ๋ฐ์ํ ๊ฒ์ด๋ค.
๊ฐ๋์ ์กฐ๊ฑด์ด ๋๋ฑ ๋ถํ ์งํฉ์ ๊ฐ๋ ์กฐ๊ฑด๋ฌธ์ด๋ฉด ๋๋ฉ์ธ ๊ธฐ๋ฐ ๋๋ฑ ๋ถํ ๊ธฐ๋ฒ๊ณผ ๊ฒฝ๊ณ๊ฐ ๋ถ์ ๊ธฐ๋ฒ์ ์ ์ฉํ ์ ์๋ค.
๊ฐ๋๊ฐ ๋ณต์กํ ์กฐ๊ฑด๋ฌธ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉด ์ปจ๋์ ์ปค๋ฒ๋ฆฌ์ง(MC/DC : modified condition . decision coverage) ํ ์คํ ์ ํ ์ ์๋ค.
๋๋ฝ๋ ์กฐ๊ฑด์ ํ ์คํ ํ๋ ๊ฐ๋ tc ์ถ๊ฐํ ์ ์๋ค.
6) ํ ์คํธ ํ๋ก์์ ๋๋ ์คํฌ๋ฆฝํธ ๊ตฌ์ฑ
ํ ์คํธ ํ๋ก์์ ๋ ํ ์คํธ์ ์คํ ์์๋ฅผ ๋ํ๋ธ ๊ฒ์ผ๋ก tc๋ฅผ ์์ฐจ์ ์ผ๋ก ๋์ดํ ๊ฒ์ด๋ค.
ํ ์คํธ ํ๋ก์์ ๋ฅผ ๊ธฐ์ ํ ๋ฌธ์๋ฅผ ํ ์คํธ ํ๋ก์์ ๋ช ์ธ(ํ ์คํธ ์ ์ฐจ ๋ช ์ธ)๋ผ ํ๋ฉฐ ํ ์คํธ ์คํฌ๋ฆฝํธ, ์๋ ํ ์คํธ ์คํฌ๋ฆฝํธ ๋ผ๊ณ ํ๋ค.
์ํ์ ์ด ํ ์คํ ์ ์ ํ ๊ฐ๋ฐ ์ ๋จ๊ณ์์ ๋ช ์ธ๋ง์ ๊ฐ์ง๊ณ tc ๋์ถํ ๊ฒ์ด๋ค.
=> ์ค์ ๊ตฌํ๋ ์์คํ ์ ๋์์ผ๋ก ํ ์คํธ ์คํํ๋ฉด์ tc ์์ฑํ๋ ๊ฒ์ด ์๋๋ผ ๋ช ์ธ๋ง์ ๊ฐ์ง๊ณ ๋ tc๋ฅผ ์์ฑํ ์ ์์ผ๋ฉฐ ์ด์ ๊ฐ์ ํ๋ ํตํด ๊ฒฐํจ ๋ฐ๊ฒฌ์ด ๊ฐ๋ฅํ์ฌ ๋ฏธ๋ฆฌ ๊ฒฐํจ์ ์๋ฐฉํ ์ ์๋ค.
4.3.1.5 ์ ์ฆ์ผ์ด์ค ํ ์คํ
์กํฐ(์ ์ ํน์ ์์คํ )์ ์กํฐ ์ฌ์ด์ ์ํธ์์ฉ์ ํํํ๊ณ , ํด๋น ์ํธ์์ฉ์ ์์คํ ์ ์ ์๊ฒ ๊ฒฐ๊ณผ๊ฐ์ ์ ๊ณตํ๋ค.
๊ฐ๊ฐ์ ์ ์ฆ ์ผ์ด์ค๋ ์๋ฌด ์์ ํ ํ์ ์กฐ๊ฑด(post conditions - ๊ด์ฐฐ ๊ฐ๋ฅํ ๊ฒฐ๊ณผ์ ์์คํ ์ ๋ง์ง๋ง ์ํ)๋ฅผ ๊ฐ์ง๋ฉด์ ์ข ๋ฃ๋๋ค.
๋๊ฒ ์ฃผ๋ฅ ์๋๋ฆฌ์ค ๋๋ ๊ธฐ๋ณธ ํ๋ฆ(mainstream scenario, basic or main flows) ๊ณผ ๋์ฒด ํ๋ฆ(alternative branches or alternative flows)์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ฐ. ๊ฐ๊ฐ์ ์ ์ฆ ์ผ์ด์ค๋ ์์ธํ๊ฒ ํํํ๊ธฐ ์ํด ์ ์ฆ์ผ์ด์ค ์์ธ(use case description)์ ๊ฐ๋๋ค.
์ ์ฆ์ผ์ด์ค ๊ธฐ๋ณธ ํ๋ฆ๊ณผ ๋์ฒด ํ๋ฆ
atm๊ธฐ์์ ์ ํจํ์ง ์์ ์นด๋๋ฅผ ๋ฃ์ด ์นด๋ ํ๋ ์ด ๋ถ๊ฐ๋ฅํ๊ฑฐ๋ ๋ถ์ ํํ ์ํธ ์ ๋ ฅ, ์์ก ๋ถ์กฑ ๋ฑ์ ๋์ฒดํ๋ฆ์ ํฌํจํ๋ค.
๋๋ถ๋ถ์ ์ ์ฆ์ผ์ด์ค๊ฐ ์ปดํฌ๋ํธ ํ ์คํ ๋ ๋ฒจ์์ ๋๋ฉด ์์คํ ๋ ๋ฒจ์ ์ ์ฆ์ผ์ด์ค ํ ์คํ ์์๋ ํ๋ ์ ์ด ๋๋ ๊ฒฝ๋ก ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋ฌ์ฑํ๋ ํ ์คํธ๋ฅผ ํตํด ์ ์ฆ์ผ์ด์ค ๊ฐ์ ํ๋๊ณผ ์ ์ฒด ์์คํ ์ฐจ์์์์ ๊ธฐ๋ฅ์ ๊ฒฐํจ์ด๋ ์ฑ๋ฅ์์ ๊ฒฐํจ ๋ฑ ๋น๊ธฐ๋ฅ์ ๊ฒฐํจ์ ๋ฐ๊ฒฌํ๋ ๊ฒ์ ์ง์คํ๋ค.
๊ฒฝ๋ก ์ปค๋ฒ๋ฆฌ์ง
๋ชจ๋ ๊ฒฝ๋ก์ ์กฐํฉ์ ๊ณ ๋ คํ์ฌ tc ๋์ถํ๊ณ ์คํํ๋ ๊ฒ์ด๋ค.
๊ฒฝ๋ก์ ์ฌ๊ท์ ์ธ ๋ฐ๋ณต์ด ์๋ ๊ฒฝ์ฐ(loop)
๊ฒฝ๋ก์ ์กฐํฉ ๊ธฐํ๊ธ์์ ์ฆ๊ฐ, ๊ฒฝ๋ก ์ปค๋ฒ๋ฆฌ์ง ๋ฌ์ฑํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํ๋ค.
=> ์ ์ ํ ๊ธฐ์ค์ ๊ฐ์ง๊ณ ๋ฐ๋ณต ํ์ ์ค์ฌ ์ ํ์ ๊ฒฝ๋ก ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋ฌ์ฑํ๋ค.
์ ๋ ฅ๊ฐ์ ํ๋ผ๋ฏธํฐ๊ฐ ๋ค์ํ๊ณ ๋ง์ ๊ฒฝ์ฐ
=> ๋๋ฑ ๋ถํ ๊ณผ ๊ฒฝ๊ณ๊ฐ ๋ถ์ ๊ธฐ๋ฒ ๋ฐ ์กฐํฉ ํ ์คํ ์ ํ์ฉํ์ฌ ์ ๋ ฅ๊ฐ์ ์๋ฅผ ๊ด๋ฆฌ ๊ฐ๋ฅํ ๋ฒ์๋ก ์ค์ฌ์ผ ํ๋ค.
UML ์์ ์ ์ฆ์ผ์ด์ค ์ด๋ฒคํธ์ ํ๋ฆ์ ์ด๋ป๊ฒ ๊ตฌ์กฐํ์์ผ ์กฐ์งํ๊ณ ์์ฑํ๋์ง ์ ์ํ์ง ์์ ํ ์คํธ์ ๊ทผ๊ฐ์ด ๋๋ ์ ์ฆ์ผ์ด์ค๋ก ใ ํ๋ ๊ฒ ์์ฒด๊ฐ ์ ํํ์ง ์๊ณ ์ผ๊ด์ฑ์ด ๋ฎ์ ์ ์๋ค.
4.3.2 ๊ตฌ์กฐ ๊ธฐ๋ฐ ๊ธฐ๋ฒ (Structure-based technique)
sw ๋ ์์คํ ์ ๊ตฌ์กฐ๋ฅผ ์ค์ฌ์ผ๋ก ํ ์คํ ํ๋ ๊ฒ์ด๋ค.
์ปดํฌ๋ํธ ๋ ๋ฒจ์ ๊ตฌ์กฐ๋ ๊ตฌ๋ฌธ statement, ๊ฒฐ์ decision ๋๋ ๋ถ๊ธฐ๋ฌธ branch ๋ฑ ์ฝ๋ ์์ฒด์ด๋ค.
์ฝ๋ ๊ธฐ๋ฐ ํ ์คํธ ๊ธฐ๋ฒ๊ณผ ์ปค๋ฒ๋ฆฌ์ง์์ ๊ด๊ณ๋ ๋ช ํํ๋ค.