Analyze Requirements
요구사항을 디자인 단계로 넘기기 전에, Kiro가 전체 요구사항을 교차 검토하여 사람이 놓치기 쉬운 모순·모호함·누락을 찾아내는 심층 분석 기능입니다.
개요
Analyze Requirements는 각 요구사항을 따로 보지 않고, 작성된 요구사항 전체를 하나의 집합으로 묶어 함께 추론합니다. 따라서 개별 항목만 검토할 때는 보이지 않는 충돌이나 가정 누락이 드러납니다. 사람이 직접 리뷰하기 어려운 규모의 스펙에서 특히 유용합니다.
이 기능이 잡아내는 문제 유형
분석 결과는 크게 다섯 가지 카테고리로 정리됩니다.
- Logical inconsistencies — 각각은 합리적으로 보이지만, 동시에 만족시킬 수 없는 요구사항 쌍.
- Ambiguities — "large files", "fast response times"처럼 해석에 따라 구현이 갈릴 수 있는 모호한 표현.
- Conflicting constraints — 기능 요건과 비기능 요건이 서로 충돌하여 한쪽을 만족시키면 다른 쪽이 깨지는 경우.
- Unstated assumptions — 정의되지 않은 개념·동작을 전제로 삼고 있는 표현.
- Missing edge cases — 경계값, 장애 상황, 동시 접근 등 happy path 바깥의 시나리오 누락.
실행 방법
요구사항이 한 번 생성된 뒤에 두 위치에서 진입할 수 있습니다.
- Spec 챗 화면에서 다음 단계로 넘어가는 버튼들 옆에 노출되는 Analyze Requirements 액션을 클릭합니다.
- 에디터에 열린
requirements.md상단의 Continue 드롭다운에서 Proceed to Design 옆에 함께 표시되는 항목을 선택합니다.
팁. 요구사항을 손으로 수정한 뒤에도 분석을 다시 돌릴 수 있습니다. 변경된 항목과 연결된 다른 요구사항까지 함께 다시 검토합니다.
동작과 결과 확인
이 분석은 전체 요구사항을 교차로 추론하기 때문에 일반적인 응답보다 시간이 더 걸립니다. 공식 문서 표현 그대로 "minutes, not seconds" 수준이라고 보면 됩니다. 결과는 한꺼번에 나오지 않고, 발견되는 즉시 챗에 질문 형태로 스트리밍됩니다.
각 질문에는 다음이 함께 제시됩니다.
- 해당 이슈에 관련된 요구사항 항목
- 왜 문제가 되는지에 대한 자연어 설명
- 선택만으로 적용 가능한 수정 제안(Suggested fixes)
제시된 선택지를 고르거나, 직접 답변을 입력해 의도를 명확히 하거나, 의도된 모호함이라면 질문을 dismiss할 수 있습니다. 답변이 확정될 때마다 Kiro는 에디터에서 requirements.md를 자동으로 갱신합니다.
주의. 분석이 진행되는 동안 같은 스펙의
requirements.md를 수동으로 크게 바꾸면 결과가 꼬일 수 있습니다. 스트리밍이 끝날 때까지 기다린 뒤 추가 편집을 진행하세요.
언제 쓰면 좋은가
- 요구사항 개수가 많고 상호 의존이 복잡한 기능
- 금융, 헬스케어, 컴플라이언스처럼 도메인 제약이 강한 프로젝트
- Quick Plan으로 요구사항이 자동 생성되어 사람의 검토가 충분히 이뤄지지 않은 세션
반대로 작은 변경이나 이미 충분히 이해된 스펙이라면, 분석 단계를 건너뛰고 곧바로 디자인으로 넘어가도 무방합니다.