확인과 검증: Difference between revisions

From CS Wiki
(검증과 확인 용어를 반대로 설명하고 있으므로 수정 함)
 
Line 1: Line 1:
[[분류:소프트웨어 공학]]
[[분류:소프트웨어 공학]]


;V&V; Verification & Validation; 확인 및 검증
;V&V; Verification & Validation; 검증 및 확인
;소프트웨어가 기능, 성능 및 만족도에 있어서 명시된 요구사항 및 내재된 요구사항을 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체
;소프트웨어가 기능, 성능 및 만족도에 있어서 명시된 요구사항 및 내재된 요구사항을 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체


Line 8: Line 8:
[[파일:확인과 검증.png|700px]]
[[파일:확인과 검증.png|700px]]


==확인(Verification)과 검증(Validation)의 차이==
==검증(Verification)과 확인(Validation)의 차이==
===Bohem의 구분===
===Bohem의 구분===


*'''확인(Verification)''': 우리가 제품을 올바르게 빌드하고 있나?  
*'''검증(Verification)''': 우리가 제품을 올바르게 빌드하고 있나?  
**Are we building the PRODUCT RIGHT?
**Are we building the PRODUCT RIGHT?
**문서 기반의 정적인 분석 과정
**문서 기반의 정적인 분석 과정
*'''검증(Validation)''': 우리가 올바른 제품을 빌드하고 있나?
*'''확인(Validation)''': 우리가 올바른 제품을 빌드하고 있나?
**Are we building the RIGHT PRODUCT?
**Are we building the RIGHT PRODUCT?
**실제 제품을 검사하고 [[소프트웨어 테스트|테스트]]하는 동적인 과정
**실제 제품을 검사하고 [[소프트웨어 테스트|테스트]]하는 동적인 과정
Line 20: Line 20:
===CMMi에서의 구분===
===CMMi에서의 구분===


*'''소프트웨어 확인(Verification)''': 개발단계의 제품이 단계의 시작부분에서 부과된 조건을 만족시키는지를 결정하기위해 소프트웨어를 평가하는 과정이다.
*'''소프트웨어 검증(Verification)''': 개발단계의 제품이 단계의 시작부분에서 부과된 조건을 만족시키는지를 결정하기위해 소프트웨어를 평가하는 과정이다.
*'''소프트웨어 검증(Validation)''': 소프트웨어가 특정 요구조건을 만족시키는가를 결정하기위해 개발과정 중, 또는 끝에 소프트웨어를 평가하는 과정이다.
*'''소프트웨어 확인(Validation)''': 소프트웨어가 특정 요구조건을 만족시키는가를 결정하기위해 개발과정 중, 또는 끝에 소프트웨어를 평가하는 과정이다.


==V&V 관련 테스트 분류==
==V&V 관련 테스트 분류==


*확인(Verification)은 검토 과정
*검증(Verification)은 검토 과정
*검증(Validation)은 [[소프트웨어 테스트|검사(테스트)]] 위주
*확인(Validation)은 [[소프트웨어 테스트|검사(테스트)]] 위주


{| class="wikitable"
{| class="wikitable"

Latest revision as of 20:05, 12 May 2022


V&V; Verification & Validation; 검증 및 확인
소프트웨어가 기능, 성능 및 만족도에 있어서 명시된 요구사항 및 내재된 요구사항을 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체
  • V&V 관련 표준

확인과 검증.png

검증(Verification)과 확인(Validation)의 차이[edit | edit source]

Bohem의 구분[edit | edit source]

  • 검증(Verification): 우리가 제품을 올바르게 빌드하고 있나?
    • Are we building the PRODUCT RIGHT?
    • 문서 기반의 정적인 분석 과정
  • 확인(Validation): 우리가 올바른 제품을 빌드하고 있나?
    • Are we building the RIGHT PRODUCT?
    • 실제 제품을 검사하고 테스트하는 동적인 과정

CMMi에서의 구분[edit | edit source]

  • 소프트웨어 검증(Verification): 개발단계의 제품이 단계의 시작부분에서 부과된 조건을 만족시키는지를 결정하기위해 소프트웨어를 평가하는 과정이다.
  • 소프트웨어 확인(Validation): 소프트웨어가 특정 요구조건을 만족시키는가를 결정하기위해 개발과정 중, 또는 끝에 소프트웨어를 평가하는 과정이다.

V&V 관련 테스트 분류[edit | edit source]

구분 방법 설명
Verification 워크스루

(WalkThrough)

개발 멤버가 집단 토의에 따라 논리적인 오류 발견
인스펙션

(Inspection)

개발 과정상의 결과물을 검토하여 결함을 발견
동료 검토

(Buddy Checks)

개발 당사자 주변의 동료가 상호적으로 문서 및 코드를 점검
Validation 단위 테스트
  • 인터페이스 테스트
  • 자료구조 테스트
  • 수행경로 테스트
  • 예외처리 테스트
  • 경계값 테스트
통합 테스트
  • 하향식 통합
  • 상향식 통합
시스템 테스트
  • 회복 테스트
  • 보안 테스트
  • 강도 테스트
  • 민감도 테스트
  • 성능 테스트
인수 테스트
  • 알파 테스트
  • 베타 테스트
설치 테스트
  • 하드웨어 구성
  • 소프트웨어 구성
  • 파일시스템 구성
  • 다른 소프트웨어와의 연계