V 패턴과 개발 테스트

김용현·2023년 7월 19일
1

[cs]

목록 보기
2/5

SW 개발 모델 - V 패턴

소프트웨어를 개발하는 프로젝트는 다양한 방법으로 진행됩니다. 긴 시간 동안 한 단계씩 문제 해결 과정을 거쳐나가는 폭포수 모델과 짧은 시간 동안 많은 회의와 수정을 거치는 애자일 모델이 그 중 한 가지 입니다.
오늘 저희가 살펴볼 개발 모델은 폭포수 모델을 확장하여 개발하는 V 모델 입니다.

1. V 패턴이란?

각 개발 단계에 상응하는 테스트를 통해 검증하는 패턴이 존재하는 개발 모델

[이미지 출처 : 나미널의 블로그](https://naminal.tistory.com/185)

V 패턴은 앞서 말한 것과 같이 폭포수 패턴을 확장한 개발 모델입니다. 폭포수 모델과 같이 한 단계씩 설계와 코드 구현을 진행하게 되고 코드 단계의 구현을 마무리한 이후 부터는 각 단계에 대응하는 테스트를 수행하게 됩니다.
단순하게 설계한 코드의 정상 작동만을 확인할 뿐만 아니라 소프트웨어의 리소스 테스트 그리고 더 나아가 사용자의 요구를 충족시키는 지에 대한 여부도 직접 확인하는 과정을 포함하게 됩니다.

2. V 패턴의 테스트

  1. Unit test / 단위 테스트

    • 테스트의 첫 단계를 담당하게 되고, 구현된 소프트웨어에서 구성 요소 중 작동하는(fully functional) 가장 작은 단위를 기준으로 테스트를 수행하게 됩니다.
    • 단위 테스트의 가장 큰 목적은 코드가 설계한대로 작동하는지를 확인하기 위함입니다.
    • White-box 테스트를 통해 주로 진행되고, 기본적인 테스트 단위는 함수, 혹은 개발 프로그램 혹은 함수들을 포함하는 프로시저일 수 있습니다.
    • 단위 테스트의 가장 큰 장점은 코드가 변경되는 모든 시점에서 테스트할 수 있으며, 빠르게 수정이 가능한 점인입니다.
  2. Integration test / 통합 테스트

    • 통합테스트는 각 개별 단위들을 결합하여 정상 작동 여부를 확인하는 테스트입니다.
    • 통합 테스트를 통해 각 모듈 혹은 함수 간 연결 과정에서 발생하는 에러를 찾아내고 수정하는 것이 가장 중요한 업무 입니다.
    • 특히, 각 단위(함수 혹은 모듈이 될 수 있겠죠)를 같이 실행할 때 얼마나 효율적인지를 확인할 수 있습니다.
  3. System test / 시스템 테스트

    • 시스템 테스트는 완성된 어플리케이션을 전체로 테스트 해보는 첫 단계입니다.
    • 시스템 테스트에서는 기능 명세의 모든 기능들을 확인하고 명세의 품질 수준을 만족하는지 확인해야 합니다.
    • 주로 개발에 참여하지 않은 인원이 시스템 테스트를 수행하며, 고객들에게 기능적, 품질적 그리고 상업적 요구 사항들을 충분히 만족시키는지를 확인합니다.
  4. Acceptance test / 인수 테스트

    • 마지막 단계인 인수 테스트는 개발을 완료한 프로그램이 배포를 진행할 수 있는지를 결정하는 단계입니다.
    • 인수 테스트에서, 실제 사용자들은 프로그램이 자신의 요구사항을 충족 시키는지를 확인하게 됩니다.
    • 인수 테스트를 마무리 한다면, 프로그램은 배포를 수행할 수 있습니다.

출처

https://devuna.tistory.com/98
https://cocodo.tistory.com/8
https://www.seguetech.com/the-four-levels-of-software-testing/

profile
함께 일하고 싶은 개발자가 되기위해 노력 중입니다.

0개의 댓글