CMMI와 애자일 방법론을 결합하는 내용의 2019년 북한 논문 모습

북한 연구진들이 CMMI(SW개발 능력 성숙도 통합 모형)와 애자일 방법론(Agile Software Development)을 결합한 소프트웨어(SW) 개발 공정을 확립한 것으로 알려졌다.

7월 10일 대북 소식통에 따르면 지난 8일 김일성종합대학 홈페이지에 ‘소프트웨어 개발 공정 확립에서 CMMI 방식과 애자일 방식의 결합 가능성과 그 실현’이라는 글이 게재됐다.

이글은 김일성종합대학 첨단기술개발원의 문일남 박사가 작성했다. 문 박사는 앞서 김일성종합대학 학보 정보과학 2019년 65권 4호에 ‘중소 규모의 소프트웨어 개발 단위들의 개발공정 확립에서 CMMI 방식과 애자일 방식의 호상관계에 대한 연구’라는 논문을 수록한 바 있다.

즉 최근 김일성종합대학 홈페이지에 올린 내용은 지난해 연구의 연장선상에 있는 것이다. 지난해 학보 논문에서 문 박사는 CMMI 방식과 애자일 방식을 결합하는 방안을 연구하고 있다고 밝혔다. 이번에는 결합 방법을 확립했다고 소개했다. 

문 박사는 홈페이지에 올린 글에서 “오늘날 SW개발 단위들에서 효과적인 개발공정을 확립하는 것은 단위의 능력을 높이는데서 매우 절실한 문제로 나서고 있으며 이를 위한 방식으로서 CMMI 방식과 애자일 방식이 광범히 이용되고 연구되고 있다”며 “우리는 CMMI 방식과 애자일 방식의 실천들에 대한 분석과 실제적인 개발경험에 기초해 이 두 방식의 결합 형태를 분류하고 두 방식을 결합할 때 적응해야 할 문제들을 밝히고 결합을 실현했다”고 설명했다.

CMMI(SW개발 능력 성숙도 통합 모형)는 미국 카네기멜론대학 소프트웨어 공학연구소(SEI)와 산업계가 공동으로 개발, 보급하고 있는 소프트웨어 및 시스템 품질관리 기준이다. CMMI는 SW 개발 등의 품질 관련 국제 공인 기준으로 사용되고 있다.

CMMI의 조직 개발 프로세스 성숙도는 레벨1부터 레벨5로 나뉘어져 있다. 레벨1은 매우 미숙한 프로세스를 의미하고, 레벨5는 최적화 된 가장 성숙한 최고수준의 프로세스를 뜻 한다.

IT 기술이 발전하면서 과거 수백 줄에 불과했던 SW 소스코드가 수십 만 줄, 수백 만 줄에 달하고 있다. 이처럼 SW 코드가 복잡해지면서 SW 오류가 발생하고 있다. SW 오류는 시스템, 제품, 서비스의 품질을 낮추는 것은 물론 안정성을 위협하고 있다. 때문에 체계적으로 SW를 개발, 관리하자는 논의가 이뤄지고 있으며 CMMI 역시 그런 방안 중 하나다.

애자일 방법론(Agile Software Development)은 SW 개발 방법의 하나로, 개발 대상을 다수의 작은 기능으로 분할해 하나의 기능을 하나의 반복 주기 내에 개발하는 방법을 뜻 한다.

과거 SW개발은 무계획으로 이뤄졌다. 때문에 수정을 해야 하는 상황도 많이 발생하고 취약점, 오류 등 문제가 나타났다. 이에 SW 개발 시 전체적으로 구조를 설계하고 계획을 짜는 방식이 도입됐다. 하지만 이 방식은 너무 계획에 의존해 유연성이 없고 형식을 따르기 위해 소모되는 자원들이 많은 단점이 있었다. 

대안으로 나온 것이 애자일 방법론이다. 기민하다는 뜻의 애자일에서 볼 수 있듯이 애자일 방법론은 능동적인 대응이 강점이다. SW를 개발할 때 1차 요구사항, 2차, 3차 또는 부분으로 SW 기능을 나눠서 개발한다. 

문 박사는 CMMI 방식과 애자일 방식의 결합을 볼 때 CMMI 방식의 레벨2와 레벨3의 공정들 중에서 애자일 방식이 지원하지 않는 공정은 ‘단위공정정의’ 공정과 ‘단위양성’ 공정, ‘공급자계약관리’ 공정이며 충돌하는 공정은 ‘단위공정중점관리’ 공정과 ‘의사결정분석 및 해결’ 공정이라고 설명했다. 레벨4, 5에서는 ‘원인분석 및 해결’ 공정을 제외한 모든 공정들이 애자일방식과 충돌한다고 덧붙였다.

문 박사는 레벨3의 경우 애자일 방법들이 지원하지 않는 ‘단위공정중점관리’, ‘단위공정정의’, ‘단위양성’ 공정을 보충하는 방법으로 CMMI 레벨3의 요구 사항들을 전부 만족시키는 공정을 구성할 수 있다고 주장했다. 레벨4와 레벨5의 공정들은 대부분이 애자일 방식과 충돌하므로 애자일 방식을 이용해 레벨4, 5의 개선을 시도한다면 애자일성을 약화시켜 여러 장점들을 잃어버리게 된다고 지적했다. 때문에 레벨4, 5에 도달하기 위해서는 애자일 방식 이외의 새로운 방식을 적용해야 한다고 밝혔다.

CMMI 레벨3에 애자일 방법론을 결합했다는 것이다. 문 박사는 CMMI 방식과 애자일 방식을 결합해 SW개발공정을 확립함으로써 CMMI 레벨3 인증을 받으면서도 개발 공정들의 유연성을 높일 수 있었다고 설명했다.

이글을 통해 북한이 다양한 SW개발 방법론을 연구하고 있다는 것을 알 수 있다. 또 문일남 박사 등이 지난해 진행한 CMMI와 애자일 방법론에 대한 연구 성과가 최근 나온 것으로 추정된다.

강진규 기자  maddog@nkeconomy.com

* 독자님들의 뉴스레터 신청(<-여기를 눌러 주세요)이 NK경제에 큰 힘이 됩니다. 많은 신청 부탁드립니다.

 

관련기사

저작권자 © NK경제 무단전재 및 재배포 금지