아름프로의 Agile, DevOps, 그리고 일상 이야기

우리는 폭포수방법론 아닌데요!!! (버럭 <-- 반응) 본문

IT 이야기

우리는 폭포수방법론 아닌데요!!! (버럭 <-- 반응)

아름프로 2009. 4. 1. 14:23
결론부터 말씀드리면, Iteration에 대한 이야기 입니다.

요즘 그 어느때보다 많은 사람들을 만나며 방법론에 대한 이야기를 나누고 있습니다.
무엇보다 새로이 담당하고 있는 Rational Team Concert(RTC)가 방법론(프로세스) 템플릿을 내장하고
이를 기반으로 프로젝트가 시작되기에 빼놓고 이야기할 수 있는 상황이 아니기도 하고요.

RTC는 기본으로 Scrum, OpenUP, eclipse Way, Agile(Simple)와 같은 Agile 방법론들을 기본으로 제공하고 있기에 해당 방법론을 선택해서 프로젝트를 생성하게 되면, 각각의 방법론에 맞는 Iteration 기반으로 템플릿이 생성됩니다. (Sprint, milestone, 등등과 같은 ... 자세한 것은 생략)

그런데, 이러한 내용을 본 사람들의 반응은 참으로 다양합니다.
대표적인 두가지 사례를 들자면 아래와 같습니다.

첫번째 유형, 'Iteration = 애자일' 과 같이 해석하는 분들.
반복적 개발을 한다는 것이 애자일 개발을 대표하고 대변하는 것처럼 인식하고 있는 분들이 생각보다 많습니다.
그냥, 이러한 내용만보고 '애자일은 우리에게 .. 글쎄요? ...' 라는 식으로 바로 해석해 버립니다.
추후에 다시 언급하겠지만, Iteration은 애자일방법론에서만 등장한 것이 아님에도...

두번째 유형, '반복적 개발'을 실무에 적용하기에는 리스크가 크지 않을까요? 라고 정의하시는 분들.
나름 애자일쪽에 대해서 공부를 좀 하셨거나 관심이 있으신 분들 중에서 오히려 이러한 말씀들을 많이 하십니다.
이유를 들어보면, 그 내용에는 반복주기 동안 새로운 요구사항을 받아들일 수 있는 것 아니냐?! 요구사항에 대해서 개발 중간에 계속해서 리뷰하는 것이 꼭 좋은 것만은 아니다.. 라는 의견을 내비치곤 합니다.

특징적인 것은, 이러한 이야기를 하신 분들을 상대로 이러저런 애자일의 정점과 내용을 가지고 설명을 해봐도 잘 받아들이지 않는 다는 공통점도 발견할 수가 있습니다.

재밌는 사실 중에 한가지는 이러한 분들에게 현재는 어떤 방법론을 사용하고 계신지 여쭤보면 다수 분들의 답변은 CBD나 자신들의 자체 방법론을 쓴다라고 답변을 합니다. 궁금증에, 자체 방법론에 대해서 좀 더 깊이 이야기 나누고 질문을 하면 먼저 묻기도 전에 "폭포수는 아니고요..." 를 강조하기도 하고요.

그런데, 이미 글에서 눈치채신 분들은 아시다시피 CBD의 대표적인 방법론인 RUP이나 마르미3(2.0)과 같은 경우 Iteration을 강조하는 방법론이라면 방법론으로 진화가(!) 된 상태(!)입니다. 물론, 주기와 실천적인 측면에서 애자일쪽과는 다소 차이가 있더라도 그 근간은 비슷하다고 봐도 무방할 겁니다.
폭포수가 아닌 방법론... 이 역시도 폭포수와 아닌 방법론을 구분 짓는 대표적인 기준 중에 하나가 Iteration임은 잘들 아실 겁니다. (방법론적인 설명은 모두 생략 ... )

... 막연한 애자일에 대한 거부감 ...
... 폭포수가 아님을 자신하면서도 ...
... 결국엔, 자신들의 방법론의 실체나 내용조차 제대로 모르는 분들이 너무도 많은 ...
것이 현 많은 분들이 사용하는 개발 방법론의 실체가 아닐까 하는 생각마져 듭니다.

어쨌든,
이러한 질문과 이러한 생각을 가지고 계신 분들이 그렇지 않은 분들보다 훨~씬 많다는 것이 제가 요즘에 많은 분들 만나본 후의 결과라는 점입니다.

IT의 진화와 기술들의 발전을 자부하고 있는 대~한민국이지만, 그 내면을 들여다보면 방법론적인 진화는 생각보다 크지 않음을 많이 접하게 됩니다.

잘 들여다보면 전혀 다른 방법론인 것 처럼 알고 있는 것들도 그 내면은 어느덧 닮아 있고, 서로간의 장점을 가지고 진화되어 현재에 이르고 있음에도 그러한 내용은 제대로 이해하지 못한 채, 과거의 익숙하고 산출물에 종속된 방법들에 종속되어 그냥그냥 그렇게 계속해서 흘러만 하고 있는 듯 싶습니다.

.... 끝으로, 스스로에 질문을 한번 해보았으면 합니다.

1. 지금 사용하는 방법론이 무엇인가요??
2. 폭포수 방법론? 이에 대해서 거부감을 가지고 계시다면 왜 그러신가요?
3. Iteration(반복개발 / 반복계획)은 하고 계신가요?

2번, 3번 질문에서 무한루프를 돌고 계신 분이시라면 변화에 귀를 좀 더 귀울여 보시는 것도 좋을 것 같습니다.