[ET단상]SW 품질은 프로세스에서 나온다

[ET단상]SW 품질은 프로세스에서 나온다

중동호흡기증후군(메르스) 사태가 우리에게 준 것은 사전에 대비해 예방했더라면 엄청난 혼란과 피해를 막을 수 있다는 것이다. 국민경제가 세월호 때보다 더 심각하게 하향 곡선을 겪지 않았을 것이다.

소프트웨어(SW)도 메르스와 마찬가지다. 항공·조선·자동차·원자력 등 거의 모든 기기에 SW가 내장돼 있다. SW도 메르스처럼 예상되는 문제를 예방하지 않으면 엄청난 경제적 손실을 초래할 수 있다. 도요타자동차 회사가 생산한 차량사고 원인이 SW 오류로 판명돼 1조3000억원이라는 천문학적 벌금을 낸 것을 잊어서는 안 된다.

SW 품질 신뢰성과 안전성을 논하지 않고 SW 중심사회를 구현할 수 없다. SW가 무너지면 모든 것이 무너지기 때문이다. 그만큼 SW 품질이 중요하다. 수출을 하려면 품질이 보장되지 않으면 안 된다. SW 품질 비용에는 세 가지 즉, 예방·평가·실패 비용이 있다.

여기에 1:10:100 관계가 있다. 처음부터 품질불량이 발생하지 않도록 품질관리 활동이나 교육에 투입하는 예방비용에 1이 소요된다면, 제품을 검사해 결함을 찾아 대책을 수립하는 데 소요되는 평가비용은 10이 된다. 불량제품이 시장에 반출 고객에게 전달돼 일어난 문제를 해결하기 위해 드는 실패비용은 100이 든다.

사전 예방 중요성을 강조한 것이다. 개발 후 시험으로 검증하는 것보다 개발과정에서 프로세스 이행 여부를 확인해 품질관리 활동에 투자하는 것이 효과적이다. 모든 제품 품질은 프로세스에서 나온다는 말이 과언이 아니다.

최첨단 F-22 전투기를 개발한 미국 록히드마틴 항공회사는 CMMI 최고등급 레벨5를 보유한다. 소프트웨어 프로세스 엔지니어링 그룹(SPEG)이 있어 무기SW 개발 프로세스를 정의한다. 이곳 승인이 있어야 무기SW 개발단계에 진입할 수 있다. SW 개발 프로세스를 중요시 여긴다.

프로세스란 어떤 일을 하는 데 단계별 절차와 수행내용을 구체화한 것이다. 오랜 경험과 시행착오, 학문적 이론 등을 바탕으로 만들어진 일종의 규범, 규칙이다. 프로세스를 준수하는 것이 가장 안전하고 지름길이 된다.

프로세스를 하나의 신호등이라고 생각하면 된다. 사거리에는 일정한 규칙(프로세스)을 따라 신호등 색깔이 변해 사람과 차량이 안전하게 통행하도록 돼 있다. 광화문 사거리에 신호등이 없다면 수많은 사람과 차량 통행이 안전하게 이뤄질까. SW도 마찬가지다. 프로세스 없이 어떻게 안전하고 신뢰성 있는 고품질 SW를 개발할 수 있을까.

오래전부터 선진국은 SW개발 프로세스 모델로 개발조직 품질역량 수준을 측정했다. 대표적으로 ISO/IEC 15504 SPICE, 미국 카네기멜론대학 CMMI 등이다. 우리나라에는 소프트웨어 프로세스(SP)가 있다. 모두 SW 개발조직 역량을 높이기 위한 것이다. 규제가 아니다.

SW를 수출할 때 무엇으로 품질이 뛰어나며 안전하고 신뢰성이 있다고 설명할 것인가. CMMI 레벨5를 획득한 회사 제품과 아무것도 없는 회사 SW 중 어느 것을 객관적으로 더 신뢰할까. 정보통신산업진흥원 SW공학센터에서는 중소·중견기업 대상으로 SP인증을 획득해 역량을 갖출 수 있도록 재정 지원과 교육을 한다. 방위사업청은 무기 품질 문제를 해소하기 위한 방안으로 제안서 평가 시 CMMI, SPICE, SP인증 자격이 있으면 가점을 부여한다.

올챙이는 세월이 지나면 무조건 개구리가 되지만 중소중견기업은 세월이 지난다고 대기업이 되지는 않는다. SW 중심사회에서 중추적 역할을 하는 중소중견기업이 대기업으로 성장하기 위해 프로세스 기반 SW 개발 역량을 갖춰야 한다. 과정은 다소 힘들고 어려운 일이지만 반드시 거쳐야 하는 길이다.

이성남 정보통신산업진흥원 SW공학센터 전문위원 pirdesoft@nipa.kr