V-Diagram

개념
- 소프트웨어 개발모델 중 폭포수모델의 각 단계별 Verification과 최종 완성물의 Validation을 지원하기 위해 개발된 검증 모형

I. 소프트웨어 개발 단계에 따른 테스트 방법, V-Diagram의 개요

   가. V-Diagram의 정의

  - 소프트웨어 개발모델 중 폭포수모델의 각 단계별 Verification과 최종 완성물의 Validation을 지원하기 위해 개발된 검증 모형

   나. V-Diagram의 특징

  1) 각 단계별 Verification과 Validation이 있어 오류의 발견 가능성 높이고 품질 향상 기대

  2) 폭포수 모델의 특성에 따라 생명주기의 반복 허용이 없다. 즉 변경이 어려움

  3) 높은 신뢰성이 요구되는 경우 적용 가능

 

 

II. V-Diagram

 

  • V모델에서 개발단계와 대응되는 단위(컴포넌트)테스트, 통합테스트, 시스템테스트, 인수테스트를 테스트 레벨이라고 함
  • 각각의 테스트 레벨은 서로 독립적이며 각각의 계획과 전략이 필요

 

 

 

 

 

III. 테스트 단계에 의한 분류 ( V-Diagram )

   가. Test 레벨(단계)

단계

테스트 방법

단위 테스트

- 구현 단계에서 프로그램 개발자에 의해 수행

- 개별 모듈 테스트를 위해 모듈의 단독 실행 환경 필요

통합 테스트

- 모듈을 결합하여 하나의 시스템으로 구성 시 테스트 수행

- 빅뱅 통합 : 한꺼번에 테스트하므로 오류 발생 시 원인규명 어려움

- 하향식 통합 : 상위 모듈 테스트 시 다수의 하위 스텁(stub) 필요

- 상향식 통합 : 하위 모듈 호출하는 테스트 드라이버(Driver) 필요

- 상,하향식 통합을 결합한 샌드위치 통합방식 사용 권장

시스템 테스트

- 통합 모듈에 대한 시스템적(비기능적) 테스트

- 신뢰성, 견고성, 성능, 안전성 등의 비기능적

- 요구사항도 테스트

인수 테스트

- 사용자의 만족여부를 테스트하는 품질 테스트

- 알파테스트 : 개발자 환경에서 사용자가 수행

- 베타테스트 : 일정 수의 사용자가 테스트 후 피드백

- 감마테스트 : 베타 버젼 배포 이후 다수의 사용자 대상 테스트

설치 테스트

- 시스템을 설치하면서 수행, H/W 체계, S/W 연결성 등 테스트

 

 

나. Test 레벨의 의미

  • 계획과 전략 : 각 레벨은 독립적 각각 다른 테스트 계획과 전략 필요
  •  수행 : 주체, 테스트 기법/형태 상이, 별도의 보고 필요
  •  종속적 관계 : 각 레벨은 서로 종속적이어서 테스트 레벨 변경 시는 시작 및 종료 조건을 갖추어야 함

 

다.  개발 초기에 테스팅을 수행한다는 것의 의미

  • 의미 : 개발 산출물(work Products) 을 리뷰 형태로 검토하면서 결함을 발견하는 정적테스팅 의미
  • 효과 : 개발 후반부 테스팅 비용 감소, 개발 초기 결함 수정 비용 저렴

 

라.  결함 예방 차원에서의 테스팅의 의미

  • 개발 초기에 테스트 베이시스가 되는 개발 산출물 리뷰하거나 조기에 테스트 설계 함으로써 얻어지는 효과

 

마. V&V의 의미

  •  개발 생명주기 전단계에서 수행
  •  Verification : 개발 단계의 산출물이 그 단계의 초기에 설정된 조건을 만족하는지 여부를 검증하는 프로세스
  •  Validation :  개발 중 개발 단계 말에 명시된  또는 명시되지 않았지만 사용 관점에서 요구사항이 만족하는지를 평가하는 프로세스

댓글