기출 소프트웨어 아키텍처 평가 모델인 ATAM과 CBAM의 개념과 평가 프로세스를 중심으로 논하시오

agnusdei·2025년 6월 9일

Software Engineering

목록 보기
13/59

소프트웨어 아키텍처 평가 모델인 **ATAM (Architecture Tradeoff Analysis Method)**과 **CBAM (Cost Benefit Analysis Method)**에 대해 프로세스를 중심으로 상세하게 설명드리겠습니다. 아래는 기술사 답안 형식으로 개념, 목적, 프로세스 중심 구조, 구성요소, 특징, 비교까지 포함한 모범답안입니다.


❚ 문제

소프트웨어 아키텍처 평가 모델인 ATAM과 CBAM의 개념과 평가 프로세스를 중심으로 논하시오.


❚ 답안

1. 개념 정의

구분내용
ATAMArchitecture Tradeoff Analysis Method
아키텍처 품질 속성(성능, 유지보수성 등)의 트레이드오프(Trade-off)를 식별하고 이해하는 구조적 평가 방법
CBAMCost Benefit Analysis Method
ATAM을 기반으로 하여 아키텍처 결정의 경제적 가치를 정량적으로 분석하여 의사결정을 돕는 방법

2. 목적 및 역할

모델목적 및 역할
ATAM아키텍처 설계가 품질 속성(QA: Quality Attribute)을 어떻게 만족시키는지 평가하고, 트레이드오프를 통해 위험요소를 사전에 식별
CBAM품질 속성 개선 방안(아키텍처 전략)에 대해 비용 대비 효과(Benefit vs Cost) 분석을 통해 최적의 투자 결정을 지원

3. 프로세스 중심 설명

■ ATAM 프로세스 (총 9단계 – 이해, 요구, 시나리오, 분석 중심)

단계설명
① 준비평가 팀 구성, 이해관계자 식별, 평가 목표 정의
② 아키텍처 설명아키텍처 설계 구조 및 품질 속성 설명
③ 비즈니스 목표 식별이해관계자의 비즈니스 목표 및 우선순위 정리
④ 품질 속성 시나리오 개발성능, 보안 등 각 품질 속성에 대한 구체적 시나리오 수집
⑤ 아키텍처 접근방식 식별아키텍처 결정사항(패턴, 전술 등) 식별
⑥ 시나리오 기반 분석시나리오 기반으로 아키텍처가 품질 속성 만족하는지 평가
⑦ 민감점(Sensitivity Point) 도출특정 품질 속성에 민감한 아키텍처 요소 파악
⑧ 트레이드오프 포인트 도출품질 속성 간 충돌 지점(Trade-off) 분석
⑨ 결과 정리 및 보고분석 결과 문서화, 리스크, 트레이드오프, 권고사항 정리

■ CBAM 프로세스 (총 6단계 – 경제적 가치 정량화 중심)

단계설명
① ATAM 결과 기반 입력품질 속성 시나리오, 아키텍처 전략, 민감점 등 활용
② 품질 속성의 중요도 정의이해관계자 관점에서 품질 속성에 가중치 부여
③ 아키텍처 전략 식별시스템 개선을 위한 다양한 전략(기술 적용, 구조 개선 등) 도출
④ 비용 및 효과 추정각 전략에 대해 예상 비용, 예상 효과(Benefit) 수치화
⑤ ROI 분석각 전략에 대해 ROI(Return on Investment) 계산
⑥ 최적의 전략 선택투자 대비 효과가 높은 전략을 선정 및 계획 수립

4. 구성요소

구분ATAMCBAM
주요 입력아키텍처 설명, 품질 속성 시나리오ATAM 분석 결과, 비용/효과 요소
산출물민감점, 트레이드오프 포인트, 리스크ROI 분석표, 투자 우선순위

5. 핵심 용어 정리

  • 품질 속성(Quality Attribute): 성능, 가용성, 보안, 확장성 등 비기능적 요구사항
  • 시나리오 기반 분석: 실제 운영 시 발생 가능한 상황을 정의하여 분석
  • 민감점(Sensitivity Point): 아키텍처 품질에 큰 영향을 주는 요소
  • 트레이드오프(Tradeoff): 하나의 품질 속성을 높이면 다른 속성이 저하되는 지점
  • ROI(Return on Investment): 투자 대비 얻을 수 있는 효과

6. 비교 정리

항목ATAMCBAM
목적품질 속성 간 트레이드오프 분석경제적 분석을 통한 전략 선택
접근 방식정성적 평가정량적 분석
입력 자료아키텍처 설명, 시나리오ATAM 결과, 전략별 비용/효과
산출물트레이드오프, 민감점, 리스크전략별 ROI, 우선순위 계획
활용 시점설계 중, 또는 리뷰 시점투자 판단, 리팩토링, 업그레이드 시점

7. 어린이 버전 요약

ATAM은 “이 건물 구조 괜찮은지 점검해보자!”고 검사하는 방식이고,
CBAM은 “어떤 방법이 돈을 아끼면서 효과가 좋을까?”를 따지는 방식이에요!


❚ 결론

ATAM과 CBAM은 소프트웨어 아키텍처를 평가하고 최적화하기 위한 대표적인 모델로, ATAM은 품질 속성 중심의 정성 평가, CBAM은 경제적 가치 중심의 정량 평가에 중점을 둡니다. 두 방법은 상호보완적으로 사용되어 효과적인 아키텍처 의사결정에 기여합니다.


profile
DevSecOps Pentest🚩

0개의 댓글