IT/Project

전통적인 SI/SM에서 Agile을 적용 할 수 있을까?

Gradler 2019. 6. 24. 13:51

개인적인 결론부터 말하자면 Agile, DevOps 이러한 개념들은 전형적인 국내 SI 환경에서는 결국 운영에 더 많은 인력을 투입해서 점진적인 고도화를 진행함으로써 차세대 프로젝트를 하지 않게 만드는 전략이라고 볼 수 있을 것 같다. 즉, 처음부터 최종 제품의 모형을 그린 후 제품을 만들고 서비스하는 것이 아니라, 시스템을 이용하는데 무리없는 수준의 핵심이 되는 기본 기능만 만든 후, 사용하면서 발생하는 고객의 요구사항이나 변경에 대해 유연하고 기민하게 대처하며 기능을 추가해나가는 프로세스인 것이다.

 

기존에는

  1. 한 번에 많은 비용을 들여서 서버, 네트워크 등의 인프라를 구축했다.
  2. 해당 인프라 기반 위에 한 번에 많은 비용을 들여서 수개월간 프로젝트를 진행하고 오픈다.
  3. 오픈 후 최소 인력만 남아 시스템을 운영다. 작은 범위의 수정은 이루어지나 초기 설계를 뒤흔드는 변경이나 추가 기능은 차세대를 위해 Keep.
  4. 감가상각이 끝나는 시점에 그 동안 Keep 해둔 요구조건들과 추가 기능과 신기술안정성이 확보된 기술 등을 활용한 차세대(또는 고도화) 프로젝트를 수행한다.
  5. 1~4까지의 과정을 주기적으로 반복 

 

애자일 프로세스와 클라우드를 적극적으로 활용하면서

  1. 인프라는 클라우드를 이용하여 월 단위로 사용한 만큼만 과금한다. -> 초기 투자비 감소
  2. 단기간 핵심 기능만 빠르게 개발해서 오픈한다. -> 프로젝트 기간 수개월 단축
  3. 개발과 운영을 함께 하기 위해 운영인력이 기존보다 많이 투입한다. 
  4. 사용량이 많아질수록 월 단위로 지불해야 해야 하는 비용과 운영 비용은 기존대비 증가하지만 요구 및 변경사항은 기민하게 대응이 가능
  5. 감가상각 등을 고려하여 주기적으로 위 과정을 반복할 필요가 없어짐.

다시 한 줄로 요약하면,

감가상각(대게는 5년)에 맞춰 큰 변경 없이 기존 시스템을 안정적으로 운영하다가 차세대 프로젝트를 하던 방식에서

운영인력을 더 늘려 월 단위로 추가 과금하면서 더 많은 변화에 빠르게 대응할 수 있게 운영하는 방식으로 전환


기존 방식이 잘못된 것이고, 애자일이 정답이라는 건 아니다.

기존에 없던 시스템을 신규 구축할 때는 Waterfall 방식의 프로젝트가 적합할 수 있다.

하지만 원래 있던 시스템을 고도화(또는 차세대) 해야 한다면 운영 인력을 늘려 애자일 프로세스를 도입하고 점진적인 고도화를 진행하는 것이 바람직하다고 생각한다.

왜냐하면 애자일은 단순히 시스템이나 툴의 도입만으로 끝나는 일이 아니기 때문이다. 애자일이 아닌 방식으로 일하던 조직 구성원들의 사고방식도 점점 애자일스러워져야만 바람직한 애자일 프로세스가 조직내에 정착될 수 있을 거라고 생각하기 때문이다. 워터폴 방식의 산출물로 갑자기 애자일 방식으로 운영하라고 하면, 어떤 운영팀이 좋아할까..? 기호를 떠나 제대로 된 애자일 프로세스가 정착이나 될 수 있을까? 나의 대답은 'No' 이다. 국내 대형 SI 회사에서 이상스럽게 형식에만 집착하는 애자일 프로세스를 적용하면서 혐오 현상이 생긴것도 이 때문이라고 생각한다.

 

대형 SI 회사와 클라이언트가 애자일 도입을 꺼리는 이유는 다음과 같을 수 있다.

 

회사 클라이언트

- 주기마다 이루어지는 사이트별 차세대 프로젝트는 주요 매출 포션

- 운영팀은 계약된 범위 내에서만 시스템을 운영하며 요구사항 처리

- 해마다 시스템 운영 비용의 축소를 원함

- 계약된 운영 범위 이상으로 변경 및 기능 추가를 요구함


이렇게 정리하고 보니 같은 입장을 조금만 다른 관점에서 보면 애자일 프로세스를 제대로 도입만 하면 최종 비용 측면에서는 기존 방식과 크게 차이나지 않지만, 양측 모두 Win-Win 할 수 있는 모델 아닐까?

 

회사의 Win 클라이언트의 Win

월 운영 계약 비용 증가

-> 차세대 계약 체결에 대한 불안 해소 및 안정적인 매출 포션은 유지

차세대 프로젝트처럼 한 방에 큰 투자 비용 부담 없음 (월 단위로 분담)

-> 요구 및 변경은 빠르게 프로덕트에 반영됨