사진; 소프트웨어의 품질향상에 기여하게 될 KAIST 소프트웨어 프로세스 개선센터(센터장 배두환 교수·아랫줄 왼쪽에서 두번째) 연구진들이 자리를 함께했다.
전세계 소프트웨어의 품질평가는 미국 카네기멜론대학의 소프트웨어공학 연구소(SEI)가 지난 86년 제시해놓은 소프트웨어 개발 프로세스의 성숙도와 품질향상에 대한 지침 및 평가 모델인 CMM(Capability Maturity Model)에 따라 이루어지고 있다.
소프트웨어의 성숙도에 따라 다섯 레벨로 이루어진 CMM의 레벨 획득은 소프트웨어를 개발하는 SI업체에 있어 국내외 시장에 제시할 수 있는 회사의 능력과 생산된 제품의 품질에 대한 국제 공인상표라는 점에서 세계적인 SW 품질보증 심사모델로 자리잡은 경우다.
특히 SEI의 최근 발표에 따르면 87년부터 지난해까지 CMM을 이용해 품질을 평가하는 CBA IPIs와 SPAs를 실시한 전세계 소프트웨어 조직은 총 1638개에 심사만 2162회가 이루어졌다. 이는 미국을 비롯해 캐나다·중국·프랑스·인도·일본·싱가포르 등이 소프트웨어 프로세스의 성숙도와 관련 CMM기준에 맞춰 개선노력을 기울이고 있다는 것을 의미한다.
이에 반해 국내에서는 지난 2000년 전후부터 소프트웨어 개발 조직에서 CMM을 도입해 소프트웨어 개발 생산성 및 품질 향상 노력을 기울이고 있으나 일부 대기업을 중심으로 프로세스 개선활동이 진행되는 등 아직까지는 편중이 심한 상황이다. 이에 따라 보다 많은 조직에 프로세스 개선활동을 용이하게 할 수 있는 프로세스 개선지침 개발이 절실하다는 것이 전문가들의 지적이다.
지난 9월 국내 처음 설립된 한국과학기술원(KAIST)의 소프트웨어 프로세스 개선센터(SPIC·센터장 배두환 KAIST 교수). 이곳에서는 소프트웨어 프로세스 개선을 위한 소프트웨어 공학기술의 개발이라는 목표아래 ‘제2의 카네기멜론대’를 지향하고 있다.
참여 연구진은 센터인 한국과학기술원을 포함해 상명대·서강대·서울여대·이화여대·호서대·한국정보통신대학교(ICU) 등 모두 7개 대학 8명의 소프트웨어 공학 전공 교수와 40명이 넘는 석·박사과정 대학원생, 관련 업체들로 구성돼 있다.
센터는 △프로세스 개선을 위한 요소기술 개발 △CMM과 CMM통합인 CMMI의 국내 도입 및 구현 지원 △개발된 요소기술의 산업체 적용 및 보급 △소프트웨어 프로세스 전문가 양성 등에 1차 목표를 두고 있다.
프로세스 개선을 위한 요소기술 개발의 경우 프로세스 소프트웨어 공학 환경(PSEE)에 기반을 둔 소프트웨어 프로세스 개선 지원도구 프로토타입을 개발하는 데 연구의 초점을 맞춰놓고 있다.
또 CMM 핵심 프로세스 영역별로 저작도구를 생성해 PSEE·CMM 기반 프로세스 평가지원, 소프트웨어 품질평가, 테스팅 모델 자동화, 요구사항 관리, 형상 관리, 프로세스 자산 라이브러리 지원 등의 세부과제 개발을 목표로 하고 있다.
센터는 CMM과 CMMI의 국내 도입 및 구현을 위해 CMM·CMMI에서 제공하고 있는 상위수준의 프로세스 개선지침을 구체화해 이를 해당 조직체에 적합하도록 구현하고 있다. 또 CMM과 CMMI의 핵심 프로세스 영역에서 제시된 세부 실행지침들을 일반 조직체에서 쉽게 도입할 수 있도록 지침서도 개발한다.
개발된 요소기술의 산업체 적용 및 보급을 위해서는 센터 주관으로 공청회·워크숍·세미나 등을 개최할 예정이며, 개발된 요소기술은 산업체로부터 실효성을 검증받아 연구 및 개발된 결과를 해당 산업체에 이전할 계획이다.
또 센터에 참여한 각 대학의 석·박사과정 학생들과 일반 산업체 실무자들을 대상으로 다양한 교류를 통해 국내 소프트웨어 공학 전문가 양성에도 나서고 있다. 일반 산업체 실무자들은 센터주관의 세미나와 교육·온라인 강의 등을 통해 센터에서 개발된 요소기술 및 지침서에 대한 기술이전을 통해 소프트웨어 공학 분야별 전문가를 배출할 방침이다.
연구는 향후 8년(2002년 9월∼2010년 8월) 동안 두 단계(각 4년)로 나뉘어 진행된다.
1단계에서는 CMM과 CMMI의 레벨 2·3의 핵심 프로세스 영역에 대한 연구를 중점적으로 수행한다. 연구결과는 핵심 프로세스 영역에 대한 지침서와 PSEE에 기반한 소프트웨어 프로세스 개선 지원도구 프로토타입, 그리고 각종 논문과 특허의 형태로 제시할 계획이다.
2단계에서는 1단계 결과의 정제 및 이를 바탕으로 한 CMM & CMMI의 레벨 4·5에 대한 연구의 확장, 연구결과의 기술이전 방안을 마련할 계획이다.
연구결과의 산업화를 위해서는 산업계의 요구가 반영되고 현실적인 연구결과를 달성하는 것이 중요하다는 판단에 따라 센터를 구성하고 있는 참여대학뿐만 아니라 산업체, 국내외 연구소들과의 활발한 교류를 통해 연구에 요구사항들을 반영하고 검증받을 계획이다.
특히 국내 대학·연구소들과의 학술 및 기술교류 지원, SPI 실무자 및 관련 기관, 그리고 일반 산업체(파일럿 테스트업체 포함)들로부터 피드백을 받아 연구에 재반영하는 체계구성의 지원을 포함해 산학 협동연구 활성화 지원 등의 방안을 모색중이다.
연구결과를 산업체에 기술이전하는 방법으로는 기술교육·기술제공·인력제공의 세 가지 방법을 대상으로 검토중이며 기술교육은 지정된 업체를 통한 온라인 교육과 오프라인 교육으로 이루어진다. 오프라인 교육은 실제 기업체를 대상으로 한 공개 워크숍 및 관련 학회·세미나 등의 공동주최 및 참여, 그리고 컨설팅으로 구성된다.
배두환 센터장은 “아직까지 5단계 능력을 보유하고 있는 국가는 없으며 일본·중국·싱가포르는 4단계에 급접해 있고 이스라엘 및 영국 등의 경우는 CMM 3단계 정도의 조직을 보유하고 있는 실정”이라며 “자원빈국인 우리나라가 세계 시장을 석권할 수 있는 유망한 분야 중 하나”라고 말했다.
◆배두환 센터장 인터뷰
“우리나라는 소프트웨어 분야에서 선진국에 비해 상당히 뒤처져 있습니다. 프로세스 평가모델인 CMM의 레벨에 적용해 볼 때 국내 기술은 95%가 주먹구구식의 레벨 1단계로 볼 수 있습니다.”
지난 9월 국내에서 처음으로 설립된 한국과학기술원(KAIST)의 소프트웨어 프로세스 개선센터 배두환 센터장(44)은 소프트웨어를 제대로 개발하려면 최소 3단계는 돼야 한다고 강조했다.
그런 의미에서 그는 소프트웨어 공학 분야에서 처음 생긴 소프트웨어 프로세스 개선센터에 기대를 해도 좋다며 소프트웨어 공학 분야에서 프로세스 개선을 위한 장기간의 연구를 위한 기반은 마련된 셈이라고 말했다.
그는 우리나라 수준에 대해 “조직이나 인력·투자 규모 등에 따라 다소 차이가 나긴 하지만 우리나라가 3단계에 이르려면 향후 5년은 족히 노력해야 할 것”이라며 “늦은 감은 있지만 간간이 투자되고 있는 기업체 중심의 사업을 산학 협력 사업으로 확대해 나가야 할 것”이라고 말했다.
“제품 만드는 일에도 힘을 쏟아야 하기 때문에 소프트웨어 공학 연구와 병행하기 어려운 점이 많습니다.좋은 제품은 외국 업체들이 선점하고 있는데다 해외수출을 위한 도구 등 제품개발이 힘들고 시간이 많이 걸려 프로세스 분야를 기반기술처럼 생각하고 투자에 나서야 할 것입니다.”
그는 “미국은 카네기멜론대의 소프트웨어공학센터(SEI)에는 연구원이 300명이나 된다”며 “장기적으로 카네기멜론대 같은 역할을 수행할 수있는 기관으로 육성할 계획”이라고 밝혔다.
미국은 소프트웨어 공학의 경우 10여년 전부터 전산학에서 분리돼 소프트웨어 공학 학부과정과 대학원과정을 개설한 데 반해 우리나라의 경우 최근들어 소프트웨어 공학과가 여기저기서 생겨나고 있으며 시험인력이나 소프트웨어 기술 등의 인력인증이 확산되고 있다는 것이 그의 진단이다.
배 센터장은 건설분야의 예를 들며 건설이 시공과 설계가 분리돼 있듯 소프트웨어 분야도 전산학 전문가만이 아니라 다양한 분야 전문가가 필요하다고 덧붙였다.
“내년부터는 KAIST에도 소프트웨어 공학 전문과정을 개설해 각종 관련 세미나 및 교육의 기회를 넓히고 실무지식을 습득할 수 있도록 배려할 것입니다.”
그는 이를 뒷받침하기 위해 “연구진들에 국내외 관련 학회참여 및 논문발표를 장려하고 해외 교환학생 과정이나 단기 교육프로그램 연구기회를 제공할 방침”이라며 “프로세스 전문가, 소프트웨어 개발 전문가, 품질 및 보증 전문가, 교직원 및 연구원 등의 분야별 전문인력 양성에 최선을 다할 것”이라고 말했다.
<대전=박희범기자 hbpark@etnews.co.kr>
★관련 그래프/도표 보기
관련 통계자료 다운로드 CMM을 적용한 PSEE기반의 프로세스 개선 지원도구의 구조