콘텐츠로 이동

모범 사례

기존 요구 사항을 가져오려면 어떻게 해야 하나요?

요구 사항이나 설계가 이미 다른 시스템(JIRA, Confluence 또는 Word 문서 등)에 존재하는 경우 두 가지 옵션이 있습니다:

  1. MCP 통합 사용: 요구 사항 도구에 MCP 서버가 있는 경우 직접 연결하여 사양 세션으로 요구 사항을 가져올 수 있습니다. Kiro는 로컬 및 원격 MCP 서버를 모두 지원합니다.

  2. 수동 가져오기: 기존 요구 사항(예: foo-prfaq.md)을 저장소의 새 파일에 복사하고 사양 채팅 세션을 열고 #foo-prfaq.md Generate a spec from it라고 말하기만 하면 됩니다. Kiro는 요구 사항을 읽고 요구 사항 및 설계 사양을 생성합니다.

사양을 반복하려면 어떻게 해야 하나요?

Kiro의 사양은 지속적인 개선을 위해 설계되어 프로젝트가 발전함에 따라 업데이트하고 향상시킬 수 있습니다. 이 반복적 접근 방식은 사양이 변경되는 요구 사항 및 기술 설계와 동기화된 상태를 유지하여 개발을 위한 안정적인 기반을 제공합니다.

  1. 요구 사항 업데이트: requirements.md 파일을 직접 수정하거나 사양 세션을 시작하고 Kiro에게 새 요구 사항이나 설계 요소를 추가하도록 지시합니다.

  2. 설계 업데이트: 사양의 design.md 파일로 이동하여 Refine을 선택합니다. 이 작업은 수정된 요구 사항을 반영하도록 설계 문서와 관련 작업 목록을 모두 업데이트합니다.

  3. 작업 업데이트: tasks.md 파일로 이동하여 Update tasks를 선택합니다. 이렇게 하면 새 요구 사항에 매핑되는 새 작업이 생성됩니다.

팀과 사양을 공유하려면 어떻게 해야 하나요?

사양은 버전 관리되도록 설계되어 팀 전체에서 쉽게 공유할 수 있습니다. 사양을 설명하는 코드와 함께 프로젝트 저장소에 직접 저장합니다. 이렇게 하면 모든 프로젝트 아티팩트가 함께 유지되고 요구 사항과 구현 간의 연결이 유지됩니다.

여러 팀에서 사양을 공유할 수 있나요?

예, Git 서브모듈 또는 패키지 참조를 활용하여 여러 팀에서 사양을 공유할 수 있습니다. 다음은 팀 간에 공유 사양을 관리하기 위한 몇 가지 모범 사례입니다:

  1. 중앙 사양 저장소 생성 - 여러 프로젝트가 참조할 수 있는 공유 사양을 위한 전용 저장소를 설정합니다.

  2. Git 서브모듈 또는 패키지 참조 사용 - 개발 환경에 따라 Git 서브모듈, 패키지 참조 또는 심볼릭 링크를 사용하여 중앙 사양을 개별 프로젝트에 연결합니다.

  3. 교차 저장소 워크플로우 구현 - 여러 프로젝트에 영향을 미치는 공유 사양을 제안, 검토 및 업데이트하기 위한 프로세스를 개발합니다.

프로젝트 간 사양 관리에 대한 특정 요구 사항이 있는 경우 GitHub 이슈 트래커에서 요구 사항을 공유하여 워크플로우를 지원하는 기능의 우선순위를 정할 수 있도록 하세요.

vibe 세션에서 사양 세션을 시작할 수 있나요?

예. vibe 대화를 나눈 다음 Generate spec이라고 말할 수 있습니다. 그러면 Kiro가 사양 세션을 시작할지 묻습니다. 예라고 하면 vibe 세션의 컨텍스트를 기반으로 요구 사항 생성을 진행합니다.

사양의 모든 작업을 한 번에 실행할 수 있나요?

예, "Run all tasks" 버튼을 클릭하여 tasks.md 파일의 모든 작업을 실행할 수 있습니다. 참고: 이렇게 하면 필수로 표시된 불완전한 작업만 실행됩니다.

일부 작업이 이미 구현된 경우 어떻게 해야 하나요?

기존 코드베이스에서 작업할 때 동료나 사용자가 다른 세션에서 결국 작업을 수행했기 때문에 사양의 일부 작업이 이미 완료되었음을 알 수 있습니다. 이를 처리하는 두 가지 방법은 다음과 같습니다:

옵션 1: tasks.md에서 Update tasks 클릭

  • tasks.md 파일을 엽니다
  • Update tasks를 클릭합니다
  • Kiro가 자동으로 완료된 작업을 표시합니다.

옵션 2: 사양 채팅 세션에서 Kiro가 스캔하도록 허용

  • 사양 세션에서 Kiro에게 다음과 같이 질문합니다: "Check which tasks are already complete"
  • Kiro가 코드베이스를 분석하고 구현된 기능을 식별합니다
  • Kiro가 자동으로 완료된 작업을 표시합니다

이렇게 하면 작업 사양이 정확하게 유지됩니다.

채팅에서 사양을 참조하려면 어떻게 해야 하나요?

#spec 컨텍스트 제공자를 사용하여 채팅 대화에서 사양 목록의 모든 사양을 참조할 수 있습니다. #spec을 입력하고 Enter 키를 눌러 사용 가능한 사양 목록을 확인한 다음 포함하려는 사양을 선택합니다. Kiro는 응답이 문서화된 사양과 일치하도록 모든 사양 파일(requirements.md, design.md 및 tasks.md)을 대화 컨텍스트에 자동으로 포함합니다.

채팅에서 #spec을 언제 사용해야 하나요?

#spec을 사용하면 컨텍스트 인식 지원이 필요할 때 특히 유용합니다:

  • 작업 구현 - 설계 결정에 부합하고 수용 기준을 충족하는 코드 생성
  • 사양 개선 - 새로운 통찰력을 바탕으로 요구 사항, 설계 또는 작업에 대한 변경 요청
  • 작업 검증 - 구현이 사양의 요구 사항과 일치하는지 확인
  • 질문하기 - 기능의 아키텍처 또는 설계에 대한 답변 받기

예시:

#spec:user-authentication implement task 2.3 #spec:user-authentication update the design file to include password reset flow #spec:user-authentication does my current implementation meet the acceptance criteria for task 7.1? #spec:user-authentication why did we choose JWT over session-based authentication?

단일 저장소에 몇 개의 사양을 가질 수 있나요?

단일 저장소에 원하는 만큼 많은 사양을 가질 수 있습니다. 전체 코드베이스에 대해 하나만 가지려고 시도하는 것보다 프로젝트의 다양한 기능에 대해 여러 사양을 만드는 것이 좋습니다.

예를 들어 전자상거래 애플리케이션에서는 다음과 같이 사양을 구성할 수 있습니다:

.kiro/specs/ ├── user-authentication/ # 로그인, 가입, 비밀번호 재설정 ├── product-catalog/ # 제품 목록, 검색, 필터링 ├── shopping-cart/ # 장바구니 추가, 수량 업데이트, 결제 ├── payment-processing/ # 결제 게이트웨이 통합, 주문 확인 └── admin-dashboard/ # 제품 관리, 사용자 분석

이 접근 방식을 사용하면 다음을 수행할 수 있습니다:

  • 충돌 없이 독립적으로 기능 작업
  • 집중적이고 관리 가능한 사양 문서 유지
  • 다른 영역에 영향을 주지 않고 특정 기능 반복
  • 팀 구성원과 동시에 다양한 기능에 대해 협업