본문 바로가기
테스트 이론

테스트 관리 - 리스크와 테스팅, 테스트 프로세스 심사 및 평가(TMM, TPI)

by QA Engineer 2025. 6. 8.

테스트 관리는 테스트 조직, 테스트 계획과 추정, 테스트 진행 모니터링과 제어, 형상관리, 리스크와 테스팅, 인시던트 관리, 테스트 프로세스 심사 및 평가 섹션으로 나뉘어서 테스트를 관리하는 체계적인 방법을 정리한다. 일반적으로 실무와 밀접하게 관련이 되어 있다. 이론적인 내용이 일반화되어 적용되는 내용이 많아서 특별하게 이론적으로 정리를 하기 애매하다는 것을 뜻하기도 한다. 테스트 관리 관련 내용을 공부하면서 실무 적용에 고려해봐야 할 내용 중 기억에 남는 것은 다음과 같다.

  • 테스트 리포팅에서 중요한 것 중 하나가 다음 유사 프로젝트에서 고려해야할 요소들을 정리하는 것이다.
  • 테스트 리포팅 시 작성하면 좋은 것 중 하나는 '오랫동안 수정되지 않은 결함 분석' 이다. 오랫동안 수정되지 않은 이유에 대해서 정리를 하고 이해관계자들에게 원인을 물어서 다음 프로젝트에서는 결함 수정이 지연되지 않도록 요구할 수 있다.
  • 테스트 제어에서 리스크(소프트웨어 개발과 수정의 지연 등) 발생 시 테스트의 우선순위를 변경된 리스크를 반영하여 재조정하는 것이 중요하다. 소프트웨어를 테스트하다보면 기존의 계획과 동일하게 프로젝트 상황이 전개되지는 않는다. 변경되는 상황에 맞춰 유동적으로 리스크 관리를 하는 것이 중요하다.

리스크와 테스팅

리스크는 이벤트, 위험 요소, 위협 혹은 상황의 발생 가능성과 발생했을 때의 바람직하지 못한 결과 즉 잠재적인 문제로 정의될 수 있다. 리스크 수준은 의도하지 않은 이벤트가 발생될 가능성과 그 영향(의도하지 않은 이벤트로 인한 해로운 결과)에 의해 결정된다. 레이놀즈는 리스크를 '장애로 인해 주어진 기간에 발생하는 비용'으로 정의하고 리스크를 다음과 같이 산출하고자 하였다.

  • 리스크(Risk) = 장애(Failure) 가능성 * 손실(Demage)
  • 여기서 장애 가능성은 사용 빈도와 결함 가능성을 곱한 값으로 볼 수 있으므로 리스크를 다음과 같이 산출할 수 있다.
  • 리스크(Risk) = 사용 빈도(Frequency of use) * 결함 가능성(Chance of defect) * 손실(Demage)

결국 리스크가 높다는 것은 사용 빈도가 높으면서 결함 가능성도 높고 발생한 결함(이벤트) 또는 장애로 인한 손실이 크다는 것을 의미한다. 기술적 리스크는 단위/통합 테스팅과 직접적으로 관련된다.(장애 발생 가능성 관리) 사업적 리스크는 인수 테스팅과 직접적으로 관련된다.(발생한 장애로 인한 영향 관리)

하위 레벨 테스트의 경우 개발 테스팅 중심으로 기술적인 리스크를 중점적으로 다룬다.(장애 발생 가능성> 장애로 인한 영향) 상위 레벨 테스트의 경우 인수 테스팅 중심으로 사업적 리스크를 중점적으로 다룬다.(장애 발생 가능성 < 장애로 인한 영향) 

테스트 프로세스 심사 및 평가

테스트 프로세스 심사에 사용되는 모델 중 가장 대표적인 것으로 TMM(Test Maturity Model)과 TPI(Test Process Improvement)가 있다. TMM과 TPI는 테스트 수행 조직의 테스트 프로세스 성숙도 평가에 널리 사용되고 있어 그 유용성이 이미 여러 형태로 입증되어 있다.

TMM(Test Maturity Model)

SEI의 CMM(Capability Maturity Model)을 기반으로 개발된 테스트 성숙도 모델이다. 테스트 프로세스를 체계적으로 5단계로 분류하여 단계별로 조직이 갖추어야 할 테스트 능력을 정의 한다. 주로 조직 전체의 테스트 역량을 평가하고 전략적으로 개선하기 위한 프레임 워크이다. 성숙도 수준을 5단계로 나누어서 평가하고 각 단계별 특징은 다음과 같다.

  1. Initial(초기) - 테스트가 비공식적이고 비정형적.
  2. Phase Definition(테스트 계획 수립) - 기본적인 테스트 계획과 절차 수립.
  3. Integration(조직에 통합) - 테스트가 개발 프로세스에 통합됨.
  4. Management andd Measurement(관리 및 측정) - 테스트가 측정되고 관리됨.
  5. Optimization(최적화) - 테스트 프로세스가 지속적을로 개선됨.

테스트 정책/전략/계획, 테스트 설계/실행/검토, 측정 및 분석, 조직의 테스트 문화가 핵심 요소로 평가된다. 조직의 테스트 프로세스를 전략적으로 개선하고 장기적인 품질을 확보할 수 있으며 리스크를 감소시킬 수 있다. 각 단계별 요구사항이 명확하여 로드맵 수립이 용이한 장점으로 개선 로드맵을 제시할 수 있다.

테스트 조직의 전체 성숙도를 전략적으로 관리하고자 하는 경우, 장기적인 테스트 프로세스 최적화를 위한 로드맵이 필요한 경우 사용하는 모델이다.

TPI(Test Process Improvement)

네덜란드의 Sogeti에서 개발한 실용 중심의 테스트 프로세스 개선 모델이다. 테스트 프로세스를 20개의 핵심 영역(Key Area)로 나누어 각 영역의 성숙도 레벨을 개별적으로 평가한다. 각 영역의 강점과 약점을 분석하고 맞춤형 개선이 가능하다.

주요 구성 요소로는 핵심 영역(Key Areas), 성숙도 단계, 체크리스트 기반 평가가 있다. 테스트 전략, 환경, 품질 시스템, 툴 사용, 테스트 설계, 결함 관리 등을 핵심 영역의 요소로 삼아 평가한다. A(초기)~D(최적화) 단계의 성숙도 단계를 구별하고 명확한 질문과 기준으로 각 영역의 상태를 평가하는 체크리스트를 사용한다. 각 핵심 영역은 독립적으로 존재하지 않고 다른 영역과 의존성을 가지고 있어서 한 요소의 수준을 발전시키기 위해서는 다른 요소의 수준을 우선적으로 이끌어내야 하는 경우가 있다.

현장의 현실적인 문제를 반영하여 빠른 개선을 이끌어낼 수 있는 실무 중심의 심사 방식이다. 핵심 영역 별로 개선할 수 있어서 선택적 도입이 가능하며 각 영역별로 현재 상태를 명확하게 판단하고 단기적인 개선안을 도출할 수 있어서 상세한 진단이 가능하다. 비교적 짧은 시간 내 적용이 가능하여 빠른 성과를 기대할 수 있다. 

현재 테스트 프로세스의 특정 문제를 빠르게 파악하고 개선하고자 할때, 테스트 프로세스의 진단을 통해 개선 우선순위를 정하고 싶은 경우 사용하는 모델이다.