확인과 검증: Difference between revisions

From CS Wiki
No edit summary
(검증과 확인 용어를 반대로 설명하고 있으므로 수정 함)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
[[분류:소프트웨어 공학]]
[[분류:소프트웨어 공학]]
;V&V; Verification & Validation; 확인 및 검증
 
;V&V; Verification & Validation; 검증 및 확인
;소프트웨어가 기능, 성능 및 만족도에 있어서 명시된 요구사항 및 내재된 요구사항을 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체
;소프트웨어가 기능, 성능 및 만족도에 있어서 명시된 요구사항 및 내재된 요구사항을 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체


* V&V 관련 표준
*V&V 관련 표준
 
[[파일:확인과 검증.png|700px]]
[[파일:확인과 검증.png|700px]]


== 확인(Verification)과 검증(Validation)의 차이 ==
==검증(Verification)과 확인(Validation)의 차이==
=== Bohem의 구분 ===
===Bohem의 구분===
* '''확인(Verification)''': 우리가 제품을 올바르게 빌드하고 있나?  
 
** Are we building the PRODUCT RIGHT?
*'''검증(Verification)''': 우리가 제품을 올바르게 빌드하고 있나?  
** 문서 기반의 정적인 분석 과정
**Are we building the PRODUCT RIGHT?
* '''검증(Validation)''': 우리가 올바른 제품을 빌드하고 있나?
**문서 기반의 정적인 분석 과정
** Are we building the RIGHT PRODUCT?
*'''확인(Validation)''': 우리가 올바른 제품을 빌드하고 있나?
** 실제 제품을 검사하고 [[소프트웨어 테스트|테스트]]하는 동적인 과정
**Are we building the RIGHT PRODUCT?
**실제 제품을 검사하고 [[소프트웨어 테스트|테스트]]하는 동적인 과정
 
===CMMi에서의 구분===
 
*'''소프트웨어 검증(Verification)''': 개발단계의 제품이 단계의 시작부분에서 부과된 조건을 만족시키는지를 결정하기위해 소프트웨어를 평가하는 과정이다.
*'''소프트웨어 확인(Validation)''': 소프트웨어가 특정 요구조건을 만족시키는가를 결정하기위해 개발과정 중, 또는 끝에 소프트웨어를 평가하는 과정이다.
 
==V&V 관련 테스트 분류==


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


== V&V 관련 테스트 분류 ==
* 확인(Verification)은 검토 과정
* 검증(Validation)은 [[소프트웨어 테스트|검사(테스트)]] 위주
{| class="wikitable"
{| class="wikitable"
! 구분
!구분
! 방법
!방법
! 설명
!설명
|-
|-
| rowspan="3" | Verification
| rowspan="3" |Verification
| 워크스루
|워크스루
(WalkThrough)
(WalkThrough)
| 개발 멤버가 집탄 토의에 따라 논리적인 오류 발견
|개발 멤버가 집단 토의에 따라 논리적인 오류 발견
|-
|-
| 인스펙션
|인스펙션
(Inspection)
(Inspection)
| 개발 과정상의 결과물을 검토하여 결함을 발견
|개발 과정상의 결과물을 검토하여 결함을 발견
|-
|-
| 동료 검토
|동료 검토
(Buddy Checks)
(Buddy Checks)
| 개발 당사자 주변의 동료가 상호적으로 문서 및 코드를 점검
|개발 당사자 주변의 동료가 상호적으로 문서 및 코드를 점검
|-
|-
| rowspan="6" | Validation
| rowspan="6" |Validation
| 단위 테스트
|단위 테스트
|  
|
* 인터페이스 테스트
*인터페이스 테스트
* 자료구조 테스트
*자료구조 테스트
* 수행경로 테스트
*수행경로 테스트
* 예외처리 테스트
*예외처리 테스트
* 경계값 테스트
*경계값 테스트
|-
|-
| 통합 테스트
|통합 테스트
|  
|
* 하향식 통합
*하향식 통합
* 상향식 통합
*상향식 통합
|-
|-
| 시스템 테스트
|시스템 테스트
|
|
* 회복 테스트
*회복 테스트
* 보안 테스트
*보안 테스트
* 강도 테스트
*강도 테스트
* 민감도 테스트
*민감도 테스트
* 성능 테스트  
*성능 테스트
|-
|-
| 인수 테스트
|인수 테스트
|  
|
* 알파 테스트
*알파 테스트
* 베타 테스트
*베타 테스트
|-
|-
| 설치 테스트
|설치 테스트
|  
|
* 하드웨어 구성
*하드웨어 구성
* 소프트웨어 구성
*소프트웨어 구성
* 파일시스템 구성
*파일시스템 구성
* 다른 소프트웨어와의 연계
*다른 소프트웨어와의 연계
|}
|}

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 단위 테스트
  • 인터페이스 테스트
  • 자료구조 테스트
  • 수행경로 테스트
  • 예외처리 테스트
  • 경계값 테스트
통합 테스트
  • 하향식 통합
  • 상향식 통합
시스템 테스트
  • 회복 테스트
  • 보안 테스트
  • 강도 테스트
  • 민감도 테스트
  • 성능 테스트
인수 테스트
  • 알파 테스트
  • 베타 테스트
설치 테스트
  • 하드웨어 구성
  • 소프트웨어 구성
  • 파일시스템 구성
  • 다른 소프트웨어와의 연계