mirror of
https://github.com/ktds-dg0501/kt-event-marketing.git
synced 2025-12-06 14:06:23 +00:00
2.8 KiB
2.8 KiB
논리아키텍처설계가이드
[요청사항]
- <작성원칙>을 준용하여 설계
- <작성순서>에 따라 설계
- [결과파일] 안내에 따라 파일 작성
- 완료 후 mermaid 스크립트 테스트 방법 안내
- https://mermaid.live/edit 에 접근
- 스크립트 내용을 붙여넣어 확인
[가이드]
<작성원칙>
- 유저스토리와 매칭되어야 함. 불필요한 추가 설계 금지
- UI/UX설계서의 '사용자 플로우'참조하여 설계
- '아키텍처패턴'에 선정된 클라우드 디자인 패턴을 적용하여 설계
- 사용자 관점의 컴포넌트 다이어그램 작성
- Context Map 스타일로 서비스 내부 구조는 생략하고 서비스 간 관계에 집중
- 클라이언트에서 API Gateway로는 단일 연결선으로 표현 <작성순서>
- 준비:
- 유저스토리, UI/UX설계서, 아키텍처패턴 분석 및 이해
- "@analyze --play" 프로토타입이 있는 경우 웹브라우저에서 실행하여 서비스 이해
- 실행:
- 논리아키텍처 설계서(logical-architecture.md) 작성: 아래 항목은 필수 포함하고 필요 시 항목 추가
- 개요: 설계 원칙, 핵심 컴포넌트 정의
- 서비스 아키텍처
- 서비스별 책임
- 서비스 간 통신 전략
- 주요 사용자 플로우
- 데이터 흐름 및 캐싱 전략
- 확장성 및 성능 고려사항
- 보안 고려사항
- 논리아키텍처 다이어그램
- Mermaid 형식으로 작성하며 별도 파일로 작성: logical-architecture.mmd
- <통신전략>과 <의존성 표현 방법>을 준수
- Mermaid 스크립트 파일 검사 실행: 'Mermaid문법검사가이드' 준용
- 논리아키텍처 설계서(logical-architecture.md) 작성: 아래 항목은 필수 포함하고 필요 시 항목 추가
- 검토:
- <작성원칙> 준수 검토
- 스쿼드 팀원 리뷰: 누락 및 개선 사항 검토
- 수정 사항 선택 및 반영
<통신 전략>
- 동기 통신: 즉시 응답이 필요한 단순 조회
- 캐시 우선: 자주 사용되는 데이터는 캐시에서 직접 읽기
- 비동기 처리: 외부 API 다중 호출 등 장시간 작업 <의존성 표현 방법>
- 실선 화살표(→): 동기적 의존성 (필수)
- 비동기 화살표(->>): 비동기 의존성 (fire-and-forget)
- 점선 화살표(-->): 선택적 의존성 또는 느슨한 결합
- 양방향 화살표(↔): 상호 의존성
- 의존성 레이블에 목적 명시 (예: "멤버 정보 조회")
- 플로우 라벨 형식: [요청서비스약어]액션 (예: [Trip]AI 일정 생성 요청)
[참고자료]
- 유저스토리
- UI/UX설계서
- 프로토타입
- 아키텍처패턴
[예시]
- 논리아키텍처 다이어그램: https://raw.githubusercontent.com/cna-bootcamp/clauding-guide/refs/heads/main/samples/sample-논리아키텍처.mmd
[결과파일]
- design/backend/logical/logical-architecture.md
- design/backend/logical/logical-architecture.mmd