애자일과 같은 방법론은 요즘 인기를 끌고 있는 듯합니다. 이제 SI 같은 외주 개발 프로젝트에서도 애자일 방법론을 이야기합니다. 그렇다면 이론적으로 애자일과 같은 류의 방법론을 실행하기 위한 기본 원리를 아는 것과 모르는 것은 프로젝트 성공을 위해 중요하지 않을까 생각하여 이 글을 적게 되었습니다.
n차 함수와 복잡한 환경
1차 함수(ax=y)나 2차 함수( ax2=y)는 그래프를 그리기 수월합니다. 그러나 3차, 4차 함수로 넘어가면 그래프를 그리기 어려워집니다. 각 변수 값에서 그래프가 어떻게 변할지 파악하는 것이 어렵기 때문입니다.
이때 방법 중 하나가 바로 변수에서 변수 사이를 최소화하여 그래프의 형태를 최대한 선형으로 하여 그래프의 변화를 예측합니다.
여기서 복잡한 n차 함수를 개발 환경 또는 사업 환경으로 교체하여 실행 방법론을 정리한 것이 애자일 류의 방법론이 됩니다.
그러므로 애자일 류는 복잡하고 변화가 심한 환경에서 적절한 개발, 수익성 있는 비즈니스 등을 위한 방법론이라 할 수 있습니다.
환경과 프로젝트 정의
너무나 명백한 환경 상황에서 애자일 류의 방법론을 사용하는 것은 비효율적입니다.
이 경우 제 경험에 비추에 보면, 프로젝트 실무자가 업무를 잘 모르고 불안해서 선택하는 경우가 더 많습니다. 자신이 잘 모른다는 것을 숨기기 위한 방법론이라 할 수 있습니다.
그러므로 명백한 환경이 아닌 불확실성이 높은 환경에서 1 개발/사업 기간을 파악 가능한 정도까지 최소화하여 실행하는 방법론이 애자일 류입니다.
실무자가 업무를 모르는 것이 아닌, 환경의 변화와 복잡성으로 어떻게 대응해야 할지 알 수 없을 때 적용하는 방법론인 것입니다.
기존 SI에서 사용되는 폭포수(waterfall) 방법론이 사전에 기간과 개발 내용(기능, 화면)을 모두 정의한 상태에서 WBS를 작성하고 관리하는데 반하여 애자일은 이렇게 할 수 없습니다.
이 말은 개발이 진행되기 전에 기능, 화면을 정의한 후 WBS를 만들어 관리하는 프로젝트를 애자일 방법론을 적용한다고 하는 것은 논리적으로 말이 안 되는 것입니다.
애자일 류 방법론에서는 WBS가 없는 대신 스프린트가 존재합니다. 그런데 스프린트는 현재 스프린트만 정의할 뿐이면 이번 스프린트 이후 진행될 미래의 스프린트를 사전에 미리 정의하는 것은 불가능합니다. 현재 스프린트 결과 스크럼을 통해 다음 스프린트가 정의되기 때문입니다.
기본 원리
지금까지 이야기를 정리하면, 애자일 류의 방법론은 개발 또는 사업의 대상 상황/환경의 불확실성이 높을 때 실행되는 것이라는 점입니다.
그런데 실무에서 종종 실행 실무자의 역량이 안 되는 것과 환경이 불확실한 것을 혼동하는 경우도 있습니다.
여기서 말하는 환경은 외적 환경을 의미합니다. 실무자의 역량이 안 되는 것은 내적 환경입니다.
내적 환경이 부실한 경우는 폭포수가 되었건 애자일이 되었건 아무것도 제대로 실행되지 않습니다. 그냥 인력 세팅을 다시 해야 하는 것입니다.
애자일의 조건은 충분한 역량의 인력은 확보된 상태에서 시장 또는 개발 환경이 빠르게 변하고, 고려 변수가 복잡해서 불확실성이 높은 상태입니다.
이 환경에 실행 단계를 미분하여, 예측 가능성이 높은 단계로 작게 자른 후 개발 또는 사업을 진행하는 것이 애자일이라 할 수 있습니다.
그래서 애자일 류 방법론의 한 축은 학습 조직이 되는 것입니다. 그리고 이를 스크럼이라 합니다.
'기획 일반' 카테고리의 다른 글
서비스 내용이 사용자에 미치는 영향과 수익 지표 (1) | 2025.02.05 |
---|---|
데이터 그리고 온라인 서비스 개인화 (2) | 2025.02.02 |
기획과 개발, 계획과 실행 (2) | 2025.01.29 |
온라인 서비스 매출과 이익의 원리 (1) | 2025.01.23 |
애자일, 스프린트, 스크럼은 어떤 관계이며, 어떻게 작동하는가? (1) | 2025.01.18 |
댓글