피드로 돌아가기
Dev.toAI/ML
원문 읽기
모호한 AC를 정량적 Specification으로 전환하여 AI Agent의 구현 오류 제거
I changed how I write acceptance criteria, and my AI agent stopped building the wrong thing
AI 요약
Context
자연어 기반의 모호한 Acceptance Criteria(AC)가 AI Agent의 자의적 해석을 유발하여 잘못된 기능 구현으로 이어지는 문제 발생. 인간 엔지니어와 달리 AI는 모호한 요구사항에 대해 질문하지 않고 즉시 추측하여 코드로 구현하는 특성을 가짐.
Technical Solution
- Given/When/Then 패턴의 정형화된 구조 도입을 통한 요구사항의 명세화
- 형용사 기반 묘사를 제거하고 p95 응답 속도, Row Count 등 정량적 수치로 대체하는 Specification 설계
- 'And also'와 같은 복합 조건을 제거하여 1개 Criterion 당 1개 Behavior만 할당하는 원자성 확보
- 빈 입력, 중복 데이터, 권한 에러 등 Unhappy Path를 명시적으로 정의하여 AI의 임의 구현 방지
- AC를 테스트 코드 및 아키텍처 결정서와 연결된 Linked Node 형태로 관리하여 시스템 컨텍스트 제공
실천 포인트
- AC 내의 모든 형용사를 숫자로 치환했는가? - 각 기준이 Pass/Fail로 명확히 판정 가능한 Checkable한 형태인가? - 엣지 케이스와 Unhappy Path가 명시적으로 기술되었는가? - 하나의 기준에 여러 기능 요구사항이 섞여 있지 않은가?