๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋งฅ๋ฝ์—์„œ 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์™€ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™” ํ‘œ์ค€์„ ์—„๊ฒฉํžˆ ์ค€์ˆ˜ํ•จ์œผ๋กœ์จ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๊ณ ์„ฑ๋Šฅ, ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ  ์•ˆ์ •์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์„ฑ์„ ๋ณด์žฅํ•จ์œผ๋กœ์จ ์ด๋Ÿฌํ•œ ์ด์ƒ์„ ์˜นํ˜ธํ•ฉ๋‹ˆ๋‹ค.