๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป ๐ŸŒฎ ๐Ÿ’ฌ
๐Ÿ“œ ์ž๊ฒฉ์ฆ/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ

2021๋…„ 3ํšŒ์ฐจ ํ•„๊ธฐ ๊ธฐ์ถœ๋ฌธ์ œ ํ’€์ด

by ๋ฐ”์ฟ„๋ฆฌ 2025. 1. 26.

 

6. ์†Œํ”„ํŠธ์›จ์–ด์—์„œ ๋ชจ๋ธ๋ง

ํ˜„์‹ค ์„ธ๊ณ„์˜ ๋ฌธ์ œ๋ฅผ ์ถ”์ƒํ™”ํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ์˜ ๊ตฌ์กฐ์™€ ๋™์ž‘์„ ์‹œ์ž‘์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์„ค๊ณ„ํ•˜๋Š” ๊ณผ์ •์„ ๋งํ•œ๋‹ค.

๋ชจ๋ธ๋ง์€ ๋ณต์žกํ•œ ์‹œ์Šคํ…œ์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ํ•˜๊ณ  ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ์˜์‚ฌ์†Œํ†ต์„ ์›ํ™œํ•˜๊ฒŒ ํ•˜๋ฉฐ ๋ฌธ์ œ๋ฅผ ์‚ฌ์ „์— ๋ฐœ๊ฒฌํ•˜๊ณ  ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š”๋‹ค.

- ๊ตฌ์กฐ์  ๋ชจ๋ธ๋ง: ์‹œ์Šคํ…œ์˜ ์ •์ ์ธ ๋ถ€๋ถ„, ์ฆ‰ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ (ex: ํด๋ž˜์Šค ๋‹ค์ด์–ด๊ทธ๋žจ, ๊ฐ์ฒด ๋‹ค์ด์–ด๊ทธ๋žจ)

- ํ–‰์œ„์  ๋ชจ๋ธ๋ง: ์‹œ์Šคํ…œ์˜ ๋™์ ์ธ ๋ถ€๋ถ„, ์ฆ‰ ๋™์ž‘ ๋ฐ ์ƒํ˜ธ์ž‘์šฉ์„ ๋ชจ๋ธ๋ง (ex: ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ, ์ƒํƒœ ๋‹ค์ด์–ด๊ทธ๋žจ, ์•กํ‹ฐ๋น„ํ‹ฐ ๋‹ค์ด์–ด๊ทธ๋žจ)

- ๊ธฐ๋Šฅ์  ๋ชจ๋ธ๋ง: ์‹œ์Šคํ…œ์˜ ๊ธฐ๋Šฅ๊ณผ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๋ชจ๋ธ๋ง (ex: ์œ ์Šค์ผ€์ด์Šค ๋‹ค์ด์–ด๊ทธ๋žจ, ๋ฐ์ดํ„ฐ ํ๋ฆ„ ๋‹ค์ด์–ด๊ทธ๋žจDFD)

 

15. ๋Ÿผ๋ฐ”์šฐ ๋ชจ๋ธ

๊ฐ์ฒด ์ง€ํ–ฅ ๋ถ„์„ ๋ฐ ์„ค๊ณ„๋ฅผ ์œ„ํ•œ ๋ฐฉ๋ฒ•

๋ณต์žกํ•œ ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•˜๊ณ  ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ์ฒด์™€ ๊ทธ ๊ด€๊ณ„๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ํ•œ ๋ชจ๋ธ๋ง ์ ‘๊ทผ๋ฒ•

๊ฐ์ฒด ์ง€ํ–ฅ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ์œ ์šฉํ•˜๋ฉฐ UML๋กœ ๋ฐœ์ „ํ•œ ๊ธฐ๋ฐ˜ ์ค‘ ํ•˜๋‚˜

(1) ๊ฐ์ฒด ๋ชจ๋ธ

- ๋ฐ์ดํ„ฐ ์ค‘์‹ฌ์ ์ธ ๊ด€์ 

- ์‹œ์Šคํ…œ์—์„œ ๊ฐ์ฒด์˜ ๊ตฌ์กฐ์™€ ๊ด€๊ณ„๋ฅผ ๋ชจ๋ธ๋ง

- ํด๋ž˜์Šค ๋‹ค์ด์–ด๊ทธ๋žจ, ๊ฐ์ฒด ๋‹ค์ด์–ด๊ทธ๋žจ

- ๊ฐ์ฒด(ํด๋ž˜์Šค)์™€ ์†์„ฑ, ์—ฐ์‚ฐ(๋ฉ”์„œ๋“œ) / ๊ฐ์ฒด ๊ฐ„์˜ ๊ด€๊ณ„(ex: ์ƒ์†, ์—ฐ๊ด€, ์ง‘ํ•ฉ ๋“ฑ)

(2) ๋™์  ๋ชจ๋ธ

- ์‹œ๊ฐ„์ ์ธ ๊ด€์ 

- ์‹œ์Šคํ…œ์—์„œ ๊ฐ์ฒด ๊ฐ„์˜ ํ–‰์œ„์™€ ์ƒํ˜ธ์ž‘์šฉ์„ ๋ชจ๋ธ๋ง

- ์ƒํƒœ ๋‹ค์ด์–ด๊ทธ๋žจ, ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ

- ๊ฐ์ฒด ์ƒํƒœ(State)์™€ ์ƒํƒœ ์ „ํ™˜(Event) / ์ƒํƒœ ๋ณ€ํ™”์˜ ํŠธ๋ฆฌ๊ฑฐ ์กฐ๊ฑด

(3) ๊ธฐ๋Šฅ ๋ชจ๋ธ

- ํ”„๋กœ์„ธ์Šค ์ค‘์‹ฌ์ ์ธ ๊ด€์ 

- ์‹œ์Šคํ…œ์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„๊ณผ ํ”„๋กœ์„ธ์Šค ๋ณ€ํ™˜์„ ๋ชจ๋ธ๋ง

- ๋ฐ์ดํ„ฐ ํ๋ฆ„ ๋‹ค์ด์–ด๊ทธ๋žจ(DFD)

- ํ•จ์ˆ˜(์ž‘์—…)์™€ ๊ทธ ์ž…๋ ฅ ์ถœ๋ ฅ ๋ฐ์ดํ„ฐ / ๋ฐ์ดํ„ฐ ํ๋ฆ„ ๊ฐ„์˜ ์˜์กด์„ฑ

 

16. ์ˆœ์ฐจ ๋‹ค์ด์–ด๊ทธ๋žจ

- ๊ฐ์ฒด๋“ค์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

- ์‹œ๊ฐ„์˜ ํ๋ฆ„์— ๋”ฐ๋ผ ๊ฐ์ฒด๋“ค์ด ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฉ”์‹œ์ง€์˜ ์ „๋‹ฌ ๊ณผ์ •์„ ๊ฐ•์กฐ

- ๋™์ ์ธ ์ƒํ˜ธ ์ž‘์šฉ์„ ํ‘œํ˜„ํ•˜๋ฉฐ, ๊ฐ์ฒด ๊ฐ„์˜ ์‹œ๊ฐ„์— ๋‹ค๋ฅธ ๋ฉ”์‹œ์ง€ ๊ตํ™˜์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

- UML์—์„œ ๊ต๋ฅ˜ ๋‹ค์ด์–ด๊ทธ๋žจ์˜ ํ•œ ์œ ํ˜•์œผ๋กœ, ๊ฐ์ฒด ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ์‹œ๊ฐํ™”ํ•œ๋‹ค.

 

17. ๊ฐ์ฒด์ง€ํ–ฅ ๋ถ„์„ ๊ธฐ๋ฒ•

- ์‹œ์Šคํ…œ์˜ ๋™์ ์ธ ํ–‰์œ„๋ฅผ ๋ชจ๋ธ๋งํ•˜๊ธฐ ์œ„ํ•ด ๋™์  ๋ชจ๋ธ๋ง ๊ธฐ๋ฒ•(ex: ์ƒํƒœ ๋‹ค์ด์–ด๊ทธ๋žจ, ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ)์„ ์‚ฌ์šฉํ•œ๋‹ค.

- ๊ธฐ๋Šฅ ์ค‘์‹ฌ์ด ์•„๋‹ˆ๋ผ ๊ฐ์ฒด ์ค‘์‹ฌ์œผ๋กœ ์‹œ์Šคํ…œ์„ ๋ชจ๋ธ๋งํ•œ๋‹ค.

- ๊ฐ์ฒด ์ง€ํ–ฅ์€ ์ƒํ–ฅ์‹(Bottom-up) ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋” ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค.

- ๋ฐ์ดํ„ฐ(์†์„ฑ)์™€ ํ–‰์œ„(๋ฉ”์„œ๋“œ)๋ฅผ ๋ฌถ์–ด ๊ฐ์ฒด๋ฅผ ์ •์˜ํ•˜๋ฉฐ, ์ด๋ฅผ ์ถ”์ƒํ™”ํ•˜์—ฌ ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•œ๋‹ค.

- ์ฃผ์š” ์žฅ์  ์ค‘ ํ•˜๋‚˜๋Š” ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด๋‹ค. ํด๋ž˜์Šค์™€ ๊ฐ์ฒด๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ์ด ํ–ฅ์ƒ๋˜๊ณ , ์‹œ์Šคํ…œ ์š”๊ตฌ ๋ณ€ํ™”์—๋„ ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

19. ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์—์„œ ๋ฏธ๋“ค์›จ์–ด

- ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์ด ์„œ๋กœ ํ†ต์‹ ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ณ„์ธต

- ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์˜ ์‹ค์ œ ์œ„์น˜๋ฅผ ์•Œ ํ•„์š” ์—†์ด ์„œ๋น„์Šค๋ฅผ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋„๋ก ์œ„์น˜ ํˆฌ๋ช…์„ฑ์„ ์ œ๊ณต

- ๋ถ„์‚ฐ ํ™˜๊ฒฝ์—์„œ ์—ฌ๋Ÿฌ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๊ณตํ†ต์ ์œผ๋กœ ํ•„์š”๋กœ ํ•˜๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋Šฅ(ex: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ, ๋ฉ”์‹œ์ง•, ์ธ์ฆ)์„ ์ œ๊ณตํ•œ๋‹ค.

- ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์‚ฌ์šฉ์ž ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„์˜ ํ†ต์‹ , ์„œ๋ฒ„๊ฐ„ ํ†ต์‹  ๋“ฑ ๋‹ค์˜ํ•œ ๋ถ„์‚ฐ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ๋œ๋‹ค.

 

20. ํŒŒ์ดํ”„ ํ•„ํ„ฐ ์•„ํ‚คํ…์ฒ˜

๋‹จ๋ฐฉํ–ฅ์œผ๋กœ ํ๋ฅด๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด๋‹ค

๋˜ํ•œ, ํ•„ํ„ฐ ์ด๋™ ์‹œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์กด์žฌ

 

23. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰ DFS

(1) DFS๋Š” ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€๋Šฅํ•œ ๊นŠ์ด๊นŒ์ง€ ๋‚ด๋ ค๊ฐ„ ๋’ค, ๋” ์ด์ƒ ๋ฐฉ๋ฌธํ•  ๋…ธ๋“œ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ๋’ค๋กœ ๋Œ์•„์˜จ๋‹ค.

(2) ๋ฐฉ๋ฌธ ์ˆœ์„œ๋Š” ๊ฐ€๊นŒ์šด ์ •์ ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•˜๋ฉฐ, ๋ฐฉ๋ฌธํ•œ ์ •์ ์€ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š๋Š”๋‹ค.

(3) ์ธ์ ‘ ์ •์ ์„ ํƒ์ƒ‰ํ•  ๋•Œ๋Š” ์‚ฌ์ „์ˆœ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ผ๋ฐ˜์ ์ด๋‹ค.

 

25. ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ฒ„

- ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ƒ์œ„ ๋ชจ๋“ˆ ์—ญํ• ์„ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด์ด๋‹ค

- ์ฆ‰, ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ฒ„๋Š” ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์˜ ํ˜ธ์ถœ์ž ์—ญํ• ์„ ํ•˜๋ฉฐ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๊ณ  ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•œ๋‹ค.

- *ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์ด ํ˜ธ์ถœํ•˜๋Š” ํ•˜์œ„ ๋ชจ๋“ˆ ์—ญํ• ์„ ํ•˜๋Š” ๊ฒƒ์€ ํ…Œ์ŠคํŠธ ์Šคํ…Stub ์ด๋‹ค

 

[ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ฒ„์™€ ํ…Œ์ŠคํŠธ ์Šคํ…์˜ ์ฐจ์ด]

(1) ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ฒ„

- ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์˜ ์ƒ์œ„ ๋ชจ๋“ˆ ์—ญํ• 

- ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๊ณ  ์ž…๋ ฅ๊ฐ’์„ ์ „๋‹ฌํ•˜๋ฉฐ, ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธ

- ์ฃผ๋กœ ํ•˜ํ–ฅ์‹ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ์—์„œ ์ƒ์œ„ ๋ชจ๋“ˆ์ด ์ค€๋น„๋˜์ง€ ์•Š์•˜์„ ๋•Œ ์‚ฌ์šฉ

(2) ํ…Œ์ŠคํŠธ ์Šคํ…

- ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์˜ ํ•˜์œ„ ๋ชจ๋“ˆ ์—ญํ• 

- ํ…Œ์ŠคํŠธ ๋Œ€์ƒ ๋ชจ๋“ˆ์ด ํ˜ธ์ถœํ•˜๋Š” ํ•˜์œ„ ๋ชจ๋“ˆ์˜ ๋™์ž‘์„ ๋Œ€์ฒด

- ์ฃผ๋กœ ์ƒํ–ฅ์‹ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ์—์„œ ํ•˜์œ„ ๋ชจ๋“ˆ์ด ์ค€๋น„๋˜์ง€ ์•Š์•˜์„ ๋•Œ ์‚ฌ์šฉ

 

27. ์Šคํƒ์˜ ์ž๋ฃŒ ์‚ญ์ œ ์•Œ๊ณ ๋ฆฌ์ฆ˜

(1) ์กฐ๊ฑด: if Top=0

- ์Šคํƒ์˜ Top ํฌ์ธํ„ฐ๊ฐ€ 0์ด๋ผ๋ฉด, ์Šคํƒ์— ๋” ์ด์ƒ ์‚ญ์ œํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋‹ค.

- ์ด ์ƒํ™ฉ์€ Underflow(์–ธ๋”ํ”Œ๋กœ์šฐ) ์ƒํƒœ

- ์–ธ๋”ํ”Œ๋กœ์šฐ๋Š” ์Šคํƒ์ด ๋น„์–ด ์žˆ์„ ๋•Œ ์‚ญ์ œ ์—ฐ์‚ฐ์„ ์‹œ๋„ํ•˜๋Š” ๊ฒฝ์šฐ ๋ฐœ์ƒ

(2) Else ๋ธ”๋ก

- ์Šคํƒ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์œผ๋ฉด, Top์— ์œ„์น˜ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  Top ํฌ์ธํ„ฐ๋ฅผ ๊ฐ์†Œ์‹œํ‚จ๋‹ค.

- ๋”ฐ๋ผ์„œ Top = Top -1 ์€ ์ •์ƒ์ ์ธ ์‚ญ์ œ ์—ฐ์‚ฐ์— ํ•ด๋‹น

 

โญ๏ธ ์Šคํƒ ์—ฐ์‚ฐ โญ๏ธ

- Overflow: ์Šคํƒ์ด ๊ฐ€๋“ ์ฐฌ ์ƒํƒœ์—์„œ ์‚ฝ์ž…(Push) ์—ฐ์‚ฐ์„ ์‹œ๋„ํ•  ๋•Œ ๋ฐœ์ƒ

- Underflow: ์Šคํƒ์ด ๋น„์–ด ์žˆ๋Š” ์ƒํƒœ์—์„œ ์‚ญ์ œ(Pop) ์—ฐ์‚ฐ์„ ์‹œ๋„ํ•  ๋•Œ ๋ฐœ์ƒ

 

30. ๊ฒ€์ฆ์™€ ํ™•์ธ

(1) ๊ฒ€์ฆ Verification

- "๊ฐœ๋ฐœ์ž์˜ ๊ธฐ๋Œ€๋ฅผ ์ถฉ์กฑ์‹œํ‚ค๋Š”์ง€"๋ฅผ ํ™•์ธํ•˜๋Š” ๊ณผ์ •

- ์ฆ‰, ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์„ค๊ณ„ ๋ช…์„ธ๋‚˜ ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌํ˜„๋˜์—ˆ๋Š”์ง€๋ฅผ ์ธก์ •

- ์ฃผ์š” ์งˆ๋ฌธ: "์šฐ๋ฆฌ๊ฐ€ ์ œ๋Œ€๋กœ ๋งŒ๋“ค์—ˆ๋Š”๊ฐ€?"

- ๋ฐฉ๋ฒ•: ์ฝ”๋“œ ๋ฆฌ๋ทฐ, ์›Œํฌ์Šค๋ฃจ, ์œ ๋‹› ํ…Œ์ŠคํŠธ

(2) ํ™•์ธ Validation

- "์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ์ ํ•ฉํ•œ์ง€"๋ฅผ ํ™•์ธํ•˜๋Š” ๊ณผ์ •

- ์ฆ‰, ๊ตฌํ˜„๋œ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์‚ฌ์šฉ์ž๋‚˜ ๊ณ ๊ฐ์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ถฉ์กฑ์‹œํ‚ค๋Š”์ง€๋ฅผ ์ธก์ •

- ์ฃผ์š” ์งˆ๋ฌธ: "์šฐ๋ฆฌ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ๊ฒƒ์„ ๋งŒ๋“ค์—ˆ๋Š”๊ฐ€?"

- ๋ฐฉ๋ฒ•: ์‹œ์Šคํ…œ ํ…Œ์ŠคํŠธ, ์‚ฌ์šฉ์ž ์ˆ˜์šฉ ํ…Œ์ŠคํŠธ

 

33. ์†Œ์Šค ์ฝ”๋“œ ์ •์  ๋ถ„์„

- ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ์†Œ์Šค ์ฝ”๋“œ ์ž์ฒด๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๋ฒ„๊ทธ, ๋ณด์•ˆ ์ทจ์•ฝ์ , ์Šคํƒ€์ผ ์œ„๋ฐ˜ ๋“ฑ์„ ์ฐพ์•„๋‚ด๋Š” ๋ฐฉ๋ฒ•

- ํ•˜๋“œ์›จ์–ด์™€๋Š” ๋ฌด๊ด€ํ•˜๊ฒŒ, ์†Œํ”„ํŠธ์›จ์–ด ๋„๊ตฌ๋‚˜ ๊ธฐ๋ฒ•์„ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง„๋‹ค.

โœ… ์ •์  ๋ถ„์„ ํŠน์ง•

- ์ฝ”๋“œ ์‹คํ–‰ ๋ถˆํ•„์š”

- ์†Œํ”„ํŠธ์›จ์–ด ๋„๊ตฌ ์‚ฌ์šฉ

- ํ•˜๋“œ์›จ์–ด ์˜์กด ์—†์Œ

- ์ฃผ์š” ๋ถ„์„ ํ•ญ๋ชฉ: ์ฝ”๋“œ ํ’ˆ์งˆ, ์ž ์žฌ์  ๋ฒ„๊ทธ(Null ์ฐธ์กฐ, ๋ฒ”์œ„ ์ดˆ๊ณผ), ๋ณด์•ˆ ์ทจ์•ฝ์ (SQL Injection, XSS)

 

โœ… ๋™์  ๋ถ„์„ ํŠน์ง•

- ์‹คํ–‰ ๊ธฐ๋ฐ˜ ๋ถ„์„

- ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜ ๊ฐ์ง€

- ํ™˜๊ฒฝ ์˜์กด์„ฑ

- ์‹ค์ œ ๋ฐ์ดํ„ฐ ํ…Œ์ŠคํŠธ

- ์„ฑ๋Šฅ ๋ฐ ๋ณด์•ˆ ๋ถ„์„ ๊ฐ€๋Šฅ

 

34. ๊ฒฐํ•จ Fault

- ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ™œ๋™์„ ์ˆ˜ํ–‰ํ•จ์— ์žˆ์–ด์„œ ์‹œ์Šคํ…œ์ด ๊ณ ์žฅ(Failure)์„ ์ผ์œผํ‚ค๊ฒŒ ํ•˜๋ฉฐ, ์˜ค๋ฅ˜(Error)๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ

 

36. ์†Œํ”„ํŠธ์›จ์–ด ํ’ˆ์งˆ ๋ชฉํ‘œ

- ์ด์‹์„ฑ Portability: ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๋‹ค๋ฅธ ํ•˜๋“œ์›จ์–ด๋‚˜ ์šด์˜์ฒด์ œ ํ™˜๊ฒฝ์—์„œ ์‰ฝ๊ฒŒ ์ˆ˜์ •๋˜์–ด ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ

- ํšจ์œจ์„ฑ Efficiency: ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ž์›์„ ์–ผ๋งˆ๋‚˜ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ํŠน์„ฑ (์‹คํ–‰ ์†๋„, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰, CPU ํšจ์œจ์„ฑ์ด ํฌํ•จ๋œ๋‹ค, ํ•˜๋“œ์›จ์–ด ํ™˜๊ฒฝ์—์„œ์˜ ์ˆ˜์ •๊ณผ๋Š” ๊ด€๋ จ์ด ์—†๋‹ค.)

- ์‚ฌ์šฉ์„ฑ Usability: ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ๋Œ€์šฐ๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ๋Š”์ง€์— ๋Œ€ํ•œ ํŠน์„ฑ (์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๊ฒฝํ—˜๊ณผ ๊ด€๋ จ์ด ์žˆ๋‹ค.)

- ์ •ํ™•์„ฑ Correctness: ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๋ช…์„ธ์„œ๋‚˜ ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ์ •ํ™•ํ•˜๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ํŠน์„ฑ

 

40. ํŒจํ‚ค์ € Packager

์ฝ˜ํ…์ธ ์™€ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌถ์–ด์„œ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋‹จ์œ„ํ™”ํ•˜๋Š” ๊ฒƒ

์ฆ‰, ์ฝ˜ํ…์ธ ๊ฐ€ ํšจ๊ณผ์ ์œผ๋กœ ๋ฐฐํฌ ๋ฐ ๊ด€๋ฆฌ๋  ์ˆ˜ ์žˆ๋„๋ก ํŒจํ‚ค์ง• ์ž‘์—…์„ ์ˆ˜ํ–‰

 

49. ์Šˆํผํ‚ค SuperKey

- ํ•œ ๋ฆด๋ ˆ์ด์…˜ ๋‚ด์˜ ์†์„ฑ๋“ค์ด ์ง‘ํ•ฉ์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ‚ค

- ์œ ์ผ์„ฑ์€ ๋งŒ์กฑํ•˜์ง€๋งŒ, ์ตœ์†Œ์„ฑ์€ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š” ํ‚ค

- ์ฆ‰, ๋ชจ๋“  ํŠœํ”Œ์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ถˆํ•„์š”ํ•œ ์†์„ฑ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋‹ค.

 

โœ… ํ›„๋ณดํ‚ค Candidate Key

- ์Šˆํผํ‚ค์˜ ๋ถ€๋ถ„์ง‘ํ•ฉ์œผ๋กœ ์œ ์ผ์„ฑ๊ณผ ์ตœ์†Œ์„ฑ์„ ๋ชจ๋‘ ๋งŒ์กฑ

- ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์— ์—ฌ๋Ÿฌ ํ›„๋ณดํ‚ค๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ

โœ… ๊ธฐ๋ณธํ‚ค Primary Key

- ํ›„๋ณดํ‚ค ์ค‘์—์„œ ํŠน๋ณ„ํžˆ ์„ ํƒ๋œ ํ•˜๋‚˜์˜ ํ‚ค

- NULL ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์—†์œผ๋ฉฐ, ๋ชจ๋“  ํŠœํ”Œ์„ ์œ ์ผํ•˜๊ฒŒ ์‹๋ณ„

โœ… ๋Œ€์ฒดํ‚ค Alternate Key

- ํ›„๋ณดํ‚ค ์ค‘ ๊ธฐ๋ณธํ‚ค๋กœ ์„ ํƒ๋˜์ง€ ์•Š์€ ๋‚˜๋จธ์ง€ ํ‚ค

โœ… ์™ธ๋ž˜ํ‚ค Foreign Key

- ๋‹ค๋ฅธ ๋ฆด๋ ˆ์ด์…˜์˜ ๊ธฐ๋ณธํ‚ค๋ฅผ ํƒ์กฐํ•˜๋Š” ํ‚ค, ๋‘ ๋ฆด๋ ˆ์ด์…˜ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋ƒ„

 

52. ๊ด€๊ณ„ ๋Œ€์ˆ˜ Relational Algebra

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ํ˜•์‹์ ์ธ ์–ธ์–ด

๋ฐ์ดํ„ฐ๋ฅผ ํ‘œํ˜„ํ•˜๊ณ  ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ์—ฐ์‚ฐ์ž์™€ ์—ฐ์‚ฐ ๊ทœ์น™์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ๊ฒฐ๊ณผ๋Š” ํ•ญ์ƒ ์ƒˆ๋กœ์šด ๋ฆด๋ ˆ์ด์…˜(ํ…Œ์ด๋ธ”)์ด๋‹ค.

โœ… ํŠน์ง•

- ํ˜•์‹์  ์ˆ˜ํ•™ ์–ธ์–ด: ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰, ๋ณ€ํ˜•, ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉ

- ์—ฐ์‚ฐ์˜ ๊ฒฐ๊ณผ๋Š” ๋ฆด๋ ˆ์ด์…˜(ํ…Œ์ด๋ธ”): ๊ด€๊ณ„ ๋Œ€์ˆ˜์˜ ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋Š” ํ•ญ์ƒ ์ƒˆ๋กœ์šด ๋ฆด๋ ˆ์ด์…˜์œผ๋กœ ๋ณ€ํ™˜

- ์ ˆ์ฐจ์  ์–ธ์–ด: ์–ด๋–ค ์—ฐ์‚ฐ์„ ์–ด๋–ค ์ˆœ์„œ๋กœ ์ˆ˜ํ–‰ํ• ์ง€ ๋ช…์‹œ์ ์œผ๋กœ ๊ธฐ์ˆ 

โœ… ์ฃผ์š” ์—ฐ์‚ฐ

- ์ˆœ์ˆ˜ ๊ด€๊ณ„ ์—ฐ์‚ฐ(๊ธฐ๋ณธ ์—ฐ์‚ฐ): SELECT(σ, ์‹œ๊ทธ๋งˆ), PROJECT (π, ํŒŒ์ด), RENAME (ρ, ๋กœ)

- ์ง‘ํ•ฉ ์—ฐ์‚ฐ: UNION (∪), INTERSECTION (∩), DIFFERENCE (-), CARTESIAN PRODUCT (×)

- ์œ ๋„ ์—ฐ์‚ฐ: JOIN (โจ), DIVISION (÷)

 

โœ… ๊ด€๊ณ„ ํ•ด์„ Relational Calculus

- ๋น„์ ˆ์ฐจ์  ์–ธ์–ด: ๋ฌด์—‡์„ ๊ฒ€์ƒ‰ํ•  ๊ฒƒ์ธ์ง€๋งŒ ๊ธฐ์ˆ ํ•œ๋‹ค.

- ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๊ณผ์ •์€ ๋ช…์‹œํ•˜์ง€ ์•Š๊ณ , ์กฐ๊ฑด์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜ํ•œ๋‹ค.

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์ด ๋‚ด๋ถ€์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๊ณผ์ •์„ ๊ฒฐ์ •

- ์œ ํ˜•

   - ํŠœํ”Œ ๊ด€๊ณ„ํ•ด์„(Tuple Relational Calculus, TRC): ํŠœํ”Œ ๋ณ€์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ‘œํ˜„

{t | t ∈ ์‚ฌ์› ∧ t.๋‚˜์ด > 30}
→ ๋‚˜์ด๊ฐ€ 30๋ณด๋‹ค ํฐ ์‚ฌ์› ํŠœํ”Œ ๋ฐ˜ํ™˜

 

   - ๋„๋ฉ”์ธ ๊ด€๊ณ„ํ•ด์„(Domain Relational Calculus, DRC): ์†์„ฑ(๋„๋ฉ”์ธ) ๋ณ€์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ‘œํ˜„

{์ด๋ฆ„, ๋‚˜์ด | ์‚ฌ์›(์ด๋ฆ„, ๋‚˜์ด, ๋ถ€์„œ) ∧ ๋‚˜์ด > 30}
→ ๋‚˜์ด๊ฐ€ 30๋ณด๋‹ค ํฐ ์‚ฌ์›์˜ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ๋ฐ˜ํ™˜
๊ตฌ๋ถ„ ๊ด€๊ณ„๋Œ€์ˆ˜(Relational Algebra) ๊ด€๊ณ„ํ•ด์„(Relational Calculus)
์–ธ์–ด ์œ ํ˜• ์ ˆ์ฐจ์ (Procedural) ๋น„์ ˆ์ฐจ์ (Non-Procedural)
๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ• ๋ช…์‹œ ๋ฐ์ดํ„ฐ์˜ ์กฐ๊ฑด๋งŒ ๋ช…์‹œ
์‚ฌ์šฉ ๋‚œ์ด๋„ ์ƒ๋Œ€์ ์œผ๋กœ ๋ณต์žก ๋น„๊ต์  ๋‹จ์ˆœ
๊ฒฐ๊ณผ ์ƒˆ๋กœ์šด ๋ฆด๋ ˆ์ด์…˜ ๋ฐ˜ํ™˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํŠœํ”Œ ๋ฐ˜ํ™˜
ํ‘œํ˜„ ๋ฐฉ์‹ SELECT, PROJECT ๋“ฑ ์—ฐ์‚ฐ์ž ์‚ฌ์šฉ ํŠœํ”Œ ๋ณ€์ˆ˜ ๋˜๋Š” ์†์„ฑ ๋ณ€์ˆ˜๋กœ ์กฐ๊ฑด ํ‘œํ˜„
์‘์šฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด๋ถ€ ๊ตฌํ˜„ ๋ฐ ์ตœ์ ํ™” ์‚ฌ์šฉ์ž ์งˆ์˜ ์ธํ„ฐํŽ˜์ด์Šค

 

60. ํ•จ์ˆ˜ ์ข…์† Functional Dependency

- ๋ฆด๋ ˆ์ด์…˜ R์—์„œ ์• ํŠธ๋ฆฌ๋ทฐํŠธ ์ง‘ํ•ฉ X์˜ ๊ฐ’์ด ๊ฐ๊ฐ์— ๋Œ€ํ•ด, ์‹œ๊ฐ„์— ๊ด€๊ณ„์—†์ด ํ•ญ์ƒ ์• ํŠธ๋ฆฌ๋ทฐํŠธ ์ง‘ํ•ฉ Y์˜ ๊ฐ’์ด ์˜ค์ง ํ•˜๋‚˜๋„ ๊ฒฐ์ •๋  ๋•Œ,

- Y๋Š” X์— ํ•จ์ˆ˜ ์ข…์†(Functional Dependency)์ด๋ผ๊ณ  ํ•œ๋‹ค.

- ์ด๋Š” X์˜ ๊ฐ’์ด Y๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค๋Š” ์˜๋ฏธ

- ํ‘œ๊ธฐ๋ฒ•: X→Y (์˜๋ฏธ: "์• ํŠธ๋ฆฌ๋ทฐํŠธ ๊ฐ€ ์• ํŠธ๋ฆฌ๋ทฐํŠธ ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.")

 

61. ์‘์ง‘๋„ Cohesion

(๋†’์Œ)

- ๊ธฐ๋Šฅ์  ์‘์ง‘ (Functional Cohesion)

- ์ˆœ์ฐจ์  ์‘์ง‘ (Sequential Cohesion)

- ํ†ต์‹ ์  ์‘์ง‘ (Communicational Cohesion)

- ์ ˆ์ฐจ์  ์‘์ง‘ (Procedural Cohesion)

 

- ์‹œ๊ฐ„์  ์‘์ง‘ (Temporal Cohesion)

- ๋…ผ๋ฆฌ์  ์‘์ง‘ (Logical Cohesion)

- ์šฐ์—ฐ์  ์‘์ง‘ (Coincidental Cohesion)

(๋‚ฎ์Œ)

โœ… ์‘์ง‘๋„๊ฐ€ ๋†’์„์ˆ˜๋ก ์ข‹์€ ์„ค๊ณ„์ด๋ฉฐ, ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ์žฌ์‚ฌ์šฉ์„ฑ์ด ์ฆ๊ฐ€ํ•œ๋‹ค.

โœ… ๋‚ฎ์€ ์‘์ง‘๋„๋ฅผ ๊ฐ€์ง„ ๋ชจ๋“ˆ์€ ๋ถˆํ•„์š”ํ•œ ์˜์กด์„ฑ๊ณผ ๋ณต์žก์„ฑ์„ ์ดˆ๋ž˜ํ•˜๋ฏ€๋กœ ํ”ผํ•ด์•ผ ํ•œ๋‹ค.

 

62. ์ž๋™๋ฐ˜๋ณต ์š”์ฒญ(Automatic Repeat Request, ARQ)

- ๋ฐ์ดํ„ฐ ํ†ต์‹ ์—์„œ ์˜ค๋ฅ˜๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ•์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์ƒ๋˜๊ฑฐ๋‚˜ ๋ˆ„๋ฝ๋œ ๊ฒฝ์šฐ ์†ก์‹  ์ธก์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ์š”์ฒญํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

(1) ์ •์ง€-๋Œ€๊ธฐ ARQ (Stop-and-Wait ARQ): ์†ก์‹  ์ธก์€ ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ํ”„๋ ˆ์ž„์„ ์ „์†กํ•˜๊ณ , ์ˆ˜์‹  ์ธก์œผ๋กœ๋ถ€ํ„ฐ ํ™•์ธ ์‘๋‹ต(ACK)์„ ๋ฐ›์„ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฐ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ํ™•์ธ ์‘๋‹ต์ด ์‹œ๊ฐ„ ์ดˆ๊ณผ(Time Expiry)๋˜๋ฉด ํ•ด๋‹น ํ”„๋ ˆ์ž„์„ ์žฌ์ „์†กํ•œ๋‹ค.

(2) ์—ฐ์† ARQ (Sliding Window ARQ): ์†ก์‹  ์ธก์ด ์—ฌ๋Ÿฌ ํ”„๋ ˆ์ž„์„ ์—ฐ์†์ ์œผ๋กœ ์ „์†กํ•˜๋ฉฐ, ์ˆ˜์‹  ์ธก์˜ ์‘๋‹ต์— ๋”ฐ๋ผ ์œˆ๋„์šฐ๋ฅผ ์กฐ์ •ํ•˜๋Š” ๋ฐฉ์‹

(3) Selective Repeat ARQ: ์†ก์‹  ์ธก์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ํ”„๋ ˆ์ž„๋งŒ ์„ ํƒ์ ์œผ๋กœ ์žฌ์ „์†ก, ์ˆ˜์‹  ์ธก์€ ์˜ฌ๋ฐ”๋ฅธ ํ”„๋ ˆ์ž„์„ ๋ฒ„ํผ์— ์ €์žฅํ•ด ๋‘” ๋’ค ์žฌ์กฐ๋ฆฝ

 

65. ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(Garbage Collector)

- Java๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ๋” ์ด์ƒ ์ฐธ์กฐ๋˜์ง€ ์•Š๋Š” ๊ฐ์ฒด(Reachableํ•˜์ง€ ์•Š์€ ๊ฐ์ฒด)๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  ์ œ๊ฑฐํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

- ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๋Š” ํž™ ๋ฉ”๋ชจ๋ฆฌ(Heap Memory)์—์„œ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฐ์ฒด๋ฅผ ํ•ด์ œํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ํšจ์œจ์„ ๋†’์ž…๋‹ˆ๋‹ค.

 

69. ์„œ๋ธŒ๋„ท

์ฃผ์–ด์ง„ ๋„คํŠธ์›Œํฌ: 192.168.1.0/24

๋ฌธ์ œ ์„ค๋ช…: FLSM(๊ณ ์ • ๊ธธ์ด ์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ) ๋ฐฉ์‹์œผ๋กœ 4๊ฐœ์˜ ์„œ๋ธŒ๋„ท์œผ๋กœ ๋‚˜๋ˆ„์—ˆ๋‹ค. Subnet-zero๋ฅผ ํ—ˆ์šฉํ•˜๋ฉฐ, ๋„ค ๋ฒˆ์งธ ์„œ๋ธŒ๋„ท์˜ 4๋ฒˆ์งธ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ IP๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ

1๏ธโƒฃ ๊ธฐ๋ณธ ์ •๋ณด

- /24๋Š” ์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ๊ฐ€ 255.255.255.0์ด๋ฉฐ, ํ•˜๋‚˜์˜ ๋„คํŠธ์›Œํฌ์— 256๊ฐœ(0~255)์˜ IP๊ฐ€ ํฌํ•จ๋œ๋‹ค.

- 4๊ฐœ์˜ ์„œ๋ธŒ๋„ท์œผ๋กœ ๋‚˜๋ˆ„๋ ค๋ฉด 2๋น„ํŠธ๋ฅผ ์„œ๋ธŒ๋„ทํ™”ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค:

/24 → /26 (์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ: 255.255.255.192)

- /26์€ ๊ฐ ์„œ๋ธŒ๋„ท์— 64๊ฐœ์˜ IP๋ฅผ ํฌํ•จํ•œ๋‹ค.

 

2๏ธโƒฃ ์„œ๋ธŒ๋„ท ๋‚˜๋ˆ„๊ธฐ

- ๊ฐ ์„œ๋ธŒ๋„ท์€ 64๊ฐœ์˜ IP๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์ฒซ ๋ฒˆ์งธ ์ฃผ์†Œ๋Š” ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ, ๋งˆ์ง€๋ง‰ ์ฃผ์†Œ๋Š” ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ์ฃผ์†Œ๋กœ ์˜ˆ์•ฝ๋œ๋‹ค.

์„œ๋ธŒ๋„ท 1: 192.168.1.0 ~ 192.168.1.63
์„œ๋ธŒ๋„ท 2: 192.168.1.64 ~ 192.168.1.127
์„œ๋ธŒ๋„ท 3: 192.168.1.128 ~ 192.168.1.191
์„œ๋ธŒ๋„ท 4: 192.168.1.192 ~ 192.168.1.255

- 4๋ฒˆ์งธ ์„œ๋ธŒ๋„ท

   - ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ: 192.168.1.192

   - ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ์ฃผ์†Œ: 192.168.1.255

   - ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ IP ๋ฒ”์œ„: 192.168.1.193 ~ 192.168.1.254

 

3๏ธโƒฃ 4๋ฒˆ์งธ ์„œ๋ธŒ๋„ท์˜ 4๋ฒˆ์งธ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ IP

- 4๋ฒˆ์งธ ์„œ๋ธŒ๋„ท์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ IP๋Š” 192.168.1.193๋ถ€ํ„ฐ ์‹œ์ž‘๋œ๋‹ค.

192.168.1.193 (1๋ฒˆ์งธ)
192.168.1.194 (2๋ฒˆ์งธ)
192.168.1.195 (3๋ฒˆ์งธ)
192.168.1.196 (4๋ฒˆ์งธ)

 

70. ํด๋ž˜์Šค ๊ธฐ๋ฐ˜ IP ์ฃผ์†Œ์˜ ๋ฒ”์œ„ ์š”์•ฝ

ํด๋ž˜์Šค ์ฒซ ๋ฒˆ์งธ ์˜ฅํ…Ÿ ๋ฒ”์œ„ ๊ธฐ๋ณธ ์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ ํ˜ธ์ŠคํŠธ ์ˆ˜
A 1 ~ 126 255.0.0.0 (/8) ์•ฝ 1,600๋งŒ ๊ฐœ
B 128 ~ 191 255.255.0.0 (/16) ์•ฝ 6๋งŒ 5์ฒœ ๊ฐœ
C 192 ~ 223 255.255.255.0 (/24) 254๊ฐœ
D 224 ~ 239 (๋ฉ€ํ‹ฐ์บ์ŠคํŠธ ์ „์šฉ) N/A
E 240 ~ 255 (์‹คํ—˜ ๋ฐ ์˜ˆ์•ฝ) N/A

 

71. C์–ธ์–ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ

#include <studio.h>
int main(void) {
    int n = 4;
    int* pt = NULL;
    pt = &n;
    
    printf("%d", &n + *pt - *&pt + n);
    return 0;
}

(1) ์ดˆ๊ธฐ ๋ณ€์ˆ˜ ์ƒํƒœ

- int n = 4; : n์€ ์ •์ˆ˜ํ˜• ๋ณ€์ˆ˜์ด๊ณ  ๊ฐ’์€ 4์ด๋‹ค.

- int* pt = NULL; : pt๋Š” ์ •์ˆ˜ํ˜• ํฌ์ธํ„ฐ๋กœ, ํ˜„์žฌ NULL์„ ๊ฐ€๋ฆฌํ‚จ๋‹ค.

- pt = &n; : pt๋Š” n์˜ ์ฃผ์†Œ๋ฅผ ๊ฐ€๋ฅดํ‚ค๊ฒŒ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ pt๋Š” n์˜ ์ฃผ์†Œ๋ฅผ ์ฐธ์กฐํ•œ๋‹ค.

 

(2) ์‹ ํ•ด์„ : &n + *pt - *&pt + n

- &n : ๋ณ€์ˆ˜ n์˜ ์ฃผ์†Œ

- *pt : pt๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ฃผ์†Œ์˜ ๊ฐ’. ์ฆ‰, *pt๋Š” n์˜ ๊ฐ’(4)์„ ๋ฐ˜ํ™˜

- *&pt : *&pt๋Š” pt์ž์ฒด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๋”ฐ๋ผ์„œ *&pt๋Š” pt์˜ ๊ฐ’, ์ฆ‰ n์˜ ์ฃผ์†Œ๋ฅผ ๋ฐ˜ํ™˜

 

โœ… ์ •๋ฆฌ๋œ ์‹: &n + *pt - *&pt + n&n + 4 - &n + 4 = 8

 

74. ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ

โœ… ํ”„๋กœ์„ธ์Šค

- ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์˜ ๋…๋ฆฝ์ ์ธ ์ž‘์—… ๋‹จ์œ„

- ์šด์˜ ์ฒด์ œ์—์„œ ๋ฆฌ์†Œ์Šค(์ฃผ์†Œ ๊ณต๊ฐ„, ๋ฉ”๋ชจ๋ฆฌ, ํŒŒ์ผ, CPU ๋“ฑ)์„ ํ• ๋‹น๋ฐ›์•„ ์‹คํ–‰๋œ๋‹ค.

- ๊ฐ ํ”„๋กœ์„ธ์Šค๋Š” ๋…๋ฆฝ๋œ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ๊ฐ€์ง„๋‹ค.

- ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋˜๋”๋ผ๋„ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š”๋‹ค.

- ์‹คํ–‰์„ ์œ„ํ•œ ์ฝ”๋“œ, ๋ฐ์ดํ„ฐ, ํž™, ์Šคํƒ ๋“ฑ์„ ํฌํ•จํ•œ๋‹ค.

- ์‹คํ–‰ ํ๋ฆ„์€ ํ”„๋กœ์„ธ์Šค ์ž์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ์Šค๋ ˆ๋“œ์— ์˜ํ•ด ์ˆ˜ํ–‰๋œ๋‹ค.

 

โœ… ์Šค๋ ˆ๋“œ

- ํ”„๋กœ์„ธ์Šค ๋‚ด์—์„œ ์‹คํ–‰๋˜๋Š” ์ž‘์—… ํ๋ฆ„์˜ ๋‹จ์œ„

- ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๊ฐ€ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ณต์œ ํ•˜๋ฉฐ ์‹คํ–‰๋œ๋‹ค.

- ๊ฐ™์€ ํ”„๋กœ์„ธ์Šค ๋‚ด์˜ ์Šค๋ ˆ๋“œ๋“ค์€ ์ฃผ์†Œ ๊ณต๊ฐ„๊ณผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ณต์œ 

- ํ•˜์ง€๋งŒ ๊ฐ ์Šค๋ ˆ๋“œ๋Š” ์ž์‹ ๋งŒ์˜ ์‹คํ–‰ ์Šคํƒ๊ณผ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ๊ฐ€์ง„๋‹ค.

- ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ์„ ํ†ตํ•ด ๋ฒ™๋ ฌ ์ž‘์—…์ด ๊ฐ€๋Šฅ

 

76. TCP ํ—ค๋”

- ์ˆœ์„œ ๋ฒˆํ˜ธ๋Š” ์ „๋‹ฌํ•˜๋Š” ๋ฐ”์ดํŠธ๋งˆ๋‹ค ๋ฒˆํ˜ธ๊ฐ€ ๋ถ€์—ฌ๋œ๋‹ค.

- ์ˆ˜์‹  ๋ฒˆํ˜ธ ํ™•์ธ์€ ์ƒ๋Œ€ํŽธ ํ˜ธ์ŠคํŠธ์—์„œ ๋ฐ›์œผ๋ ค๋Š” ๋ฐ”์ดํŠธ์˜ ๋ฒˆํ˜ธ๋ฅผ ์ •์˜ํ•œ๋‹ค.

- ์ฒดํฌ์„ฌ์€ ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•œ ์„ธ๊ทธ๋จผํŠธ์˜ ์˜ค๋ฅ˜๋ฅผ ๊ฒ€์‚ฌํ•œ๋‹ค.

โœ… ์œˆ๋„์šฐ ํฌ๊ธฐ?

- ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์—์„œ ์†ก์‹  ์ธก์ด ์ˆ˜์‹  ์ธก์œผ๋กœ๋ถ€ํ„ฐ ACK(ํ™•์ธ ์‘๋‹ต)์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์—ฐ์†์ ์œผ๋กœ ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ์–‘์„ ์˜๋ฏธ

- ์ด๋Š” ํ๋ฆ„ ์ œ์–ด(Flow Control)์˜ ํ•ต์‹ฌ ๊ฐœ๋…์œผ๋กœ, ์†ก์‹  ์ธก์ด ์ˆ˜์‹  ์ธก์˜ ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ์„ ์ดˆ๊ณผํ•˜์ง€ ์•Š๋„๋ก ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ

- ์œˆ๋„์šฐ ํฌ๊ธฐ๋Š” ์†ก์‹  ์ธก๊ณผ ์ˆ˜์‹  ์ธก์˜ ๋ฒ„ํผ ํฌ๊ธฐ์— ์˜ํ•ด ๊ฒฐ์ •๋œ๋‹ค!!

- TCP ํ”„๋กœํ† ์ฝœ์—์„œ๋Š” ์ˆ˜์‹  ์ธก์ด ์ž์‹ ์˜ ๋ฒ„ํผ ํฌ๊ธฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์œˆ๋„์šฐ ํฌ๊ธฐ๋ฅผ ์„ค์ •ํ•˜๋ฉฐ, ์ด๋ฅผ ์†ก์‹  ์ธก์— ์•Œ๋ ค์ค€๋‹ค.

- ์†ก์‹  ์ธก์€ ์ด ์œˆ๋„์šฐ ํฌ๊ธฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๋ฒˆ์— ์ „์†กํ•  ๋ฐ์ดํ„ฐ์˜ ์–‘์„ ์กฐ์ •ํ•œ๋‹ค.

 

80. ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ

- ์šด์˜ ์ฒด์ œ๊ฐ€ ํŒŒ์ผ, ์†Œ์ผ“, ํŒŒ์ดํ”„ ๋“ฑ ์ž์›์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ด๋‹ค.

- ํ”„๋กœ์„ธ์Šค์™€ ์ปค๋„ ๊ฐ„์˜ ์ถ”์ƒํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜์—ฌ, ํŒŒ์ผ์ด๋‚˜ ๋‹ค๋ฅธ ์ž์›์— ์ ‘๊ทผํ•˜๋„๋ก ํ•œ๋‹ค.

- ์šด์˜ ์ฒด์ œ๊ฐ€ ์ง์ ‘ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์ด๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์ด๋‚˜ ์ž์›์— ๊ฐ„์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค.

- ์ •์ˆ˜๊ฐ’์œผ๋กœ ํ‘œํ˜„: 0(ํ‘œ์ค€ ์ž…๋ ฅ, stdin), 1(ํ‘œ์ค€ ์ถœ๋ ฅ, stdout), 2(ํ‘œ์ค€ ์—๋Ÿฌ, stderr)

- ๊ฐ„์ ‘์  ์‚ฌ์šฉ: ์‚ฌ์šฉ์ž๋Š” ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์ด๋‚˜ ์†Œ์ผ“ ๋“ฑ์„ ์กฐ์ž‘ํ•˜์ง€๋งŒ, ๋””์Šคํฌ๋ฆฝํ„ฐ ์ž์ฒด์˜ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋‚˜ ์„ธ๋ถ€์ ์€ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ง์ ‘ ์ ‘๊ทผํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ์ˆ˜๋Š” ์—†๋‹ค.

 

82. ๊ฐ•์ œ์  ์ ‘๊ทผ ํ†ต์ œ(MAC, Mandatory Access Control)

์ฃผ์ฒด(์‚ฌ์šฉ์ž)์™€ ๊ฐ์ฒด(ํŒŒ์ผ ๋“ฑ)์— ๋ณด์•ˆ ๋ ˆ์ด๋ธ”(Security Label)์„ ๋ถ€์—ฌํ•˜๊ณ , ์ด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ œ์–ดํ•˜๋Š” ๋ฐฉ์‹

- ๋ณด์•ˆ ์ •์ฑ…์€ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž๊ฐ€ ์„ค์ •ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์ง์ ‘ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๋‹ค.

- ๋†’์€ ๋ณด์•ˆ ์ˆ˜์ค€์˜ ์ •๋ณด(๊ฐ์ฒด)๋Š” ๋‚ฎ์€ ๋ณด์•ˆ ์ˆ˜์ค€์˜ ์‚ฌ์šฉ์ž(์ฃผ์ฒด)์—๊ฒŒ ๋…ธ์ถœ๋˜์ง€ ์•Š๋Š”๋‹ค.

- ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ๋‚˜ ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ์™€๋Š” ๋‹ฌ๋ฆฌ ๋ ˆ๋ฒจ ๊ธฐ๋ฐ˜์œผ๋กœ ์ ‘๊ทผ์„ ์ œ์–ดํ•œ๋‹ค.

 

๋น„๊ต

์ ‘๊ทผ ์ œ์–ด ๋ฐฉ์‹ ๊ธฐ์ค€ ํŠน์ง•
Mandatory Access Control (MAC) ์ฃผ์ฒด์™€ ๊ฐ์ฒด์˜ ๋ณด์•ˆ ๋ ˆ๋ฒจ ๋ณด์•ˆ ๋ ˆ์ด๋ธ” ๊ธฐ๋ฐ˜, ๊ฐ•์ œ์  ํ†ต์ œ
Discretionary Access Control (DAC) ๋ฐ์ดํ„ฐ ์†Œ์œ ์ž์˜ ์„ค์ • ๋ฐ์ดํ„ฐ ์†Œ์œ ์ž๊ฐ€ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ž์œ ๋กญ๊ฒŒ ์„ค์ •
Role-Based Access Control (RBAC) ์ฃผ์ฒด์˜ ์—ญํ• (Role) ์‚ฌ์šฉ์ž์˜ ์—ญํ• ์— ๋”ฐ๋ผ ๊ถŒํ•œ ๋ถ€์—ฌ
Data-Label Access Control ๋ฐ์ดํ„ฐ ๋ ˆ์ด๋ธ”(Security Label) ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏผ๊ฐ๋„ ๋ฐ ๋ณด์•ˆ ๋“ฑ๊ธ‰์— ๋”ฐ๋ผ ํ†ต์ œ, MAC์˜ ์ผํ™˜์œผ๋กœ ๊ฐ„์ฃผ๋  ์ˆ˜ ์žˆ์Œ

 

87. VLAN (Virtual LAN)

- ๋ฌผ๋ฆฌ์ ์ธ ๋„คํŠธ์›Œํฌ ์žฅ๋น„์™€ ์ƒ๊ด€์—†์ด ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋„คํŠธ์›Œํฌ๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ Broadcast Domain์„ ๋‚˜๋ˆˆ๋‹ค.

- ์Šค์œ„์น˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋กœ ๋‹ค๋ฅธ VLAN ๊ฐ„์˜ ํ†ต์‹ ์„ ์ œํ•œํ•  ์ˆ˜ ์žˆ๋‹ค

- ๋„คํŠธ์›Œํฌ ์„ฑ๋Šฅ ํ–ฅ์ƒ: ๋ถˆํ•„์š”ํ•œ ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ํŠธ๋ž˜ํ”ฝ ๊ฐ์†Œ

- ๋ณด์•ˆ ๊ฐ•ํ™”: ๋„คํŠธ์›Œํฌ ๊ฐ„ ๋…ผ๋ฆฌ์  ๋ถ„๋ฆฌ

- ์œ ์—ฐํ•œ ๋„คํŠธ์›Œํฌ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ

 

โœ… STP (Spanning Tree Protocol)

- ๋„คํŠธ์›Œํฌ์—์„œ ๋ฃจํ”„(Loop)๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ

- ์Šค์œ„์น˜ ๊ฐ„์— ๋ฃจํ”„๊ฐ€ ์ƒ๊ธธ ๊ฒฝ์šฐ ํŠธ๋ž˜ํ”ฝ ํญ์ฆ์„ ๋ง‰๊ธฐ ์œ„ํ•ด ๊ฒฝ๋กœ๋ฅผ ์ฐจ๋‹จ

โœ… ARP (Address Resolution Protocol)

- IP ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ์  MAC ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ์ด๋‹ค

โœ… RARP (Reverse ARP)

- MAC ์ฃผ์†Œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ IP ์ฃผ์†Œ๋ฅผ ํ™•์ธํ•˜๋Š” ํ”„๋กœํ† ์ฝœ

 

89. RSA ์•Œ๊ณ ๋ฆฌ์ฆ˜

- ๋น„๋Œ€์นญ ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ ์†Œ์ˆ˜๋ฅผ ํ™œ์šฉํ•œ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜

- ๊ณต๊ฐœ ํ‚ค์™€ ๊ฐœ์ธ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณด์•ˆ์„ ์ œ๊ณตํ•˜๋ฉฐ, ์˜ค๋Š˜๋‚  ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š” ์•”ํ˜ธํ™” ๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜

 

90. SDS (Software Defined Storage)

- SDS๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋กœ ์Šคํ† ๋ฆฌ์ง€ ํ•˜๋“œ์›จ์–ด๋ฅผ ์ถ”์ƒํ™”ํ•˜๊ณ  ๊ฐ€์ƒํ™”ํ•˜์—ฌ ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ์ˆ 

- ๋ฌผ๋ฆฌ์  ์Šคํ† ๋ฆฌ์ง€ ์žฅ์น˜์™€ ๊ด€๊ณ„์—†์ด, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ํ†ตํ•ด ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ†ตํ•ฉํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ์ž์›์„ ๋ถ„๋ฐฐ

 

91. ์ฝ”์ฝ”๋ชจ ๋ชจ๋ธ

๊ฐœ๋ฐœ ์œ ํ˜• ํŠน์ง• ์ ํ•ฉํ•œ ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ ์˜ˆ์‹œ
Organic (์œ ๊ธฐํ˜•) - ์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ.
- ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ์™€ ์•ˆ์ •๋œ ์š”๊ตฌ์‚ฌํ•ญ.
- ํŒ€์› ๊ฐ„ ๋†’์€ ํ˜‘๋ ฅ.
- 5๋งŒ ๋ผ์ธ ์ดํ•˜.
์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ (5๋งŒ ๋ผ์ธ ์ดํ•˜) - ๋น„์ฆˆ๋‹ˆ์Šค ์ž๋ฃŒ ์ฒ˜๋ฆฌ.
- ๊ณผํ•™ ๊ธฐ์ˆ  ๊ณ„์‚ฐ ํ”„๋กœ๊ทธ๋žจ.
- ์ผ๋ฐ˜์ ์ธ ์—…๋ฌด ์†Œํ”„ํŠธ์›จ์–ด.
Semi-detached (๋ฐ˜๋ถ„๋ฆฌํ˜•) - ์ค‘๊ฐ„ ๊ทœ๋ชจ์˜ ๋ณต์žกํ•œ ํ”„๋กœ์ ํŠธ.
- ๊ฒฝํ—˜ ๋งŽ์€ ํŒ€์›๊ณผ ์ดˆ๊ธ‰ ํŒ€์› ํ˜ผํ•ฉ.
- ๊ตฌ์กฐ์ ์ด๊ณ  ์ฒด๊ณ„์ ์ธ ๊ฐœ๋ฐœ ๋ฐฉ์‹.
์ค‘๊ฐ„ ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ (50๋งŒ ๋ผ์ธ ์ดํ•˜) - ์šด์˜์ฒด์ œ ์ผ๋ถ€ ๊ฐœ๋ฐœ.
- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ.
- ์ค‘๊ฐ„ ๋ณต์žก๋„์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ.
Embedded (๋‚ด์žฅํ˜•) - ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ.
- ํ•˜๋“œ์›จ์–ด์™€ ๋ฐ€์ ‘ํ•˜๊ฒŒ ์—ฐ๊ด€.
- ๋ณต์žกํ•˜๊ณ  ์—„๊ฒฉํ•œ ์š”๊ตฌ์‚ฌํ•ญ.
- ์‹ค์‹œ๊ฐ„ ์ œ์–ด ํ•„์ˆ˜.
๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ - ํ•ญ๊ณต๊ธฐ ์ œ์–ด ์‹œ์Šคํ…œ.
- ๊ตฐ์‚ฌ ์‹œ์Šคํ…œ.
- ์˜๋ฃŒ ๊ธฐ๊ธฐ ์†Œํ”„ํŠธ์›จ์–ด.
- ๋‚ด์žฅํ˜• ์‹œ์Šคํ…œ.
Semi-embedded (์ž˜๋ชป๋œ ์šฉ์–ด) - Cocomo ๋ชจ๋ธ์—์„œ ์ •์˜๋˜์ง€ ์•Š์€ ์šฉ์–ด. N/A N/A

 

97. SSO (Single Sign-On)

- ์‚ฌ์šฉ์ž๊ฐ€ ํ•œ๋ฒˆ ์ธ์ฆ(๋กœ๊ทธ์ธ)ํ•˜๋ฉด, ๋™์ผ ์ธ์ฆ ์ฒด๊ณ„ ํ•˜์— ์žˆ๋Š” ๋‹ค์€ ์‹œ์Šคํ…œ์ด๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ณ„๋„์˜ ์ธ์ฆ ๊ณผ์ • ์—†์ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์‹œ์Šคํ…œ

 

100. OWASP (Open Web Application Security Project)

- ์˜คํ”ˆ์†Œ์Šค ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ”„๋กœ์ ํŠธ

- ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ด€๋ จ๋œ ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ์—ฐ๊ตฌํ•˜๊ณ  ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•œ ๋น„์˜๋ฆฌ ์กฐ์ง

- ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•˜๊ณ , ์ „ ์„ธ๊ณ„ ๊ฐœ๋ฐœ์ž์™€ ๋ณด์•ˆ ์ „๋ฌธ๊ฐ€๋“ค์ด ์ด๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์ด๋„๋ก ๋ฌด๋ฃŒ ๋ฆฌ์†Œ์Šค ์ œ๊ณต

- ๋ณด์•ˆ ์ทจ์•ฝ์ , ์ •๋ณด ์œ ์ถฉ, ์•…์„ฑ ํŒŒ์ผ ๋ฐ ์Šคํฌ๋ฆฝํŠธ ๋“ฑ์„ ์‹๋ณ„ํ•˜๊ณ  ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์„ ์ œ์‹œ