CAREER/스타트업

스타트업 인턴을 하며.. 1. 애자일 방법론의 장단점

김쿸후 2020. 11. 7. 14:24

 

I. 애자일 방법론이란?

출처 :http://agilemethodology.org/

 

스타트업에서 근무하다 보면 한 번씩은 애자일 방법론에 대해 들어봤을 것이다.

 

애자일 방법론이란 프로세스를 처음과 끝이 정해진 일련의 차례로 진행하는 것이 아닌, 간단하고 빠르게 프로토 타입을 개발하는 과정을 반복하는 형식으로 진행하는 방법론을 말한다.  빠른 프로토 타입을 개발하며 개발 진행 상황과 산출물을 고려하여 다음 프로토타입, 즉 다음 목표를 결정한다.

 

폭포수 방법 과 같은 전통적인 프로세스는 완성된 기획과 탄탄한 계획을 기반으로 프로세스가 진행되어 안정적이다. 그러나 이런 전통적인 프로세스는 계획이 틀어질 경우 마감일 연장, 마감기한을 지키기 위한 개발자의 에너지 소진 등 여러 가지 부작용이 생긴다. 이런 전통적인 프로세스는 같은 input에 같은 output이 나오는 과거의 자동차 부품공장 등의 정형적인 제조공정에 적합한 프로세스이다.

 

소프트웨어를 포함한 IT 개발과 스타트업의 기업구조는 많은 변수가 있기 때문에 이런 전통적인 프로세스는 기업의 방법론에 맞지 않는다. 그래서 많은 스타트업은 애자일 방법론을 선택하고 있다. 애자일 방법론은 불확실성을 기반으로 대중에게 제공하려는 서비스에 단계적으로 접근한다는 점에서, 고객의 반응을 빠르게 살피고 개선을 할 수 있다.

 

 

Ⅱ. 내가 겪은 애자일 방법론의 장단점

 

1. 애자일 방법론의 장점

 

기획을 실시간으로 변경하여 공유하는 모습

가장 큰 애자일 방법론의 장점은 반복된 개발 주기를 통해 개발 프로세스의 방향과 목표를 잃지 않도록 한다는 것이다.

 

예를 들어 코끼리를 그리는 과정이 6개월 동안 진행된다고 했을 때,  전통적인 프로세스를 따라 전체 코끼리를 일부분부터 자세하게 그리다 보면, 시간에 촉박해 개발 마감일로 갈수록 그림의 퀄리티가 낮아질 수도 있으며, 코끼리 다리를 열심히 그리다 코끼리 다리를 그리고 있는 건지 소의 다리를 그리고 있는 건지 개발원들과 기획의 의사소통 미스가 생길 수도 있다.

 

그러나 애자일 방법론으로 코끼리를 그리면,  코끼리의 공통된 특징 위주로 한번 스케치를 그리고, 점점 작은 범위로 들어가 일정한 주기로 수정을 반복하며 코끼리를 그린다. 이때 수정을 하면서 팀원들과 끊임없는 의사소통을 하기 때문에, 방향과 목표를 일정한 주기 간격으로 리마인드 할 수 있다.

 

실제로 내가 개발을 하다보면, 개발의 기능 구현에 집중하느라 이 기능이 기획의 어디에 어떻게 쓰일지를 잊는 경우가 종종 있다. 이렇게 놓치는 부분을 주기적으로 수정을 반복하기 때문에 전체적인 개발 속도도 향상되며, 기획자에게 개발을 하며 불편한 부분을 말하면 즉시 반영이 되기 때문에 개발에 집중할 수 있다는 장점이 있다.

 

 

두 번째로 애자일 방법론은 개발 비용과 시간을 아낄 수 있다.

 

실제 인턴을 하며 폭포수 방법론을 채택하여 큰 손해를 본 경우를 볼 수 있었다. 한 회사의 경우, 이전 사업모델을 약 일 년의 연구기간을 걸쳐 출시했지만, 생각보다 시장의 반응이 오지 않았고, 결국 사업의 방향을 틀어야 하는 경우가 생겼다. 물론 연구기간 동안 많은 사전 설문조사를 하였지만 사전 설문과 실제 시장의 반응은 달랐다. 이 때문에 결국 사업에 들인 비용을 포기하고 새로운 사업을 시작하였다.

 

스타트업은 불확실성을 전제로 사업을 진행해야 한다.

 

만약 일 년의 연구기간을 통해 완성품을 내놓는 것이 아닌, 완성품이 실패할 수 있다는 불확실성을 전제로 2개월 단위로 프로토를 시장에 내놓으며 반응을 살폈다면, 일 년의 연구기간과 연구에 사용된 비용을 아낄 수 있었을 것이다. 

그렇다면 애자일 방법론의 단점은 없을까?

 

 

2. 애자일 방법론의 단점

 

우선 내가 경험한 바로 애자일 방법론의 첫 번째 단점은 기획자와 개발자 모두 하고 있는 일에 확신이 없다는 것이다.

예로 기획자가 사이트에 영상 플레이 기능을 넣자고 기획을 하여 개발자가 개발을 했다. 그 다음 수정 때, 시장에 영상 플레이 기능이 있는 상품이 너무 많아서, 영상을 빼고 차별화된 기능을 넣자는 의견이 나온다.

 

그럼 이 의견을 수렴하여 기획자는 전에 했던 기획을 엎고 또 영상 플레이 기능이 아닌 코딩 에디터를 포함한 상품을 내놓는다. 그러면 개발자는 이전에 개발했던 기능을 버리고 새로운 기능을 다시 개발해야 한다. 이런 일이 반복되면 기획자는 내가 하는 기획이 될지 안될지 모르는데..라는 마인드 셋이 생기며, 개발자는 이 기능이 확실하지도 않은데 우선 대충 그럴싸하게만 개발을 해보자 라는 마인드 셋이 생긴다. 결국 기획자도 개발자도 서로 확신이 없는 채로 프로세스가 흘러가고 있는 것이다.

 

 

두 번째 단점은 잦은 수정으로 기획자와 개발자 모두 큰 스트레스를 받는다.

기획자는 프로세스의 큰 그림을 세워서 기획을 하고, 개발자는 기획에서의 작은 기능들을 구현한다. 개발자로 근무하고 있는 내 입장에서, 기획자가 큰 그림을 생각하여 작은 기능들을 쉽게 바꾸는 경우가 많았다. 그러나 개발적인 측면에서 작은 기능 하나하나도 긴 코드와 많은 노력이 들어가는 경우가 많은데 이런 기능들이 잦은 수정이 일어나면 스트레스를 받게 되었다.

 

반대로 기획자의 입장에서는 기획자는 큰 그림을 생각하며 기획을 한 것인데 개발적인 흐름으로 작은 요소 때문에 큰 그림을 총체적으로 수정할 일이 종종 생겼다, 결국 큰 그림을 위해 작은 기능을 수정하고, 작은 기능의 구현을 더 효율적으로 하기 위해 큰 그림을 수정하는 서로 스트레스를 받는 일이 반복되어 생기는 것이다.

 

 

 

Ⅲ. 결론.

 

애자일 방법론으로 기업을 운영하는 곳의 인턴으로 활동하며, 많은 애자일 방법론의 단점을 느꼈지만 그럼에도 나는 스타트업이라면 애자일 방식으로 가야 한다고 생각한다. 애자일 방법론은, 빠른 프로토의 시장 출시로 시장의 반응을 민감하게 반영할 수 있으며 초기 스타트업의 특성상 자주 바뀌는 기업의 비전과 사업의 목표를 스타트업 팀원들이 잘 따를 수 있도록 돕는다. 물론 팀원들이 빠르게 바뀌는 상황에 대한 스트레스는 있지만, 이를 상쇄할만한 장점이 존재하기에 나는 애자일 방법론을 꽤 신뢰하는 편이다.

 

애자일 방법론의 많은 수정은 스트레스 요소이기도 하지만 결론적으로는 시장에 최적화된 산출물을 가장 확실하게 찾을 수 있는 방법이기도 하다. 팀원들이 조금 덜 스트레스를 받으며 수정을 적게한다면 물론 결과물은 순조롭게 나올 것이다. 그러나 해당 결과물이 시장에서 적합할지(working 할지)는 미지수이기에, 초기 자본이 많이 들고 수입이 적은 투자 단계의 스타트업이라면 반드시 애자일 방법론을 채택해야 한다고 생각한다.

 

 

출처 : flearning-blog.tistory.com/230