//구글콘솔 광고 추가가
들어가기 전 알아둬야 할 5.2 용어 설명
: 이해 ㄱㄱ
프로젝트 리스크 : 잠재적인 문제가 발생해 이로 인한 직접적인 효과가 프로젝트의 성공에 영향을 미칠 때, 그러한 잠재적인 문제들을 프로젝트 리스크라고 부름. ex> 프로젝트의 완성을 연기시킬 수 있는 인력 부족.
제품 리스크(== 품질 리스크) : 잠재적인 문제가 발생해 이로 인한 직접적인 효과가 제품의 품질에 영향을 미칠 때, 그러한 잠재적인 문제들을 제품리스크라고 부름. ex. 제품을 사용하는 일반적인 상황아래서 시스템 크래시를 일으키는 잠재적 신뢰성 결함.

++ < 리스크 대응 4가지 방법 >
- 리스크 수용 : (== 리스크 흡수) 반복적이고 피해가 크지 않은 리스크의 경우, 이 리스크에 대해 아무것도 하지 않고 피해를 받아들인다고 결정할 수 있는데 이것이 리스크 수용이다.
- 리스크 완화 : 리스크 빈도와 강도를 낮추기 위한 대응을 하는 것을 의미.
- 리스크 전가 : 리스크를 다른 제 3자에게 넘기는 것을 의미.
- 리스크 회피 : 리스크를 감당하는 것을 피하는 것. 발생하면 너무 피해가 클 것으로 예상되는 리스크의 경우 회피 대응을 할 수 있다. ex. 계약 협상 시 계약서 조항에 예외 조항을 넣거나 몇몇 조문을 거부함.

 

5.2 리스크 관리
리스크 관리란?
: 조직이 목표를 달성할 가능성과 제품의 품질을 높이고 이해관계자의 신뢰와 믿음을 얻을 수 있게 한다.
주요 리스크 관리 활동 2가지
리스크 분석 리스크 식별과 리스크 평가로 구성.
리스크 제어 리스크 완화와 리스크 모니터링으로 구성.
리스크 기반 테스팅이란
: 리스크 분석과 리스크 제어를 기반으로, 테스트 활동을 선택하고 우선순위를 정해 관리하는 테스트 접근법.

 

5.2.1 리스크의 정의와 리스크의 속성
: 리스크 발생 가능성과 리스크 영향도는 독립적이다.
리스크 : 발생시 부정적인 영향을 미칠 수 있는 잠재적인 사건, 위험, 위협 또는 상황을 말한다.

< 리스크의 특징 두 가지 요소 >
1. 리스크 발생 가능성 - 리스크 발생 확률(0보다 크고 1보다 작음).
2. 리스크 영향(피해) - 발생했을 때 생기게 될 피해.
>> 이 두가지 요소로 리스크 수준을 표현한다.

▶ 리스크 수준 = 리스크를 측정한 값.
리스크 수준이 높을수록 그에 대한 조치 또한 중요해진다.

 

5.2.2 프로젝트 리스크와 제품 리스크
프로젝트 리스크 프로젝트 관리 및 제어와 관련.
프로젝트 리스크가 발생하면 프로젝트 일정, 예산, 범위에 영향을 끼쳐 프로젝트의 목표 달성 능력에 영향을 미칠 수 있다.
프로젝트 리스크 예시 :
- 조직 문제(ex. 작업 산출물 인도 지연, 부정확한 추정, 예산 축소)
- 인력 문제(ex. 기술 부족, 갈등, 의사소통 문제, 직원 부족)
- 기술적 문제(ex. 협의되지 않은 개발 범위의 점진적 추가, 도구 지원 부족)
- 공급업체 문제(ex. 제 3자 인도 실패, 지원 기업의 파산)
제품 리스크 제품 품질 특성과 관련.
제품 리스크의 예시 : 누락 또는 잘못된 기능, 부정확한 계산, 런타임 오류, 열악한 아키텍처, 비효율적인 알고리즘, 부적절한 응답 시간, 열악한 UX(사용자 결험, user experience), 보안 취약점 등.
제품 리스크가 발현됬을 때 오는 부정적인 결과 예시 :
- 사용자 불만족.
- 매출, 신뢰, 평판 손실.
- 제 3자의 피해.
- 높은 유지보수 비용, 고객지원 부서의 과부하.
- 형사 처벌.
- 극단적일 경우 신체적 손상, 부상 또는 사망.

 

5.2.3 제품 리스크 분석
< 테스팅 관점에서 제품 리스크 분석의 목표 >
: 제품 리스크를 인식해 잔존 제품 리스크 수준을 최소화하는 방향으로 테스트 노력을 집중할 수 있도록 하는 것.
- 제품 리스크 분석은 소프트웨어 개발수명주기 초기에 시작하는 것이 이상적.

제품 리스크 분석은 리스크 식별과 리스크 평가로 이루어진다.
리스크 식별 포괄적인 리스크 목록을 생성하는 것.
이해관계자는 브레인스토밍, 워크숍, 인터뷰, 원인-결과 다이어그램 등 다양한 기법과 도구를 사용해 리스크를 식별.
리스크 평가 식별한 리스크를 분류하고, 리스크 발생 가능성/영향/수준을 결정하고, 우선순위를 정해 조치 방법을 제안하는 작업을 포함.

 

▶ 리스크 평가는 정량적 또는 정성적 접근법을 사용하거나, 두 가지를 혼합해 사용할 수 있다.

  • 정량적 접근법 : 리스크 수준은 리스크 발생 가능성과 리스크 영향을 곱한 값으로 계산.
  • 정성적 접근법 : 리스크 행렬을 사용해 리스크 수준을 판단.

제품 리스크 분석은 테스팅의 강도와 범위에 영향을 미칠 수 있다.

   

< 분석 결과 활용 방향 >

  • 테스팅 수행 범위 결정.
  • 테스트 레벨 결정 및 수행할 테스트 유형 제안.
  • 사용할 테스트 기법과 달성할 커버러지 결정.
  • 업무별 필요 테스트 노력 추정.
  • 중요 결함을 가능한 빨리 식별하기 위한 테스트 우선순위지정.
  • 리스크를 줄이기 위해 테스팅 외 다른 활동을 할 수 있는지 판단.

>> 평가된 리스크 수준은 테스팅을 얼마나 엄격하게 해야 하는지 판단하는 데 도움이 된다.(철저성과 범위에 영향)

 

5.2.4 제품 리스크 제어
제품 리스크 제어는 식별 및 평가된 제품 리스크에 대응해 취하는 모든 조치를 말한다.

제품 리스크 제어는 리스크 완화와 리스크 모니터링으로 이루어진다.
리스크 완화 리스크 평가 때 제안된 조치를 실행해 리스크 수준을 낮추는 활동.
리스크 모니터링 목적 : 리스크 완화 조치가 효과적인지 확인하고, 리스크 평가 개선을 위해 추가로 필요한 정보를 확인하고, 새롭게 나타난 리스크를 식별.

 

제품 리스크 제어 측면에서 리스크를 분석하면 거기에 대응하기 위한 다양한 완화 방안을 수립할 수 있다.

ex. 테스팅을 통한 리스크 완화, 리스크 수용, 리스크 전가, 대안 계획 등.

 

테스팅으로 제품 리스크 완화를 위해 취할 수 있는 조치

  • 주어진 리스크 유형에 적절한 경험과 기술을 갖춘 테스터 선정.
  • 적절한 수준의 테스팅 독립성 적용.
  • 리뷰 및 정적 분석 수행.
  • 적절한 테스트 기법 및 커버리지 수준 적용.
  • 영향을 받는 품질 특성을 다루는 적절한 테스트 유형 적용.
  • 리그레션 테스팅을 포함한 동적 테스팅 수행.

 

 

728x90
반응형

+ Recent posts