--- id: P-REINFORCE-WIKI-3EAB0682 category: "10_Wiki/πŸ’‘ Topics/02_Architecture_Principles" confidence_score: 0.95 tags: ['uml-diagrams', 'system-design', 'software-architecture-documentation', 'c4-model', 'architecture-principles'] last_reinforced: 2026-05-02 --- # [[UML Diagrams]] ## πŸ“Œ Brief μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. UML(Unified Modeling Language) λ‹€μ΄μ–΄κ·Έλž¨μ€ μ†Œν”„νŠΈμ›¨μ–΄ 개발 및 μ‹œμŠ€ν…œ μ„€κ³„μ—μ„œ μ‚¬μš©λ˜λŠ” λͺ¨λΈλ§ μ–Έμ–΄μ΄μž ν‘œκΈ°λ²•μž…λ‹ˆλ‹€ [1-3]. λ‹€λ§Œ, 제곡된 μ†ŒμŠ€μ—μ„œλŠ” UML이 μ‹œμŠ€ν…œ 섀계 κ³Όμ •μ΄λ‚˜ μ•„ν‚€ν…μ²˜ λ¬Έμ„œν™” λ„κ΅¬λ‘œ λ‹¨μˆœ 언급될 뿐, ꡬ체적인 μ •μ˜λ‚˜ μ„€λͺ…은 **μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.** ## πŸ“– Core Content **μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.** μ†ŒμŠ€μ—μ„œ UML λ‹€μ΄μ–΄κ·Έλž¨κ³Ό κ΄€λ ¨ν•΄ 확인할 수 μžˆλŠ” λ‚΄μš©μ€ λ‹€μŒκ³Ό 같이 극히 μ œν•œμ μž…λ‹ˆλ‹€. * **μ‹œμŠ€ν…œ 섀계 및 λͺ¨λΈλ§ 도ꡬ:** UML λ‹€μ΄μ–΄κ·Έλž¨μ€ μ €μˆ˜μ€€ 섀계(LLD, Low Level Design), 객체 μ§€ν–₯ 뢄석 및 섀계(OOAD) κ³Όμ •μ—μ„œ μ‹œμŠ€ν…œμ„ λͺ¨λΈλ§ν•˜κΈ° μœ„ν•œ λ„κ΅¬λ‘œ ν™œμš©λ©λ‹ˆλ‹€ [4]. * **μ•„ν‚€ν…μ²˜ λ¬Έμ„œν™” ν‘œκΈ°λ²•:** μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜λ₯Ό μ—¬λŸ¬ λ·°(Views)둜 λ¬Έμ„œν™”ν•  λ•Œ μ‚¬μš©λ˜λŠ” λŒ€ν‘œμ μΈ ν‘œκΈ°λ²•(notation) 쀑 ν•˜λ‚˜λ‘œ μ–ΈκΈ‰λ©λ‹ˆλ‹€ [2]. * **개발 νŒ¨λŸ¬λ‹€μž„κ³Ό μ–Έμ–΄:** μ‹€ν–‰ κ°€λŠ₯ν•œ UML(Executable UML)의 ν˜•νƒœλ‘œ μ†Œν”„νŠΈμ›¨μ–΄ 개발 λͺ¨λΈ 쀑 ν•˜λ‚˜λ‘œ 닀루어지며, λͺ¨λΈλ§ μ–Έμ–΄μ˜ μΌμ’…μœΌλ‘œ λΆ„λ₯˜λ©λ‹ˆλ‹€ [3]. ꡬ체적인 ꡬ성 μš”μ†Œλ‚˜ μž‘λ™ 원리에 λŒ€ν•œ μƒμ„Έν•œ λ‚΄μš©μ€ **μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.** ## βš–οΈ Trade-offs & Caveats **μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.** (UML λ‹€μ΄μ–΄κ·Έλž¨ μ‚¬μš© μ‹œμ˜ μž₯λ‹¨μ μ΄λ‚˜ μ œμ•½ 사항에 λŒ€ν•œ 기술이 제곡된 λ¬Έμ„œ 내에 μ‘΄μž¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.) ## πŸ”— Knowledge Connections ### Related Concepts #### [μ‹œμŠ€ν…œ 섀계/μ‹œκ°ν™” 도ꡬ] - [[System Design]] - μ—°κ²° 이유: UML λ‹€μ΄μ–΄κ·Έλž¨μ€ μ €μˆ˜μ€€ 섀계(LLD) νŠœν† λ¦¬μ–Ό 및 μ‹œμŠ€ν…œ 섀계 인터뷰 κ°€μ΄λ“œμ—μ„œ ꡬ쑰λ₯Ό μ‹œκ°ν™”ν•˜λŠ” 핡심 κ³Όμ •μœΌλ‘œ λ‹€λ£¨μ–΄μ§‘λ‹ˆλ‹€ [4, 5]. - 이 κ°œλ…μ„ 톡해 더 깊게 이해할 수 μžˆλŠ” λΆ€λΆ„: 객체 μ§€ν–₯ 섀계 λ‹¨κ³„μ—μ„œ μ‹œμŠ€ν…œμ˜ 정적/동적 ꡬ쑰λ₯Ό μ–΄λ–»κ²Œ μ‹œκ°μ μœΌλ‘œ μ„€κ³„ν•˜λŠ”μ§€ 이해할 수 μžˆμŠ΅λ‹ˆλ‹€. #### [μ•„ν‚€ν…μ²˜ λ¬Έμ„œν™”] - [[Software Architecture Documentation]] - μ—°κ²° 이유: μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜μ˜ λ‹€μ–‘ν•œ λ·°λ₯Ό κΈ°λ‘ν•˜κ³  μ΄ν•΄κ΄€κ³„μžμ—κ²Œ 전달할 λ•Œ UML 및 기타 ν‘œκΈ°λ²•μ΄ μ‚¬μš©λ˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€ [2]. - 이 κ°œλ…μ„ 톡해 더 깊게 이해할 수 μžˆλŠ” λΆ€λΆ„: μ„€κ³„λœ μ•„ν‚€ν…μ²˜ νŒ¨ν„΄μ„ κ°œλ°œνŒ€κ³Ό μ΄ν•΄κ΄€κ³„μžκ°€ μ–΄λ–»κ²Œ ꡬ체적인 λ‹€μ΄μ–΄κ·Έλž¨μ„ 톡해 λ¬Έμ„œν™”ν•˜κ³  μ†Œν†΅ν•˜λŠ”μ§€ μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. ### Deeper Research Questions 제곡된 μ†ŒμŠ€λ§ŒμœΌλ‘œλŠ” UML의 κΉŠμ€ 이해가 λΆˆκ°€λŠ₯ν•˜λ―€λ‘œ, μ•„ν‚€ν…μ²˜ νŒ¨ν„΄ 지식을 ν™•μž₯ν•˜κΈ° μœ„ν•΄ λ‹€μŒκ³Ό 같은 μΆ”κ°€ 쑰사가 ν•„μš”ν•©λ‹ˆλ‹€. - UML λ‹€μ΄μ–΄κ·Έλž¨μ˜ ꡬ체적인 μ’…λ₯˜(ꡬ쑰 λ‹€μ΄μ–΄κ·Έλž¨, ν–‰μœ„ λ‹€μ΄μ–΄κ·Έλž¨ λ“±)λŠ” ν—₯μ‚¬κ³ λ‚ μ΄λ‚˜ λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€μ™€ 같은 νŠΉμ • μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜ νŒ¨ν„΄μ„ μ‹œκ°ν™”ν•  λ•Œ 각각 μ–΄λ–€ 역할을 μˆ˜ν–‰ν•˜λŠ”κ°€? - μ‹€ν–‰ κ°€λŠ₯ν•œ UML(Executable UML)은 ν˜„λŒ€μ˜ μ• μžμΌ 개발 및 λͺ¨λΈ 주도 μ—”μ§€λ‹ˆμ–΄λ§(MDE) ν™˜κ²½μ—μ„œ μ–΄λ–»κ²Œ 적용될 수 μžˆλŠ”κ°€? - μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜μ˜ λ·°(예: 4+1 λ·° λͺ¨λΈ)λ₯Ό λ¬Έμ„œν™”ν•  λ•Œ UML ν‘œκΈ°λ²•μ΄ κ°–λŠ” ν•œκ³„μ μ€ 무엇이며, μ΅œμ‹  μ‹œμŠ€ν…œμ—μ„œλŠ” μ–΄λ–€ λŒ€μ•ˆμ  μ‹œκ°ν™” 도ꡬ가 μ‚¬μš©λ˜λŠ”κ°€? - λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€λ‚˜ 이벀트 기반 μ•„ν‚€ν…μ²˜μ™€ 같은 κ³ λ„λ‘œ λΆ„μ‚°λœ μ‹œμŠ€ν…œμ˜ 비동기적 흐름을 UML둜 효과적으둜 λͺ¨λΈλ§ν•˜κΈ° μœ„ν•œ 졜적의 ν”„λž™ν‹°μŠ€λŠ” 무엇인가? - μ €μˆ˜μ€€ 섀계(LLD)와 κ³ μˆ˜μ€€ 섀계(HLD) λ‹¨κ³„μ—μ„œ UML λ‹€μ΄μ–΄κ·Έλž¨μ˜ ν™œμš© μˆ˜μ€€κ³Ό μž‘μ„± λ””ν…ŒμΌμ€ μ–΄λ–»κ²Œ 달라져야 ν•˜λŠ”κ°€? ### Practical Application Contexts **μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.** (λ‹¨νŽΈμ μΈ ν™œμš© λ§₯락만 μœ μΆ” κ°€λŠ₯ν•©λ‹ˆλ‹€.) - **Implementation:** μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. - **System Design:** μ €μˆ˜μ€€ 섀계(LLD)와 객체 μ§€ν–₯ 뢄석/섀계(OOAD) λ‹¨κ³„μ—μ„œ μ‹œμŠ€ν…œμ˜ ꡬ성 μš”μ†Œλ₯Ό μ‹œκ°μ μœΌλ‘œ λͺ¨λΈλ§ν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€ [4]. - **Operation / Maintenance:** μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. - **Learning Path:** μ‹œμŠ€ν…œ 섀계 인터뷰λ₯Ό μ€€λΉ„ν•˜κ±°λ‚˜, 기초적인 μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄λ§ 섀계 과정을 ν•™μŠ΅ν•  λ•Œ ν•„μˆ˜μ μœΌλ‘œ κ±°μΉ˜λŠ” νŠœν† λ¦¬μ–Ό ν•­λͺ©μž…λ‹ˆλ‹€ [4, 5]. - **My Project Relevance:** μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. ### Adjacent Topics - [[C4 Model]] - ν™•μž₯ λ°©ν–₯: UML λ‹€μ΄μ–΄κ·Έλž¨ 외에도 μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜λ₯Ό μœ μ—°ν•˜κ³  'ν•„μš”ν•œ 만큼만(just enough)' λͺ¨λΈλ§ν•˜κΈ° μœ„ν•΄ 널리 μ‚¬μš©λ˜λŠ” λŒ€μ•ˆμ  μ‹œκ°ν™” λ°©λ²•λ‘ μœΌλ‘œ 비ꡐ 탐ꡬ할 수 μžˆμŠ΅λ‹ˆλ‹€ [6]. --- *Last updated: 2026-05-02*