AI 에이전트와 함께하는 개발: 코드 작성부터 테스트, 문서화까지!

by DD
2개월 전
조회수 54

AI 에이전트를 활용한 개발 방식 도입으로 코드 생성, 테스트, 문서화 전반에 걸쳐 개발 생산성 향상을 이룸

GitHub 커밋 수가 1년 만에 10배 이상 증가하며, AI 에이전트가 생성하는 코드 비중이 상당 부분 차지

Copy-Paste AI Coding에서 시작하여 Harness Engineering 단계로 진화하며 개발 방법론 변화를 겪음

docs-tree-tools 개발을 통해 레포지토리 구조를 에이전트 친화적으로 개선하고, 문서화 자동화를 구현

개발 환경 설계의 중요성을 강조하며, 앞으로 개발에서 AI 에이전트 활용 환경 구축이 핵심 과제임을 시사

AI 에이전트 기반 개발 방식의 진화

본문에서는 AI 에이전트 활용 개발 방식이 Copy-Paste AI Coding에서 시작하여 Harness Engineering 단계로 진화했음을 보여준다.

Copy-Paste AI Coding: AI가 코드 생성 보조, 개발자가 최종 검증

Augmented Coding: AI 코드 리뷰(Code Review) 도입, Conventional Commit 스타일 적용

Spec Driven Development(SDD): 3-Layer Context 기반 개발, AI가 TC(Test Case) 및 리팩토링(Refactoring) 대량 생성

Harness Engineering: docs-tree-tools를 활용, 에이전트가 문서-코드-테스트 관리

이러한 변화는 AI 에이전트의 역할 확대를 의미하며, 개발 생산성 향상에 기여했다.

Harness Engineering 도입을 위한 레포지토리 구조화

마이리얼트립은 Harness Engineering 원칙을 적용하기 위해 docs-tree-tools를 자체 개발하여 레포지토리 구조를 개선했다. docs-tree-tools는 에이전트가 효율적으로 작업할 수 있도록 레포지토리를 구조화하는 데 초점을 맞췄다.

docs/ 트리 자동 구조화: index.yml을 활용하여 문서 ID와 경로 매핑

Doctor: 4계층 진단 엔진으로 문서 품질 점수화, pre-commit 훅(pre-commit hook)을 통해 자동 진단

코드 역분석: 소스코드에서 용어집, 유스케이스, 스펙, 표준, 제품 문서 자동 추출

이러한 구조화는 AI 에이전트의 작업 효율성 향상뿐만 아니라, 개발자에게도 향상된 가독성(Readability)온보딩(Onboarding) 편의성을 제공한다.

SDD(Spec-Driven Development) 도입의 기술적 의미

SDD(Spec-Driven Development)는 요구사항 명세(Specification)를 기반으로 개발하는 방식으로, AI 에이전트 활용의 핵심 요소이다. 3-Layer Context를 통해 AI가 코드와 테스트를 생성하고, 개발자는 결과 검증에 집중한다.

프로젝트 컨텍스트: 코드베이스 구조와 컨벤션

도메인 컨텍스트: 비즈니스 로직과 용어집

태스크 컨텍스트: 작업 스펙

SDD 도입으로 AI는 테스트 케이스(Test Case)를 대량 생성하고, 리팩토링(Refactoring) 속도를 향상시켰다. 이는 개발 생산성 향상과 더불어, 코드 품질(Code Quality) 유지에도 기여한다.

AI 에이전트 기반 개발의 성공 요인

본문에서는 AI 에이전트 기반 개발의 성공 요인으로 다음 네 가지를 제시한다.

프롬프트(Prompt)에 모든 것을 담으려는 시도의 한계: 에이전트에게는 지도(Map)가 필요

레포지토리를 모든 지식의 기준으로: 레포 밖의 정보는 없는 정보

테스트(Test)의 중요성: AI가 생성한 코드의 검증 수단

에이전트 친화적 구조가 사람에게도 유용: 문서화, 용어집, 스펙 명확화

이러한 요인들은 AI 에이전트의 효율적인 활용을 위한 환경 구축의 중요성을 강조하며, 개발 생산성 향상코드 품질(Code Quality) 유지에 기여한다.

AI 에이전트 기반 개발의 미래

본문은 앞으로 개발에서 중요한 것은 코드를 얼마나 잘 작성하느냐가 아니라, AI 에이전트가 일할 수 있는 환경을 얼마나 잘 설계하느냐라고 강조한다. 이는 AI 에이전트가 개발 프로세스에서 더욱 중요한 역할을 수행할 것임을 시사한다.

설계 결정과 아키텍처 판단, 비즈니스 로직에 대한 검증과 책임은 여전히 사람의 몫

코드를 옮기는 것은 점점 더 에이전트의 영역

결과적으로, AI 에이전트 활용은 개발 방식의 혁신을 가져오고 있으며, 개발 환경 설계의 중요성을 부각시킨다. 이는 개발자들이 AI 시대에 적응하기 위한 새로운 역량을 갖춰야 함을 의미한다.

1년간의 AI 코딩 여정: 손으로 치던 코드에서 에이전트가 쓰는 코드까지

댓글 0

첫 번째 댓글을 남겨보세요!