(ISTQB) 자격증 정리 문서

CokeBear·2025년 10월 22일
0

테스트 프로세스 관계 기반 통합 정리

본 문서는 ISTQB CTFL v4.0 실러버스의 핵심 내용을 관계 중심으로 재구성한 것입니다. 각 항목의 상세 내용은 명시된 장/절을 참조하시기 바랍니다.


1. 테스팅의 기본 개념과 목적 (기초: 제1장)

1.1 테스팅의 정의와 범위 (상세: 1.1절)

테스팅이란?

  • 결함 식별과 품질 평가를 위한 일련의 활동
  • 테스트 대상(test object): 테스트되는 모든 작업 산출물
  • 베리피케이션(요구사항 충족 확인) + 밸리데이션(사용자 필요 충족 확인)
  • 동적 테스팅(실행) + 정적 테스팅(비실행)

테스팅과 디버깅의 차이 (상세: 1.1.2절)

  • 테스팅: 장애 유발 또는 결함 발견
  • 디버깅: 장애 원인 찾기 → 분석 → 제거
  • 관계: 테스팅에서 발견한 결함을 디버깅으로 수정 → 확인 테스팅으로 검증 → 리그레션 테스팅으로 부작용 확인 (2.2.3절 참조)

일반적인 테스트 목적 (상세: 1.1.1절)

  1. 작업 산출물 평가
  2. 장애 유발 및 결함 식별
  3. 요구된 커버리지 보장 (4장 테스트 기법 참조)
  4. 리스크 수준 완화 (5.2절 리스크 관리 참조)
  5. 베리피케이션 및 밸리데이션
  6. 이해관계자 의사결정 지원 (5.3절 테스트 보고서 참조)
  7. 품질에 대한 자신감 획득

1.2 테스팅이 필요한 이유 (상세: 1.2절)

테스팅의 가치

  • 조기 결함 발견으로 비용 절감 → 조기 테스팅 원리 (1.3절)시프트 레프트 (2.1.5절) 연결
  • 품질 직접 평가테스트 메트릭 (5.3.1절) 활용
  • 사용자 대변인수 테스팅 (2.2.1절) 연결
  • 계약/법률/규제 요구사항 충족

테스팅과 품질 보증(QA)의 관계 (상세: 1.2.2절)

  • 테스팅: 제품 지향적, 교정 접근법 (품질 제어의 주요 활동)
  • 품질 보증: 프로세스 지향적, 예방 접근법
  • 상호작용: 테스트 결과 → QA에 피드백 제공 → 프로세스 개선 → 회고 (2.1.6절) 연결

오류-결함-장애-근본 원인 관계도 (상세: 1.2.3절)

근본 원인 → 오류(실수) → 결함(버그) → 장애(failure)
                                          ↓
                              테스팅으로 발견 → 디버깅 → 수정

1.3 테스팅의 7가지 원리 (상세: 1.3절)

  1. 테스팅은 결함 존재를 밝히지만, 부재를 증명하지 않는다
  2. 완벽한 테스팅은 불가능하다테스트 기법 (4장), 우선순위지정 (5.1.5절), 리스크 기반 (5.2절) 활용
  3. 조기 테스팅으로 시간과 비용 절약시프트 레프트 (2.1.5절), 정적 테스팅 (3장) 연결
  4. 결함은 집중된다리스크 기반 테스팅 (5.2절) 적용
  5. 테스트 효과는 줄어든다리그레션 테스트 자동화 (2.2.3절, 6장) 필요
  6. 테스팅은 정황에 의존적이다SDLC별 조정 (2.1절), 테스트 계획 (5.1절)
  7. 결함-부재는 궤변이다베리피케이션 + 밸리데이션 모두 필요

2. 테스트 프로세스와 활동의 흐름 (제1장 + 제5장 통합)

2.1 테스트 프로세스 전체 흐름 (상세: 1.4.1절)

[계획] → [모니터링/제어] → [분석] → [설계] → [구현] → [실행] → [완료]
   ↓         ↓              ↓        ↓         ↓         ↓        ↓
 5.1절    5.3절         4장 적용  4장 적용  5.1.5우선순위 5.5결함관리 2.1.6회고

각 활동의 핵심과 상호관계

1) 테스트 계획 (상세: 1.4.1, 5.1절)

  • 목적 정의 및 접근법 선택
  • 산출물: 테스트 계획서 (5.1.1), 테스트 전략
  • 연관:
    • 리스크 관리 (5.2절) 결과 반영
    • 추정 기법 (5.1.4절) 사용
    • 시작/완료 조건 (5.1.3절) 정의
    • SDLC 유형 (2.1절) 고려

2) 테스트 모니터링과 제어 (상세: 1.4.1, 5.3절)

  • 모니터링: 진행 상황 지속 점검
  • 제어: 목적 달성 위한 조치
  • 산출물: 테스트 진행 상황 보고서 (5.3.2)
  • 연관:
    • 테스트 메트릭 (5.3.1) 수집
    • 리스크 모니터링 (5.2.4) 연계
    • 형상 관리 (5.4절) 활용

3) 테스트 분석 (상세: 1.4.1, 4장)

  • "무엇을 테스트할 것인가?"
  • 테스트 베이시스 분석 → 테스트 컨디션 정의
  • 연관:
    • 테스트 기법 (4장) 사용
    • 리스크 분석 (5.2.3) 결과 반영
    • 추적성 (1.4.4) 구축 시작

4) 테스트 설계 (상세: 1.4.1, 4장)

  • "어떻게 테스트할 것인가?"
  • 테스트 컨디션 → 테스트 케이스 구체화
  • 산출물: 테스트 케이스, 테스트 차터, 커버리지 항목
  • 연관:
    • 테스트 기법 (4.2~4.5) 적용
    • 테스트 데이터 요구사항 정의
    • 테스트 환경 (1.4.3) 설계

5) 테스트 구현 (상세: 1.4.1)

  • 테스트 실행 준비
  • 산출물: 테스트 절차, 테스트 스위트, 테스트 스크립트, 테스트 실행 일정
  • 연관:
    • 우선순위지정 (5.1.5) 적용
    • 테스트 자동화 (6장) 구현
    • 테스트 환경 구축

6) 테스트 실행 (상세: 1.4.1)

  • 테스트 실행 및 결과 비교
  • 산출물: 테스트 로그, 결함 보고서
  • 연관:
    • 결함 관리 (5.5절) 프로세스
    • 확인 테스팅/리그레션 테스팅 (2.2.3)
    • 테스트 도구 (6.1절) 활용

7) 테스트 완료 (상세: 1.4.1, 5.3절)

  • 마일스톤에서 수행
  • 산출물: 테스트 완료 보고서 (5.3.2), 교훈, 변경 요청서
  • 연관:
    • 회고 (2.1.6) 수행
    • 테스트웨어 보관
    • 프로세스 개선

2.2 테스트웨어와 추적성 (상세: 1.4.3, 1.4.4절)

테스트웨어의 종류와 활동별 연계

활동          → 주요 테스트웨어
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
계획          → 테스트 계획서, 리스크 관리 대장 (5.2)
모니터링/제어 → 테스트 진행 보고서 (5.3.2), 제어 지침
분석          → 테스트 컨디션, 결함 보고서
설계          → 테스트 케이스, 테스트 차터, 커버리지 항목
구현          → 테스트 절차, 테스트 스크립트, 테스트 데이터
실행          → 테스트 로그, 결함 보고서 (5.5)
완료          → 테스트 완료 보고서 (5.3.2), 교훈

추적성의 가치 (상세: 1.4.4절)

  • 커버리지 평가 지원: 테스트 케이스 ↔ 요구사항
  • 리스크 평가: 테스트 결과 ↔ 리스크 (5.2절)
  • 영향도 분석: 변경 → 리그레션 테스트 범위 (2.2.3)
  • 형상 관리 (5.4절) 지원
  • 테스트 보고 (5.3.2절) 명확화

2.3 테스팅 역할과 책임 (상세: 1.4.5절)

두 가지 주요 역할

테스트 관리 역할

  • 책임: 테스트 프로세스, 팀, 활동 리더십
  • 주요 활동:
    • 테스트 계획 (5.1)
    • 테스트 모니터링/제어 (5.3)
    • 테스트 완료
  • 연관: 리스크 관리 (5.2), 테스트 보고 (5.3.2)

테스팅 역할

  • 책임: 테스팅의 공학적 측면
  • 주요 활동:
    • 테스트 분석
    • 테스트 설계
    • 테스트 구현
    • 테스트 실행
  • 연관: 테스트 기법 (4장), 결함 관리 (5.5)

2.4 테스팅 필수 기술과 협업 (상세: 1.5절)

보편적으로 필요한 기술 (상세: 1.5.1절)

  • 테스팅 지식: 테스트 기법 (4장) 활용
  • 철저함/신중함: 결함 식별
  • 의사소통 기술: 결함 보고 (5.5), 테스트 보고 (5.3.2)
  • 분석/비판적 사고: 테스트 설계, 리스크 분석 (5.2)
  • 기술/도메인 지식: 도구 사용 (6장), 요구사항 이해

전체 팀 접근법 (상세: 1.5.2절)

  • 개념: 팀원 누구나 작업 수행 가능, 모두가 품질 책임
  • 연관:
    • 협업 기반 테스트 접근법 (4.5절)
    • 애자일 개발 (2.1절)
    • 리뷰 (3.2절) 참여

테스팅의 독립성 (상세: 1.5.3절)

  • 독립성 수준: 없음 → 일정 → 높음 → 매우 높음
  • 장점: 다른 관점으로 결함 식별, 가정 검증
  • 단점: 협업 저해 가능, 책임감 손실 가능
  • 연관:
    • 테스트 레벨별 역할 (2.2.1)
    • 리뷰 역할 (3.2.3)
    • 안전 치명적 시스템 요구사항

3. SDLC와 테스팅의 관계 (제2장)

3.1 SDLC가 테스팅에 미치는 영향 (상세: 2.1.1절)

SDLC 모델별 테스팅 특성

SDLC 유형         → 테스팅 특성                  → 관련 개념
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
순차적 개발       → 초기 리뷰, 후반 동적 테스팅   → 테스트 레벨 (2.2.1)
반복적/점진적     → 모든 반복마다 전체 테스트      → 리그레션 테스팅 (2.2.3)
애자일           → 가벼운 산출물, 자동화 선호    → 테스트 자동화 (6장)
                                               → 경험 기반 기법 (4.4)

3.2 SDLC의 좋은 테스팅 프랙티스 (상세: 2.1.2절)

  1. 개발 활동 ↔ 테스트 활동 매핑 → 품질 제어 대상
  2. 테스트 레벨별 독립 목적 (2.2.1절) → 중복 방지
  3. 조기 테스트 시작 → 시프트 레프트 (2.1.5절)
  4. 리뷰 조기 참여 (3장) → 시프트 레프트

3.3 테스트 주도 개발 접근법 (상세: 2.1.3절)

세 가지 접근법의 관계

TDD (테스트 주도 개발)
  └─ 컴포넌트 레벨 (2.2.1)
  └─ 코드 작성 전 테스트 작성
  └─ 화이트박스 기법 (4.3) 활용

ATDD (인수 테스트 주도 개발) ←→ 4.5.3절 상세
  └─ 시스템/인수 레벨 (2.2.1)
  └─ 인수 조건 (4.5.2) 기반
  └─ 협업 기반 접근법 (4.5)

BDD (행위 주도 개발)
  └─ Given/When/Then 형식
  └─ 이해관계자 이해 용이
  └─ ATDD와 유사

공통점:

  • 테스트 우선 (조기 테스팅 원리 1.3)
  • 시프트 레프트 (2.1.5)
  • 자동화 유지 (6장)

3.4 DevOps와 테스팅 (상세: 2.1.4절)

DevOps의 테스팅 영향

DevOps 요소        → 테스팅 연관
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CI/CD             → 자동화 테스트 (6장)
                  → 리그레션 테스트 (2.2.3)
                  → 시프트 레프트 (2.1.5)

배포 파이프라인   → 테스트 자동화 도구 (6.1)
                  → 형상 관리 (5.4)

빠른 피드백       → 테스트 모니터링 (5.3)
                  → 테스트 메트릭 (5.3.1)

3.5 시프트 레프트 전략 (상세: 2.1.5절)

시프트 레프트 실천 방법과 연관

  • 명세 리뷰 → 정적 테스팅 (3장)
  • 테스트 우선 작성 → TDD/ATDD (2.1.3)
  • CI/CD 적용 → DevOps (2.1.4)
  • 정적 분석 → 정적 테스팅 (3.1)
  • 조기 비기능 테스팅 → 컴포넌트 레벨부터 (2.2.1)

효과: 후반 비용 절감 (1.3 조기 테스팅 원리)


3.6 회고와 프로세스 개선 (상세: 2.1.6절)

회고의 통합적 역할

회고 시점          → 연관 활동
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
프로젝트 종료     → 테스트 완료 (1.4.1)
반복 주기 종료    → 스프린트 회고 (애자일)
릴리스 마일스톤   → 테스트 완료 보고서 (5.3.2)

테스팅 관점의 회고 이점

  • 효과성/효율성 향상 → 프로세스 개선 → 테스트 계획 (5.1) 반영
  • 테스트웨어 품질 → 형상 관리 (5.4) 개선
  • 팀 결속/학습 → 전체 팀 접근법 (1.5.2)
  • 테스트 베이시스 개선 → 요구사항 품질 → 테스트 분석 용이
  • 협업 개선 → 리뷰 (3.2), 협업 기반 접근법 (4.5)

4. 테스트 레벨과 테스트 유형 (제2장)

4.1 테스트 레벨의 계층과 관계 (상세: 2.2.1절)

레벨                  → 주요 목적           → 테스트 유형 연관      → 담당자
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
컴포넌트 테스트       → 개별 컴포넌트       → 화이트박스 (4.3)     → 개발자
                                           → 1사분면 (5.1.7)      → 자동화/CI

컴포넌트 통합        → 인터페이스/상호작용  → 블랙박스/화이트박스  → 개발자
                                           → 1사분면             → 통합 전략

시스템 테스트        → 전체 시스템         → 기능 테스트         → 독립 테스터
                    → 엔드투엔드 동작     → 비기능 테스트        → 2,4사분면 (5.1.7)

시스템 통합          → 외부 시스템 연계    → 블랙박스           → 독립 테스터
                                          → API 테스팅          → 운영 환경 유사

인수 테스트          → 배포 준비 확인      → 밸리데이션          → 실제 사용자
                    → 비즈니스 요구 충족  → 3사분면 (5.1.7)     → UAT, 알파/베타

테스트 레벨 간 관계

  • 상향식: 컴포넌트 → 컴포넌트 통합 → 시스템 → 시스템 통합 → 인수
  • 각 레벨의 완료 조건 (5.1.3) → 다음 레벨의 시작 조건
  • 테스트 피라미드 (5.1.6): 하위 레벨 많이 ↔ 상위 레벨 적게

4.2 테스트 유형과 기법의 매핑 (상세: 2.2.2절)

테스트 유형         → 주요 초점          → 적용 기법          → 관련 품질 특성
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
기능 테스팅         → 무엇을 하는가      → 블랙박스 (4.2)     → 기능 성숙도/정확성

비기능 테스팅       → 얼마나 잘 하는가   → 블랙박스/화이트박스 → ISO 25010 특성
                                        → 경험 기반 (4.4)    → (성능/보안/사용성)

블랙박스 테스팅     → 명세 기반         → 4.2절 기법        → 동작 확인
                                        → 동등분할/경계값    

화이트박스 테스팅   → 구조 기반         → 4.3절 기법        → 내부 구조 커버리지
                                        → 구문/분기         

경험 기반 테스팅    → 테스터 지식       → 4.4절 기법        → 블랙/화이트박스 보완
                                        → 탐색적/오류추정    

모든 레벨에서 모든 유형 가능

  • 컴포넌트 레벨: 기능 + 비기능(성능) + 화이트박스
  • 시스템 레벨: 기능 + 비기능(전체) + 블랙박스 + 경험 기반
  • 인수 레벨: 기능 + 비기능(사용성) + 블랙박스

4.3 확인 테스팅과 리그레션 테스팅 (상세: 2.2.3절)

두 테스팅의 관계와 흐름

결함 발견 (테스트 실행) → 디버깅 (수정) → 확인 테스팅 → 리그레션 테스팅
     ↑                                          ↓                ↓
  5.5 결함 관리                        원래 실패 TC 재실행    영향도 분석 후 실행
                                          또는 새 TC 추가      자동화 권장 (6장)

리그레션 테스팅의 통합적 역할

  • 변경 영향 확인: 수정, 개선, 환경 변경
  • 영향도 분석: 테스트 범위 파악 → 추적성 (1.4.4) 활용
  • 자동화 적합: 반복 실행 → 테스트 자동화 (6장)
  • CI/CD 통합: DevOps (2.1.4)
  • 모든 레벨 적용: 컴포넌트 ~ 인수 테스트

4.4 유지보수 테스팅 (상세: 2.3절)

유지보수 테스팅의 유발요인과 연관

유발요인                   → 테스팅 활동          → 관련 개념
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
계획된 개선/수정/핫픽스     → 변경 검증          → 확인 테스팅 (2.2.3)
                           → 영향도 테스트       → 리그레션 테스팅

환경 업그레이드/마이그레이션 → 환경 테스트        → 시스템 통합 레벨
                           → 데이터 변환 테스트   → 비기능 테스팅

애플리케이션 단종           → 데이터 보관 테스트   → 데이터 무결성
                           → 복원/복구 테스트    → 신뢰성 테스팅

유지보수 테스팅 범위 결정 요소

  • 변경 리스크 수준 → 리스크 분석 (5.2.3)
  • 기존 시스템 크기 → 테스트 범위 (5.2.3)
  • 변경사항 크기 → 추정 (5.1.4)

5. 정적 테스팅 (제3장)

5.1 정적 테스팅의 역할과 가치 (상세: 3.1절)

정적 vs 동적 테스팅 비교

구분              정적 테스팅                동적 테스팅
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
실행 여부         실행 안 함                 실행 필요
결함 발견         직접 발견                  장애 → 분석 → 결함
적용 대상         모든 작업 산출물            실행 가능 산출물
시기             SDLC 초기 가능             후반 (코드 완성 후)
기법             리뷰, 정적 분석             테스트 케이스 실행

정적 테스팅과 다른 활동의 연계

  • 조기 테스팅 (1.3 원리) 구현 → 시프트 레프트 (2.1.5)
  • 결함 예방 → 품질 보증 (1.2.2) 지원
  • 리뷰 (3.2) → 협업 기반 접근법 (4.5) 연결
  • 정적 분석 → CI/CD (2.1.4) 통합
  • 명세 검증 → 테스트 베이시스 품질 → 테스트 분석 (1.4.1) 개선

5.2 리뷰 프로세스 (상세: 3.2절)

리뷰 프로세스 흐름과 연관 활동

1. 계획
   ├→ 범위/목적 정의
   ├→ 리스크 고려 (5.2절)
   └→ 자원 배정

2. 리뷰 착수
   ├→ 참여자 준비 확인
   └→ 역할 이해 (3.2.3)

3. 개별 리뷰
   ├→ 리뷰 기법 적용
   ├→ 이상 사항 식별
   └→ 체크리스트 활용 가능 (4.4.3)

4. 논의 및 분석
   ├→ 이상 사항 분석
   ├→ 상태/담당자 결정
   └→ 후속 조치 판단

5. 수정 및 보고
   ├→ 결함 보고서 (5.5) 작성
   ├→ 완료 조건 확인
   └→ 리뷰 결과 보고

리뷰 유형별 특성과 적용

유형            공식성   주요 목적                담당      연관
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
비공식 리뷰     낮음    이상 사항 식별           자유      빠른 피드백
워크쓰루       중간    교육/합의/동기부여        저자      협업 (4.5)
기술 리뷰      중간    기술 결정/합의           중재자    전문가 참여
인스펙션       높음    최대 결함 발견/메트릭     리뷰리더  프로세스 개선
                                                        회고 (2.1.6)

5.3 이해관계자 피드백의 통합 (상세: 3.2.1절)

조기 피드백의 효과와 전체 연결

조기/빈번 피드백
    ↓
오해 방지 → 요구사항 품질 → 테스트 베이시스 개선 → 테스트 분석 용이
    ↓
변경 조기 반영 → 재작업 감소 → 비용 절감 (1.3 조기 테스팅 원리)
    ↓
이해도 향상 → 리스크 감소 (5.2) → 중요 기능 집중
    ↓
지속적 협업 → 전체 팀 접근법 (1.5.2) → 품질 책임 공유

6. 테스트 도구 지원 (제6장)

6.1 테스트 도구 유형과 활동 매핑 (상세: 6.1절)

도구 유형                → 지원 활동               → 관련 프로세스
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
테스트 관리 도구         → 계획/모니터링/제어       → 5.1, 5.3절
                        → 요구사항/결함 관리       → 5.5절, 추적성 (1.4.4)

정적 테스팅 도구         → 리뷰/정적 분석          → 3장
                        → CI 통합                → 2.1.4 DevOps

테스트 설계/구현 도구    → 테스트 케이스 생성       → 테스트 설계 (1.4.1)
                        → 테스트 데이터 생성       → 4장 테스트 기법

테스트 실행/커버리지    → 자동 실행               → 테스트 실행 (1.4.1)
                        → 커버리지 측정           → 4.3 화이트박스

비기능 테스팅 도구       → 성능/부하/보안 테스트    → 2.2.2 비기능 테스트

DevOps 도구             → CI/CD 파이프라인        → 2.1.4 DevOps
                        → 자동 빌드/배포          → 리그레션 (2.2.3)

협업 도구               → 커뮤니케이션            → 전체 팀 (1.5.2)
                        → 리뷰                   → 3.2절

형상 관리 도구           → 버전 관리/추적          → 5.4 형상 관리

6.2 테스트 자동화의 전략적 가치 (상세: 6.2절)

자동화의 효과와 프로세스 연계

자동화 효과              → 실현 방법                → 관련 개념
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
반복 작업 감소          → 리그레션 자동화          → 2.2.3, 테스트 효과 원리
시간 절약              → 빠른 실행                → 피드백 속도 (2.1.4 DevOps)

일관성/재현성          → 표준화된 실행            → 품질 보증 (1.2.2)
                       → 테스트 데이터 체계 생성   → 테스트 기법 (4장) 적용

객관적 평가            → 커버리지 측정            → 4.3 화이트박스
                       → 메트릭 수집              → 5.3.1 테스트 메트릭

정보 접근성            → 자동 보고                → 5.3.2 테스트 보고서
                       → 대시보드                → 5.3.3 상황 전달

조기 결함 발견          → CI/CD 통합              → 2.1.5 시프트 레프트
                       → 빠른 피드백              → 2.1.4 DevOps

자동화 리스크와 완화

리스크                  → 완화 방안                → 관련 개념
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
비현실적 기대           → 적절한 계획              → 5.1 테스트 계획
비용/노력 과소평가      → 정확한 추정              → 5.1.4 추정 기법

부적절한 사용           → 자동화 전략 수립          → 테스트 피라미드 (5.1.6)
                       → 수동 vs 자동 구분        → 3사분면 탐색적 (5.1.7)

과도한 의존             → 비판적 사고 유지          → 1.5.1 필수 기술
                       → 탐색적 테스팅 병행        → 4.4.2

도구 종속성             → 표준 도구 선택            → 평가 기준
유지보수 부담           → 테스트 설계 품질          → 4장 테스트 기법
                       → 형상 관리                → 5.4절

7. 통합 워크플로우: 전체 연결도

7.1 프로젝트 시작부터 완료까지의 통합 흐름

[프로젝트 시작]
     ↓
1. 테스트 계획 (5.1)
   ├→ SDLC 선택 (2.1) 영향 반영
   ├→ 리스크 분석 (5.2) 수행
   ├→ 테스트 전략 수립
   │  ├→ 테스트 레벨 (2.2.1) 정의
   │  ├→ 테스트 유형 (2.2.2) 선택
   │  ├→ 테스트 피라미드 (5.1.6) 적용
   │  └→ 테스팅 사분면 (5.1.7) 고려
   ├→ 테스트 노력 추정 (5.1.4)
   ├→ 시작/완료 조건 (5.1.3) 정의
   └→ 도구 선택 (6.1)
     ↓
2. 정적 테스팅 (3장) - 시프트 레프트 (2.1.5)
   ├→ 요구사항 리뷰 (3.2)
   ├→ 설계 리뷰
   ├→ 정적 분석
   └→ 조기 피드백 (3.2.1)
     ↓
3. 테스트 분석 (1.4.1)
   ├→ 테스트 베이시스 분석
   ├→ 테스트 컨디션 정의
   ├→ 리스크 기반 우선순위 (5.2)
   └→ 추적성 구축 (1.4.4)
     ↓
4. 테스트 설계 (1.4.1)
   ├→ 테스트 기법 적용 (4장)
   │  ├→ 블랙박스 (4.2)
   │  ├→ 화이트박스 (4.3)
   │  ├→ 경험 기반 (4.4)
   │  └→ 협업 기반 (4.5)
   ├→ 테스트 케이스 작성
   └→ 테스트 환경 설계
     ↓
5. 테스트 구현 (1.4.1)
   ├→ 우선순위지정 (5.1.5)
   ├→ 테스트 자동화 (6.2)
   ├→ 테스트 데이터 준비
   └→ 환경 구축
     ↓
6. 테스트 실행 (1.4.1)
   ├→ 테스트 레벨별 실행 (2.2.1)
   ├→ 결함 발견 → 결함 관리 (5.5)
   ├→ 확인 테스팅 (2.2.3)
   ├→ 리그레션 테스팅 (2.2.3)
   └→ 모니터링/제어 (5.3)
        ↓
7. 테스트 완료 (1.4.1)
   ├→ 테스트 완료 보고서 (5.3.2)
   ├→ 결함 분석
   ├→ 메트릭 수집 (5.3.1)
   └→ 회고 (2.1.6)
        ↓
[프로세스 개선 → 다음 프로젝트 반영]

7.2 핵심 연결 관계 요약

A. 조기 테스팅 체인

조기 테스팅 원리 (1.3)
    ↓
시프트 레프트 (2.1.5)
    ↓
정적 테스팅 (3장) + 리뷰 (3.2)
    ↓
TDD/ATDD/BDD (2.1.3)
    ↓
조기 피드백 (3.2.1)
    ↓
비용 절감 + 결함 예방

B. 리스크 기반 테스팅 체인

리스크 원리 (1.3 - 결함 집중)
    ↓
리스크 관리 (5.2)
    ├→ 리스크 분석 (5.2.3)
    └→ 리스크 제어 (5.2.4)
    ↓
테스트 우선순위지정 (5.1.5)
    ↓
테스트 노력 집중
    ↓
테스트 메트릭 (5.3.1) - 리스크 추적

C. 자동화와 효율성 체인

테스트 효과 감소 원리 (1.3)
    ↓
리그레션 테스팅 (2.2.3)
    ↓
테스트 자동화 필요성 (6.2)
    ↓
DevOps/CI/CD (2.1.4)
    ↓
테스트 피라미드 (5.1.6)
    ↓
빠른 피드백 + 안정성

D. 품질 보증 체인

품질 (1.2.2)
    ├→ 테스팅 (제품 지향, 교정)
    │   └→ 결함 발견/수정
    └→ 품질 보증 (프로세스 지향, 예방)
        ├→ 정적 테스팅 (3장)
        ├→ 리뷰 (3.2)
        └→ 회고/개선 (2.1.6)

E. 협업과 의사소통 체인

전체 팀 접근법 (1.5.2)
    ↓
협업 기반 접근법 (4.5)
    ├→ 사용자 스토리 작성 (4.5.1)
    ├→ 인수 조건 (4.5.2)
    └→ ATDD (4.5.3)
    ↓
리뷰 참여 (3.2)
    ↓
조기 피드백 (3.2.1)
    ↓
의사소통 기술 (1.5.1)
    ↓
테스트 보고 (5.3.2)

8. 실무 적용 시나리오별 참조 가이드

시나리오 1: 새 프로젝트 테스트 계획 수립

1단계: 정황 분석
   → 1.4.2 정황 요소 확인
   → 2.1.1 SDLC 영향 분석

2단계: 전략 수립
   → 5.1.1 테스트 계획서 작성
   → 2.1.2 좋은 프랙티스 적용
   → 5.1.6 테스트 피라미드
   → 5.1.7 테스팅 사분면

3단계: 리스크 관리
   → 5.2 리스크 관리 전체
   → 5.2.3 제품 리스크 분석

4단계: 자원 계획
   → 5.1.4 추정 기법
   → 1.4.5 역할 배정
   → 6.1 도구 선택

5단계: 시작/완료 조건
   → 5.1.3 정의

시나리오 2: 애자일 프로젝트 테스팅

스프린트 계획
   → 5.1.2 반복 주기 기여
   → 4.5 협업 기반 접근법
   → 4.5.1 사용자 스토리 작성
   → 4.5.2 인수 조건 정의

스프린트 실행
   → 2.1.3 TDD/ATDD/BDD
   → 2.1.4 DevOps CI/CD
   → 2.2.3 지속적 리그레션
   → 6.2 테스트 자동화

스프린트 종료
   → 5.3.2 테스트 완료 보고
   → 2.1.6 회고
   → 1.5.2 전체 팀 협업

시나리오 3: 레거시 시스템 개선

현황 분석
   → 2.3 유지보수 테스팅
   → 3.2 기존 코드 리뷰
   → 5.2 리스크 분석

개선 전략
   → 2.1.5 시프트 레프트 도입
   → 6.2 자동화 도입 계획
   → 4.3 화이트박스로 커버리지 확인

실행
   → 2.2.3 리그레션 강화
   → 5.4 형상 관리 개선
   → 4.4.2 탐색적 테스팅 병행

시나리오 4: 고위험 시스템 테스팅

안전 분석
   → 5.2.2 제품 리스크 중점
   → 1.5.3 높은 독립성 확보
   → 2.2.1 모든 테스트 레벨 수행

철저한 테스팅
   → 4.2.4 상태 전이 - 모든 전이
   → 4.3 화이트박스 - 분기 커버리지
   → 3.2.4 인스펙션 (공식 리뷰)

문서화
   → 5.5 결함 관리 엄격
   → 5.4 형상 관리 철저
   → 5.3.2 상세 보고서

9. 주요 표준 및 모델 참조

ISO/IEC/IEEE 표준

  • 29119-1: 테스팅 개념 (1.1)
  • 29119-2: 테스트 프로세스 (1.4)
  • 29119-3: 테스트 계획/보고서 (5.1.1, 5.3.2, 5.5)
  • 29119-4: 테스트 기법 (4장)
  • 20246: 리뷰 프로세스 (3.2)
  • 25010: 품질 모델 (2.2.2, 5.2.2)
  • 31000: 리스크 관리 (5.2)
  • 14764: 유지보수 (2.3)

핵심 모델

  • 테스트 피라미드 (5.1.6) → 테스트 레벨 배분
  • 테스팅 사분면 (5.1.7) → 애자일 테스트 전략
  • V-모델 (2.1) → 테스트 레벨과 개발 단계 매핑

이 통합 문서는 테스팅 개념들의 관계를 중심으로 재구성되었습니다. 각 항목의 세부 내용과 예제는 명시된 장/절을 반드시 참조하시기 바랍니다.

profile
back end developer

0개의 댓글