제가 오늘 새벽에 팀블로그 스마트플레이스에 "소프트웨어 테스트의 중요성"에 대한 글을 올렸습니다. 독자분 중 하나가 사례를 추가해 주셔서 업데이트를 하였는데, 이 건에 대해 한 마디 남기죠.
먼저, 한국정부의 디지털 회계예산시스템의 오류에 대한 기사를 한번 보세요. 448억원을 들여 개발한 시스템이 잘 운영되고 있음에도 불구하고 4년만에 폐기하고, 3년동안 600백억원을 들여 새 시스템을 개발했군요.
삼성SDS와 현대정보기술이 함께 개발을 맡았네요. 엄청난 수치 오류가 나와서 국가적인 망신을 산 이번 스캔들에 대해 정부 관계자가 "모두 프로그래머가 프로그램을 잘못 짠 결과"라고 말하는 부분에서 실소가 나오는군요.
이것이 어찌 프로그래머 탓인가요? 소프트웨어 개발을 하게 되면 버그는 생길 수 밖에 없습니다. 개발자 수준에서의 zero defect는 사실상 불가능합니다. 그런 문제를 해결하기 위해 개발자가 개발한 소프트웨어에 대해서 테스트와 품질관리가 필요하며, 그것을 행하기 위한 별도의 전문가와 조직이 프로젝트에 필요한 겁니다.
소프트웨어는 엄청나게 복잡한 결과물입니다. 그렇기 때문에 품질관리를 제대로 하는 것이 중요하죠. 품질관리, 소프트웨어 테스팅을 어떻게 했는지 궁금할 따름입니다.
소프트웨어 프로젝트의 문제로 인하여 많은 예산 낭비가 발생하고 있습니다.
국가 차원에서 각 기관의 프로젝트를 총괄하고, 템플릿과 프로세스를 제공하고, 프로젝트 매니저를 파견하고, 현황을 리포팅하는 PMO(Project Management Office)가 필요하다고 생각합니다.