AI와 애자일의 상호 연관성
정재용 | 애자일 코치 | AGIN
이번 주제는 AI와 애자일의 연관성을 좀 더 상세하게 관찰해 봤으면 합니다.
AI와 애자일은 상호 보완적이며, 상당 부분에서 ‘필요충분조건’적인 역할을 수행하고 있습니다. AI와 애자일은 서로 간 필요충분의 역할을 수행하고 있다고 생각해도 무방합니다. 관점에 따라 여러 가지로 살펴볼 수 있을 듯한데, 시행을 하는 목적 측면에서 애자일은 AI에 ‘문제 정의 및 가설 기반의 실험 문화를 제공’하고 있으며, AI는 애자일에 ‘복잡한 문제에 대한 빠른 해결 방안 탐색을 가속화’하는 것에 서로 기여합니다. 학습적 측면에서는 애자일은 ‘반복적 피드백 루프를 통한 빠른 실험 환경’을, AI는 ‘더 빠른 실행/분석으로 학습 속도 향상’을 상호 지원합니다.
이렇듯 AI와 애자일은 서로 밀접한 연관성을 가지고 상호 간 필요 충분의 역할을 수행하고 있습니다.
- 특히 AI의 경우는 아래와 같은 특성을 가지고 있는데,
- 불확실성이 높음 (명확한 요구사항 없이 시작)
- 실험 중심 (모델 학습 > 테스트 > 수정 과정 반복)
- 협업 환경이 필수적 (ML, 데이터, UX, 도메인 전문가의 협업 필요)
애자일은 이런 AI의 특성에 부합하는 운영 방식을 제공해 줍니다.
- Sprint 기반의 반복 실험은 AI 모델 성능 향상에 적합
- 회고를 활용하여 실패/성공 경험을 빠르게 반영하고 좀 더 나은 방법을 모색
- PO(Product Owner)가 좀 더 명확한 문제 정의와 방향을 제시
- 복잡한 실험을 관리하고 우선순위 결정에 유리한 조건을 제공
이렇듯 AI를 개발하는 환경에서 기존의 원터폴 방식은 맞지 않으며, 애자일 방식이 더 효율적이고 적합한 방법으로 활용될 수 있을 것입니다.
AI 개발 단계와 애자일을 어떻게 매칭하여 활용할 수 있는지를 좀 더 살펴보기 위해 AI를 개발하는 조직이 10번의 Sprint를 수행한다고 가정을 했을 때 다음과 같은 방식으로 운영할 수 있을 것입니다.
- AI 개발 단계: Sprint 정의
- 문제 정의: Sprint 1 - 가설 수집, 데이터 정리
- 데이터 준비: Sprint 2~3 - 데이터 수집, 전처리, 검증
- 모델 실험 / 튜닝: Sprint 4~7 - 하이퍼파라미터 실험, 결과 분석
- 검증 및 배포: Sprint 8~10 - A/B 테스트, 성능 검증, 배포 준비
이렇게 정의하여 활용하면 효율적으로 애자일의 주기에 맞춰 활용할 수 있을 것으로 생각됩니다. 물론 이것이 정답은 아니고 예시일 뿐이니 조직에 맞게 정의하여 활용할 수 있을 것입니다.
각 Sprint 목표를 수립하고 정할 때도 AI 개발은 좀 다른 방법도 생각해 볼 수 있을 듯합니다. 예를 들어 기존의 Sprint 목표에서 ‘A 기능 완료’로 정의했다면, AI 개발에서는 ‘Precision 5% 향상된 모델 도출’이나 ‘Intent 분류 모델 성능 비교 분석 리포트’와 같은 것으로 정의하면 좀 더 좋지 않을까 생각됩니다. 즉, 실험의 100% 완성된 결과물이 아니라 실험 그 자체를 가치 있는 결과물로 보고, 팀원들을 독려하고 심리적인 안정감을 주도록 이끌어 가는 것이 중요합니다.
마지막으로 AI 개발에 적합한 성과지표를 만들어 운영하는 것을 제안하고 싶습니다. 기존 애자일의 Velocity, Burndown Chart는 AI 개발의 속도나 진행률을 반영하는 것이 어렵기 때문입니다. 기존의 측정 방식은 지속적으로 0%이다가 어느 순간 갑자기 100%가 될 수도 있는 맹점이 있습니다. 그래서 AI에 좀 더 적합한 지표를 수립하는 것을 추천합니다. 예를 들어, 실험 성공률이라는 지표는 ‘Sprint 내 수행된 모델 실험 중 개선된 비율’, 학습 소요 시간은 ‘모델 훈련 및 검증에 소요된 평균 시간’, 데이터 정합성 점수는 ‘데이터 품질, 누락률, 레이블 신뢰도’와 같은 지표로 설정하면 어떨까 생각합니다. 즉, 이런 지표들은 이해관계자와 개발팀 간의 신뢰를 확보한다는 차원에서 설정하여 운영하는 것이 중요합니다.
AI 개발에서 애자일은 결과 중심적인 것보다는 검증 중심의 사고로의 전환이 필요해 보입니다. 이렇게 했을 때 AI의 탐색적이고 불확실한 특성과 애자일의 반복적이고 점진적인 개발 리듬이 맞아 서로 제약 사항이 아닌 보완적 요소로 작동하게 될 것입니다.
AI와 애자일의 상호 연관성
정재용 | 애자일 코치 | AGIN
이번 주제는 AI와 애자일의 연관성을 좀 더 상세하게 관찰해 봤으면 합니다.
AI와 애자일은 상호 보완적이며, 상당 부분에서 ‘필요충분조건’적인 역할을 수행하고 있습니다. AI와 애자일은 서로 간 필요충분의 역할을 수행하고 있다고 생각해도 무방합니다. 관점에 따라 여러 가지로 살펴볼 수 있을 듯한데, 시행을 하는 목적 측면에서 애자일은 AI에 ‘문제 정의 및 가설 기반의 실험 문화를 제공’하고 있으며, AI는 애자일에 ‘복잡한 문제에 대한 빠른 해결 방안 탐색을 가속화’하는 것에 서로 기여합니다. 학습적 측면에서는 애자일은 ‘반복적 피드백 루프를 통한 빠른 실험 환경’을, AI는 ‘더 빠른 실행/분석으로 학습 속도 향상’을 상호 지원합니다.
이렇듯 AI와 애자일은 서로 밀접한 연관성을 가지고 상호 간 필요 충분의 역할을 수행하고 있습니다.
애자일은 이런 AI의 특성에 부합하는 운영 방식을 제공해 줍니다.
이렇듯 AI를 개발하는 환경에서 기존의 원터폴 방식은 맞지 않으며, 애자일 방식이 더 효율적이고 적합한 방법으로 활용될 수 있을 것입니다.
AI 개발 단계와 애자일을 어떻게 매칭하여 활용할 수 있는지를 좀 더 살펴보기 위해 AI를 개발하는 조직이 10번의 Sprint를 수행한다고 가정을 했을 때 다음과 같은 방식으로 운영할 수 있을 것입니다.
이렇게 정의하여 활용하면 효율적으로 애자일의 주기에 맞춰 활용할 수 있을 것으로 생각됩니다. 물론 이것이 정답은 아니고 예시일 뿐이니 조직에 맞게 정의하여 활용할 수 있을 것입니다.
각 Sprint 목표를 수립하고 정할 때도 AI 개발은 좀 다른 방법도 생각해 볼 수 있을 듯합니다. 예를 들어 기존의 Sprint 목표에서 ‘A 기능 완료’로 정의했다면, AI 개발에서는 ‘Precision 5% 향상된 모델 도출’이나 ‘Intent 분류 모델 성능 비교 분석 리포트’와 같은 것으로 정의하면 좀 더 좋지 않을까 생각됩니다. 즉, 실험의 100% 완성된 결과물이 아니라 실험 그 자체를 가치 있는 결과물로 보고, 팀원들을 독려하고 심리적인 안정감을 주도록 이끌어 가는 것이 중요합니다.
마지막으로 AI 개발에 적합한 성과지표를 만들어 운영하는 것을 제안하고 싶습니다. 기존 애자일의 Velocity, Burndown Chart는 AI 개발의 속도나 진행률을 반영하는 것이 어렵기 때문입니다. 기존의 측정 방식은 지속적으로 0%이다가 어느 순간 갑자기 100%가 될 수도 있는 맹점이 있습니다. 그래서 AI에 좀 더 적합한 지표를 수립하는 것을 추천합니다. 예를 들어, 실험 성공률이라는 지표는 ‘Sprint 내 수행된 모델 실험 중 개선된 비율’, 학습 소요 시간은 ‘모델 훈련 및 검증에 소요된 평균 시간’, 데이터 정합성 점수는 ‘데이터 품질, 누락률, 레이블 신뢰도’와 같은 지표로 설정하면 어떨까 생각합니다. 즉, 이런 지표들은 이해관계자와 개발팀 간의 신뢰를 확보한다는 차원에서 설정하여 운영하는 것이 중요합니다.
AI 개발에서 애자일은 결과 중심적인 것보다는 검증 중심의 사고로의 전환이 필요해 보입니다. 이렇게 했을 때 AI의 탐색적이고 불확실한 특성과 애자일의 반복적이고 점진적인 개발 리듬이 맞아 서로 제약 사항이 아닌 보완적 요소로 작동하게 될 것입니다.