국내 요구사항 관리 시장의 현재와 나아갈 방향

기업이 제품, 어플리케이션, 시스템 등을 신규 개발하거나 유지보수 시 , 요구사항 (Requirement)은 개발의 방향 및 목표가 되면서 고객의 Needs 만족 여부를 확인할 수 있는 요건이다.

따라서 올바른 ‘요구사항의 정의 및 효과적인 관리’는 시스템 및 소프트웨어 개발 프로젝트를 성공적으로 완료하고 고객에게 제품을 전달하는데 있어서 중요한 프로세스 중 하나다. 또, 이미 ‘요구사항의 정의 및 관리 프로세스’는 CMMI, ISO 등과 같은 글로벌 품질 개선 모델, 표준 등을 준수하기 위해 반드시 충족시켜야 할 프로세스이기도 하다.

그러나 최근 국내 기업의 IT 프로젝트는 하이테크 기술을 요구하며 디지털 융복합으로 인해 시스템 복잡도가 기하급수적으로 증가하고 점점 대형화되고 있는 반면, 치열한 경쟁에 의해 개발주기는 점점 단축되고 있다. 더군다나 글로벌화와 분산 개발 등으로 인해 아웃소싱에 의한 개발 환경으로 변화함에 따라 요구사항 관리는 갈수록 어려워지고 있는 상황이다.

-요구 관리의 실패 대부분은 기술 외적인 요소가 원인

글로벌 시장 조사기관인 Standish Group의 자료에 따르면 해외 IT 프로젝트 실패 항목들 중 50%가 요구 관리와 관련되어 있고, 프로젝트의 전체 비용 중 70~80%가 요구 관리 실패로 인한 재 작업 비용이라고 한다. 하지만 Standish Group의 데이터는 비단 해외 프로젝트뿐만 아니라 국내 프로젝트에도 적용되는 데이터이기도 하다. 또 요구관리 실패에 대한 주된 원인으로는 다음의 2가지를 꼽을 수 있다.

1) 불충분한 요구사항의 정의 및 의사 소통: 제한된 자원과 일정으로 인해 개발 초기 프로세스에서 요구사항의 본질을 올바로 파악하지 못하는 것과 이해당사자간의 불완전한 대화

2) 변경 관리의 부실: 고객의 요구사항이나 개발 산출물에 대한 변경 시 해당 내용의 변경으로 인해 발생할 수 있는 영향이나 연관성 등을 고려하지 않음

이 조사 결과는 IT 기업이 프로젝트 및 제품 개발 역량 향상을 위해 수많은 기술적인 발전을 추구하는 노력에도 불구하고 성공적인 프로젝트 수행을 저해하는 기술 외적인 요소에 의해 많은 프로젝트가 실패의 위협을 받고 있음을 시사한다.

이러한 기술 외적인 위협 요소를 초기에 발견하고 최소화하기 위해서는 기존의 주먹구구식의 요구사항 관리에서 벗어나 공학적이고 체계적인 접근방법에 의해 요구사항을 관리함으로써 프로젝트 성공을 기대할 수가 있다.

그렇다면 기술 외적인 요소를 중심으로 현재 국내 기업의 요구 관리 상황과 문제점을 한번 알아보자.

#.국내 기업의 요구 관리 현황과 문제점

요구 관리의 중요성은 2000년대 초기부터 Mil-Std 498, CMM/CMMI, ISO/SPICE 등의 다양한 품질 모델 및 표준 등을 통해 본격적으로 국내에 소개되었고 이후엔 요구 관리가 모범 사례 (Best Practice)인 것으로 이해되기 시작하였다.

현재 국내 국방 및 항공 분야에서는 Mil-Std 498, ISO 12207 등을 중심으로 요구 관리를 체계(System) 공학의 일부로써 적용하기 시작하였고 산업계에서는 CMM/CMMI를 중심으로 점점 확산되고 있는 상태이다.

특히, 제조업계에서는 제품 개발 및 개발 주기 특성 상 요구사항의 재사용 (Reuse) 및 Product Family 관리 이슈로 인해 요구 관리의 중요성이 확대되고 있는 상황이다.

국내 기업에서 요구 관리하는 방법 및 운영 방식을 분석해 보면, 대부분의 기업이 MS Office 계열 또는 유사한 어플리케이션을 사용하여 요구사항의 정의 및 요구 변경 관리를 하고 있는 것이 현실이다.

시스템 또는 소프트웨어 개발 프로세스의 성숙도가 높거나 공학적으로 요구 관리를 접근하는 일부 기업에서는 외국 유명 벤더의 COTS (Commercial Off The Shelf) 도구를 도입하거나 자체 (In-house) 요구 관리 도구를 개발하여 요구사항을 관리하기도 한다.

요구 관리의 주체를 보면, 대부분의 국내 기업에서는 개발자가 개발 업무와 병행하여 요구 관리를 직접 수행하거나, 제한적이지만 일부 기업에서는 요구 관리 전담 조직을 구성하고 역할 및 권한을 부여하여 체계적으로 관리하기도 한다.

또한 프로세스 측면에서 분석해보면 요구 관리를 전사에 표준화하여 시스템적으로 적용하는 일부 기업이 있는 반면, 요구 관리 프로세스는 존재하지만 반복적으로 수행되지 않거나 주먹구구식의 (Ad-hoc) 방법으로 요구 관리를 하는 기업도 많은 것으로 파악되고 있다.

-프로세스, 인력, 기술, 문화적인 측면에서 요구 관리가 전반적으로 미흡

이처럼 요구 관리의 본격적인 국내 도입은 10여 년이 다 되어 가지만 아직까지 많은 기업들에 요구 관리가 내재화 및 체질화 되어 있다고는 볼 수 없다. 왜 그럴까?

필자가 2000년대 초부터 CMM 및 소프트웨어 공학 관련 컨설팅을 하면서 느낀 것은 대부분의 국내 기업의 IT 개발 실무자들이 요구 관리의 중요성과 필요성을 느끼고 있지만, 실제 현실에서는 많은 장벽과 문제점이 있는 것으로 파악되었다.

IT 품질의 3대 요소이면서 변화 관리의 주요 요건인 프로세스, 인력, 기술 관점에서 어떠한 문제점들이 국내 기업에 존재하고 있는지 살펴보면 다음과 같다.

1) 프로세스 (Process)

*요구 관리에 대한 기업 정책 및 규정 미흡: 요구 관리에 대한 기업의 필요성 인식 및 수용 의지가 미흡하고 요구 관리 프로세스에 대한 준수 규정이 약하거나 지켜지지 않음.

*요구 사항 정의 및 변경 관리 프로세스 부재 또는 미흡: 요구 사항 정의 및 변경 관리 프로세스 미흡하여 요구 관리의 반복적인 수행에 따른 일관성 및 추적성 확보가 어려움.

*지속적이고 종합적인 요구 관리 개선 노력 미흡: 요구 관리상의 문제점들을 지속적이면서 종합적인 개선을 통해 해결하기 보다는 임시 방편적으로 해결하여 문제점의 근본 원인이 해결되지 않고 되풀이 됨.

2) 인력 (People)

*불필요한 요구 관리 추가 비용 발생: 시스템/소프트웨어 개발 생명주기 상에서 요구사항간의 추적성 확보 미흡으로 요구 변경에 따른 시스템 영향 분석에 불필요한 추가 노력 소요됨.

*한정된 요구 관리 인원 및 전문가 부족: 요구 관리 인적 자원 또는 투입 공수의 절대적인 부족과 기업 내 전문 인력 양성 미흡으로 인해 요구 관리 전문성이 결여됨.

*비효과적인 요구 관리 교육: 요구 관리에 대한 사내 교육 프로그램 부족과 개발 현실을 충분히 고려 못한 교육 내용 구성으로 인해 교육 투자 비용 대비 효과 미비.

3) 기술 (Technology)

*요구 관리 도구의 비효과적인 사용 또는 미 도입: 자동화 도구의 미 도입 또는 올바르지 못한 사용과 템플릿의 부재로 인해 요구 관리가 비효율적임.

*요구사항 추출/정의 방법 또는 기법 적용 미흡: 요구사항 추출 기법의 적용 미흡과 요구사항 정의 역량 부족으로 요구사항의 올바른 문서화가 어려움.

*중장기적인 기술 개선 전략 로드맵 부재: 단기적인 문제 해결을 위해 즉흥적으로 기술을 도입함으로써 기술 개선의 중장기적인 비전과 전략의 부재로 전략적인 개선 방향성 모호함.

또한, 위의 3가지 요소 외에 인프라적인 요소, 즉 기업의 문화적인 측면에서 국내 요구 관리에 부정적인 영향을 미치는 주요 요소를 분석해 보면, 상위 관리자의 무관심 또는 현실을 무시한 과도한 수행 의지, 프로세스 개선 효과의 제한적인 경험, 문서화에 대한 부정적인 인식, 제품/시스템 정의 미흡으로 빈번한 요구 변경 등이 있다.

그럼 국내 기업이 나아갈 방향을 수립하기 전에 해외 선진 글로벌 기업은 요구 관리를 어떻게 하고 있는지 모범 사례 위주로 살펴보도록 하자.

-해외 선진 기업은 공학적인 접근방식을 통해 요구 관리를 모범 사례화 함

해외 선진 기업들의 요구 관리 체계를 보면 대부분 시스템적으로 접근하여 개발 업무의 일부로 정의되어 있고 전사적인 관점에서 요구 관리를 통제하고 개선하는 것을 볼 수 있다. 해외에서는 국방과 항공, 자동차 분야 속성상 필요에 의해 체계적인 요구 관리가 먼저 시작되어 자체 성숙된 후, 모범 사례화되어 일반 기업으로 확산되는 것을 볼 수 있다. 아래의 10가지 모범 사례들은 하나의 기업에서 모든 것을 수행하는 것이 아니라 여러 기업에서 수행하고 있는 모범 사례를 필자의 경험을 바탕으로 종합적으로 정리한 것이다.

*비즈니스 목적 및 우선순위와 연계된 가치 지향적인 요구 관리

*요구 관리 프로세스의 전사적인 통합 및 표준화를 통해 기업의 요구 변경 가시성(Visibility) 확보

*요구사항 정의 수준을 고려하여 개발 프로세스 정립 및 테일러링

*자동화 도구 및 솔루션의 프로세스 지원을 통한 요구 관리 수행

*발주자와 수주자간의 요구사항 의사소통 체계 구축

*요구사항 재사용 및 Product-line 체계 구축

*요구 관리 지표를 활용한 지속적이고 체계적인 요구 관리 개선 활동

*보다 효과적인 요구사항 이해를 위해 모델의 역할 이해 및 적용

*요구 관리 담당 인원의 적절한 구성 및 기술 개선 전담 인원 운영

*기업/프로젝트의 요구 관리 프로세스 준수성 확인 체계 구축

위에서 언급한 요구 관리의 공통적인 문제점 및 국내 기업의 문제점, 해외 선진 기업의 모범 사례 등을 비교 분석하면 국내 기업이 나아갈 방향을 정리할 수 있다.

#. 국내 기업이 나아갈 방향 및 전략- 시스템적이고 종합적인 요구 관리 필요

본 기고의 서두에서도 언급하였듯이 요구 관리는 기술 외적인 요소의 영향이 크다. 기술외적인 요소, 즉 기업 문화와 체계적인 관리, 중심으로 국내 기업이 나아갈 방향 및 전략을 아래와 같이 정리할 수 있다.

*중장기적인 요구 관리 개선 전략 및 로드맵 정의

*현실적인 요구 관리 개선 범위 정의 (예, 적용 범위, 가용자원, 제약사항, 기업 가치)

*점진적이고 반복적인 요구 관리 개선과 성과 측정으로 개선 효과 경험

*요구사항 정의 수준 및 환경에 적합한 요구 관리 및 개발 프로세스 정립

*요구 관리 효율성 개선을 위해 프로세스 지원 가능한 자동화 도구 활용

*요구 관리 자원의 적절한 구성과 도구 전문가 양성

위의 6가지 방향 및 전략을 달성하기 위해서 기업에서는 주먹구구식 형태의 단발성 위주의 개선보다는 시스템적이면서 종합적인 접근방식이 근본적으로 필요하고 “Garbage in, Garbage out”라는 규칙을 적용하였을 때 기업 또는 프로젝트에서 우선적으로 개선해야 될 프로세스 영역이 바로 요구 관리이다.

국내 IT 기업에서 요구 관리에 대한 지속적인 관심 및 노력, 올바른 투자를 한다면 다른 프로세스 영역보다 효과가 보다 빨리 현실화 될 수 있고, 기업 문화에 요구 관리가 체질화까지 된다면 고품질의 시스템 및 소프트웨어를 신속하게 생성할 수 있는 역량을 기업에서 충분히 갖출 수 있다고 필자는 생각한다.