2012.05.23

시스템 개발 프로젝트를 망치는 5가지 방법

David Taber | CIO
금새 화석이 되거나 괴물이 돼버릴 시스템을 구축하고 싶은 게 아니라면, 그럴듯해 보이는 다섯까지 고정관념을 버려야 한다.

데이터 마이그레이션과 시스템 개발 프로젝트의 많은 사례에서 필자는 정해진 기한 내에, 예산에 맞춰 프로젝트를 완수하지 못한 사례들을 봐 왔다. 그리고 이 사례들에서는 몇 가지 공통점이 발견됐으며 이를 공유하고자 한다.

시스템 개발뿐 아니라 대규모 클라우드 프로젝트에서도 차질은 생긴다. 이런 좋지 못한 결과물에 대한 대립적인 장려책, 부적절한 메트릭스, 협업 인프라의 부재 등 다수의 기여 요인이 존재하지만 이런 것들이 근본 원인은 아니다.

뭔가 일이 잘못되고 있다면, 협업이나 운영에 문제가 있는 것이 아니다.

개발 프로젝트는 불필요한 코드를 낳는다
더 스탠디시 그룹(The Standish Group)은 대규모 Y2K 프로젝트 분석을 수행하면서 전환 프로젝트의 성공보다는 전환되는 구형 코볼 시스템을 평가했다. 해당 기업은 본래의 프로젝트 규모가 클수록 현재 실제로 기능을 사용하는 코드를 찾아보기 어렵다는 사실을 발견했다.

이 중 일부는 물론 이런 거대 시스템이 20년 이상 발전하는 과정에서 수명과 관련 있었다. 하지만 이것은 단지 규모가 클수록 소모적인 프로젝트가 될 가능성이 높다는 점만을 시사할 뿐이다. 2,000만 줄의 소스 코드로 된 청구서 프로그램을 유지한다고 할 때 그 중 절반이 대체 무엇을 하고 있는지 알 수 없는 상황을 상상해 보자.

메인프레임 프로젝트 그룹에서 분석했을 때, 기존 프로그램 기능의 90% 이상을 새로운 대체 시스템에서는 재생성할 필요가 없다는 것을 발견했다. 여기서 핵심은 과거에 이 프로그램의 모든 기능을 위해 자금과 노력을 투자했지만 실제로 비즈니스 목적을 달성한 경우는 한시적이었거나 최악의 경우에 단지 상상의 수준에 머물렀다는 점이다.

 


건설 업계의 비유를 빌리자면 우리는 개발 프로젝트에 과잉 투자하지 않기 위해서 가치 공학(Value Engineering)을 끊임없이 적용해야 한다. 그리고 프로젝트를 진행하면서 매 순간마다 "이 문제를 해결할 수 있는 더 간단한 방법이 없을까?"라는 질문을 던져야 한다. 이것은 미시적 수준에서 무언가 섹시하거나 우아한 것에 대한 ‘만족스러운’ 대안을 가차없이 찾음으로써 겪는 혁신기업의 딜레마에 적용된다.

정치적인 논리와 맞서 이길 수 없다는 것을 명심하라
모든 기업에서 스트레스와 논란이 불거질 때 정치적 결정이 우세하게 된다. 의사결정의 질을 높이는 방법은 프로젝트가 처음부터 난관에 봉착하지 않도록 하는 것이다.

 




2012.05.23

시스템 개발 프로젝트를 망치는 5가지 방법

David Taber | CIO
금새 화석이 되거나 괴물이 돼버릴 시스템을 구축하고 싶은 게 아니라면, 그럴듯해 보이는 다섯까지 고정관념을 버려야 한다.

데이터 마이그레이션과 시스템 개발 프로젝트의 많은 사례에서 필자는 정해진 기한 내에, 예산에 맞춰 프로젝트를 완수하지 못한 사례들을 봐 왔다. 그리고 이 사례들에서는 몇 가지 공통점이 발견됐으며 이를 공유하고자 한다.

시스템 개발뿐 아니라 대규모 클라우드 프로젝트에서도 차질은 생긴다. 이런 좋지 못한 결과물에 대한 대립적인 장려책, 부적절한 메트릭스, 협업 인프라의 부재 등 다수의 기여 요인이 존재하지만 이런 것들이 근본 원인은 아니다.

뭔가 일이 잘못되고 있다면, 협업이나 운영에 문제가 있는 것이 아니다.

개발 프로젝트는 불필요한 코드를 낳는다
더 스탠디시 그룹(The Standish Group)은 대규모 Y2K 프로젝트 분석을 수행하면서 전환 프로젝트의 성공보다는 전환되는 구형 코볼 시스템을 평가했다. 해당 기업은 본래의 프로젝트 규모가 클수록 현재 실제로 기능을 사용하는 코드를 찾아보기 어렵다는 사실을 발견했다.

이 중 일부는 물론 이런 거대 시스템이 20년 이상 발전하는 과정에서 수명과 관련 있었다. 하지만 이것은 단지 규모가 클수록 소모적인 프로젝트가 될 가능성이 높다는 점만을 시사할 뿐이다. 2,000만 줄의 소스 코드로 된 청구서 프로그램을 유지한다고 할 때 그 중 절반이 대체 무엇을 하고 있는지 알 수 없는 상황을 상상해 보자.

메인프레임 프로젝트 그룹에서 분석했을 때, 기존 프로그램 기능의 90% 이상을 새로운 대체 시스템에서는 재생성할 필요가 없다는 것을 발견했다. 여기서 핵심은 과거에 이 프로그램의 모든 기능을 위해 자금과 노력을 투자했지만 실제로 비즈니스 목적을 달성한 경우는 한시적이었거나 최악의 경우에 단지 상상의 수준에 머물렀다는 점이다.

 


건설 업계의 비유를 빌리자면 우리는 개발 프로젝트에 과잉 투자하지 않기 위해서 가치 공학(Value Engineering)을 끊임없이 적용해야 한다. 그리고 프로젝트를 진행하면서 매 순간마다 "이 문제를 해결할 수 있는 더 간단한 방법이 없을까?"라는 질문을 던져야 한다. 이것은 미시적 수준에서 무언가 섹시하거나 우아한 것에 대한 ‘만족스러운’ 대안을 가차없이 찾음으로써 겪는 혁신기업의 딜레마에 적용된다.

정치적인 논리와 맞서 이길 수 없다는 것을 명심하라
모든 기업에서 스트레스와 논란이 불거질 때 정치적 결정이 우세하게 된다. 의사결정의 질을 높이는 방법은 프로젝트가 처음부터 난관에 봉착하지 않도록 하는 것이다.

 


X