8
공학 트렌드 IT 프로젝트를 성공으로 이끄는 요인들 Ⅰ. IT 프로젝트 성공율 Ⅱ. 개발방법에 따른 프로젝트 성공율과 생산성 차이 III. IT 프로젝트 성공요인 IIII. 결언 황순삼 ( [email protected] ) 소프트웨어공학센터 경영지원TF팀

IT 프로젝트를 성공으로 이끄는 요인들( Critical success factors for software projects)

Embed Size (px)

DESCRIPTION

Critical success factors for software projects : comparing project's performance when using different methodologies, SW공학센터 인사이드 이슈 (제44호)

Citation preview

Page 1: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

공학 트렌드

IT 프로젝트를 성공으로 이끄는 요인들

목 차

Ⅰ. IT 프로젝트 성공율

Ⅱ. 개발방법에 따른 프로젝트 성공율과 생산성 차이

III. IT 프로젝트 성공요인

IIII. 결언

황순삼

([email protected])

소프트웨어공학센터

경영지원TF팀

Page 2: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

Ⅰ. IT 프로젝트 성공율

IT 프로젝트의 성공율이 더디지만 조금씩 향상되고 있다. 미국의 유명한 리서치

기관인 스탠디쉬 그룹(The Standish Group)이 발행하는 Chaos report에 따르면,

1994년 16%에 불과했던 프로젝트 성공율은 2008년에 32%로 증가하였다. 아울러

프로젝트 실패율은 같은 기간동안 31%에서 24%로 줄어들었다는 것을 확인할 수

있다.

<표 1> 프로젝트 성공율

(자료: Chaos Report from The Standish Group)

Chaos Report는 방대한 프로젝트 통계를 기반으로 IT 프로젝트 성공과 실패를

분석하여 가장 많이 인용되고 있을뿐만 아니라 지속적인 보고서 출간으로 신뢰성

을 얻고 있는 자료라고 할 수 있다. 이 보고서에서 성공(Successed)은 프로젝트가

계획했던 예산, 일정, 요구사항을 준수한 경우이고 도전(Challenged)은 프로젝트가

완료는 되었지만 예산이나 일정이 초과되거나 일부 요구사항을 준수하지 못한 경

우, 실패(Failed)는 프로젝트가 완료되지 못하고 취소된 경우입니다. <표 1>은

1990년 중반부터 IT 프로젝트가 성공하는 비율이 조금씩 향상되고 있다는 것을 보

여준다.

II. 개발방법에 따른 프로젝트 성공율과 생산성 차이

대부분 IT 프로젝트는 여러 사람이 함께 작업하는 공동 개발 형태이다. 프로젝트

에서 선택한 개발방법에 따라 프로젝트 수행절차, 관리체계 그리고 의사소통과 같

은 협업방식에 차이가 생기게 마련이다. 가령, 폭포수(Waterfall) 개발방법에서는 이

전 단계가 끝나야만 다음 단계를 시작할 수 있기 때문에 전체적인 설계 과정이 완

벽하게 이루어져야만 개발을 수행할 수 있다. 반면 애자일(Agile) 개발방법에서는

짧은 주기를 반복하며 시스템을 점증적으로 개발하기 때문에 전체시스템를 쪼개서

설계, 설계, 테스트, 통합이 이루어지는 과정을 반복한다. 과연 개발방법에 따라 프

Page 3: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

로젝트 성공율과 생산성에 차이가 있을까? 먼저 개발방법에 따라 프로젝트 성공율

이 달라지는가를 살펴보자. IBM 방법론 그룹의 애자일 개발 프랙티스 리더이며 소

프트웨어 개발 및 프로세스 전문가로 활동하고 있는 Scott Ambler는 그의 홈페이

지에서 2007년부터 개발방법에 따른 프로젝트 성공을 설문조사하여 결과를 발표하

고 있다. 가장 최신인 2011년 결과를 찾아보면, RUP과 같은 반복개발(Iterative) 방

법과 애자일이 70% 가까운 성공 비율로 가장 좋은 결과를 보여주고, 린 개발방법

그리고 정해진 프로세스를 따르지 않는 애드혹(Ad-Hoc)과 폭포수(Waterfall)를 따르

는 전통적 개발방법이 50% 성공율로 가장 저조한 것으로 나온다.

<그림 1> 개발방법론별 프로젝트 성공율

(자료: www.ambysoft.com)

개발방법별로 품질(Quality), 가치(Value), 수익(ROI), 일정(time)으로 나누어 얼마나

효과적인가를 분석해보면, 애자일 개발방법이 모든 부분에서 우수한 결과를 보여준

다. 특히, 가치에서는 다른 개발방법보다 매우 우수한 것으로 제시되었다. 일정에서

는 전통적 개발방법이 정해진 프로세스를 따르지 않는 Ad-hoc보다도 못한 것으로

나타났다. 전통적 개발방법은 프로젝트 초기에 일정을 수립하기 때문에 계획추정이

상대적으로 어렵고, 시스템 통합과 테스트가 이루어지는 프로젝트 후반에서 위험

이 발견되는 경우, 다른 개발방법보다 일정에 악영향을 미치기 쉽다.

<그림 2> 개발방법론별 프로젝트 효과성(effectiveness)

Page 4: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

개발방법이 프로젝트 성공율에 미치는 영향이 크다면 프로젝트 생산성에는 어느

정도 차이가 발생할까? 소프트웨어 개발방법론 전문가이자 수십년간 소프트웨어

품질과 베스트 프랙티스 데이타를 분석했던 Capers Jones는 3번째 그의 개정판인

“Applied Software Measurement”에서 2000년~2007년까지 개발방법론별로 미국

개발자의 생산성을 비교한 결과를 제시하였다.

<그림 3> 개발방법론별 생산성

<그림 3>에서 가장 눈에 띄는 것은 애자일 개발방법이 1,000 기능점수(Function

Point) 이하에서는 월등한 생산성을 보인다는 점이다. 100 기능점수 (약 Java의

5,000 라인에 해당, 주석포함) 사이즈에서는 애자일 개발자는 36.0 기능점수를 나

Page 5: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

타냈는데, 폭포수개발자의 9.0 기능점수와 비교하여 4배의 생산성 차이를 나타낸다.

원도우 XP의 사이즈에 해당하는 10,000 기능점수 이상(약 Java의 5,000,000 라인

규모)에서는 다른 개발방법론과 생산성 차이를 없는 것으로 나타나는데, 실제로 대

규모 프로젝트에서 애자일을 적용한 사례도 매우 부족하며 프로젝트 규모가 커질

수록 생산성이 줄어든다는 점을 잘 보여준다.

III. IT 프로젝트 성공요인

위에서 프로젝트 성공율과 생산성에 개발방법이 중요한 역할을 한다는 점을 파악

하였다. 그렇다면 특정 개발방법론만 적용하면 프로젝트가 성공할 수 있을까? 물론

그렇지 않다. 그 어떤 개발방법도 모든 문제를 해결하는 마법 탄환(magic bullet)은

아니다. 개발방법론은 IT 프로젝트의 성공요인을 얼마나 잘 다루고 효과적으로 향

상시키는가라는 관점에서 이해하는 것이 타당할 것이다. Nasir와 Sahibuddin 교수

는 Academic Journals에 "Critical success factors for software projects:

comparative study"이라는 논문을 발표하였다. 이 논문은 76개 사례연구(case

study)를 대상으로 SW 개발을 다룬 43개 논문을 뽑아 프로젝트 성공요인을 도출

하였다. 총 26개의 프로젝트 성공 요인은 크게 사람과 관련된 7개, 프로세스에 관

련하여 16개 그리고 기술에 관련하여 3개로 나눠진다. 프로젝트 성공요인 상위 10

개 요인을 정리하면 아래 표와 같다.

<표 2> 프로젝트 성공요인

Page 6: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

성공요인 빈도 비율(%)

1. 명확한 요구사항과 스펙 26번 60.5

2. 명확한 비지니스 목표와 목적 24 55.8

3. 현실적인 일정 23 53.5

4. 효과적인 프로젝트 관리 기술 및 방법 (프로젝트

관리 전문가)23 53.5

5. 경영층의 지원 22 51.2

6. 사용자 및 고객의 참여 20 46.5

7. 효과적인 의사소통과 피드백 20 46.5

8. 현실적인 예산 19 44.2

9. 기술과 경험을 갖춘 스탭 18 41.9

10. 요구사항 통제 17 39.5

한편 스탠디쉬 그룹의 2008년 Choas Report에서 제시한 프로젝트 성공요인은 다

음과 같다.

1. 사용자 참여

2. 경영층의 지원

3. 명확한 비지니스 목적

4. 감성적 성숙도(Emotional Maturity)

5. 최적화 (Optimization)

6. 애자일 프로세스

7. 프로젝트 관리 전문가

8. 경험있는 인적자원

9. 실행력

10. 도구 및 인프라

Nasir와 Sahibuddin 교수와 Choas Report에서 공통적으로 언급하고 있는 성공

요인을 살펴보면, 사용자 참여, 명확한 요구사항과 목표, 경영진의 지원, 효과적인

프로젝트 관리 기술 및 방법론, 기술과 경험을 갖춘 인력이다.

Page 7: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

III. 결언

IT 프로젝트의 성공율이 조금씩이라도 향상되고 있다는 점은 참 반가운 일이다.

이런 IT 프로젝트의 성공율 증가에는 그동안 수많은 실패라는 경험을 통하여 얻은

값진 교훈을 통해 보다 나은 개발방법을 모색하고 시도하는 과정에서 나온 결과라

고 생각한다. 우리는 프로젝트 규모가 커질수록 복잡도와 불확실성이 커진다는 것

을 경험적으로 알고 있다. Anselmo & Ledgard (2003)은 “Measuring Productivity

in the Software Industry” 논문에서 프로젝트 규모가 클수록 일정과 비용을 초과할

위험은 커진다고 지적하였다. 프로젝트 규모를 줄여 불확실성과 위험을 낮추고 변

화에 보다 민첩하게 반응하기 위하여 개발된 개발방법이 애자일이다.

앞절에서 공통적으로 언급된 프로젝트 성공요인인 사용자 참여, 명확한 요구사항

과 목표, 경영진의 지원, 효과적인 프로젝트 관리 기술 및 방법론, 기술과 경험을

갖춘 인력은 위험은 줄이고 예측가능성과 변화적응력, 학습속도를 향상시키는 애자

일 개발방법의 특징과 부합되는 점이 많다. 프로젝트 성공율을 확실하게 보장하는

방법이라는 것은 없지만 연속된 작은 개선이 큰 결과를 만들어낼 수 있다. 0.1%의

성공률 개선이 있는 시도를 천번을 반복한다면 성공율은 약 2.7배가 개선될 수 있

다고 한다. 우리에게 필요한 것은 한번에 획기적인 성과를 만들어내는 방법이 아니

라 작은 시도를 지속적으로 반복하여 획기적인 성과를 만들어내는 노력이다.

Page 8: IT 프로젝트를 성공으로 이끄는 요인들(  Critical success factors for software projects)

정책분석

< 참고문헌 및 사이트 >

1. Anselmo, Donald and Ledgard, Henry, “Measuring Productivity in the

Software Industry”, Communications of the ACM, Vol. 46, No. 11, 2003, pp.

121-125.

2. Ambysoft (by Scott Ambler), http://www.ambysoft.com/

3. Capers Jones, Applied Software Measurement (3rd edition), McGraw-Hill, 2008

4. Mohd H. Nasir and Shamsul Sahibuddin, Critical success factors for software

projects: A comparative study, Scientific Research and Essays Vol. 6(10), 2011, pp.

2174-2186

5. The Standish Group Chaos Report, http://blog.standishgroup.com/pmresearch

6. 소프트웨어 프로세스 이야기, http://swprocess.egloos.com

7. 애자일 이야기, http://agile.egloos.com