๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ‘ฉ‍๐Ÿ’ป Learn programming

[โšก] ์ˆ˜์ œ๋น„ ์นดํŽ˜ Daily ๋ฌธ์ œ ํ’€์ด (2022๋…„ 1ํšŒ ์˜ˆ์ƒ๋ฌธ์ œ)

by ๋ฐ๊ตฅ์ž‰ 2022. 5. 5.
๋ฐ˜์‘ํ˜•
 

์ˆ˜์ œ๋น„- IT ์ปค๋ฎค๋‹ˆํ‹ฐ (์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ... : ๋„ค์ด๋ฒ„ ์นดํŽ˜

์ˆ˜์ œ๋น„-์ˆ˜ํ—˜์ƒ ์ž…์žฅ์—์„œ ์ œ๋Œ€๋กœ ์“ด ๋น„๋ฒ•์„œ(์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ, ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ๋Šฅ์‚ฌ, ๋น…๋ฐ์ดํ„ฐ ๋ถ„์„๊ธฐ์‚ฌ ๋“ฑ ์‹œ๋ฆฌ์ฆˆ)

cafe.naver.com

 

 

1๊ณผ๋ชฉ

1.

์ƒํ–ฅ์‹ ๋น„์šฉ ์‚ฐ์ • ๊ธฐ๋ฒ• ์ค‘ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ ๊ธฐ๋Šฅ์˜ ์›์‹œ ์ฝ”๋“œ ๋ผ์ธ ์ˆ˜์˜ ๋‚™๊ด€์น˜, ์ค‘๊ฐ„์น˜, ๋น„๊ด€์น˜๋ฅผ ์ธก์ •ํ•˜์—ฌ ์˜ˆ์ธก์น˜๋ฅผ ๊ตฌํ•˜๊ณ  ์ด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋น„์šฉ์„ ์‚ฐ์ •ํ•˜๋Š” ๊ธฐ๋ฒ•

โœ… LOC (Lines of Code)

 

*๏ธโƒฃ ์ƒํ–ฅ์‹ ๋น„์šฉ ์„ ์ • ๋ฐฉ๋ฒ• : LoC, MM, COCOMO, Putnam, FP(Function Point)

 

 

 

2. ๊ด€๊ณ„์˜ ์œ ํ˜•

 

 

โœ… (1) : ์ง‘ํ•ฉ ๊ด€๊ณ„ / (2) ์‹ค์ฒดํ™” ๊ด€๊ณ„

 

*๏ธโƒฃ UML์˜ ๊ด€๊ณ„

     ์—ฐ๊ด€๊ด€๊ณ„ : ์‹ค์„  ํ™”์‚ดํ‘œ

     ์ง‘ํ•ฉ๊ด€๊ณ„ : ๋นˆ ๋งˆ๋ฆ„๋ชจ, ํ•˜๋‚˜์˜ ์‚ฌ๋ฌผ์ด ๋‹ค๋ฅธ ์‚ฌ๋ฌผ์— ํฌํ•จ

     ํฌํ•จ๊ด€๊ณ„ : ์†์ด ์ฑ„์›Œ์ง„ ๋งˆ๋ฆ„๋ชจ, ์ง‘ํ•ฉ ๊ด€๊ณ„๋ณด๋‹ค ๊ฐ•ํ•จ

     ์ผ๋ฐ˜ํ™” ๊ด€๊ณ„ : ๋นˆ ํ™”์‚ดํ‘œ. ํ•˜์œ„, ์ƒ์œ„

     ์˜์กด ๊ด€๊ณ„ : ์ ์„  ํ™”์‚ดํ‘œ, ์งง์€ ์‹œ๊ฐ„ ์œ ์ง€

     ์‹ค์ฒดํ™” ๊ด€๊ณ„ : ์†์ด ๋นˆ ์ ์„  ํ™”์‚ดํ‘œ, ๊ธฐ๋Šฅ. ์„œ๋กœ๋ฅผ ๊ทธ๋ฃนํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๊ด€๊ณ„

 

 

 

3. ๋””์ž์ธ ํŒจํ„ด

- (1) Pattern : ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๊ฐ์ฒด๋ฅผ ํ•˜๋‚˜๋งŒ ์ƒ์„ฑํ•˜๋„๋ก ํ•˜๋ฉฐ, ์ƒ์„ฑ๋œ ๊ฐ์ฒด๋ฅผ ์–ด๋””์—์„œ๋“ ์ง€ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋””์ž์ธ ํŒจํ„ด
- (2) Pattern : ๊ธฐ์กด์— ๊ตฌํ˜„๋˜์–ด ์žˆ๋Š” ํด๋ž˜์Šค์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ด ๋‚˜๊ฐ€๋Š” ์„ค๊ณ„ ํŒจํ„ด์œผ๋กœ ๊ธฐ๋Šฅ ํ™•์žฅ์ด ํ•„์š”ํ•  ๋•Œ ๊ฐ์ฒด ๊ฐ„์˜ ๊ฒฐํ•ฉ์„ ํ†ตํ•ด ๊ธฐ๋Šฅ์„ ๋™์ ์œผ๋กœ ์œ ์—ฐํ•˜๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ƒ์†์˜ ๋Œ€์•ˆ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋””์ž์ธ ํŒจํ„ด

โœ… (1) Singleton / (2) Decorator

 

*๏ธโƒฃ ๋””์ž์ธ ํŒจํ„ด

     - ์ƒ์„ฑ : ์ƒ๋นŒ ํ”„๋กœ ํŒฉ์•ฑ์‹ฑ (Builder, Prototype, Factory Method, Abstract Factory, Singleton)

     - ๊ตฌ์กฐ : ๊ตฌ ๋ธŒ๋ฐ ํผํ”Œ ํ”„๋ก ์ปด ์–ด (Bridge, Decorateor, Facade, Flyweight, Proxy, Composite, Adapter)

     - ํ–‰์œ„ : ํ–‰ ๋ฏธ์ธ์ด ํ…œ์˜ต ์Šคํ…Œ ๋น„์ปค ์ŠคํŠธ ๋ฉ”์ฒด (Mediator, Interpreter, Iterator, Template Method, Observer, State, Visitor, Command, Strategy, Memento, Chain of Responsibility)

 

 

 

4. ํ”„๋กœ์ ํŠธ ์ผ์ • ๊ด€๋ฆฌ

- ์‹œ๊ฐ„์„ (Time-line) ์ฐจํŠธ๋ผ๊ณ  ํ•˜๊ณ , ์ž‘์—…์ด ์–ธ์ œ ์‹œ์ž‘ํ•˜๊ณ  ์–ธ์ œ ์ข…๋ฃŒ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์ผ์ •์„ ๋ง‰๋Œ€ ๋„ํ‘œ๋ฅผ ์ด์šฉํ•˜์—ฌ ํ‘œ์‹œํ•œ ์ผ์ •ํ‘œ๋Š” (1) ์ฐจํŠธ์ด๋‹ค. 
- ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ์ „์ฒด ์ž‘์—…์˜ ์ƒํ˜ธ๊ด€๊ณ„๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋„คํŠธ์›Œํฌ๋กœ ์ž‘์—…๋“ค ๊ฐ„์˜ ์ƒ๊ณ  ๊ด€๋ จ์„ฑ, ๊ฒฐ์ •๊ฒฝ๋กœ, ๊ฒฝ๊ณ„์‹œ๊ฐ„, ์ž์›ํ• ๋‹น ๋“ฑ์„ ์•Œ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ (2) ์ฐจํŠธ์ด๋‹ค.

โœ… (1) ๊ฐ„ํŠธ(GANTT) / (2) ํผํŠธ(PERT)

 

 

 

 

5. ์• ์ž์ผ ๊ธฐ๋ฒ• ์ค‘ ์Šคํฌ๋Ÿผ

- (1)์€/๋Š” ์Šคํฌ๋Ÿผ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋”ฐ๋ฅด๊ณ , ํ”„๋กœ์ ํŠธ ๋ฆฌ๋”๋กœ ํŒ€์ด ์Šคํฌ๋Ÿผ์„ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•˜๋Š” ์—ญํ•  ๋“ฑ์„ ๋งก๋Š”๋‹ค.
- (2)์€/๋Š” 2~4์ฃผ์˜ ์งง์€ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„์œผ๋กœ ๋ฐ˜๋ณต์  ์ˆ˜ํ–‰์„ ํ†ตํ•ด ๊ฐœ๋ฐœํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.
- (3)์€/๋Š” ๋‚จ์•„์žˆ๋Š” ๋ฐฑ๋กœ๊ทธ ๋Œ€๋น„ ์‹œ๊ฐ„์„ ๊ทธ๋ž˜ํ”ฝ์ ์œผ๋กœ ํ‘œํ˜„ํ•œ ์ฐจํŠธ์ด๋‹ค.

โœ… (1) ์Šคํฌ๋Ÿผ ๋งˆ์Šคํ„ฐ(Scrum Master) / (2) ์Šคํ”„๋ฆฐํŠธ(Sprint) / (3) ๋ฒˆ ๋‹ค์šด ์ฐจํŠธ(Burn Down Chart)

 

*๏ธโƒฃ ์Šคํฌ๋Ÿผ(SCRUM) : ๋ฐฑ๋กœ๊ทธ, ์Šคํ”„๋ฆฐํŠธ, ์Šคํฌ๋Ÿผ ๋ฏธํŒ…, ์Šคํฌ๋Ÿผ ๋งˆ์Šคํ„ฐ, ์Šคํ”„๋ฆฐํŠธ ํšŒ๊ณ , ๋ฒˆ ๋‹ค์šด ์ฐจํŠธ

 

 

 

5. ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™์˜ ์†Œํ”„ํŠธ์›จ๊ฑฐ ์„ค๊ณ„์—์„œ ๊ณตํ†ต์œผ๋กœ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž์ฃผ ์“ฐ์ด๋Š” ์„ค๊ณ„ ๋ฐฉ๋ฒ• ๋””์ž์ธ ํŒจํ„ด

- (1)์€/๋Š” ๋ณต์žกํ•œ ์‹œ์Šคํ…œ์— ๋Œ€ํ•˜์—ฌ ๋‹จ์ˆœํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ ์‚ฌ์šฉ์ž์™€ ์‹œ์Šคํ…œ ๊ฐ„ ๋˜๋Š” ์—ฌํƒ€ ์‹œ์Šคํ…œ๊ณผ์˜ ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ”์–ด ์‹œ์Šคํ…œ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ํŒŒ์•…์„ ์‰ฝ๊ฒŒ ํ•˜๋Š” ํŒจํ„ด์œผ๋กœ ์˜ค๋ฅ˜์— ๋Œ€ํ•ด์„œ ๋‹จ์œ„๋ณ„๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž์˜ ์ธก๋ฉด์—์„œ ๋‹จ์ˆœํ•œ ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต์„ ํ†ตํ•ด ์ ‘๊ทผ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋Š” ๋””์ž์ธ ํŒจํ„ด์ด๋‹ค. 
- (2)์€/๋Š” ์Šค์Šค๋กœ ์บก์Šํ™”ํ•œ ๋‹ค์Œ, ํ•„์š”ํ•  ๋•Œ ์„œ๋กœ ๊ตํ™˜ํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ํŒจํ„ด์œผ๋กœ, ํ–‰์œ„๋ฅผ ํด๋ž˜์Šค๋กœ ์บก์Šํ™”ํ•ด ๋™์ ์œผ๋กœ ํ–‰์œ„๋ฅผ ์ž์œ ๋กญ๊ฒŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋””์ž์ธ ํŒจํ„ด์ด๋‹ค.

โœ… (1) Facade (pattern) / (2) Strategy (pattern)

 

*๏ธโƒฃ Facade : ๋‹จ์ˆœ ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต, ์‚ฌ์šฉ์ž์™€ ์‹œ์Šคํ…œ ๊ฐ„ ๊ฒฐํ•ฉ๋„ ๋‚ฎ์ถค, ํŒจํ„ด ์˜ค๋ฅ˜ ๋‹จ์œ„๋ณ„ ํ™•์ธ, ์ ‘๊ทผ์„ฑ

     Strategy : ํ–‰์œ„๋ฅผ ํด๋ž˜์Šค๋กœ ์บก์Šํ™”, ๋™์ ์œผ๋กœ ํ–‰์œ„ ๋ฐ”๊ฟˆ

 

 

2๊ณผ๋ชฉ

1.

- (*) ๊ด€๊ณ„๋Š” ํ•˜๋‚˜์˜ ๊ฐ์ฒด์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…๋ฆฝ์ ์ธ ๊ฐ์ฒด๋“ค์ด ๊ตฌ์„ฑ๋˜๋Š” ๊ด€๊ณ„์ด๋‹ค.
- (*) ๊ด€๊ณ„๋Š” ํ•˜๋‚˜์˜ ์‚ฌ๋ฌผ์ด ๋‹ค๋ฅธ ์‚ฌ๋ฌผ์— ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค.
- (*) ๊ด€๊ณ„๋Š” ํฌํ•จ๋˜๋Š” ์ชฝ(Part; ๋ถ€๋ถ„)์—์„œ ํฌํ•จํ•˜๋Š” ์ชฝ(Whole; ์ „์ฒด)์œผ๋กœ ์†์ด ๋นˆ ๋งˆ๋ฆ„๋ชจ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ํ‘œํ˜„ํ•œ๋‹ค. 

โœ… ์ง‘ํ•ฉ(Aggregation)

 

*๏ธโƒฃ ์ง‘ํ•ฉ ๊ด€๊ณ„ : ํ•˜๋‚˜์˜ ์‚ฌ๋ฌผ์ด ๋‹ค๋ฅธ ์‚ฌ๋ฌผ์— ํฌํ•จ, ํฌํ•จ๋˜๋Š” ์ชฝ-โ—‡ํฌํ•จํ•˜๋Š” ์ชฝ

*๏ธโƒฃ ์—ฐ๊ด€๊ด€๊ณ„(Association), ์ง‘ํ•ฉ๊ด€๊ณ„(Aggregation), ํฌํ•จ๊ด€๊ณ„(Composition),

     ์ผ๋ฐ˜ํ™”๊ด€๊ณ„(Ganeralizaion), ์˜์กด๊ด€๊ณ„(Dependency), ์‹ค์ฒดํ™”๊ด€๊ณ„(Realizaion)

 

 

 

2.

- (1)์€/๋Š” ๋””์ž์ธ, ์‚ฌ์šฉ๋ฐฉ๋ฒ• ์„ค๋ช…, ํ‰๊ฐ€ ๋“ฑ์„ ์œ„ํ•ด ์‹ค์ œ ํ™”๋ฉด๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ๋งŒ๋“  ์ •์ ์ธ ํ˜•ํƒœ์˜ ๋ชจํ˜•์œผ๋กœ ์‹œ๊ฐ์ ์œผ๋กœ๋งŒ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ผ๋ฐ˜์ ์œผ๋กœ ์‹ค์ œ๋กœ ๊ตฌํ˜„๋˜์ง€๋Š” ์•Š๋Š”๋‹ค.
- (2)์€/๋Š” ์ •์ฑ…, ํ”„๋กœ์„ธ์Šค, ์ฝ˜ํ…์ธ  ๊ตฌ์„ฑ, ์™€์ด์–ดํ”„๋ ˆ์ž„(UI/UX), ๊ธฐ๋Šฅ ์ •์˜, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™ ๋“ฑ ์„œ๋น„์Šค ๊ตฌ์ถ•์„ ์œ„ํ•œ ๋ชจ๋“  ์ •๋ณด๊ฐ€ ๋‹ด๊ฒจ ์žˆ๋Š” ์„ค๊ณ„ ์‚ฐ์ถœ๋ฌผ์ด๋‹ค.

โœ… (1) : ๋ชฉ์—… / (2) : ์Šคํ† ๋ฆฌ๋ณด๋“œ

 

 

 

3.

- ํด๋ž˜์Šค ๋‹ค์ด์–ด๊ทธ๋žจ์˜ ๊ตฌ์„ฑ ์š”์†Œ ์ค‘ (1)์€/๋Š” ํด๋ž˜์Šค์˜ ๊ตฌ์กฐ์  ํŠน์„ฑ์— ์ด๋ฆ„์„ ๋ถ™์ธ ๊ฒƒ์œผ๋กœ ํŠน์„ฑ์— ํ•ด๋‹นํ•˜๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ๋ณด์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’์˜ ๋ฒ”์œ„๋ฅผ ๊ธฐ์ˆ ํ•œ ๊ฒƒ์ด๋‹ค. 
- ํด๋ž˜์Šค ๋‹ค์ด์–ด๊ทธ๋žจ์˜ ์ ‘๊ทผ ์ œ์–ด์ž ์ค‘ (2)์€/๋Š” ๋™์ผ ํŒจํ‚ค์ง€/ํŒŒ์ƒ ํด๋ž˜์Šค์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅ(protected)ํ•จ์„ ํ‘œํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

โœ… (1) : ์†์„ฑ / (2) : #

 

*๏ธโƒฃ ํด๋ž˜์Šค ๋‹ค์ด์–ด๊ทธ๋žจ ๊ตฌ์„ฑ์š”์†Œ : ํด๋ž˜์Šค ์ด๋ฆ„, ์†์„ฑ, ์—ฐ์‚ฐ, ์ ‘๊ทผ์ œ์–ด์ž

*๏ธโƒฃ ์ ‘๊ทผ ์ œ์–ด์ž

     private - ๋‚ด๋ถ€ ์ ‘๊ทผ๋งŒ ํ—ˆ์šฉ

     public + ์™ธ๋ถ€ ์ ‘๊ทผ ํ—ˆ์šฉ

     protected # ๋™์ผ ํŒจํ‚ค์ง€/ํŒŒ์ƒ ํด๋ž˜์Šค ์ ‘๊ทผ ๊ฐ€๋Šฅ

     default ~ ๋™์ผ ํŒจํ‚ค์ง€ ํด๋ž˜์Šค์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅ

 

 

 

3๊ณผ๋ชฉ

1.

- ํ…Œ์ด๋ธ” ๋ถ„ํ•  ๊ธฐ๋ฒ• ์ค‘ ์ง‘๊ณ„ ํ…Œ์ด๋ธ” ์ถ”๊ฐ€๋Š” ์ง‘๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ์œ„ํ•œ ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ณ , ๊ฐ ์›๋ณธ ํ…Œ์ด๋ธ”์— ํŠธ๋ฆฌ๊ฑฐ๋ฅผ ์„ค์ •ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ํŠธ๋ฆฌ๊ฑฐ์˜ ์˜ค๋ฒ„ํ—ค๋“œ์— ์œ ์˜ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.
- ํ…Œ์ด๋ธ” ๋ถ„ํ•  ๊ธฐ๋ฒ• ์ค‘ (*) ์ถ”๊ฐ€๋Š” ์ด๋ ฅ ๊ด€๋ฆฌ ๋“ฑ์˜ ๋ชฉ์ ์œผ๋กœ ์ถ”๊ฐ€ํ•˜๋Š” ํ…Œ์ด๋ธ”๋กœ, ์ ์ ˆํ•œ ๋ฐ์ดํ„ฐ ์–‘์˜ ์œ ์ง€์™€ ํ™œ์šฉ๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ๊ธฐ๋ณธํ‚ค๋ฅผ ์ ์ ˆํžˆ ์„ค์ •ํ•œ๋‹ค. 

โœ… ์ง„ํ–‰ ํ…Œ์ด๋ธ”

 

*๏ธโƒฃ ๋ฐ˜์ •๊ทœํ™” ์ˆ˜ํ–‰ ๋ฐฉ๋ฒ•

     1. ํ…Œ์ด๋ธ” ํ†ตํ•ฉ : 1:1, 1:M ๊ด€๊ณ„ ํ†ตํ•ฉ, ์Šˆํผํƒ€์ž…/์„œ๋ธŒํƒ€์ž… ํ†ตํ•ฉํ•˜์—ฌ ์„ฑ๋Šฅ ํ–ฅ์ƒ

     2. ํ…Œ์ด๋ธ” ๋ถ„ํ•  : ์ˆ˜ํ‰(๋ ˆ์ฝ”๋“œ) ๋ถ„ํ• , ์ˆ˜์ง(์นผ๋Ÿผ) ๋ถ„ํ• 

     3. ์ค‘๋ณต ํ…Œ์ด๋ธ” ์ถ”๊ฐ€ : ์ง‘๊ณ„ ํ…Œ์ด๋ธ” ์ถ”๊ฐ€, ์ง„ํ–‰ ํ…Œ์ด๋ธ” ์ถ”๊ฐ€

 

 

 

2.

- ์–ด๋–ค ๋ฆด๋ ˆ์ด์…˜์— R์ด (1)์ด๊ณ , ๋ฆด๋ ˆ์ด์…˜์˜ ํ‚ค๊ฐ€ ์•„๋‹Œ ์†์„ฑ ๋ชจ๋‘๊ฐ€ R์˜ ์–ด๋–ค ํ‚ค์—๋„ ์ดํ–‰์  ํ•จ์ˆ˜ ์ข…์†์ด ์•„๋‹ ๋•Œ R์€ (2)์— ์†ํ•œ๋‹ค.

โœ… (1) : 2์ฐจ ์ •๊ทœํ™”(2NF) / (2) : 3์ฐจ ์ •๊ทœํ™”(3NF)

 

*๏ธโƒฃ ์ •๊ทœํ™” (์›๋ถ€์ด ๊ฒฐ๋‹ค์กฐ)

 

 

 

3.

- (1)๋ชจ๋ธ์€ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ 2์ฐจ์› ํ…Œ์ด๋ธ” ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋œ ๋ชจ๋ธ๋กœ 1:1, 1:N, N:M์„ ์ž์œ ๋กญ๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
- (2)๋ชจ๋ธ์€ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋œ ๋ชจ๋ธ๋กœ ์ƒํ•˜๊ด€๊ณ„๊ฐ€ ์กด์žฌํ•˜๊ณ  1:N ๊ด€๊ณ„๋งŒ ํ—ˆ์šฉํ•œ๋‹ค.

โœ… (1) : ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ / (2) : ๊ณ„์ธต ๋ฐ์ดํ„ฐ

๐Ÿ’ก 1:1, 1:N, N:M์œผ๋กœ ๋Œ€ํ™”ํ•˜๋ฉฐ ๊ด€๊ณ„๋ฅผ ๋งบ์Œ / ์ƒํ•˜๊ด€๊ณ„ -> ๊ณ„์ธต

 

 

 

4.

๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ตฌ์„ฑ์š”์†Œ ์ค‘ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์— ๋”ฐ๋ผ ๊ฐœ๋… ์„ธ๊ณ„๋‚˜ ์ปดํ“จํ„ฐ ์„ธ๊ณ„์—์„œ ์‹ค์ œ๋กœ ํ‘œํ˜„๋œ ๊ฐ’๋“ค์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž‘์—…์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์€ ?

โœ… ์—ฐ์‚ฐ(Operation)

 

*๏ธโƒฃ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๊ตฌ์„ฑ์š”์†Œ

     ์—ฐ์‚ฐ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž‘์—…

     ๊ตฌ์กฐ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ‘œํ˜„๋  ๋Œ€์ƒ์œผ๋กœ์„œ์˜ ๊ฐœ์ฒด ํƒ€์ž…๊ณผ ๊ฐœ์ฒด ํƒ€์ž… ๊ฐ„์˜ ๊ด€๊ณ„

     ์ œ์•ฝ ์กฐ๊ฑด : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋  ์ˆ˜ ์žˆ๋Š” ์‹ค์ œ ๋ฐ์ดํ„ฐ์˜ ๋…ผ๋ฆฌ์ ์ธ ์ œ์•ฝ ์กฐ๊ฑด, ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€๋ฅผ ์œ„ํ•œ DB์˜ ๋ณดํŽธ์  ๋ฐฉ๋ฒ•

 

 

 

 

4๊ณผ๋ชฉ

 

1. IPC(Inter-Process Communication) ์ฃผ์š” ๊ธฐ๋ฒ•์— ๋Œ€ํ•œ ์„ค๋ช….

- (*)์€/๋Š” ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒฝ์œ ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ ์˜ ์ข…์ฐฉ์ ์ด๋‹ค.
- OSI 7๊ณ„์ธต์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต(application layer)์— ์กด์žฌํ•˜๋Š” ๋„คํŠธ์›Œํฌ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์€ ๋ฐ์ดํ„ฐ๋ฅผ ์†ก์ˆ˜์‹ ํ•˜๊ธฐ ์œ„ํ•ด (*)์„/๋ฅผ ๊ฑฐ์ณ ์ „์†ก ๊ณ„์ธต(transport layer)์˜ ํ†ต์‹ ๋ง์œผ๋กœ ์ „๋‹ฌํ•จ์œผ๋กœ์จ ๋ฐ์ดํ„ฐ๋ฅผ ์†ก์ˆ˜์‹ ํ•˜๊ฒŒ ๋œ๋‹ค. 

โœ… ์†Œ์ผ“

 

 

2.

- ์ง์ ‘ ์—ฐ๊ณ„ ๋ฐฉ์‹ ์ค‘ DB ์—ฐ๊ฒฐ ๋ฐฉ์‹์€ ์ˆ˜์‹  ์‹œ์Šคํ…œ์˜ WAS์—์„œ ์†ก์‹  ์‹œ์Šคํ…œ DB๋กœ ์—ฐ๊ฒฐํ•˜๋Š” DB(1)์„/๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์—ฐ๊ณ„ ํ”„๋กœ๊ทธ๋žจ์—์„œ ํ•ด๋‹น DB(1) ๋ช…์„ ์ด์šฉํ•˜์—ฌ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
- (2) ๊ธฐ๋ฒ•์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ž๋ฃŒ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ž๋ฐ”์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์ž๋ฐ” API์ด๋‹ค. ์ˆ˜์‹  ์‹œ์Šคํ…œ์˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ (2) ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ด์šฉํ•˜์—ฌ ์†ก์‹  ์‹œ์Šคํ…œ DB์™€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

โœ… (1) : ์ปค๋„ฅ์…˜ ํ’€(Connection Pool) / (2) : JDBC(Java Database Connectivity)

 

 

 

5๊ณผ๋ชฉ

 

1. ๋ณด์•ˆ ๊ธฐ์ˆ  ์ ์šฉ

- ์ค‘์š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณด๊ด€๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์•”ํ˜ธํ™”๋ฅผ ํ•„์ˆ˜์ ์œผ๋กœ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•”ํ˜ธํ™” ๋ฐฉ์‹ ์ค‘ (1)์€/๋Š” ์•”,๋ณตํ˜ธํ™” ๋ชจ๋“ˆ์ด DB ์„œ๋ฒ„์— ์„ค์น˜๋œ ๋ฐฉ์‹์œผ๋กœ DB ์„œ๋ฒ„์— ์•”,๋ณตํ˜ธํ™”, ์ •์ฑ… ๊ด€๋ฆฌ, ํ‚ค ๊ด€๋ฆฌ ๋“ฑ์˜ ๋ถ€ํ•˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.
- ๋˜ํ•œ ์ „์†ก๊ณ„์ธต(4๊ณ„์ธต)๊ณผ ์‘์šฉ๊ฒŒ์ธต(7๊ณ„์ธต) ์‚ฌ์ด์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ์›น๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™”(๊ธฐ๋ฐ€์„ฑ), ์ƒํ˜ธ ์ธ์ฆ ๋ฐ ์ „์†ก ์‹œ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅ, 443ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ์ธ (2)์„/๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ค‘์š” ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ์ดํ„ฐ์˜ ์•ˆ์ „ํ•œ ์ „์†ก์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•œ๋‹ค. 

โœ… (1) : Plug-in / (2) SSL/TLS

 

*๏ธโƒฃ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•”ํ˜ธํ™” ๋ฐฉ์‹ (๋‘์Œ : ์• ํ”Œํ‹ฐํ•˜)
     - API ๋ฐฉ์‹ : ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
     - Plug-in ๋ฐฉ์‹ : DB
     - TDE ๋ฐฉ์‹ : DBMS
     - Hybrid ๋ฐฉ์‹ : API๋ฐฉ์‹ Plug-in ๋ฐฉ์‹

     ์ค‘์š” ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ์ดํ„ฐ์˜ ์•”ํ˜ธํ™” ์ „์†ก
     - IP Sec : 3๊ณ„์ธต
     - SSL/TLS : 4๊ณ„์ธต 7๊ณ„์ธต
     - S-HTTP : ์›น์ƒ

 

 

2. 

EAI๋Š” ๊ธฐ์—…์—์„œ ์šด์˜๋˜๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ํ”Œ๋žซํผ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„์˜ ์ •๋ณด๋ฅผ ์ „๋‹ฌ, ์—ฐ๊ณ„, ํ†ตํ•ฉ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ด์ฃผ๋Š” ์†”๋ฃจ์…˜์ด๋‹ค. EAI ๊ตฌ์ถ• ์œ ํ˜• ์ค‘ ๋‹จ์ผํ•œ ์ ‘์ ์˜ ํ—ˆ๋ธŒ ์‹œ์Šคํ…œ์„ ํ†ตํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ์ค‘์•™ ์ง‘์ค‘์‹ ๋ฐฉ์‹์œผ๋กœ ํ—ˆ๋ธŒ ์žฅ์•  ์‹œ ์ „์ฒด ์ธํ„ฐํŽ˜์ด์Šค์˜ ์žฅ์• ๋ฅผ ์ผ์œผํ‚ค๋Š” ์œ ํ˜•์€ ?

โœ… ํ—ˆ๋ธŒ ์•ค ์Šคํฌํฌ (Hub & Spoke)

 

*๏ธโƒฃ EAI ๊ตฌ์ถ• ์œ ํ˜• (ํฌํ—ˆ๋ฉ”ํ•˜)

     ํฌ์ธํŠธ ํˆฌ ํฌ์ธํŠธ : ๊ฐ€์žฅ ๊ธฐ์ดˆ์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ†ตํ•ฉ ๋ฐฉ๋ฒ•, 1:1 ๋‹จ์ˆœ ํ†ตํ•ฉ๋ฐฉ๋ฒ•

     ํ—ˆ๋ธŒ ์•ค ์Šคํฌํฌ : ๋‹จ์ผํ•œ ์ ‘์ ์˜ ํ—ˆ๋ธŒ ์‹œ์Šคํ…œ์„ ํ†ตํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ์ค‘์•™ ์ง‘์ค‘ ๋ฐฉ์‹, ํ—ˆ๋ธŒ ์žฅ์•  ์‹œ ์ „์ฒด ์žฅ์• 

     ๋ฉ”์‹œ์ง€ ๋ฒ„์Šค : ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‚ฌ์ด ๋ฏธ๋“ค์›จ์–ด๋ฅผ ๋‘์–ด ์—ฐ๊ณ„ํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด ํ†ตํ•ฉ ๋ฐฉ์‹

     ํ•˜์ด๋ธŒ๋ฆฌ๋“œ : ๊ทธ๋ฃน ๋‚ด๋ถ€๋Š” ํ—ˆ๋ธŒ ์•ค ์Šคํฌํฌ + ๊ทธ๋ฃน ๊ฐ„์—๋Š” ๋ฉ”์‹œ์ง€ ๋ฒ„์Šค

 

 

 

6๊ณผ๋ชฉ

1. ๋‹ค์Œ์€ C์–ธ์–ด ์ฝ”๋“œ์ด๋‹ค. ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์“ฐ์‹œ์˜ค.

#include <stdio.h>
โ€‹
void main( ){
int i, j;
int a[3][2] = {{1, 2}, {3, 4}, {5, 6}};
int sum = 0;
โ€‹
for(i=0; i<3; i++){
for(j=0; j<2; j++){
sum += a[i][j];
}
}
โ€‹
printf("%.2f", (float)sum/(3*2));
}

โ€‹โœ… 3.50

 

 

2. ๋‹ค์Œ์€ C์–ธ์–ด ์ฝ”๋“œ์ด๋‹ค. ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์“ฐ์‹œ์˜ค.

li = ['Korea', 'America', 'China']
a=0
str01 = ''
for i in li:
for j in i:
str01 += j[0]
a = a + 1
if a > 5:
break
โ€‹
print('a :', a, ', str01 :', str01)โ€‹

โœ… a : 7, str01 : KoreaAC

 

 

7๊ณผ๋ชฉ

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” DCL๋ฌธ ์ž‘์„ฑ

- ๊ด€๋ฆฌ์ž๊ฐ€ ์ธ์‚ฌ๋‹ด๋‹น์ž ๊ณ ๊ธธ๋™์—๊ฒŒ '์ง์›' ํ…Œ์ด๋ธ”์— ๋Œ€ํ•ด INSERT ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌ
- ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š์Œ

โœ… GRANT INSERT ON ์ง์› TO ๊ณ ๊ธธ๋™;

 

*๏ธโƒฃ GRANT ๊ถŒํ•œ ON ํ…Œ์ด๋ธ” TO ์‚ฌ์šฉ์ž๋ช… : ~์—๊ฒŒ(TO) ๊ถŒํ•œ์„ ๋ถ€์—ฌ (๊ทธ์˜จํˆฌ)

     REVOKE ๊ถŒํ•œ ON ํ…Œ์ด๋ธ” FROM ์‚ฌ์šฉ์ž๋ช… : ~๋กœ๋ถ€ํ„ฐ(FROM) ๊ถŒํ•œ์„ ํšŒ์ˆ˜ (๋ฆฌ์˜จํ”„)

 

 

 

2. ๋„์„œ์™€ ๋„์„œ ๊ฐ€๊ฒฉ ํ…Œ์ด๋ธ”

โœ… 35,000

 

 

 

8๊ณผ๋ชฉ

1. ์‘์ง‘๋„์™€ ๊ฒฐํ•ฉ๋„์— ๋Œ€ํ•œ ์„ค๋ช…

- (1)์€/๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์•„๋‹Œ ๋ชจ๋“ˆ ๋ฐ–์— ์„ ์–ธ๋˜์–ด ์žˆ๋Š” ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์ „์—ญ๋ณ€์ˆ˜๋ฅผ ๊ฐฑ์‹ ํ•˜๋Š” ์‹์œผ๋กœ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๊ฒฝ์šฐ์˜ ๊ฒฐํ•ฉ๋„์ด๋‹ค.
- (2)์€/๋Š” ๋ชจ๋“ˆ ๋‚ด์—์„œ ํ•œ ํ™œ๋™์œผ๋กœ๋ถ€ํ„ฐ ๋‚˜์˜จ ์ถœ๋ ฅ๊ฐ’์„ ๋‹ค๋ฅธ ํ™œ๋™์ด ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ์˜ ์‘์ง‘๋„์ด๋‹ค. 

โœ… (1) ๊ณตํ†ต ๊ฒฐํ•ฉ๋„ (Common Coupling) / (2) ์ˆœ์ฐจ์  ์‘์ง‘๋„ (Sequential Cohension)

 

*๏ธโƒฃ 1. ์‘์ง‘๋„์˜ ์œ ํ˜• (์šฐ๋…ผ์‹œ์ ˆ ํ†ต์ˆœ๊ธฐ)

     ์šฐ์—ฐ์  ์‘์ง‘๋„ : ๋ชจ๋“ˆ ๋‚ด๋ถ€์˜ ๊ฐ ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์—ฐ๊ด€์ด ์—†์Œ

     ๋…ผ๋ฆฌ์  ์‘์ง‘๋„ : ์œ ์‚ฌ/ํŠน์ • ํ˜•ํƒœ๋กœ ๋ถ„๋ฅ˜๋˜๋Š” ์ฒ˜๋ฆฌ ์š”์†Œ๋“ค์ด ํ•œ ๋ชจ๋“ˆ์—์„œ ์ฒ˜๋ฆฌ๋จ

     ์‹œ๊ฐ„์  ์‘์ง‘๋„ : ํŠน์ • ์‹œ๊ฐ„์— ์ฒ˜๋ฆฌ๋˜์–ด์•ผ ํ•˜๋Š” ํ™œ๋™๋“ค์„ ํ•œ ๋ชจ๋“ˆ์—์„œ ์ฒ˜๋ฆฌ

     ์ ˆ์ฐจ์  ์‘์ง‘๋„ : ๋‹ค์ˆ˜์˜ ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ๊ฐ€์งˆ ๋•Œ ์ˆœ์ฐจ์ ์œผ๋กœ ์ˆ˜ํ–‰

     ํ†ต์‹ ์  ์‘์ง‘๋„ : ๋™์ผํ•œ ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํ™œ๋™๋“ค์ด ๋ชจ์—ฌ์žˆ์Œ

     ์ˆœ์ฐจ์  ์‘์ง‘๋„ : ๋ชจ๋“ˆ ๋‚ด์—์„œ ํ•œ ํ™œ๋™์œผ๋กœ๋ถ€ํ„ฐ ๋‚˜์˜จ ์ถœ๋ ฅ๊ฐ’์„ ๋‹ค๋ฅธ ํ™œ๋™์ด ์‚ฌ์šฉ

     ๊ธฐ๋Šฅ์  ์‘์ง‘๋„ : ๋ชจ๋“  ๊ธฐ๋Šฅ์ด ๋‹จ์ผํ•œ ๋ชฉ์ ์„ ์œ„ํ•ด ์ˆ˜ํ–‰

 

     2. ๊ฒฐํ•ฉ๋„์˜ ์œ ํ˜• (๋‚ด๊ณต ์™ธ์ œ ์Šค์ž)

     ๋‚ด์šฉ ๊ฒฐํ•ฉ๋„ : ๋‹ค๋ฅธ ๋ชจ๋“ˆ ๋‚ด๋ถ€์— ์žˆ๋Š” ๋ณ€์ˆ˜๋‚˜ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฅธ ๋ชจ๋“ˆ์—์„œ ์‚ฌ์šฉ

     ๊ณตํ†ต ๊ฒฐํ•ฉ๋„ : ํŒŒ๋ผ๋ฏธํ„ฐX, ๋ชจ๋“ˆ ๋ฐ–์— ์„ ์–ธ๋˜์–ด ์žˆ๋Š” ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ๊ฐฑ์‹ ํ•˜๋Š” ์‹์œผ๋กœ ์ƒํ˜ธ์ž‘์šฉ

     ์™ธ๋ถ€ ๊ฒฐํ•ฉ๋„ : ๋‘๊ฐœ์˜ ๋ชจ๋“ˆ์ด ์™ธ๋ถ€์—์„œ ๋„์ž…๋œ ๋ฐ์ดํ„ฐ ํฌ๋งท, ํ†ต์‹  ํ”„๋กœํ† ์ฝœ, ๋˜๋Š” ๋””๋ฐ”์ด์Šค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ณต์œ 

     ์ œ์–ด ๊ฒฐํ•ฉ๋„ : ๋‹จ์ˆœ ์ฒ˜๋ฆฌํ•  ๋Œ€์ƒ์ธ ๊ฐ’๋งŒ ์ „๋‹ฌ๋˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ œ์–ด ์š”์†Œ๊ฐ€ ์ „๋‹ฌ

     ์Šคํƒฌํ”„ ๊ฒฐํ•ฉ๋„ : ๋ชจ๋“ˆ ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๋ฐฐ์—ด์ด๋‚˜ ๊ฐ์ฒด, ๊ตฌ์กฐ ๋“ฑ์ด ์ „๋‹ฌ

     ์ž๋ฃŒ ๊ฒฐํ•ฉ๋„ : ๋ชจ๋“ˆ ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์ „๋‹ฌ๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํ†ตํ•ด์„œ๋งŒ ๋ชจ๋“ˆ ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์ด ์ผ์–ด๋‚จ

 

 

 

2. 

(1)์€/๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ „์ฒด ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ํ•ญ๋ชฉ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ํ™œ๋™์ด๋‹ค. ๋˜ํ•œ (2)์€/๋Š” ๊ฐœ๋ฐœ ๊ณผ์ •์˜ ๊ฐ ๋‹จ๊ณ„์˜ ์‚ฐ์ถœ๋ฌผ์„ ๊ฒ€ํ† , ํ‰๊ฐ€, ์กฐ์ •, ์ฒ˜๋ฆฌ ๋“ฑ ๋ณ€ํ™”๋ฅผ ํ†ต์ œํ•˜๋Š” ์‹œ์ ์˜ ๊ธฐ์ค€์œผ๋กœ (1)์˜ ๋Œ€ํ‘œ์ ์ธ ์ฒ˜๋ฆฌ ๊ธฐ์ค€์„ ์ œ๊ณตํ•ด์ค€๋‹ค.

โœ… (1) ํ˜•์ƒ ๊ด€๋ฆฌ(Configuration Management) / (2) ๋ฒ ์ด์Šค๋ผ์ธ(Baseline)

 

 

 

9๊ณผ๋ชฉ

 

1. 

- ๋น„์ •์ƒ์ ์ธ ์ ‘๊ทผ์˜ ํƒ์ง€๋ฅผ ์œ„ํ•ด ์˜๋„์ ์œผ๋กœ ์„ค์น˜ํ•ด๋‘” ์‹œ์Šคํ…œ
- ์นจ์ž…์ž๋ฅผ ์†์—ฌ ์‹ค์ œ ๊ณต๊ฒฉ๋‹นํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์—ฌ์คŒ์œผ๋กœ์จ ํฌ๋ž˜์ปค๋ฅผ ์ถ”์ ํ•˜๊ณ , ๊ณต๊ฒฉ๊ธฐ๋ฒ•์˜ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ์‹œ์Šคํ…œ

โœ… ํ—ˆ๋‹ˆํŒŸ

๐Ÿ’ก ํฌ๋ž˜์ปค๋ฅผ ๊ฟ€๋กœ ์œ ์ธ!

 

 

2. 

- ์Šค๋‹ˆํ•‘(Sniffing)์ด๋ž€ ํ•ดํ‚น ๊ธฐ๋ฒ•์œผ๋กœ์„œ ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ž์‹ ์ด ์•„๋‹Œ ๋‹ค๋ฅธ ์ƒ๋Œ€๋ฐฉ๋“ค์˜ ํŒจํ‚ท ๊ตํ™˜์„ ํ›”์ณ๋ณด๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.
- ์Šค๋‹ˆํ•‘ ๊ธฐ๋ฒ• ์ค‘ (1)์€/๋Š” ์œ„์กฐ๋œ ๋งค์ฒด ์ ‘๊ทผ ์ œ์–ด(MAC) ์ฃผ์†Œ๋ฅผ ์ง€์†์ ์œผ๋กœ ๋„คํŠธ์›Œํฌ๋กœ ํ˜๋ ค๋ณด๋‚ด, ์Šค์œ„์น˜ MAC ์ฃผ์†Œ ํ…Œ์ด๋ธ”์˜ ์ €์žฅ ๊ธฐ๋Šฅ์„ ํ˜ผ๋ž€์‹œ์ผœ ๋”๋ฏธ ํ—ˆ๋ธŒ(Dummy Hub)์ฒ˜๋Ÿผ ์ž‘๋™ํ•˜๊ฒŒ ํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ํŒจํ‚ท์„ ์Šค๋‹ˆํ•‘ํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.
- (2)์€/๋Š” ๊ณต๊ฒฉ์ž๊ฐ€ ํŠน์ • ํ˜ธ์ŠคํŠธ์˜ MAC ์ฃผ์†Œ๋ฅผ ์ž์‹ ์˜ MAC ์ฃผ์†Œ๋กœ ์œ„์กฐํ•œ ARP Reply๋ฅผ ๋งŒ๋“ค์–ด ํฌ์ƒ์ž์—๊ฒŒ ์ง€์†์ ์œผ๋กœ ์ „์†กํ•˜์—ฌ ํฌ์ƒ์ž์˜ ARP Cache table์— ํŠน์ • ํ˜ธ์ŠคํŠธ์˜ MAC ์ •๋ณด๋ฅผ ๊ณต๊ฒฉ์ž์˜ MAC ์ •๋ณด๋กœ ๋ณ€๊ฒฝ, ํฌ์ƒ์ž๋กœ๋ถ€ํ„ฐ ํŠน์ • ํ˜ธ์ŠคํŠธ๋กœ ๋‚˜๊ฐ€๋Š” ํŒจํ‚ท์„ ๊ณต๊ฒฉ์ž๊ฐ€ ์Šค๋‹ˆํ•‘ํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค. 

โœ… (1) : ์Šค์œ„์น˜ ์žฌ๋ฐ(Switch Jamming) / (2) : ARP ์Šคํ‘ธํ•‘(ARP Spoofing)

 

 

 

3.

- (1) ๊ณต๊ฒฉ์€ ์ •์ƒ ํฌ๊ธฐ๋ณด๋‹ค ํฐ ICMP ํŒจํ‚ท์„ ์ž‘์€ ์กฐ๊ฐ(Fragment)์œผ๋กœ ์ชผ๊ฐœ์–ด ๊ณต๊ฒฉ ๋Œ€์ƒ์ด ์กฐ๊ฐํ™”๋œ ํŒจํ‚ท์„ ์ฒ˜๋ฆฌํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•์ด๋‹ค.
- (2)์€/๋Š” ํŒจํ‚ท ์ „์†ก ์‹œ ์ถœ๋ฐœ์ง€ IP ์ฃผ์†Œ์™€ ๋ชฉ์ ์ง€ IP ์ฃผ์†Ÿ๊ฐ’์„ ๋˜‘๊ฐ™์ด ๋งŒ๋“ค์–ด์„œ ๊ณต๊ฒฉ ๋Œ€์ƒ์—๊ฒŒ ๋ณด๋‚ด๋Š” ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•์ด๋‹ค.

โœ… (1) : ์ฃฝ์Œ์˜ ํ•‘(PoD; Ping of Death) / (2) : ๋žœ๋“œ ์–ดํƒ(Land Attack)

๐Ÿ’ก์ฃฝ์Œ์˜ ํ•‘ : ICMP ์ชผ๊ฐฌ / ๋žœ๋“œ์–ดํƒ : ์ถœ๋ฐœ IP = ๋ชฉ์  IP

 

*๏ธโƒฃ ์ฃฝ์Œ์˜ ํ•‘ : ๋Œ€๋Ÿ‰์˜ ICMP ํŒจํ‚ท ์ฃผ์†Œ๋ฅผ ์ „์†กํ•˜์—ฌ ์‹œ์Šคํ…œ์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ๋งˆ๋น„์‹œํ‚ค๋Š” ๊ณต๊ฒฉ

     ๋žœ๋“œ์–ดํƒ : ์ถœ๋ฐœ์ง€ IP = ๋„์ฐฉ์ง€ IP ์ฃผ์†Œ -> ์ˆ˜์‹ ์ž๊ฐ€ ์ž๊ธฐ ์ž์‹ ์—๊ฒŒ ์‘๋‹ต์„ ๋ณด๋‚ด๋Š” ๊ณต๊ฒฉ

     ํ‹ฐ์–ด ๋“œ๋กญ : ์ˆ˜์‹  ์ธก ์žฌ์กฐํ•ฉ ๊ณผ์ •์—์„œ ์˜ค๋ฅ˜ / ์กฐ์ž‘๋œ ํŒจํ‚ท ์ „์†ก

     ์Šค๋จธํ•‘ : ์ถœ๋ฐœ์ง€ ์ฃผ์†Œ -> ๊ณต๊ฒฉ IP๋กœ ์„ค์ •, ICMO ํŒจํ‚ท ์ง์ ‘ ๋ธŒ๋กœ๋“œ ์บ์ŠคํŒ… 

 

 

 

4.

- ์ •๋ณด๋ณด์•ˆ 3์š”์†Œ ์ค‘์—์„œ (1)์€/๋Š” ์ธ๊ฐ€๋œ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด์„œ๋งŒ ์ž์› ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•ด์•ผ ํ•˜๋Š” ํŠน์„ฑ์ด๋‹ค.
- ๊ธฐ์—…์—์„œ๋Š” (1)์„/๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋‹ค์–‘ํ•œ ๋ณด์•ˆ ์žฅ๋น„ ๋ฐ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
- ๋Œ€ํ‘œ์ ์ธ ์œ ํ‹ธ๋ฆฌํ‹ฐ์ธ (2)์€/๋Š” ์–ด๋–ค ์™ธ๋ถ€ ์ปดํ“จํ„ฐ๊ฐ€ ์ ‘์†๋˜๋ฉด ์ ‘์† ์ธ๊ฐ€ ์—ฌ๋ถ€๋ฅผ ์ ๊ฒ€ํ•ด์„œ ์ธ๊ฐ€๋œ ๊ฒฝ์šฐ์—๋Š” ์ ‘์†์ด ํ—ˆ์šฉ๋˜๊ณ , ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ์—๋Š” ๊ฑฐ๋ถ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ ‘๊ทผ์ œ์–ด ์œ ํ‹ธ๋ฆฌํ‹ฐ์ด๋‹ค.

โœ… (1) : ๊ธฐ๋ฐ€์„ฑ(Confidentiality) / (2) : TCP ๋ ˆํผ(TCP Wrapper)

 

*๏ธโƒฃ ๋ณด์•ˆ 3๋Œ€ ์š”์†Œ (๊ธฐ๋ฌด๊ฐ€)

     ๊ธฐ๋ฐ€์„ฑ : ์ธ๊ฐ€๋˜์ง€ ์•Š์€ ์ ‘๊ทผ์— ์ •๋ณด ๊ณต๊ฐœ ์ฐจ๋‹จ

     ๋ฌด๊ฒฐ์„ฑ : ์ •๋‹นํ•œ ๋ฐฉ๋ฒ•์ด ์•„๋‹ˆ๋ฉด ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์—†์Œ

     ๊ฐ€์šฉ์„ฑ : ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์‚ฌ์šฉ์ž ์„œ๋น„์Šค ์ง€์† ์‚ฌ์šฉ ๋ณด์žฅ

*๏ธโƒฃ TCP Wrapper

     ์™ธ๋ถ€ ์ปดํ“จํ„ฐ ์ ‘์† > ์ ‘์† ์ธ๊ฐ€ ์—ฌ๋ถ€ ํ™•์ธ > ์ ‘์† ํ—ˆ์šฉ ๋˜๋Š” ์ ‘์† ๊ฑฐ๋ถ€ '์ ‘๊ทผ์ œ์–ด ์œ ํ‹ธ๋ฆฌํ‹ฐ'

 

 

 

 

5.

- (1) : ๊ฐ์ฒด๋‚˜ ๊ฐ์ฒด ๋‚ด์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์š”์ฒญํ•˜๋Š” ๋Šฅ๋™์ ์ธ ๊ฐœ์ฒด (ํ–‰์œ„์ž)
- (2) : ์ž์‹ ์˜ ์‹ ์›์„ ์‹œ์Šคํ…œ์— ์ฆ๋ช…ํ•˜๋Š” ๊ณผ์ •์ด๋ฉฐ ์•„์ด๋””์™€ ํŒจ์Šค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๊ณผ์ •์ด ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์˜ˆ์‹œ๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
- (3) ์ค‘์•™ ๊ด€๋ฆฌ์ž๊ฐ€ ์‚ฌ์šฉ์ž์™€ ์‹œ์Šคํ…œ์˜ ์ƒํ˜ธ๊ด€๊ณ„๋ฅผ ํ†ต์ œํ•˜์—ฌ ์กฐ์ง ๋‚ด ๋งก์€ ์—ญํ• ์— ๊ธฐ์ดˆํ•˜์—ฌ ์ž์›์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์ œํ•œํ•˜๋Š” ๋ฐฉ๋ฒ•

|๋ณด๊ธฐ| Subject, Object, Access, Identification, Authentication, Authorization, DAC, MAC, RBAC

โœ… (1) : Subject / (2) : Authentication / (3) : RBAC 

 

*๏ธโƒฃ Subject(์ฃผ์ฒด) : ์ž์›์— ๋Œ€ํ•œ ์ ‘๊ทผ ์š”์ฒญ

     Object(๊ฐ์ฒด) : ์ ‘๊ทผ ๋Œ€์ƒ์ด ๋  ์ˆ˜ ์žˆ๋Š” ์•„์ดํ…œ

     Access(์ ‘๊ทผ) : ์ฃผ์ฒด์™€ ๊ฐ์ฒด ์‚ฌ์ด์˜ ์ •๋ณด ํ๋ฆ„

 

*๏ธโƒฃ ์ ‘๊ทผ ํ†ต์ œ ์ ˆ์ฐจ

     Identification : ์‹๋ณ„ > Authentication : ์ธ์ฆ > Authorization : ์Šน์ธ ํ˜น์€ ์ธ๊ฐ€ > Accountability : ์ฑ…์ž„์ถ”์ ์„ฑ

 

*๏ธโƒฃ ๊ฐ•์ œ์  ์ ‘๊ทผํ†ต์ œ (MAC, Mandatory Access Control) : ์กฐ์ง ๋‚ด ์—ญํ• ๊ธฐ๋ฐ˜ ์ž์› ์ ‘๊ทผ ํ—ˆ์šฉ

     ์ž„์˜์  ์ ‘๊ทผํ†ต์ œ (DAC, Discretionary Access Control) : ๊ฐœ์ธ(IBP) ๊ทธ๋ฃน(GBP)์˜ Identity ๊ทผ๊ฑฐ ์ ‘๊ทผ์ œ์–ด

     ์—ญํ• ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ํ†ต์ œ (RBAC, Role Based Access Control) : ์ฃผ์ฒด์˜ ๊ถŒํ•œ์— ๊ทผ๊ฑฐ ์ ‘๊ทผ์ œํ•œ

 

 

 

 

6.

- (1) : ๊ตญ๋‚ด ํ•œ๊ตญ์ธํ„ฐ๋„ท์ง„ํฅ์›(KISA)์ด ๊ฐœ๋ฐœํ•œ ๋ธ”๋ก ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ 128bit ๋น„๋ฐ€ํ‚ค๋กœ๋ถ€ํ„ฐ ์ƒ์„ฑ๋œ 16๊ฐœ์˜ 64bit ๋ผ์šด๋“œ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด 16ํšŒ์˜ ๋ผ์šด๋“œ๋ฅผ ๊ฑฐ์ณ 128bit ์•”ํ˜ธ๋ฌธ ๋ธ”๋ก์œผ๋กœ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋Œ€์นญํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜

- (2) : ์œ ํ•œ์ฒด ์œ„์—์„œ ์ •์˜๋œ ํƒ€์›๊ณก์„  ๊ตฐ์—์„œ์˜ ์ด์‚ฐ๋Œ€์ˆ˜ ๋ฌธ์ œ์— ๊ธฐ์ดˆํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ RSA๋ณด๋‹ค ํ‚ค์˜ ๋น„ํŠธ ์ˆ˜๋ฅผ ์ ๊ฒŒ ํ•˜๋ฉด์„œ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜

โœ… (1) : SEED / (2) : ECC(Elliptic Curve Cryptography)

 

*๏ธโƒฃ ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฐฉ์‹ (๋Œ€๋น„ํ•ด) : ๋Œ€์นญํ‚ค, ๋น„๋Œ€์นญํ‚ค, ํ•ด์‹œ

 

*๏ธโƒฃ ๋Œ€์นญํ‚ค : ์•”ํ˜ธํ™” ๋ณตํ˜ธํ™”์— ๊ฐ™์€ ํ‚ค๋ฅผ ์“ฐ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ (๋ธ”๋ก, ์ŠคํŠธ๋ฆผ์œผ๋กœ ๋‚˜๋‰จ)

     ์žฅ์  : ๊ณ„์‚ฐ ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค

     ๋‹จ์  : ํ‚ค ๋ถ„๋ฐฐ ๋ฐ ๊ด€๋ฆฌ ์–ด๋ ค์›€ / ๊ธฐ๋ฐ€์„ฑ๋งŒ ๋ณด์žฅ

     ๋Œ€์นญํ‚ค ์ข…๋ฅ˜

          DES : 1975 / NIST / 64bit

          SEED : 1999 / KISA / 128bit

          AES : 2001 / NIST

          ARIA : 2004 / ๊ตญ์ •์› + ์‚ฐํ•™์—ฐ๊ตฌํ˜‘ํšŒ / ํ•™๊ณ„ ์—ฐ๊ตฌ๊ธฐ๊ด€ ์ •๋ถ€ ์˜๋ฌธ ์•ž๊ธ€์ž ๊ตฌ์„ฑ

 

     ๋น„๋Œ€์นญํ‚ค (=๊ณต๊ฐœํ‚ค ์•”ํ˜ธ๋ฐฉ์‹) : ์•”ํ˜ธํ™”ํ‚ค์™€ ๋ณตํ˜ธํ™”ํ‚ค๊ฐ€ ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜

     ์žฅ์  : ๊ด€๋ฆฌํ•ด์•ผ ํ•  ํ‚ค ๊ฐœ์ˆ˜๊ฐ€ ์ ๋‹ค

     ๋‹จ์  : ๊ณ„์‚ฐ ์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค.

     ๋น„๋Œ€์นญํ‚ค ์ข…๋ฅ˜

          ๋””ํ”ผ ํ—ฌ๋งŒ : ์ตœ์ดˆ ๋น„๋ฐ€ํ‚ค ๊ตํ™˜ ํ”„๋กœํ† ์ฝœ / ํ‚ค ๋ถ„๋ฐฐ ๋ฐฉ์‹ ์—ฐ๊ตฌ์˜ ๊ธฐ๋ณธ

          RSA : ์†Œ์ธ์ˆ˜๋ถ„ํ•ดํ•˜๋Š” ์ˆ˜ํ•™์  ์•Œ๊ณ ๋ฆฌ์ฆ˜ (3๋ช… MIT ๊ต์ˆ˜)

          ECC : ํƒ€์›๊ณก์„  ๊ตฐ

          ์—˜๊ฐ€๋ฉœ : ์ „์ž์„œ๋ช… + ๋ฐ์ดํ„ฐ ์•”๋ณตํ˜ธํ™” ํ•จ๊ป˜ ์‚ฌ์šฉ

 

     ํ•ด์‹œ ์•”ํ˜ธ ๋ฐฉ์‹ (์ผ๋ฐฉํ–ฅ ์•”ํ˜ธ ๋ฐฉ์‹) : ์ž„์˜ ๊ธธ์ด -> ๊ณ ์ •๋œ ๊ธธ์ด์˜ ์•”ํ˜ธ๋ฌธ์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ์‹

     MAC (Message Authentication Code) : ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์‹œ์ง€ ์ธ์ฆ ์ฝ”๋“œ / ๋ฉ”์‹œ์ง€ ๋ฌด๊ฒฐ์„ฑ, ์†ก์‹ ์ž์œผ ใ…ฃ์ธ์ฆ ๋ณด์žฅ

     ์ข…๋ฅ˜ : HMAC, NMAC

     MDC (Modification Detection Code) : ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ณ€๊ฒฝ ๊ฐ์ง€ ์ฝ”๋“œ / ๋ฉ”์‹œ์ง€ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ

     ํ•ด์‹œ ์•”ํ˜ธํ™” ์ข…๋ฅ˜

          MD5 : MD4 ๊ฐœ์„ , ํ”„๋กœ๊ทธ๋žจ ํŒŒ์ผ ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ ์‹œ ์‚ฌ์šฉ

          SHA-1 : ๋ฏธ ์ •๋ถ€ ํ‘œ์ค€ ์ง€์ •

          SHA-256, 384, 512 : AES์— ๋Œ€์‘ํ•˜๋„๋ก ๊ธธ์ด ๋Š˜๋ฆฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜

          HAS-160 : KCDSA(๊ตญ๋‚ด ํ‘œ์ค€ ์„œ๋ช… ์•Œ๊ณ ๋ฆฌ์ฆ˜)๋ฅผ ์œ„ํ•˜์—ฌ ๊ฐœ๋ฐœ๋œ ํ•ด์‹œํ•จ์ˆ˜

 

 

10๊ณผ๋ชฉ

 

1.

- (1) : ์˜ค๋ฅ˜๋ฅผ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•œ ์‹œ์Šคํ…œ์—์„œ ์˜ค๋ฅ˜ ์ œ๊ฑฐ์™€ ์ˆ˜์ •์— ์˜ํ•ด ์ƒˆ๋กœ์ด ์œ ์ž…๋œ ์˜ค๋ฅ˜๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ผ์ข…์˜ ๋ฐ˜๋ณต ํ…Œ์ŠคํŠธ ๊ธฐ๋ฒ•
- (2) : ์งง์€ ์‹œ๊ฐ„์— ์‚ฌ์šฉ์ž๊ฐ€ ๋ชฐ๋ฆด ๋•Œ ์‹œ์Šคํ…œ์˜ ๋ฐ˜์‘์„ ์ธก์ •ํ•˜๋Š” ํ…Œ์ŠคํŠธ ๊ธฐ๋ฒ•

|๋ณด๊ธฐ| Recovery Testing, Security Testing, Generalization, Structure Testing, Regression Testing, Stress Testing, Spike Testing

โœ… (1) : Regression Testing (ํšŒ๊ท€) / (2) : Spike Testing (์ŠคํŒŒ์ดํฌ)

 

*๏ธโƒฃ 1. ํ…Œ์ŠคํŠธ ๋ชฉ์ ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ (ํšŒ์•ˆ์„ฑ ๊ตฌํšŒ๋ณ‘)

     ์‹œ์Šคํ…œ์— ๊ณ ์˜๋กœ ์‹คํŒจ๋ฅผ ์œ ๋„, ์‹œ์Šคํ…œ์˜ ์ •์ƒ์  ๋ณต๊ท€ ์—ฌ๋ถ€ ํ…Œ์ŠคํŠธ : ํšŒ๋ณต ํ…Œ์ŠคํŠธ (Recovery)

     ์†Œ์Šค ์ฝ”๋“œ ๋‚ด์˜ ๋ณด์•ˆ์ ์ธ ๊ฒฐํ•จ์„ ๋ฏธ๋ฆฌ ์ ๊ฒ€ํ•˜๋Š” ํ…Œ์ŠคํŠธ : ์•ˆ์ „ ํ…Œ์ŠคํŠธ (Security)

     ์‹œ์Šคํ…œ ์‘๋‹ต ์‹œ๊ฐ„, ํŠน์ • ์‹œ๊ฐ„ ์ฒ˜๋ฆฌ ์—…๋ฌด๋Ÿ‰, ์‹œ์Šคํ…œ ๋ฐ˜์‘ ์†๋„ ๋“ฑ์„ ์ธก์ •ํ•˜๋Š” ํ…Œ์ŠคํŠธ : ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ (Performance)

     ์‹œ์Šคํ…œ ๋‚ด๋ถ€ ๋…ผ๋ฆฌ ๊ฒฝ๋กœ, ์†Œ์Šค ์ฝ”๋“œ์˜ ๋ณต์žก๋„ ๋“ฑ์„ ํ‰๊ฐ€ํ•˜๋Š” ํ…Œ์ŠคํŠธ : ๊ตฌ์กฐ ํ…Œ์ŠคํŠธ (Structure)

     ์ˆ˜์ •ํ•œ ์‹œ์Šคํ…œ, ์ˆ˜์ •ํ•ด์„œ ์ƒˆ ์˜ค๋ฅ˜ ์—†๋Š” ์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ˜๋ณต ํ…Œ์ŠคํŠธ : ํšŒ๊ธฐ ํ…Œ์ŠคํŠธ (Regression)

     ๋ณ€๊ฒฝ๋œ ์‹œ์Šคํ…œ๊ณผ ๊ธฐ์กด ์‹œ์Šคํ…œ์—์„œ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ ํ›„ ๊ฒฐ๊ณผ ๋น„๊ต ํ…Œ์ŠคํŠธ : ๋ณ‘ํ–‰ ํ…Œ์ŠคํŠธ (Parallel)

 

*๏ธโƒฃ 2. ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ์˜ ์ƒ์„ธ ์œ ํ˜• (๋ถ€์Šค์Šค๋‚ด)

     ์‹œ์Šคํ…œ์˜ ๋ถ€ํ•˜๋ฅผ ๊ณ„์† ์ฆ๊ฐ€์‹œํ‚ค๋ฉด์„œ ์‹œ์Šคํ…œ์˜ ์ž„๊ณ„์ ์„ ์ฐพ๋Š” ํ…Œ์ŠคํŠธ, ๋ณ‘๋ชฉ ํ˜„์ƒ ์ œ๊ฑฐ : ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ (Load)

     ์ž„๊ณ„์  ์ด์ƒ์˜ ๋ถ€ํ•˜๋ฅผ ๊ฐ€ํ•˜์—ฌ ๋น„์ •์ƒ์ ์ธ ์ƒํ™ฉ์—์„œ์˜ ์ฒ˜๋ฆฌ๋ฅผ ํ…Œ์ŠคํŠธ : ์ŠคํŠธ๋ ˆ์Šค ํ…Œ์ŠคํŠธ (Stress)

     ์งง์€ ์‹œ๊ฐ„์— ์‚ฌ์šฉ์ž ๋ชฐ๋ฆผ, ์‹œ์Šคํ…œ ๋ฐ˜์‘ ํ…Œ์ŠคํŠธ : ์ŠคํŒŒ์ดํฌ ํ…Œ์ŠคํŠธ (Spike)

     ์˜ค๋žœ ์‹œ๊ฐ„ ๋™์•ˆ ์‹œ์Šคํ…œ์˜ ๋†’์€ ๋ถ€ํ•˜๋ฅผ ๊ฐ€ํ•˜์—ฌ ์‹œ์Šคํ…œ ๋ฐ˜์‘ ํ…Œ์ŠคํŠธ : ๋‚ด๊ตฌ์„ฑ ํ…Œ์ŠคํŠธ (Endurance)

 

 

2. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ ์ธก์ • ์ง€ํ‘œ

- (1) : ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ์ž๊ฐ€ ์š”๊ตฌ๋ฅผ ์ž…๋ ฅํ•œ ์‹œ์ ๋ถ€ํ„ฐ ํŠธ๋žœ์žญ์…˜์„ ์ฒ˜๋ฆฌ ํ›„ ๊ทธ ๊ฒฐ๊ณผ์˜ ์ถœ๋ ฅ์ด ์™„๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„
- (2) : ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํŠธ๋žœ์žญ์…˜์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ์‚ฌ์šฉํ•˜๋Š” CPU ์‚ฌ์šฉ๋Ÿ‰, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰, ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ด์นญํ•˜๋Š” ์šฉ์–ด

|๋ณด๊ธฐ| Throughput, Response Time, Seek Time, Turnaround Time, Resource Usage, Performance Utility, Access Time

โœ… (1) : Turnaround Time / (2) : Resource Usage

 

*๏ธโƒฃ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ ์ธก์ • ์ง€ํ‘œ (์ฒ˜์‘๊ฒฝ์ž)

     Throughput(์ฒ˜๋ฆฌ๋Ÿ‰), Response Time(์‘๋‹ต ์‹œ๊ฐ„), Turnaround Time(๊ฒฝ๊ณผ ์‹œ๊ฐ„), Resource Usage(์ž์› ์‚ฌ์šฉ๋ฅ )

 

 

 

3. 

- (1) : ํ…Œ์ŠคํŠธ ์˜ค๋ผํด ์ข…๋ฅ˜ ์ค‘ ๋ชจ๋“  ์ž…๋ ฅ๊ฐ’์— ๋Œ€ํ•˜์—ฌ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•จ์œผ๋กœ์จ ๋ฐœ์ƒ๋œ ์˜ค๋ฅ˜๋ฅผ ๋ชจ๋‘ ๊ฒ€์ถœํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ผํด
- (2) : ํ…Œ์ŠคํŠธ ๋ ˆ๋ฒจ ์ค‘ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•œ ๋ชจ๋“ˆ ์‚ฌ์ด์˜ ์ธํ„ฐํŽ˜์ด์Šค, ํ†ตํ•ฉ๋œ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ฒ€์ฆํ•˜๋Š” ํ…Œ์ŠคํŠธ ๋‹จ๊ณ„

|๋ณด๊ธฐ| ์ฐธ(True) ์˜ค๋ผํด, ์ƒ˜ํ”Œ๋ง(Sampling) ์˜ค๋ผํด, ํœด๋ฆฌ์Šคํ‹ฑ(Heuristic) ์˜ค๋ผํด, ์ผ๊ด€์„ฑ ๊ฒ€์‚ฌ(Consistent) ์˜ค๋ผํด, Unit Test, Integration Test, System Test, Acceptance Test

โœ…(1) :์ฐธ ์˜ค๋ผํด /(2) :Integration

*๏ธโƒฃ ํ…Œ์ŠคํŠธ ์˜ค๋ผํด (์ฐธ์ƒ˜ํœด์ผ)

     ์ฐธ(True) ์˜ค๋ผํด / ์ƒ˜ํ”Œ๋ง(Sampling) ์˜ค๋ผํด / ํœด๋ฆฌ์Šคํ‹ฑ(Heuristic) ์˜ค๋ผํด / ์ผ๊ด€์„ฑ ๊ฒ€์‚ฌ(Consistent) ์˜ค๋ผํด

     ๋ชจ๋“  ์ž…๋ ฅ๊ฐ’     / ํŠน์ • ๋ช‡๊ฐœ๋งŒ ์ž…๋ ฅ           / ํŠน์ • ๋ช‡๊ฐœ๋ฐ˜, ๋‚˜๋จธ์ง€๋Š” ์ถ”์ • / ์ˆ˜ํ–‰ ์ „๊ณผ ํ›„ ๊ฒฐ๊ณผ๊ฐ’ ๋™์ผ

     

     ํ…Œ์ŠคํŠธ ๋ ˆ๋ฒจ (๋‹จํ†ต์‹œ์ธ)

     unit test (๋‹จ์œ„ํ…Œ์ŠคํŠธ) / integration test (ํ†ตํ•ฉํ…Œ์ŠคํŠธ) / system test (์‹œ์Šคํ…œํ…Œ์ŠคํŠธ) / acceptance test (์ธ์ˆ˜ํ…Œ์ŠคํŠธ)

     ์š”๊ตฌ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋‹จ์œ„ / ํ†ตํ•ฉ ์ปดํฌ๋„ŒํŠธ ์ƒํ˜ธ์ž‘์šฉ ๊ฒ€์ฆ / ๋‹จ์œ„ ์‹œ์Šคํ…œ ๊ธฐ๋Šฅ ์‹œ์Šคํ…œ   / ์š”๊ตฌ์‚ฌํ•ญ ๋งŒ์กฑ ํ™•์ธ

 

 

11๊ณผ๋ชฉ

1.

- (*)์€/๋Š” ๋ฉ€ํ‹ฐํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์—์„œ ๊ณต์œ  ์ž์›์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์ œํ•œํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.
- ํ•œ ํ”„๋กœ์„ธ์Šค(๋˜๋Š” ์Šค๋ ˆ๋“œ)์—์„œ (*)์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋™์•ˆ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋™์‹œ์— ์ด ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค.
- (*)์€/๋Š” P, V ์—ฐ์‚ฐ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค. 

โœ… ์„ธ๋งˆํฌ์–ด (Semaphore)

 

*๏ธโƒฃ ์„ธ๋งˆํฌ์–ด๋Š” ์ƒํ˜ธ๋ฐฐ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ• !

 

 

2.

- ํ”„๋กœ์„ธ์Šค ์ƒํƒœ์ „์ด ์ค‘ (1)์€/๋Š” ์ค€๋น„ ์ƒํƒœ์— ์žˆ๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค(Ready List) ์ค‘ ์‹คํ–‰๋  ํ”„๋กœ์„ธ์Šค๋ฅผ ์„ ์ •(Scheduling)ํ•˜์—ฌ CPU๋ฅผ ํ• ๋‹นํ•˜๋Š” ๋™์ž‘์„ ๋งํ•œ๋‹ค.
- (1)๊ฐ€ ์ˆ˜ํ–‰๋˜๋ฉด CPU๊ฐ€ ํ˜„์žฌ ์‹คํ–‰ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค์˜ ๋ฌธ๋งฅ ์ƒํƒœ๋ฅผ ํ”„๋กœ์„ธ์Šค ์ œ์–ด๋ธ”๋ก(PCB)์— ์ €์žฅํ•˜๊ณ  ๋‹ค์Œ ํ”„๋กœ์„ธ์Šค์˜ PCB๋กœ๋ถ€ํ„ฐ ๋ฌธ๋งฅ์„ ๋ณต์›ํ•˜๋Š” (2)์ด/๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

โœ… (1) : ๋””์ŠคํŒจ์น˜ (Dispatch) / (2) :  ๋ฌธ๋งฅ๊ตํ™˜ (Context switching)

 

 

 

3.

- (1)์€/๋Š” FCFS(FIFO)์™€ ๋ผ์šด๋“œ ๋กœ๋นˆ ์Šค์ผ€์ค„๋ง ๊ธฐ๋ฒ•์„ ํ˜ผํ•ฉํ•œ ๊ฒƒ์œผ๋กœ, ์ƒˆ๋กœ์šด ํ”„๋กœ์„ธ์Šค๋Š” ๋†’์€ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๊ณ  ํ”„๋กœ์„ธ์Šค์˜ ์‹คํ–‰์‹œ๊ฐ„์ด ๊ธธ์–ด์งˆ์ˆ˜๋ก ์ ์  ๋‚ฎ์€ ํ๋กœ ์ด๋™ํ•˜๊ณ  ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„๋Š” ๋ผ์šด๋“œ ๋กœ๋นˆ ๋ฐฉ์‹์„ ์ ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. 
- (2)์€/๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋„์ฐฉํ•˜๋Š” ์‹œ์ ์— ๋”ฐ๋ผ ๊ทธ ๋‹น์‹œ ๊ฐ€์žฅ ์ž‘์€ ์„œ๋น„์Šค ์‹œ๊ฐ„์„ ๊ฐ–๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ ์‹œ๊นŒ์ง€ ์ž์›์„ ์ ์œ ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. 

โœ… (1) : ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ (Multi Level Feedback Queue) / (2) :  SJF(Shortest Job First)

 

*๏ธโƒฃ ๋‹ค๋‹จ๊ณ„ ํ”ผ๋“œ๋ฐฑ ํ(MLFQ) : FIFO + ๋ผ์šด๋“œ๋กœ๋นˆ ์Šค์ผ€์ค„๋ง 

     SJF : ๊ฐ€์žฅ ์ž‘์€ ์„œ๋น„์Šค์‹œ๊ฐ„ ํ”„๋กœ์„ธ์Šค

 

 

 

4.

- ๊ธฐ์กด์˜ ๋ผ์šฐํ„ฐ, ์Šค์œ„์น˜ ๋“ฑ๊ณผ ๊ฐ™์ด ํ•˜๋“œ์›จ์–ด์— ์˜์กดํ•˜๋Š” ๋„คํŠธ์›Œํฌ ์ฒด๊ณ„์—์„œ ์•ˆ์ •์„ฑ, ์†๋„, ๋ณด์•ˆ ๋“ฑ์„ ์†Œํ”„ํŠธ์›จ์–ด๋กœ ์ œ์–ด, ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ๋œ ๊ธฐ์ˆ 
- ๋„คํŠธ์›Œํฌ๋ฅผ ์ œ์–ด๋ถ€, ๋ฐ์ดํ„ฐ ์ „๋‹ฌ๋ถ€๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ๊ด€๋ฆฌ์ž๊ฐ€ ๋ณด๋‹ค ํšจ์œจ์ ์œผ๋กœ ๋„คํŠธ์›Œํฌ๋ฅผ ์ œ์–ด, ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ 
- ๋„คํŠธ์›Œํฌ ์žฅ๋น„์˜ ํŽŒ์›จ์–ด ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ์ง์ ‘์ ์ธ ๋ฐ์ดํ„ฐ ์ „์†ก ๊ฒฝ๋กœ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ , ๊ธฐ์กด ๋„คํŠธ์›Œํฌ์—๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์œผ๋ฉด์„œ ํŠน์ • ์„œ๋น„์Šค์˜ ์ „์†ก ๊ฒฝ๋กœ ์ˆ˜์ •์„ ํ†ตํ•˜์—ฌ ์ธํ„ฐ๋„ท์ƒ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ

โœ… SDN(Software Defined Networking)

 

*๏ธโƒฃ ๋„คํŠธ์›Œํฌ ์ œ์–ด๋ถ€, ๋ฐ์ดํ„ฐ ์ „๋‹ฌ๋ถ€ ๋ถ„๋ฆฌ, ๋ฐ์ดํ„ฐ ์ „์†ก ๊ฒฝ๋กœ ๊ด€๋ฆฌ, ๊ธฐ์กด ๋„คํŠธ์›Œํฌ ์˜ํ–ฅ ์ฃผ์ง€ ์•Š์Œ

 

 

 

5. ๋ผ์šฐํŒ… ํ”„๋กœํ† ์ฝœ

- AS ๋‚ด์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฑฐ๋ฆฌ ๋ฒกํ„ฐ(Distance-Vector) ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๊ธฐ์ดˆํ•˜์—ฌ ๊ฐœ๋ฐœ๋œ ๋‚ด๋ถ€ ๋ผ์šฐํŒ… ํ”„๋กœํ† ์ฝœ
- ๊ฒฝ๋กœ ์„ ํƒ ๋งคํŠธ๋ฆญ์€ ํ™‰ ์นด์šดํŠธ(Hop Count)์ด๊ณ , ์ตœ๋‹จ ๊ฒฝ๋กœ ํƒ์ƒ‰์— Bellman-Ford ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉ
- ๊ฐ ๋ผ์šฐํ„ฐ๋Š” ์ด์›ƒ ๋ผ์šฐํ„ฐ๋“ค๋กœ๋ถ€ํ„ฐ ์ˆ˜์‹ ํ•œ ์ •๋ณด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ผ์šฐํŒ… ํ‘œ๋ฅผ ๊ฐฑ์‹ 

โœ… RIP(Routing Information Protocol)

 

*๏ธโƒฃ ๋ผ์šฐํŒ… ํ”„๋กœํ† ์ฝœ : ๊ฑฐ๋ฆฌ - RIP, ๋งํฌ - OSPF, ๊ฒฝ๋กœ - BGP

 

 

 

6.

(1)์€/๋Š” ์ปจํ…Œ์ด๋„ˆ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™”ํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ์—”์ง„์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ์ปจํ…Œ์ด๋„ˆ ์•ˆ์— ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ๋ฐฐ์น˜์‹œํ‚ค๋Š” ์ผ์„ ์ž๋™ํ™”ํ•ด ์ฃผ๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ด์ž ์†Œํ”„ํŠธ์›จ์–ด์ด๋‹ค. 
(2)์€/๋Š” ์›น ์‚ฌ์ดํŠธ๋ฅผ ํฌ๋กค๋งํ•˜์—ฌ ๊ตฌ์กฐํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ํŒŒ์ด์ฌ(Python) ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค.

โœ… (1) : ๋„์ปค(Docker) / (2) :  ์Šคํฌ๋ ˆํŒŒ์ด(Scrapy)

 

 

 

12๊ณผ๋ชฉ

1.

(1) ์ €์ž‘๊ถŒ์— ๋Œ€ํ•œ ์‚ฌ์šฉ ๊ถŒํ•œ, ๋ผ์ด์„ผ์Šค ๋ฐœ๊ธ‰, ์‚ฌ์šฉ๋Ÿ‰ ๊ด€๋ฆฌ ๋ฐ ํ‚ค ๊ด€๋ฆฌ, ๋ผ์ด์„ผ์Šค ๋ฐœ๊ธ‰ ๊ด€๋ฆฌ ๋“ฑ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋„๊ตฌ
(2) ์ฝ˜ํ…์ธ ๋ฅผ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์™€ ํ•จ๊ป˜ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ๋‹จ์œ„๋กœ ๋ฌถ๋Š” ๋„๊ตฌ

โœ… (1) : ํด๋ฆฌ์–ด๋ง ํ•˜์šฐ์Šค (Clearing House) / (2) :  ํŒจํ‚ค์ € (Packager)

 

*๏ธโƒฃ ๋””์ง€ํ„ธ ์ €์ž‘๊ถŒ ๊ด€๋ฆฌ (DRM) : ์ฝ˜ํ…์ธ  ์ œ๊ณต์ž, ์ฝ˜ํ…์ธ  ๋ถ„๋ฐฐ์ž, ํŒจํ‚ค์ €, ๋ณด์•ˆ ์ปจํ…Œ์ด๋„ˆ, DRM ์ปจํŠธ๋กค๋Ÿฌ, ํด๋ฆฌ์–ด๋ง ํ•˜์šฐ์Šค

 

 

 

 

 

 

 

 

3. ์†Œํ”„ํŠธ์›จ์–ด ํŒจํ‚ค์ง•

(1)์€/๋Š” ์ตœ์ข… ์‚ฌ์šฉ์ž์ธ ๊ณ ๊ฐ์—๊ฒŒ ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ์ •๋ฆฌ๋œ ์ƒ์„ธ ์„œ๋น„์Šค ์ •๋ณด๋ฅผ ํฌํ•จํ•˜์—ฌ ์ œํ’ˆ์˜ ์ˆ˜์ •, ๋ณ€๊ฒฝ, ๊ฐœ์„ ํ•˜๋Š” ์ผ๋ จ์˜ ์ž‘์—…๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฌธ์„œ 
(1) ์ž‘์„ฑ ํ•ญ๋ชฉ ์ค‘ ๋ฌธ์„œ ์ด๋ฆ„, ์ œํ’ˆ ์ด๋ฆ„, ๋ฒ„์ „ ๋ฒˆํ˜ธ, ๋‚ ์งœ, ์ฐธ๊ณ  ๋‚ ์งœ, ๋ฒ„์ „ ๋“ฑ์˜ ์ •๋ณด๊ฐ€ ๋“ค์–ด๊ฐ€ ์žˆ๋Š” ์ž‘์„ฑ ํ•ญ๋ชฉ์€ (2)์ด๋‹ค.

โœ… (1) : ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ(Release Note) / (2) :  ํ—ค๋”(Header)

*๏ธโƒฃ ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ ์ž‘์„ฑ ํ•ญ๋ชฉ(ํ—ค๊ฐœ๋ชฉ์ด ์žฌ์ˆ˜์‚ฌ์†Œ ๋…ธ๋ฉด์—ญ)

: ํ—ค๋”, ๊ฐœ์š”, ๋ชฉ์ , ์ด์Šˆ์š”์•ฝ, ์žฌํ˜„ํ•ญ๋ชฉ, ์ˆ˜์ •.๊ฐœ์„  ๋‚ด์šฉ, ์‚ฌ์šฉ์ž ์˜ํ–ฅ๋„, ์†Œํ”„ํŠธ์›จ์–ด ์ง€์› ์˜ํ–ฅ๋„, ๋…ธํŠธ, ๋ฉด์ฑ… ์กฐํ•ญ, ์—ฐ๋ฝ ์ •๋ณด

๋ฐ˜์‘ํ˜•