[섹션 2: SW 개발 수명주기와 테스팅] 1. SW 개발 수명주기 모델

IMKUNYOUNG·2023년 11월 19일
0

ISTQB FL

목록 보기
5/5

2.1 소프트웨어 개발 수명주기 모델

  • 2.1.1 (K2): 소프트웨어 개발 수명주기에서의 소프트웨어 개발 활동과 테스트 활동의 관계를 설명할 수 있다.
  • 2.1.2 (K1): 소프트웨어 개발 수명주기 모델을 프로젝트 정황과 제품 특성에 따라 수정해야 하는 이유를 식별할 수 있다.

소프트웨어 개발 수명 주기와 테스팅

  • 여러 가지 소프트웨어 개발 수명주기 모델이 있으며, 각각 다른 테스팅 접근법을 요구함
  • 모든 소프트웨어 개발 수명주기 모델에 적용하기 좋은 테스팅의 특성
    • 모든 개발 활동은 그에 상응하는 테스트 활동이 있다.
    • 각 테스트 레벨은 그 레벨에 맞는 구체적인 목적을 가진다.
    • 주어진 테스트 레벨에 맞는 테스트 분석과 설계는 상응하는 개발 활동이 이루어지고 있는 동안 시작해야 한다.
    • 테스터가 요구사항과 설계의 정의와 개선을 위한 대화에 참여하고, 작업 산출물 (예: 요구사항, 설계, 사용자 스토리 등)의 초안이 나오는 즉시 리뷰에 참여한다.
  • 어떤 소프트웨어 개발 수명주기 모델을 선택하더라도 테스트 활동은 수명주기 초반에 시작해야 함.
    • 테스팅을 초기에 시작하면 시간과 비용을 절약할 수 있음.

순차적 개발 모델과 테스팅


반복적 점진적 개발 모델

  • 점진적 개발
    • 요구사항 정의, 시스템 설계, 구축, 테스팅을 조각으로 나눠서 진행
    • 소프트웨어 기능은 점진적으로 증가 - 기능 증분
  • 반복적 개발
    • 기능 집합을 일련의 주기 안에서 구현
    • RUP (Rational Unified Process), 스크럼, 칸반, 나선형 또는 프로토타이핑


반복적 점진적 개발 모델과 테스팅

  • 테스트 레벨은 중첩되거나 반복적으로 적용
  • 지속적인 전달 혹인 배포를 활용하는 경우 여러 테스트 레벨에 대한 상당한 자동화 구현 요구
  • 시스템이 커짐에 따라 리그레션 테스팅의 중요성 증가

정황에 따른 소프트웨어 개발 수명주기 모델

  • 소프트웨어 개발 수명주기 모델은 프로젝트 정황과 특성에 따라 선태갛고 적용해야 함
    • 프로젝트 목표
    • 개발 대상 제품 유형
    • 비즈니스 특성
    • 식별된 제품 및 프로젝트 리스크
  • 프로젝트 정황에 따라 테스트 레벨과 테스트 활동, 개발 수명 주기 모델을 조합하거나 조정할 수 있음
    • 백엔드 시스템 개발과 테스팅에는 V-모델, 프런트엔드 사용자 인터페이스(UI) 기능의 개발과 테스트에는 애자일 모델 사용
    • 프로젝트 초반에는 프로토타이핑을, 이후에는 점진적 개발 모델 적용
    • 사물인터넷 시스템에서는 보통 오브젝트 별로 다른 소프트웨어 개발 수명주기 모델 적용
  • 소프트웨어 개발 모델이 프로젝트 및 제품 특성의 맥락에 맞게 조정되어야 하는 이유
    • 시스템의 제품 리스크의 차이 (복잡하거나 간단한 프로젝트)
    • 많은 사업부가 프로젝트나 프로그램의 일부일 수 있음 (순차적 및 애자일 개발의 조합
    • 제품의 짧은 출시 기간 (테스트 레벨에서 테스트 유형의 통합 및 테스트 레벨 병합)


문제

  1. 다음 중 모든 수명 주기 모델에 적용할 수 있는 좋은 테스팅의 특징은 무엇인가?
    • a. 문서 승인이 필요할 때마다 테스터가 리뷰에 참여한다.
    • b. 해당 개발 활동 종료 후, 즉시 테스트 설계를 시작한다.
    • c. 프로젝트의 모든 테스트 단계는 동일한 테스트 목적을 가진다.
    • d. 모든 개발 활동에는 대응하는 테스트 활동이 있다.

  1. 다음 프로젝트 및 제품 특성 중 소프트웨어 개발 수명주기 모델을 선택하고 조정하는 기준으로 적절하지 않은 것은?
    • a. 테스트 팀이 선호하는 접근법
    • b. 개발 대상 제품 유형
    • c. 소프트웨어 출시 시기
    • d. 식별된 제품 및 프로젝트 리스크

14번 문제 정답: d

15번 문제 정답: a

0개의 댓글