AI 활용 개발 방법론
11 Jun 2026 | claude개발 방법론
AI를 활용한 개발이지만 퀄리티를 확보하기 위해서는 설계가 필요
거창한 UML, 아키텍처 디자인, ERD, 기능 목록서, 인터페이스 정의서 등의 복잡한 문서까지는 아니지만
실용적 레벨의 설계는 필요
| 항목 | 설명 |
|---|---|
| 요구사항 분석 | 무엇을 만들 것인지, 기능 및 품질 속성 수립 |
| 아키텍처 결정 | 어떤 기술과 구조로 만들 것인지 |
| 인터페이스 정의 | API 호출 방식이나 규격 정의 |
작은 단위로 쪼개기
처음부터 완벽한 설계는 불가능하기 때문에, 작은 단위부터 하나씩 진행하는 것이 좋음
AI를 활용해서 아래와 같은 순서로 진행할 수 있음
-
아이디어 정의
“로봇 데이터 수집 현황 대시보드를 만들려고 해.
JWT 로그인을 활용할 예정이고, 다양한 요소를 활용해 통계를 보여줄거야.
어떤 요소들이 필요할까?” -
설계 문서 초안 “위 요구사항으로 REQUIREMENTS.md” 초안 작성해줘
-
설계 검토 및 확장
“이 설계 문서를 검토해서 개발 스펙에 추가해야 하거나 누락된 부분이 있는지 알려줘” -
구현
“REQUIREMENTS.md에 따라 백엔드 서비스 개발해줘”
점진적 설계
처음에는 핵심적인 아키텍처 결정만 먼저하고, 세부사항은 구현하면서 구체화할 수도 있다.
## 1차 설계 (프로젝트 시작 전)
- 배포 형태: On-Premise
- 기술 스택: FastAPI + PostgreSQL
- 인증 방식: JWT
## 2차 설계 (구현 중)
- API Endpoint 상세 정의
- Database Schema 확정
- 에러 코드 체계 정의
## 3차 설계 (통합 전)
- Frontend 컴포넌트 구조
- 상태 관리 전략
- API 응답 형식 표준화
한 번에 하나의 작업만 요청
AI는 동시에 여러 작업을 수행하는 능력이 떨어짐
여러 가지 일을 동시에 시키면 기능/코드 품질 저하, 복합적 에러로 인한 디버깅 어려움. 코드간 간섭 등의 어려운 문제가 발생할 수 있음
작업 분해의 단위
AI는 컨텍스트 윈도우 한계도 있기 때문에 작업이 커질수록 문제 발생 및 토큰 낭비 등이 발생할 수 있기 때문에
작업을 적절한 크기로 나누는 것이 좋다.
작업 분해는 다음 단위로 쪼개면 효율적이다.
- SRP: 단일 책임 원칙
- 테스트 가능한 단위
- 10분 내 검증 가능한 단위
- 파일 혹은 기능 단위
명확한 작업 지시
AI에게 어떤 것을 요청할 때 어떻게 동작하는지를 명확하게 요청하는 것이 더 좋음
ex)
“사용자 프로필 수정 기능을 구현해줘 “
보다는
“프로필 기능 수정. 비밀 번호 입력 후 본인 확인이 되면 프로필 수정 페이지가 나오고, username, password를 제외한 나머지 필드만 수정할 수 있도록 해야 해.”
가 더 좋은 지시사항
완료 조건 명시
## 완료 조건
다음 조건을 모두 만족하면 완료
1. 올바른 이메일/비밀번호로 로그인 시 JWT 토큰 반환
2. 잘못된 비밀번호로 5회 실패 시 계정 잠금
3. 잠긴 계정으로 로그인 시도 시 423 응답과 남은 시간 표시
4. 모든 케이스에 대한 단위 테스트 통과
5. TypeScript 컴파일 에러 없음