--- id: P-REINFORCE-WIKI-550EC936 category: "10_Wiki/πŸ’‘ Topics/02_Architecture_Principles" confidence_score: 0.95 tags: ['atam-(architecture-tradeoff-analysis-method)', 'iso-25010-(quality-model)', 'tara', 'adr-(architecture-decision-records)', 'μ†Œν”„νŠΈμ›¨μ–΄-μ•„ν‚€ν…μ²˜-평가-(software-architecture-evaluation)', 'architecture-principles'] last_reinforced: 2026-05-02 --- # [[ATAM (Architecture Tradeoff Analysis Method)]] ## πŸ“Œ Brief Summary ATAM(Architecture Tradeoff Analysis Method)은 νŠΉμ • μ•„ν‚€ν…μ²˜κ°€ λΉ„μ¦ˆλ‹ˆμŠ€ λͺ©ν‘œλ₯Ό μ–Όλ§ˆλ‚˜ 잘 μ§€μ›ν•˜λŠ”μ§€ ν‰κ°€ν•˜κ³  μ•„ν‚€ν…μ²˜μ  μœ„ν—˜ μš”μ†Œλ₯Ό μ‹λ³„ν•˜κΈ° μœ„ν•œ μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜ 평가 방법둠이닀 [1]. 좔상적인 ν’ˆμ§ˆ λͺ©ν‘œ λŒ€μ‹  ꡬ체적인 자극과 λ°˜μ‘μœΌλ‘œ κ΅¬μ„±λœ 'μ‹œλ‚˜λ¦¬μ˜€'λ₯Ό ν™œμš©ν•˜μ—¬ μ•„ν‚€ν…μ²˜μ˜ ν•œκ³„λ₯Ό μ‹œν—˜ν•œλ‹€ [1, 2]. 이λ₯Ό 톡해 μ™„λ²½ν•œ μ•„ν‚€ν…μ²˜ λŒ€μ‹  각 ν’ˆμ§ˆ 속성 κ°„μ˜ νƒ€ν˜‘μ (Trade-off)을 μ²΄κ³„μ μœΌλ‘œ λ°œκ²¬ν•˜κ³  κ²€μ¦ν•˜λŠ” 데 λͺ©μ μ΄ μžˆλ‹€ [2]. ## πŸ“– Core μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€.Content * **개발 λ°°κ²½ 및 원리:** μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄λ§ μ—°κ΅¬μ†Œ(SEI)μ—μ„œ κ°œλ°œλ˜μ—ˆμœΌλ©°, μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜ ν‰κ°€μ˜ ν‘œμ€€(gold standard)으둜 κ°„μ£Όλœλ‹€ [2]. 'μ™„λ²½ν•œ μ•„ν‚€ν…μ²˜λŠ” μ—†μœΌλ©° λͺ¨λ“  결정은 νƒ€ν˜‘μ˜ κ²°κ³Όλ¬Ό'μ΄λΌλŠ” μΈμ‹μ—μ„œ μΆœλ°œν•œλ‹€ [2]. * **μ‹œλ‚˜λ¦¬μ˜€ 기반 사고 (Scenario-based thinking):** 'μ„±λŠ₯'μ΄λ‚˜ 'λ³΄μ•ˆ'κ³Ό 같은 좔상적인 μš©μ–΄ λŒ€μ‹  ꡬ체적인 μ‹œλ‚˜λ¦¬μ˜€λ₯Ό λ°”νƒ•μœΌλ‘œ μ•„ν‚€ν…μ²˜λ₯Ό λΆ„μ„ν•œλ‹€ [2]. 예λ₯Ό λ“€μ–΄, "10λΆ„ 이내에 μ‚¬μš©μž μˆ˜κ°€ 두 배둜 μ¦κ°€ν•˜λ©΄ μ‹œμŠ€ν…œμ— μ–΄λ–€ 일이 λ°œμƒν•˜λŠ”κ°€?" λ˜λŠ” "μ‚¬μš©μžκ°€ μ΄ˆλ‹Ή 1,000건으둜 급증할 λ•Œ μ‹œμŠ€ν…œμ΄ 1초 이내에 μ‘λ‹΅ν•˜λŠ”κ°€?"와 같은 ꡬ체적인 상황을 κ°€μ •ν•˜μ—¬ μ•„ν‚€ν…μ²˜κ°€ κ²¬λ”œ 수 μžˆλŠ” ν•œκ³„λ₯Ό ν‰κ°€ν•œλ‹€ [1, 2]. * **νŠΈλ ˆμ΄λ“œμ˜€ν”„ 식별 (Identification of trade-offs):** μ•„ν‚€ν…μ²˜ 결정에 λ”°λ₯Έ μƒν˜Έμž‘μš©κ³Ό 상좩 관계λ₯Ό λͺ…ν™•νžˆ 보여쀀닀 [2]. νŠΉμ • κΈ°λŠ₯을 κ·ΉλŒ€ν™”ν•˜κΈ° μœ„ν•΄ 희생해야 ν•˜λŠ” λ‹€λ₯Έ ν’ˆμ§ˆ μ†μ„±λ“€μ˜ 관계(예: λ³΄μ•ˆμ„ μœ„ν•œ μ„±λŠ₯ μ €ν•˜, κ°€μš©μ„±μ„ μœ„ν•œ 일관성 양보 λ“±)λ₯Ό μ‹œμŠ€ν…œμ μœΌλ‘œ νŒŒμ•…ν•˜κ²Œ ν•œλ‹€ [1, 2]. * **μœ„ν—˜ 및 민감도 포인트 뢄석 (Risks and sensitivity points):** μ„€κ³„λœ μ•„ν‚€ν…μ²˜κ°€ μ–΄λŠ μ§€μ μ—μ„œ λ―Όκ°ν•˜κ²Œ λ°˜μ‘ν•˜λŠ”μ§€λ₯Ό μ°Ύμ•„λ‚Έλ‹€ [2]. μ΄λŠ” μ•„ν‚€ν…νŠΈκ°€ λ‹¨μˆœνžˆ μœ ν–‰ν•˜λŠ” μ•„ν‚€ν…μ²˜ νŒ¨ν„΄μ— λ§€λͺ°λ˜λŠ” 것을 λ°©μ§€ν•˜κ³ , μ‹€μ œ 라이브 μš΄μ˜μ—μ„œ λ°œμƒν•  수 μžˆλŠ” λΆˆμΎŒν•œ μƒν™©μ΄λ‚˜ μœ„ν—˜ μš”μ†Œ(Single point of failure λ“±)λ₯Ό 사전에 λ°©μ§€ν•˜λ„λ‘ λ•λŠ”λ‹€ [2, 3]. ## βš–οΈ Trade-offs & Caveats ATAM 방법둠 자체λ₯Ό ν”„λ‘œμ νŠΈμ— λ„μž…ν•  λ•Œ λ°œμƒν•˜λŠ” μ œμ•½ μ‚¬ν•­μ΄λ‚˜ 단점에 λŒ€ν•΄μ„œλŠ” μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. λ‹€λ§Œ, ATAM을 톡해 λ„μΆœλ˜λŠ” μ‹œμŠ€ν…œ μ„€κ³„μƒμ˜ νŠΈλ ˆμ΄λ“œμ˜€ν”„λŠ” λ‹€μŒκ³Ό 같이 λ‚˜νƒ€λ‚œλ‹€ [1, 2]. * **λ³΄μ•ˆ vs. μ„±λŠ₯:** κ·Ήλ„λ‘œ μ•ˆμ „ν•œ μ•”ν˜Έν™” μ ‘κ·Ό 방식을 μ·¨ν•˜λ©΄ 처리 μ§€μ—° μ‹œκ°„(latency)이 μ¦κ°€ν•˜μ—¬ μ„±λŠ₯에 λΉ„μš©μ„ μΉ˜λŸ¬μ•Ό ν•œλ‹€ [2]. * **κ°€μš©μ„± vs. 일관성:** μ‹œμŠ€ν…œμ˜ κ°€μš©μ„±μ„ κ·ΉλŒ€ν™”ν•˜κΈ° μœ„ν•΄μ„œλŠ” λ°μ΄ν„°μ˜ 일관성을 일뢀 양보해야 ν•˜λŠ” 상황이 λͺ…ν™•νžˆ λ“œλŸ¬λ‚œλ‹€ [1]. * **개발 속도 vs. μœ μ§€λ³΄μˆ˜μ„±:** μ‹œμŠ€ν…œμ„ 맀우 λΉ λ₯΄κ²Œ κ°œλ°œν•  경우, ν•„μ—°μ μœΌλ‘œ ν–₯ν›„ μœ μ§€λ³΄μˆ˜κ°€ 훨씬 더 μ–΄λ €μ›Œμ§€λŠ” λ°˜λŒ€κΈ‰λΆ€κ°€ λ°œμƒν•œλ‹€ [2]. ## πŸ”— Knowledge Connections ### Related Concepts #### [평가 및 뢄석 도ꡬ] - [[ISO 25010 (Quality Model)]] - μ—°κ²° 이유: ATAMκ³Ό 같은 μ•„ν‚€ν…μ²˜ 평가λ₯Ό μˆ˜ν–‰ν•  λ•Œ 기쀀점이 λ˜λŠ” 객관적이고 포괄적인 μ†Œν”„νŠΈμ›¨μ–΄ ν’ˆμ§ˆ 속성(κΈ°λŠ₯ 적합성, μ„±λŠ₯ νš¨μœ¨μ„± λ“±) λͺ¨λΈμ„ μ œκ³΅ν•œλ‹€ [3, 4]. - 이 κ°œλ…μ„ 톡해 더 깊게 이해할 수 μžˆλŠ” λΆ€λΆ„: ATAMμ—μ„œ κ²€μ¦ν•˜κ³ μž ν•˜λŠ” μ•„ν‚€ν…μ²˜ ν’ˆμ§ˆ μ†μ„±μ˜ λΆ„λ₯˜μ™€ κ°€μ€‘μΉ˜ μ„€μ • 방식을 이해할 수 μžˆλ‹€. - [[TARA]] - μ—°κ²° 이유: μ†ŒμŠ€μ—μ„œ ATAMκ³Ό ν•¨κ»˜ μ‚¬μš© κ°€λŠ₯ν•œ 또 λ‹€λ₯Έ μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜ 평가(Evaluation) κΈ°λ²•μœΌλ‘œ μ–ΈκΈ‰λœλ‹€ [5]. - 이 ꡬ념을 톡해 더 깊게 이해할 수 μžˆλŠ” λΆ€λΆ„: λ‹€μ–‘ν•œ μ•„ν‚€ν…μ²˜ 평가 λ°©λ²•λ‘ μ˜ μ’…λ₯˜μ™€ 각각의 비ꡐ 지점을 νŒŒμ•…ν•  수 μžˆλ‹€. #### [κ²°μ • 및 λ¬Έμ„œν™” ν”„λ ˆμž„μ›Œν¬] - [[ADR (Architecture Decision Records)]] - μ—°κ²° 이유: ATAM을 톡해 μ‹λ³„λœ μœ„ν—˜ μš”μ†Œ, λŒ€μ•ˆ, νŠΈλ ˆμ΄λ“œμ˜€ν”„ κ²°κ³Όλ₯Ό λ°”νƒ•μœΌλ‘œ μ΅œμ’… μ•„ν‚€ν…μ²˜ 결정을 λ‚΄λ¦° λ’€, 이λ₯Ό κΈ°λ‘ν•˜κ³  λ¬Έμ„œν™”ν•˜λŠ” ν•„μˆ˜μ μΈ 도ꡬ이닀 [3, 6]. - 이 κ°œλ…μ„ 톡해 더 깊게 이해할 수 μžˆλŠ” λΆ€λΆ„: 평가(ATAM) 이후 λ„μΆœλœ κ²°μ • 사항이 쑰직 λ‚΄μ—μ„œ μ–΄λ–»κ²Œ μ§€μ†λ˜κ³ , 미래의 νŒ€μ›μ΄λ‚˜ κ²€μ‚¬μžμ—κ²Œ μ–΄λ–»κ²Œ κ³΅μœ λ˜λŠ”μ§€ μ•Œ 수 μžˆλ‹€. ### Deeper Research Questions - ATAM 평가λ₯Ό μˆ˜ν–‰ν•˜κΈ° μœ„ν•œ ꡬ체적인 단계와 μ‹œλ‚˜λ¦¬μ˜€ λ„μΆœμ˜ 기쀀은 무엇인가? - λŒ€κ·œλͺ¨ λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€ μ•„ν‚€ν…μ²˜(MSA) ν™˜κ²½μ—μ„œ λΆ„μ‚°λœ μ„œλΉ„μŠ€λ“€μ˜ νŠΈλ ˆμ΄λ“œμ˜€ν”„λ₯Ό ATAM으둜 평가할 λ•Œ μ§λ©΄ν•˜λŠ” νŠΉμˆ˜ν•œ 어렀움은 무엇인가? - TARA λ“± λ‹€λ₯Έ μ•„ν‚€ν…μ²˜ 평가 기법과 λΉ„κ΅ν–ˆμ„ λ•Œ ATAM이 κ°€μ§€λŠ” 방법둠적인 차별점과 ν•œκ³„λŠ” 무엇인가? - μš”κ΅¬μ‚¬ν•­ 변경에 따라 기쑴에 μž‘μ„±λœ ATAM 기반 νŠΈλ ˆμ΄λ“œμ˜€ν”„ λ³΄κ³ μ„œλ₯Ό 효율적으둜 κ°±μ‹ ν•˜κ³  μž¬ν‰κ°€ν•˜λŠ” 방법은 무엇인가? - κ·Ήλ‹¨μ μœΌλ‘œ 민첩성(Agility)을 μš”κ΅¬ν•˜λŠ” μ• μžμΌ ν™˜κ²½μ—μ„œ 무거운 μ•„ν‚€ν…μ²˜ 뢄석 기법인 ATAM을 μ–΄λ–»κ²Œ μ‘°ν™”λ‘­κ²Œ μ μš©ν•  수 μžˆλŠ”κ°€? ### Practical Application Contexts - **Implementation:** μ†ŒμŠ€μ— κ΄€λ ¨ 정보가 λΆ€μ‘±ν•©λ‹ˆλ‹€. - **System Design:** μ†Œν”„νŠΈμ›¨μ–΄ 섀계 초기 λ‹¨κ³„μ—μ„œ μ—¬λŸ¬ κ°€μ§€ μ•„ν‚€ν…μ²˜ κ°œλ…μ„ κ²°μ • 맀트릭슀둜 λΉ„κ΅ν•˜κ³ , 각 접근법이 μˆ˜μš©ν•΄μ•Ό ν•  νƒ€ν˜‘μ (Trade-offs)을 ν•©λ¦¬μ μœΌλ‘œ ν‰κ°€ν•˜λŠ” 검증 κ³Όμ •μœΌλ‘œ 쓰인닀 [2, 7]. - **Operation / Maintenance:** "λ°μ΄ν„°λ² μ΄μŠ€κ°€ μ‹€νŒ¨ν•  λ•Œ μ•„ν‚€ν…μ²˜κ°€ μ–΄λ–»κ²Œ λ™μž‘ν•˜λŠ”κ°€?"와 같은 ꡬ체적인 μ‹œλ‚˜λ¦¬μ˜€λ₯Ό 톡해 라이브 μ‹œμŠ€ν…œ 운영 쀑 λ°œμƒ κ°€λŠ₯ν•œ 사고와 μœ„ν—˜μ„ 사전에 μ‹λ³„ν•˜κ³  방어책을 μ„Έμš΄λ‹€ [2]. - **Learning Path:** μ‹œμŠ€ν…œ μ•„ν‚€ν…νŠΈκ°€ λ‹¨μˆœνžˆ μœ ν–‰ν•˜λŠ” μ•„ν‚€ν…μ²˜ νŒ¨ν„΄μ— μ˜μ‘΄ν•˜μ§€ μ•Šκ³ , λΉ„μ¦ˆλ‹ˆμŠ€ λͺ©ν‘œμ™€ ν’ˆμ§ˆ 속성을 μ •λŸ‰μ Β·μ‹œλ‚˜λ¦¬μ˜€ 기반으둜 λΆ„μ„ν•˜λŠ” 핡심 ν›ˆλ ¨ κ³Όμ •μœΌλ‘œ μž‘μš©ν•œλ‹€ [2]. - **My Project Relevance:** ν”„λ‘œμ νŠΈμ—μ„œ λ‹€λ£¨κ³ μž ν•˜λŠ” ν’ˆμ§ˆ λͺ©ν‘œ(예: λ™μ‹œ μ ‘μ†μž μ²˜λ¦¬λŸ‰)와 λ³΄μ•ˆ, 일관성 λ“±μ˜ λ‹€λ₯Έ μ œμ•½ 쑰건듀 μ‚¬μ΄μ˜ ꡬ쑰적 μœ„ν—˜μ„±μ„ λ°œκ²¬ν•˜μ—¬, κ°€μž₯ μ ν•©ν•œ μ•„ν‚€ν…μ²˜λ₯Ό μ„ μ •ν•˜λŠ” κΈ°μ€€ λ„κ΅¬λ‘œ ν™œμš©ν•  수 μžˆλ‹€. ### Adjacent Topics - [[μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜ 평가 (Software Architecture Evaluation)]] - ν™•μž₯ λ°©ν–₯: ATAM을 ν¬ν•¨ν•˜μ—¬ μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜κ°€ 섀계 μš”κ΅¬μ‚¬ν•­κ³Ό μΌμΉ˜ν•˜λŠ”μ§€λ₯Ό κ²€μ¦ν•˜κ³  κ°μ‚¬ν•˜λŠ” 전체적인 ν”„λ‘œμ„ΈμŠ€μ™€ κ·Έ μ™Έμ˜ λ‹€μ–‘ν•œ 평가 ν”„λ ˆμž„μ›Œν¬λ“€μ— λŒ€ν•΄ ν™•μž₯ν•΄μ„œ 쑰사할 수 μžˆλ‹€. --- *Last updated: 2026-05-02*