Utility Tree
Utility Tree
섹션 제목: “Utility Tree”Utility Tree는 아키텍처 설계 시 품질 속성의 우선순위를 결정하기 위한 도구입니다. 비즈니스 중요도와 기술적 난이도를 함께 고려하여 아키텍처 드라이버를 식별합니다.
Utility Tree 구조
섹션 제목: “Utility Tree 구조”우선순위 표기법
섹션 제목: “우선순위 표기법”- 비즈니스 중요도: H(High), M(Medium), L(Low)
- 기술적 난이도: H(High), M(Medium), L(Low)
- 표기: (중요도, 난이도) - 예: (H, M)
(H, H) 시나리오는 아키텍처 드라이버로서 가장 먼저 설계에 반영해야 합니다.
좋은생각 웹 시스템 Utility Tree
섹션 제목: “좋은생각 웹 시스템 Utility Tree”아키텍처 드라이버 (Architecture Drivers)
섹션 제목: “아키텍처 드라이버 (Architecture Drivers)”(H, H) 또는 비즈니스 중요도 H인 시나리오들이 아키텍처 설계의 핵심 드라이버입니다.
Tier 1: 핵심 드라이버 (H, H)
섹션 제목: “Tier 1: 핵심 드라이버 (H, H)”| ID | 시나리오 | 품질 속성 | 아키텍처 결정 영향 |
|---|---|---|---|
| A-2 | Excel 업로드 데이터 검증 오류 대응 | 가용성 | Excel 파싱 검증 패턴, 행 단위 오류 처리, 비동기 큐 시스템 도입 |
| A-3 | DB 장애 시 데이터 유실 0건 | 가용성 | Lightsail DB HA (자동 페일오버), 트랜잭션 관리 |
Tier 2: 주요 드라이버 (H, M) 또는 (M, H)
섹션 제목: “Tier 2: 주요 드라이버 (H, M) 또는 (M, H)”| ID | 시나리오 | 품질 속성 | 아키텍처 결정 영향 |
|---|---|---|---|
| P-2 | 고객 조회 2초 이내 응답 | 성능 | Redis 캐싱, 인덱스 최적화 |
| S-1 | 개인정보 권한 기반 접근 | 보안 | RBAC (Role-Based Access Control), 데이터 마스킹 레이어 |
| S-3 | 대량 다운로드 승인 + 개인정보 Excel 비밀번호 | 보안 | Excel 자동 비밀번호 암호화 (AES-128), excel_export_log, 승인 프로세스 |
| M-1 | 신규 판매채널 5일 내 추가 | 변경용이성 | Excel 템플릿 어댑터 패턴 (플러그인 방식) |
| U-3 | 주요 업무 5클릭 내 완료 | 사용성 | UI/UX 설계, 업무 흐름 최적화 |
품질 속성별 우선순위 매트릭스
섹션 제목: “품질 속성별 우선순위 매트릭스”| 높은 난이도 (H) | 중간 난이도 (M) | 낮은 난이도 (L) | |
|---|---|---|---|
| 높은 중요도 (H) | A-2, A-3 | A-1, P-2, S-1, S-2, S-3, U-3 | - |
| 중간 중요도 (M) | M-1, P-3 | M-2, O-1 | P-1, U-1, U-2, O-2 |
| 낮은 중요도 (L) | - | - | M-3 |
우선순위 결정 원칙
섹션 제목: “우선순위 결정 원칙”- (H, H): 최우선 - 아키텍처 초기 설계에 반드시 반영
- (H, M): 높음 - 상세 설계 시 반드시 고려
- (H, L): 중간 - 구현 시 표준 패턴 적용
- (M, H): 중간 - 기술적 검토 필요, 대안 탐색
- (M, M) 이하: 낮음 - 일반적인 설계/구현 적용
아키텍처 전략 도출
섹션 제목: “아키텍처 전략 도출”1. 가용성 전략
섹션 제목: “1. 가용성 전략”드라이버: A-2 (Excel 데이터 검증), A-3 (데이터 보호)
2. 성능 전략
섹션 제목: “2. 성능 전략”드라이버: P-2 (고객 조회 응답)
3. 보안 전략
섹션 제목: “3. 보안 전략”드라이버: S-1 (개인정보 접근 통제)
4. 변경용이성 전략
섹션 제목: “4. 변경용이성 전략”드라이버: M-1 (신규 판매채널 추가)
Tradeoff 분석
섹션 제목: “Tradeoff 분석”가용성 vs 비용
섹션 제목: “가용성 vs 비용”| 선택지 | 가용성 | 비용 | 권장 |
|---|---|---|---|
| 단일 서버 | 낮음 | 낮음 | ❌ |
| Active-Standby | 높음 | 중간 | ✅ |
| Active-Active | 매우 높음 | 높음 | △ (향후) |
결정: 초기에는 Lightsail DB HA (Active-Standby)로 시작, 트래픽 증가 시 RDS Aurora 전환 검토
성능 vs 일관성
섹션 제목: “성능 vs 일관성”| 선택지 | 성능 | 일관성 | 권장 |
|---|---|---|---|
| 동기 처리 | 낮음 | 높음 | 주문 처리 |
| 비동기 처리 | 높음 | 중간 | 주문 수집 |
| 캐시 사용 | 높음 | 낮음 | 조회 기능 |
결정: 업무 특성에 따라 혼합 적용
다음 단계
섹션 제목: “다음 단계”- 품질 속성 시나리오 - 상세 시나리오 정의
- Web 시스템 아키텍처 - 드라이버 기반 아키텍처 설계
- 아키텍처 설계 방법론 - 설계 프로세스 가이드
작성 이력
섹션 제목: “작성 이력”| 날짜 | 작성자 | 변경 내용 |
|---|---|---|
| 2026-02-24 | ISP팀 | 초안 작성 |
| 2026-04-23 | 김명직 | 과업요청서 범용화: 특정 제품명 → 일반 기술 패턴 용어로 전환 |
| 2026-04-23 | 김명직 | 외부 연동 현실성 반영: A-2 채널 API 장애 → Excel 업로드 데이터 검증 오류로 전환, Circuit Breaker → Excel 파싱 검증 패턴, 어댑터 패턴 → Excel 템플릿 어댑터 패턴 |
| 2026-04-23 | 김명직 | S-3 개인정보 보호 강화: 난이도 (H,L)→(H,M) 승격, Excel 자동 비밀번호 암호화·excel_export_log 추가, 보안 전략에 Excel 비밀번호 노드 추가, Tier 2 드라이버 승격 |