AIDLC Common Rules
📅 작성일: 2026-04-18 | ⏱️ 읽는 시간: 약 18분
AWS Labs AIDLC Workflows 의 aws-aidlc-rule-details/common/ 디렉터리는 모든 stage 가 공통으로 준수해야 하는 11개 규칙을 정의합니다. 이 규칙들은 Inception → Construction → Operations 전 단계에서 AI 에이전트와 사람이 협업하는 방식을 규정하며, 결과물의 재현성·감사 가능성·안전성을 담보합니다.
본 문서는 각 규칙을 "무엇(What) / 왜(Why) / 어떻게(How)" 3단 구조로 해설하고, 엔터프 라이즈 환경에서의 적용 팁을 덧붙입니다.
1. 개요: 11개 Common Rules
| # | 규칙 | 범주 | 핵심 가치 |
|---|---|---|---|
| 1 | Question Format | 상호작용 | 구조화된 질문·답변 포맷 강제 |
| 2 | Content Validation | 품질 | 요구사항·응답 검증 |
| 3 | Error Handling | 품질 | 예외 상황 표준 처리 |
| 4 | Overconfidence Prevention | 상호작용 | AI 확신도 제어 |
| 5 | Session Continuity | 거버넌스 | 세션 간 컨텍스트 보존 |
| 6 | Workflow Changes | 상호작용 | 워크플로 변경 명시적 승인 |
| 7 | Checkpoint Approval | 거버넌스 | Stage 전환 게이트 |
| 8 | Audit Logging | 거버넌스 | ISO 8601 타임스탬프 감사 로그 |
| 9 | No Duplication | 품질 | 단일 진실 원천(SSOT) |
| 10 | Methodology First | 품질 | 도구 독립성 |
| 11 | Reproducible | 품질 | 모델 간 결과 일관성 |
AIDLC 는 Kiro · Q Developer · Cursor · Cline · Claude Code · GitHub Copilot · AGENTS.md 7개 플랫폼에서 동일하게 동작해야 합니다. Common Rules 는 이 플랫폼·모델 차이에도 불구하고 같은 입력에 대해 같은 품질의 산출물을 보장하는 공통 계약입니다.
2. 규칙 1: Question Format
무엇
AI 에이전트가 사람에게 질문할 때 항상 A-E 5지선다 + [Answer]: 태그 포맷을 강제합니다.
왜
- 재현성: 자유 형식 답변은 모델별·세션별로 해석이 달라짐. 5지선다는 해석 모호성 제거
- 속도: 사람이 긴 자유 응답을 작성할 필요 없음. 한 글자 선택으로 진행
- 감사: 질문·답변 쌍이 구조화되어 감사 로그·재실행에 활용 가능
어떻게
질문 템플릿:
Q1. Payment Service 의 인증 방식을 어떻게 설정하시겠습니까?
A. OAuth2 + JWT (Refresh Token 포함)
B. API Key (헤더 기반)
C. mTLS (서비스 간 인증)
D. AWS IAM + SigV4
E. Other (please specify)
[Answer]:
사람이 작성하는 응답:
[Answer]: A
또는 자유 기술이 필요한 경우:
[Answer]: E - Cognito User Pool + JWT (기존 조직 표준 준수)
엔터프라이즈 적용 팁
- 질문당 5개 이하 옵션 유지. 너무 많으면 의사결정 피로 유발
- 옵션 D 는 "가장 일반적인 기본값", 옵션 E 는 "Other" 로 표준화
- PR 본문·Slack 채널에 질문 블록을 복사해 팀 합의 후
[Answer]:작성하는 패턴 권장
3. 규칙 2: Content Validation
무엇
AI 가 생성한 모든 산출물(Requirements Document, Design Document, Code 등)에 대해 자체 검증 체크리스트를 실행하고, 실패 항목이 있으면 사람에게 명시적으로 보고합니다.
왜
- AI 는 종종 누락·모순·hallucination 을 생성함
- 사람이 모든 산출물을 전수 검토하기엔 시간 부족
- AI 자체 검증을 1차 필터로 두면 사람 리뷰 부담 감소
어떻게
자체 검증 체크리스트 예시 (Requirements Document):
## Content Validation Report
- [x] 모든 기능 요구사항에 Acceptance Criteria 포함
- [x] 비기능 요구사항(NFR)에 측정 가능한 지표 명시 (P99 latency, 가용성 등)
- [ ] **FAIL**: FR-004 의 에러 처리 경로가 명시되지 않음
- [x] 용어가 온톨로지/Ubiquitous Language 와 일치
- [x] 외부 의존성(DB, SQS 등) 명시
- [ ] **FAIL**: NFR-002 에서 "충분히 빠름" 이라는 모호한 표현 발견
**Failed Checks**: 2
**Action Required**: 사용자 확인 후 재작성 필요
엔터프라이즈 적용 팁
- 각 산출물 유형별 검증 체크리스트를 온톨로지 또는 조직 확장(extensions) 에 저장
- CI 파이프라인에
aidlc-validate단계 추가해 리포트를 PR 코멘트로 자동 게시 - 실패 항목은 GitHub Issue 자동 생성 후 해결 전까지 Checkpoint Approval 차단
4. 규칙 3: Error Handling
무엇
AIDLC 실행 중 발생한 모든 예외(파일 누락, 도구 오류, 사용자 응답 없음 등)를 구조화된 에러 리포트로 기록하고, 재시도 또는 사용자 개입 여부를 명시적으로 결정합니다.
왜
- Silent failure 는 감사 추적을 불가능하게 만듦
- 에러 발생 시점에 따라 자동 재시도 / 사용자 개입 / 세션 종료 중 적절한 대응 필요
- 에러 패턴 분석으로 AIDLC 자체를 개선
어떻게
에러 리포트 포맷:
error:
id: ERR-2026-04-18-001
timestamp: 2026-04-18T10:23:45Z
stage: inception.requirements_analysis
type: missing_context
message: "Workspace Detection 결과가 세션에 없음"
severity: medium
recovery:
auto_retry: false
user_action_required: true
suggested_fix: "Workspace Detection stage 를 먼저 실행하세요"
context:
session_id: sess-20260418-abc123
prior_stage: workspace_detection
에러 분류:
| Severity | 예시 | 대응 |
|---|---|---|
| Low | 옵션 응답 외 자유 기술 | AI 가 자동 해석 후 확인 질문 |
| Medium | 필수 선행 stage 미실행 | 사용자에게 stage 역순 실행 안내 |
| High | 도구 호출 실패 (MCP 서버 다운 등) | 세션 일시 중지, 로그 수집 |
| Critical | 온톨로지 계약 위반 (예: 허용되지 않은 도메인 용어 사용) | 즉시 중단, 사람 개입 |
엔터프라이즈 적용 팁
- 에러 리포트를 CloudWatch Logs Insights 로 전송해 패턴 분석
- High/Critical 에러는 PagerDuty 연동
- 월 1회 에러 리뷰 미팅으로 AIDLC 자체 개선