๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ“š ์ „๊ณต ๊ณต๋ถ€

(55)
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] 11์žฅ. ํ’ˆ์งˆ๊ด€๋ฆฌ 11์žฅ. ํ’ˆ์งˆ๊ด€๋ฆฌ Quality (ํ’ˆ์งˆ) ์‚ฌ์šฉ์ž ๋งŒ์กฑ๋„ = ์ข‹์€ ์ƒํ’ˆ + ์˜ˆ์‚ฐ๊ณผ ์ผ์ •์— ๋งž๋Š” ์ „๋‹ฌ + ์ข‹์€ ํ’ˆ์งˆ “ํ’ˆ์งˆ์€ ๊ฒฐ์ฝ” ์šฐ์—ฐ์ด ์•„๋‹ˆ๋‹ค. ํ•ญ์ƒ ์ง€์ ์ธ ๋…ธ๋ ฅ์˜ ๊ฒฐ๊ณผ์ด๋‹ค.” Quality Factor ์ •ํ™•์„ฑ, ์‹ ๋ขฐ์„ฑ, ํšจ์œจ์„ฑ, ๋ฌด๊ฒฐ์„ฑ, ์‚ฌ์šฉ์„ฑ ์œ ์ง€๋ณด์ˆ˜์„ฑ ์œ ์—ฐ์„ฑ, ์‹œํ—˜๊ฐ€๋Šฅ์„ฑ, ํœด๋Œ€์„ฑ, ์žฌ์‚ฌ์šฉ๊ฐ€๋Šฅ์„ฑ, ์ƒํ˜ธ์šด์šฉ์„ฑ Defect Amplification Model (๊ฒฐํ•จ ์ฆํญ ๋ชจ๋ธ) ์—ฐ๊ตฌ์— ๋”ฐ๋ฅด๋ฉด ์„ค๊ณ„ ํ™œ๋™์€ ์ „์ฒด ์˜ค๋ฅ˜์˜ 50~65%๋ฅผ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์„ค๊ณ„ ๋ฐ ์ฝ”๋”ฉ ์ค‘ ์˜ค๋ฅ˜์˜ ์ƒ์„ฑ ๋ฐ ๊ฐ์ง€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. Formal Technical Review (์ •ํ˜• ๊ธฐ์ˆ  ๊ฒ€ํ† ) The Players : ๊ฒ€ํ†  ๋ฆฌ๋”, ํ‘œ์ค€ ์ „๋‹ฌ์ž, ์ƒ์‚ฐ์ž, ํ‰๋ก ๊ฐ€, ์‚ฌ์šฉ ๋‹ด๋‹น์ž, ๋…น์Œ๊ธฐ, ์œ ์ง€๊ด€๋ฆฌ ์˜ค๋ผํด ๐Ÿ’ก ์ƒ์‚ฐ์ž๊ฐ€..
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] 10์žฅ. ์ปดํฌ๋„ŒํŠธ ๋ฐ UI ์„ค๊ณ„ 10์žฅ. ์ปดํฌ๋„ŒํŠธ ๋ฐ UI ์„ค๊ณ„ Monolithic vs Modular Monolithic : Unified (ํ†ตํ•ฉ) → constructed by one single module (๋‹จ์ผ ๋ชจ๋“ˆ๋กœ ๊ตฌ์„ฑ) Modular : Hierarchical, Abstraction, Divide & conquer (๊ณ„์ธต์ , ์ถ”์ƒํ™”, ๋ถ„ํ•  ๋ฐ ์ •๋ณต) → constructed by multiple module in hierarchical fashion (๊ณ„์ธต์  ๋ฐฉ์‹, ๋‹ค์ค‘ ๋ชจ๋“ˆ) Modular Design - easier to build, change, fix … ์ปดํฌ๋„ŒํŠธ๋ž€? Component (๊ตฌ์„ฑ ์š”์†Œ) : ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์œ„ํ•œ ๋ชจ๋“ˆ์‹ ๋นŒ๋”ฉ ๋ธ”๋ก "๊ตฌํ˜„์„ ์บก์Šํ™”ํ•˜๊ณ  ์ผ๋ จ์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ‘œ์‹œํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ๋ชจ๋“ˆ์‹, ๋ฐฐํฌ ๋ฐ ๊ต..
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] 9์žฅ. ์„ค๊ณ„ ๋ชจ๋ธ๋ง (8์žฅ ๋ณต์Šต) ๋ฐ์ดํ„ฐ ๊ฐœ์ฒด๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ ์ˆ˜์ค€์˜ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ˆ˜์ค€์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•„ํ‚คํ…์ฒ˜๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์‘์šฉํ”„๋กœ๊ทธ๋žจ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•˜๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ์ ์ ˆํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์ˆ˜์ค€์˜ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋‚ด์šฉ์„ '๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹'ํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ค๊ณ„ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ์„ค๊ณ„—๋น„์ฆˆ๋‹ˆ์Šค์— ํ•„์š”ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ธํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๊ทœ๋ชจ ๋…๋ฆฝ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜ˆ: ๋น…๋ฐ์ดํ„ฐ ๋ถ„์„, ๋ฐ์ดํ„ฐ ๊ณผํ•™ 9์žฅ. ์„ค๊ณ„ ๋ชจ๋ธ๋ง What is Architecture? ํ”„๋กœ๊ทธ๋žจ ๋˜๋Š” ์ปดํ“จํŒ… ์‹œ์Šคํ…œ์˜ ์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ์š”์†Œ์˜ ์™ธ๋ถ€์ ์œผ๋กœ ๋ณด์ด๋Š” ํŠน์„ฑ๊ณผ ๊ทธ๋“ค..
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] 8์žฅ. ์„ค๊ณ„ ๊ฐœ๋… 8์žฅ. ์„ค๊ณ„ ๊ฐœ๋… Design Process (์„ค๊ณ„ ํ”„๋กœ์„ธ์Šค) SW ์„ค๊ณ„๋Š” ์š”๊ตฌ์‚ฌํ•ญ์ด SW๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ฒญ์‚ฌ์ง„์œผ๋กœ ๋ณ€ํ™˜๋˜๋Š” ๋ฐ˜๋ณต์ ์ธ ๊ณผ์ •์ด๋‹ค. ์ข‹์€ ๋””์ž์ธ์„ ์œ„ํ•œ 3๊ฐ€์ง€ ํŠน์„ฑ ๋ถ„์„๋ชจ๋ธ์— ํฌํ•จ๋œ ๋ชจ๋“  ๋ช…์‹œ์  ์š”๊ตฌ์‚ฌํ•ญ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋ฉฐ, ๊ณ ๊ฐ์ด ์›ํ•˜๋Š” ๋ชจ๋“  ์•”๋ฌต์  ์š”๊ตฌ์‚ฌํ•ญ์„ ์ˆ˜์šฉํ•ด์•ผ ํ•จ. ๊ฐœ๋ฐœ์ž์™€ ํ…Œ์Šคํ„ฐ ๋“ฑ์„ ์œ„ํ•ด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๊ฐ€์ด๋“œ๊ฐ€ ๋˜์–ด์•ผ ํ•จ. ๊ตฌํ˜„ ๊ด€์ ์—์„œ ๋ฐ์ดํ„ฐ, ๊ธฐ๋Šฅ ๋ฐ ํ–‰๋™ ์˜์—ญ์„ ๋‹ค๋ฃจ๋ฉด์„œ SW์˜ ์ „์ฒด์ ์ธ ๊ทธ๋ฆผ์„ ์ œ๊ณตํ•ด์•ผ ํ•จ. ๐Ÿ’ก Fundamental Design Concepts (๊ธฐ๋ณธ ์„ค๊ณ„ ๊ฐœ๋…) Abstraction - ์ถ”์ƒํ™” (๋ฐ์ดํ„ฐ,์ ˆ์ฐจ,๋™์ž‘) Architecture - ์•„ํ‚คํ…์ฒ˜ (SW์˜ ์ „๋ฐ˜์  ๊ตฌ์กฐ) Patterns - ํŒจํ„ด (๊ฒ€์ฆ๋œ ์„ค๊ณ„ ์†”๋ฃจ์…˜์˜ ๋ณธ์งˆ ์ „๋‹ฌ) Modularity - ..
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] ์‹œ์Šคํ…œ ์†Œ๊ฐœ : what is system? ์‹œ์Šคํ…œ ์†Œ๊ฐœ System ๊ณตํ•™์  ๊ด€์  : ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์ด ์žˆ๋Š”๊ฒƒ ์ปดํ“จํ„ฐ๊ณผํ•™ ๊ด€์  : ์ฟผ๋ฆฌ ์‹œ ์‘๋‹ตํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์›๋ณธ ๋‹ซํžŒ ์‹œ์Šคํ…œ๊ณผ ๊ทธ ๊ฒฝ๊ณ„๋ฅผ ๊ฐœ๋žต์ ์œผ๋กœ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์€ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ฑฐ๋‚˜ ์ƒํ˜ธ์˜์กด์ ์ธ ์š”์†Œ๋“ค์˜ ์ง‘ํ•ฉ์œผ๋กœ ํ†ตํ•ฉ๋œ ์ „์ฒด ๋˜๋Š” ์š”์†Œ๋“ค์˜ ์ง‘ํ•ฉ(์ข…์ข… '์„ฑ๋ถ„๋“ค'์ด๋ผ๊ณ  ๋ถˆ๋ฆฐ๋‹ค)๊ณผ ๊ด€๊ณ„๋“ค์„ ํ˜•์„ฑํ•œ๋‹ค. ์‹œ์Šคํ…œ์˜ ์ผ๋ฐ˜์ ์ธ ํŠน์„ฑ์„ ์—ฐ๊ตฌํ•˜๋Š” ๋ถ„์•ผ๋Š” ์‹œ์Šคํ…œ ๊ณผํ•™, ์‹œ์Šคํ…œ ์ด๋ก , ์‹œ์Šคํ…œ ๊ณตํ•™, ์‚ฌ์ด๋ฒ„๋„คํ‹ฑ์Šค, ๋™์  ์‹œ์Šคํ…œ, ๋ณต์žกํ•œ ์‹œ์Šคํ…œ ๋ฐ ์‹œ์Šคํ…œ ๋ถ„์„ ๋ฐ ์„ค๊ณ„๋ฅผ ํฌํ•จํ•œ๋‹ค. ์ผ๋ถ€ ์‹œ์Šคํ…œ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณตํ†ต ํŠน์„ฑ์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. § ์‹œ์Šคํ…œ์€ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์„œ๋กœ ์ง๊ฐ„์ ‘์ ์œผ๋กœ ๊ด€๋ จ๋œ ๋ถ€ํ’ˆ(๋˜๋Š” ๊ตฌ์„ฑํ’ˆ)์„ ํฌํ•จํ•œ๋‹ค. § ์‹œ์Šคํ…œ์€ ์ž…๋ ฅ์„ ์ถœ๋ ฅ(์žฌ๋ฃŒ, ์—๋„ˆ์ง€ ๋˜๋Š” ๋ฐ์ดํ„ฐ)์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ํฌํ•จํ•˜๋Š” ๋™์ž‘์„ ๊ฐ€์ง‘๋‹ˆ..
[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] 7์žฅ. ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ๋ชจ๋ธ๋ง 7์žฅ. ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ๋ชจ๋ธ๋ง 4. Flow-oriented Modeling : ํ๋ฆ„ ์ง€ํ–ฅ ๋ชจ๋ธ๋ง ๋ชจ๋“  ์ปดํ“จํ„ฐ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์€ ์ •๋ณด์˜ ๋ณ€ํ™˜์ด๋‹ค. (input → Transformation → output) ์˜ค๋Š˜๋‚  flow ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์€ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ถ„์„ ๋ชจ๋ธ. DFD (Data Flow Diagram) ๋ฐ์ดํ„ฐ ๊ฐœ์ฒด : Labeled ํ™”์‚ดํ‘œ ๋ณ€ํ™˜ : ์› DFD๋Š” ๊ณ„์ธต์  ๋ฐฉ์‹์ด๋‹ค. ๋ ˆ๋ฒจ 0 DFD๋Š” ์‹œ์Šคํ…œ ์ „์ฒด๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค (context diagram) External Entity - ์™ธ๋ถ€ ์—”ํ‹ฐํ‹ฐ ๋ฐ์ดํ„ฐ ์ƒ์‚ฐ์ž / ์†Œ๋น„์ž (ex: ์‚ฌ๋žŒ, ์žฅ์น˜, ์„ผ์„œ, ์ปดํ“จํ„ฐ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ) ๋ฐ์ดํ„ฐ๋Š” ํ•ญ์ƒ ์–ด๋”˜๊ฐ€์—์„œ ์ƒ์„ฑ๋˜์–ด์•ผ ํ•˜๋ฉฐ, ํ•ญ์ƒ ๋ฌด์–ธ๊ฐ€๋กœ ์ „์†ก๋˜์–ด์•ผ ํ•œ๋‹ค. Process ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜๊ธฐ (changes input to..
[๋ธ”๋ก์ฒด์ธ] 4. ํŠธ๋žœ์ ์…˜๊ณผ ๋„คํŠธ์›Œํฌ : Blockchain Transaction & Network ๋ชฉ์ฐจ : ๋„คํŠธ์›Œํฌ ๊ฐœ์š” / ๋น„ํŠธ์ฝ”์ธ์˜ ํŠธ๋žœ์ ์…˜ / ๋น„ํŠธ์ฝ”์ธ์˜ ๋„คํŠธ์›Œํฌ ๋„คํŠธ์›Œํฌ ๊ฐœ์š” - Client-Server ๋‹จ์ผ ์ค‘์•™์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ์„œ๋ฒ„๊ฐ€ ์‘๋‹ต, ๋ณ‘๋ชฉ ํ˜„์ƒ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ ๊ตฌํ˜„๋น„์šฉ ๋น„์‹ธ์ง€๋งŒ, ์•ˆ์ •์ ์ด๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅ - P2P Network ๋„คํŠธ์›Œํฌ์˜ ๊ฐ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋กœ ๋ฐ์ดํ„ฐ ๊ณต์œ  ๊ฐ ๋…ธ๋“œ๊ฐ€ ์ž์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์œ ํ•˜๋ฉฐ, ๊ตฌํ˜„ ๋น„์šฉ์€ ์ €๋ ดํ•˜์ง€๋งŒ ๋…ธ๋“œ ์ˆ˜ ์ฆ๊ฐ€ํ•˜๋ฉด ๋ฌธ์ œ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ ์ฆ๊ฐ€ - ๊ธˆ์œต ๋„คํŠธ์›Œํฌ์˜ ํ•„์ˆ˜ ์š”์†Œ 1. ๊ฑฐ๋ž˜ ์ฒ˜๋ฆฌ ๋Œ€๋ฆฌ์ธ 2. ์ด์ค‘์ง€๋ถˆ์„ ๊ฒ€์ฆํ•˜๋Š” ๊ฒ€์ฆ์ž 3. ๊ฑฐ๋ž˜๋‚ด์—ญ ์ €์žฅํ•˜๋Š” DB 4. ๋Œ€๋ฆฌ์ธ๊ณผ ๊ฒ€์ฆ์ž์— ๋Œ€ํ•œ ์‹ ๋ขฐ - ์ค‘์•™ ์„œ๋ฒ„๊ฐ€ ์—†๋Š” ๋ธ”๋ก์ฒด์ธ์—์„œ๋Š”? - ๋น„์ž”ํ‹ด ์žฅ๊ตฐ ๋ฌธ์ œ (BFT : Byzantine Fault Tolerance) ๋น„์ž”ํ‹ฐ์›€ ์ œ๊ตญ์˜ ์žฅ๊ตฐ๋“ค์ด ์ ์˜ ์ˆ˜์ค‘์— ์žˆ๋Š” ๋„์‹œ๋ฅผ..
[๋ธ”๋ก์ฒด์ธ] 2. ์•”ํ˜ธํ™” ๊ธฐ์ˆ  : Blockchain Encryption Technology ๋ชฉ์ฐจ : ์•”ํ˜ธํ™” ๊ธฐ์ˆ  ๊ฐœ์š” / RSA์™€ ECC / HASH / ๋น„ํŠธ์ฝ”์ธ์—์„œ ์•”ํ˜ธํ™” ํ™œ์šฉ ์•”ํ˜ธํ™” ๊ธฐ์ˆ  ๊ฐœ์š” - ๋Œ€์นญํ‚ค : ๋™์ผํ•œ ํ‚ค๋กœ ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” ๊ฐ€๋Šฅ - ๋น„๋Œ€์นญํ‚ค : ๋น„๋ฐ€ํ‚ค๋กœ ํ‰๋ฌธ์„ ์•”ํ˜ธํ™”, ๊ณต๊ฐœํ‚ค๋กœ ๋ณตํ˜ธํ™” RSA์™€ ECC RSA - ๊ณต๊ฐœํ‚ค ์•”ํ˜ธ ์‹œ์Šคํ…œ์˜ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜, 1978๋…„ ๋“ฑ์žฅ - ๋น„๋Œ€์นญํ‚ค ๋ฐฉ์‹ - ํฐ ์ˆ˜์˜ ์†Œ์ธ์ˆ˜๋ถ„ํ•ด๊ฐ€ ์–ด๋ ต๋‹ค๋Š” ํŠน์ง•์—์„œ ์ฐฉ์•ˆ - ํ˜„์žฌ RSA-2048์€ 2048bit๋ฅผ ํ‚ค๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์žฅ ๋Œ€์ค‘์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ECC - ํƒ€์›๊ณก์„  ์•”ํ˜ธ (Elliptic Curve Cryptography) - RSA๋Š” 1000bits ์ด์ƒ์˜ ํฐ ์ˆซ์ž๋ฅผ ํ‚ค๋กœ ์‚ฌ์šฉํ•˜์—ฌ ์—ฐ์‚ฐ๋Ÿ‰์ด ๋งŽ์•„์กŒ๋Š”๋ฐ, ์ด์˜ ๋Œ€์ฒด์ œ๋กœ 1985๋…„ ์ œ์•ˆ๋จ - ECC๋Š” ๋” ์ ์€ ๋น„ํŠธ๋กœ ๋™๋“ฑํ•œ ์ˆ˜์ค€์˜ ์•ˆ์ „์„ฑ - ์š”๊ตฌํ•˜๋Š” ํ‚ค์˜ ๊ธธ์ด๊ฐ€ ๋น„..