AI-DLC usually stands for AI-Driven Development Lifecycle, a modern software engineering methodology where AI coding agents are systematically integrated into every phase of development
AI-DLC라는 개념을 Kiro를 통해 처음 접했는데 소프트웨어 방법론의 일종이다. 개발 생명주기를 AI를 통해 관리한다는 것. AWS에서 개발한 Kiro IDE는 이 방법론을 통해 개발할 수 있게 최적화돼있다. AI-DLC 말고 일반적인 에이전틱 코딩도 가능하다. 모델은 Claude, DeepSeek, GLM 등 선택 가능한데 클로드를 사용하더라도 기존에 구축한 하네스를 활용할 수는 없다.
AI-DLC, 이게 맞나
AWS에서 우리 회사에 Kiro 크레딧을 지원해주셔서 마침 진행하려던 새로운 제품 개발에 이 방법론을 도입했다. 디자인 목업만 있는 상태에서 시작했다. 첫 인상은 ‘이렇게까지 세세하게 한다고?’ 정도. 3명이 한 자리에 모여서 한 단계씩 응답해가며 전체 프로젝트의 구성을 잡아간다.
Info
사전 단계는 Initialization, Ideation 단계
크게는 Inception, Construction, Operation 3단계로 구성
Kiro에서 프로젝트 초반 진행 시 어느 정도 수준으로 세세하게 진행할지 선택을 하는데 간단하게 하는 것으로 했다. 그럼에도 초기 inception 단계를 마치기까지 거의 7-8시간 가까이 걸린 듯 하다. AI의 질문지가 상당히 상세하게 구성돼있어 하나씩 응답하며 진행하는데 속도가 잘 안 났다. 웬만한 것들을 ‘권장’ 항목으로 선택했지만, 종종 우리가 생각하는 프로젝트의 디테일이 AI와 안 맞는 것들이 있어 수정이 필요했다.
그 외에 느낀 아쉬운 점은 아래와 같은 것들이 있다.
-
초반에 확정 못한 사항들은 뒤로 미뤄서 결정하게 되는데 이후 결정을 하면 앞의 단계로 돌아가서 다시 확인을 해줘야 하는 점. 이 방법론의 구조적 한계가 아닐까 생각한다. 처음부터 무결한 계획을 한 번에 세울 수는 없기 때문에.
-
단계별 질문지 응답 후 대기 시간이 꽤 된다. 우리는 3명이서 이 응답을 대기했는데 이때 다른 검토를 한다든지 등의 방안이 필요해 보인다.
-
무엇보다 재미가 없다. 코드 생성(code generation) 단계는 Construction 한참 뒤에 있다. 초반 Inception 단계를 거치는 데 많은 시간이 들어가기 때문에 뭔가를 만들며 발전시켜간다는 느낌을 받기 어려웠다.
어떻게 보면 개발자로서 기존에 개발해오던 방식과 너무 달라서 이질감이 큰 것일 수도 있다. AI가 모든 단계를 살피며 사람은 질문에 응답만 하면서 넘어가면 되기 때문에. 조금씩 발전시켜 나가며 뭔가를 창조해나간다는 뿌듯함을 느끼기 어려운 것은 어쩔 수 없는 듯하다. AI 시대의 개발자로서 느끼는 피로감의 연장선일까. 코드 작성의 즐거움이 없어졌던 것과 비슷한 느낌.
AI-DLC의 이점
단점만 언급한 것 같아서, AWS 기술 블로그에서 언급한 AI-DLC 이점도 적어둔다. 속도, 혁신, 품질, 시장 대응력, 개발자 경험 이렇게 5개 영역인데 자세한 내용은 링크 타고 들어가서 읽어보길 바란다.
- 속도: 개발 속도의 가속화
- 혁신: 창의적인 솔루션을 탐색하고 가능성의 경계를 넓힐 수 있음
- 품질: 조직별 표준을 일관되게 적용하여 품질을 향상시킴. 요구사항에서 배포까지 일관성과 추적성 향상
- 시장 대응력: 빠른 개발 주기를 통해 시장 수요와 사용자 피드백에 신속하게 대응
- 개발자 경험: 코딩 작업에서 중요한 문제 해결로 초점을 전환함으로써 개발자 경험을 변화
속도 측면에서 기존 AI 개발과 얼마나 큰 차이가 있을지는 프로젝트가 끝나고 회고를 해봐야 알 수 있을 듯하다. 다른 부분에 있어서도 마찬가지긴 하다. 다만, 마지막 ‘개발자 경험’ 부분은 이점이라고 봐야 할지 모르겠다. 코딩 작업에서 문제 해결로 패러다임이 변화한 것은 Kiro 전에 이미 완료된 것이 아닌가 싶어서 그렇다.
바이브 코딩
Kiro 체험 크레딧이 주어진 김에 개인 바이브 코딩도 좀 해봤다. AI-DLC를 통해 진행하진 않았다. 일단 간단한 것들만 만들어봤는데, 아이디어 중에 덩치가 큰 녀석이 있다면 이 방법론을 통해 진행해볼 생각이다. 기존 개발 방식과 너무 다른 것 같아서 아무래도 아직 거부감이 많은데, 현재 프로젝트가 끝났을 때 얼마나 호감이 늘었을 지 궁금하다. 여튼 바이브 코딩 귀찮아서 시작을 안 하고 있었는데 이 참에 그냥 시작해버려서 좋은 기회라고 생각한다.