๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋งฅ๋ฝ์์ BCNF(Boyce-Codd Normal Form)๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ ํ ์ด๋ธ์ด ํน์ ์ ๊ทํ ๊ท์น์ ์ค์ํ๋๋ก ํ์ฌ ๋ฐ์ดํฐ ์ค๋ณต์ฑ์ ์ค์ด๊ณ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ํฅ์์ํค๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ ์ค์ํ ์์น์ ๋๋ค. 1974๋ Raymond F. Boyce์ Edgar F. Codd๊ฐ ๊ณ ์ํ BCNF๋ 3NF(์ 3์ ๊ทํ)์ ๊ณ ๊ธ ๋ฐ์ ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ์ด๋ ์ค๊ณ ํจ์จ์ฑ์ ๋ํ ๋ณด๋ค ์๊ฒฉํ ๊ธฐ์ค์ ์ ๊ณตํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์์ ๋ถ์ผ์น ๋๋ ๋ถ์ ํํ ์ ๋ณด ์ ์ฅ์ผ๋ก ์ด์ด์ง ์ ์๋ ํน์ ์ ํ์ ์ ๋ฐ์ดํธ ์์ธ๋ฅผ ๋ฐฉ์งํฉ๋๋ค.
BCNF๋ฅผ ์ดํดํ๋ ค๋ฉด ๋จผ์ ๊ธฐ๋ฅ์ ์ข ์์ฑ์ ๊ฐ๋ ์ ์์์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์์ ํ๋ ์ด์์ ์ด(๋๋ ์์ฑ)์ ๊ฐ์ด ๋ค๋ฅธ ์ด์ ๊ฐ์ ๊ฒฐ์ ํ ๋ ๊ธฐ๋ฅ์ ์ข ์์ฑ์ด ์กด์ฌํฉ๋๋ค. ๊ธฐ๋ณธ ํค๊ฐ ๋จ์ผ ์ด๋ก ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์ด ์ข ์์ฑ์ ์ฌ์ํ๊ณ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๋ฌ ์ด๋ก ๊ตฌ์ฑ๋ ๊ธฐ๋ณธ ํค์ธ ๋ณตํฉ ํค์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด BCNF๋ ํ ์ด๋ธ์ ๋ชจ๋ ์ค์ํ ๊ธฐ๋ฅ ์ข ์์ฑ(X โ Y)์ ๋ํด X๊ฐ ํ ์ด๋ธ์ ๋ชจ๋ ํ์ ๊ณ ์ ํ๊ฒ ์๋ณํ๋ ์ํผํค ๋๋ ์ต์ ์ด ์งํฉ์ด์ด์ผ ํ๋ค๊ณ ๊ท์ ํฉ๋๋ค.
BCNF ๊ตฌํ์๋ ๊ธฐ์ค์ ์ถฉ์กฑํ์ง ๋ชปํ๋ ํ ์ด๋ธ์ ๋ ์์ ํ ์ด๋ธ๋ก ๋ถํดํ์ฌ ๊ฐ ๊ฒฐ๊ณผ ํ ์ด๋ธ์ด BCNF๋ฅผ ์ค์ํ๋์ง ํ์ธํ๋ ํ๋ก์ธ์ค๊ฐ ํฌํจ๋ฉ๋๋ค. ์ด๋ ์ ๋ฐ์ดํธ ์ด์ ํ์์ ์ค์ด๊ณ , ๋ฐ์ดํฐ ์ค๋ณต์ ์ต์ํํ๋ฉฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ ผ๋ฆฌ์ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๋ถํด๋ ๋ฌด์์ค์ ๋๋ค. ์ฆ, ๋ฐ์ดํฐ ์์ค์ด๋ ์ค๋ณต์ด ๋ฐ์ํ์ง ์๊ณ ๋ถํด๋ ํ ์ด๋ธ์ ์กฐ์ธํ์ฌ ์๋ณธ ์ ๋ณด๋ฅผ ๊ฒ์ํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋๋๋ก BCNF ๋ณด์กด ๋ถํด๊ฐ ์กด์ฌํ์ง ์์ ์ ์์ผ๋ฏ๋ก BCNF์ ์ ํ์ด ์๋ ๊ฒ์ ์๋๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ null ๊ฐ์ด๋ ๋๋ฆฌ ํค ์ฌ์ฉ๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฑํํ๋ฉด BCNF ๋ชฉํ๋ฅผ ๋ถ๋ถ์ ์ผ๋ก ๋ฌ์ฑํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค. BCNF๋ 3NF๋ณด๋ค ๋ ์๊ฒฉํ ์กฐ๊ฑด์ ์ ์ํ์ง๋ง ๋ ์ ๊ทํ๋๊ณ ํจ์จ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๋ฅผ ๋ณด์ฅํฉ๋๋ค.
์ ๊ตํ no-code ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถ ํ๋ซํผ์ธ AppMaster ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ง์ํ๊ธฐ ์ํด ํจ์จ์ ์ด๊ณ ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ ๊ตฌ์ถํ๋ ๊ฒ์ด ์ค์ํ๋ค๋ ๊ฒ์ ์ธ์ํ๊ณ ์์ต๋๋ค. ์ง๊ด์ ์ธ ์๊ฐ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๋๊ตฌ๋ฅผ ํตํด AppMaster ํตํด ์ฌ์ฉ์๋ BCNF ์์น๊ณผ ๊ฐ์ ์ ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๊ณ ์ต์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ์ ์ง์ํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์ค๋๋ ๋น ๋ฅด๊ฒ ๋ณํํ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๊ฒฝ์์ ๊ฐ๋ฐ์๋ ๋น ๋ฅธ ์๋๋ก ๊ณ ์ฑ๋ฅ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ ์ ์๋ ๋๊ตฌ์ ํ๋ซํผ์ ์ฐพ๊ณ ์์ต๋๋ค. AppMaster ์ ๊ฐ์ ํ๋ซํผ์ ์๊ท๋ชจ ๋ฐ ๋๊ท๋ชจ ๊ธฐ์ ์ ์ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ณ ๋น์ฉ ํจ์จ์ ์ผ๋ก ์์ฑํ ์ ์๋ ํฌ๊ด์ ์ธ ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ(IDE)์ ์ ๊ณตํจ์ผ๋ก์จ ์ด๋ฌํ ์๊ตฌ๋ฅผ ํด๊ฒฐํฉ๋๋ค. BCNF์ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทํ ๊ฐ๋ ์ ์๊ฒฉํ๊ฒ ์ค์ํ๋ฉด์ AppMaster ๋ก๋๊ฐ ๋ง์ ๊ธฐ์ ์๋๋ฆฌ์ค๋ฅผ ํฌํจํ ๋ค์ํ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ถฉ์กฑํ๋ ์ผ๊ด๋๊ณ ์ ํํ๋ฉฐ ํจ์จ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ๋ณด์ฅํฉ๋๋ค.
AppMaster ์ ๊ฐ๋ ฅํ ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ ๊ธฐ๋ฅ์ ํตํด ์ฌ์ฉ์๋ ํจ๊ณผ์ ์ผ๋ก ํ์ฅํ๊ณ ์งํํ๋ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ ์ ์ํ๋ ๊ฐ๋ ฅํ๊ณ ์ ๋ขฐํ ์ ์๋ ์ํํธ์จ์ด ์๋ฃจ์ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ๋ํ AppMaster ์๋ฒ endpoints ์ฉ Swagger(OpenAPI) ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ์ ๊ฐ์ ์ค์ํ ๋ฌธ์ ์์ฑ์ ์๋ํํจ์ผ๋ก์จ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ํํ๊ณ ๊ธฐ์ ๋ถ์ฑ๋ฅผ ์ต์ํ์ผ๋ก ์ ์งํฉ๋๋ค.
์์ฝํ๋ฉด BCNF(Boyce-Codd Normal Form)๋ ํจ์จ์ ์ด๊ณ ๊ตฌ์กฐํ๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๋ฅผ ์๋ดํ๋ ํ์ ์์น์ ๋๋ค. BCNF ๊ท์น์ ์ค์ํจ์ผ๋ก์จ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ ๋ฐ์ดํฐ ์ค๋ณต์ฑ์ ์ค์ด๊ณ , ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ํฅ์์ํค๋ฉฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด ์ผ๊ด์ฑ์ ๋์ผ ์ ์์ต๋๋ค. ์ต์ฒจ๋จ no-code ํ๋ซํผ์ธ AppMaster ๊ณ ๊ธ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ณ BCNF์ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทํ ํ์ค์ ์๊ฒฉํ ์ค์ํจ์ผ๋ก์จ ์ฌ์ฉ์๋ฅผ ์ํ ๊ณ ์ฑ๋ฅ, ํ์ฅ ๊ฐ๋ฅํ๊ณ ์์ ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ๋ณด์ฅํจ์ผ๋ก์จ ์ด๋ฌํ ์ด์์ ์นํธํฉ๋๋ค.