소프트웨어 개발의 주요 단계들(비즈니스 요구사항 명세화에서 배포까지)과 상응하는 테스트 레벨(인수 테스팅에서 컴포넌트 테스팅까지) 사이의 일대일 대응 관계를 설명하는 순차적 개발 수명주기 모델
제품을 사용하고자 할 때 컴포넌트나 시스템의 운용 가능하고 접근 가능한 정도
명세, 표준, 계약상의 합의사항, 그 밖의 기준에 대한 준수 여부를 평가하고자 제3자가 수행하는 작업 산출물, 프로세스 또는 프로세스 집합에 대한 독립적인 검사
유효하지 않은 입력값 또는 스트레스 요소가 많은 환경 조건에서도 컴포넌트나 시스템이 올바르게 기능할 수 있는 정도
테스트 실행의 결과 또는 결과값. 화면 출력과 데이터 변경, 보고서, 전송된 통신 메시지 등이 여기에 포함
테스트 케이스가 결정 결과값을 실행하도록 설계하는 화이트박스 테스트 기법
조건과 그로 인해 발생하는 행동 집합을 나열한 표
둘 이상의 가능한 결과값이 있으며, 하나의 선택이 특정 행동 집합으로 이어지는 구문의 한 유형
요구사항이나 명세를 충족시키지 못하는 작업 산출물의 불완전함 또는 결점
경계값을 기반으로 테스트 케이스를 설계하는 블랙박스 테스트 기법
식별된 동등 분할(equivalence partition)의 최소 값 또는 최대 값
시작 지점에서 종료 지점까지 이어지는 컴포넌트나 시스템의 연속된 이벤트(예, 실행문)
공식 산출물로 정의된 프로세스를 따르는 리뷰 유형
테스트 케이스가 구문을 실행하도록 설계하는 화이트박스 테스트 설계 기법
일반적으로 개별적인 실행 단위 중 가장 작은 프로그래밍 언어의 한 개체
컴포넌트나 시스템의 내부 구조에 대한 커버리지 측정치
결함의 원인 중 제거되면 해당 결함유형 발생이 감소하거나 제거될 수 있는 원인
컴포넌트나 시스템이 수행할 수 있어야 하는 기능을 명시하고 있는 요구사항
기본적인 기능을 초기에 동작시키기 위해 컴포넌트나 시스템을 결합한느 통합 접근법
명세나 기타 출처를 기반으로 특정한 조건에서 실행되는 컴포넌트나 시스템의 관찰 가능한 예상 동작
컴포넌트를 개별적으로 또는 적절한 스텁 및 드라이버를 가지고 테스트할 수 있도록 지원하는 단위 또는 컴포넌트 테스팅 환경 도구. 개발자에게 디버깅 기능과 같은 기타 지원도 제공
데이터 객체 상태의 가능한 변경과 순서에 대한 추상적인 표현. 객체의 상태는 생성, 사용, 파괴 중 하나
각 도메인의 구성 데이터 중 하나를 사용하여 테스트 케이스가 동등 분할을 실행하도록 설계하는 블랙박스 테스트 기법
동일 작업을 수행할 자격이 있는 다른 사람이 작업 산출물에 대해 수행하는 리뷰
특정 입력값과 사전 조건에 대한 컴포넌트나 시스템의 반응
래셔널(Rational) 사에서 독점적으로 제공하며, 프로젝트 수명주기의 4가지 단계, 즉 ‘도입(inception), 구체화(elaboration), 구축(construction), 전이(transition)’로 구성된 반복적 소프트웨어 개발 프로세스 프레임워크
작업 산출물의 이슈를 식별하는 리뷰 작업 참여자
특정 수준으로 리스크를 유지하거나 줄이기 위해 방어적 수단을 구현하거나 의사결정을 하는 프로세스
연관된 리스크 유형과 리스크 수준을 기반으로 테스트 활동 및 리소스의 이용, 관리, 선택, 우선순위 등을 다루는 테스팅
리스크 식별 및 리스크 평가에 대한 전반적인 프로세스
영향 및 가능성에 의해 정의된 리스크의 질적, 양적 측정치
여러 단계의 테스트 레벨이나 테스트 유형을 조정하기 위해 사용하는 테스트 계획
정해진 (중간)산출물과 결과가 준비완료되어야 하는 프로젝트의 특정 시점
컴포넌트나 시스템의 요구사항, 설계, 동작, 기타 특성을 지정하는 문서. 이상적인 명세는 완전하고 정확하며, 검증 가능한 방식으로 작성되어 있고, 많은 경우 이러한 규정이 충족되었는지를 확인할 수 있는 절차가 포함됨
테스트 중인 컴포넌트나 시스템과 병행으로 실행되며, 컴포넌트나 시스템의 동작을 감독, 기록 및 분석하는 소프트웨어 도구 혹은 하드웨어 장치
모델을 기반으로 하는 테스팅, 또는 모델과 관련된 테스팅
한 개 이상의 인시던트(incidents)에 대한 알려지지 않은 근본 원인
한 프로젝트를 다수의 이터레이션(iteration)으로 세분화하는 개발 수명주기 모델. 하나의 이터레이션은 하나의 완전한 개발 과정이며, 매 이터레이션 결과로 실행 가능한 제품이 내부 혹은 외부로 릴리스된다. 이런 릴리스는 개발 중인 최종 제품의 하위 서브 셋이며, 이터레이션이 진행될 때마다 점진적으로 성장하여 최종 제품이 됨
어떤 중요한 이슈나 문제, 기회를 식별하는 평가의 결과
의도된 특정 용도 또는 용도에 대한 요구사항이 충족되었음을 보증하기 위해 객관적 증거와 조사를 통해 확인하는 것
이터레이션(iteration)의 시간 대비 잔여 작업을 나타내는 차트. 공개적으로 전시되며, 이터레이션 작업이 완료되어가는 상태와 추세를 보여준다. X 축은 보통 스프린트 일수를 나타내고, Y 축은 남은 작업을(일반적으로 추정된 엔지니어링 시간이나 스토리 포인트에 의해) 나타냄
특정 요구사항이 모두 구현되었는지를 객관적 증거와 조사를 통해 확인하는 것
소프트웨어 프로그램이 이름을 호출함으로써 접근 가능한 컴퓨터 내 저장소
사용자 또는 다른 컴포넌트나 시스템이 자신의 유형과 인가 수준에 적합한 접속만 가능하도록 컴포넌트나 시스템이 정보와 데이터를 보호하는 정도
컴포넌트나 시스템의 설계 및 내부 구조가 얼마나 이해, 유지, 검증하기 어려운가의 수준
예상되는 경부하(low), 중부하(typical), 최대부하(peak) 사이의 다양한 부하 조건에서 컴포넌트나 시스템의 동작을 평가하기 위해 수행하는 성능 테스팅의 종류
실제 결과가 기대 결과와 일치하지 않을 때 테스트가 불합격한 것으로 간주
특정 사용 환경에서 특정 사용자가 얼마나 시스템을 효과적, 효율적이고 만족스럽게 이용 가능한지의 정도를 확인하는 테스팅
특정 사용 환경에서 특정 사용자가 특정 목표를 달성하기 위해 컴포넌트나 시스템을 이용할 수 있는 정도
사용자가 시스템을 사용해서 특정 과업을 성취하는 데 필요한 정보 및 제어를 제공하는 모든 컴포넌트
테스트 케이스 실행 전에 요구되는 테스트 항목 및 환경의 상태
테스트 케이스 실행 후 예상되는 테스트 항목 및 환경의 상태
컴포넌트나 시스템이 취할 수 있는 상태를 표현하고, 하나의 상태에서 다른 상태로 전이하게 되는 원인, 또는 그런 전이로 인한 결과를 나타내는 도표
소프트웨어 제품의 상호운용성을 확인하는 테스팅
둘 이상의 컴포넌트나 시스템이 서로 정보를 교환하고, 교환된 정보를 얼마나 잘 사용할 수 있는지의 정도
설치자에게 설치 절차에 관한 정보를 적합한 미디어를 통해 제공하는 지침. 매뉴얼 가이드나 단계별 절차, 설치 마법사, 기타 유사한 프로세스 설명서 등이 여기에 해당
점진적 개발을 안내/제어하고자 사용되는 효과성 및 효율성에 관한 상위 수준의 메트릭(metric). 예를 들어 소프트웨어 개발을 위한 리드-타임 슬립(lead-time slip)
대상 테스트 항목에 필요한 부하를 발생시켜, 테스트 실행 동안 성능을 측정하고 기록하는 테스트 도구
(1) 조직의 프로세스와 작업 실무의 효과성/효율성과 관련된 조직의 역량 (2) 정상 작동 중인 컴포넌트나 시스템이 신뢰성에 대한 요구를 얼마나 충족시키는지를 나타내는 정도
테스트 활동을 테스트 세션으로 계획하는 테스팅 접근법. 테스트 세션 내에서는 테스트 설계와 실행이 방해받지 않고 연속해서 이루어진다. 탐색적 테스팅과 함께 사용되는 경우가 많음
소프트웨어 개발의 각 단계에서 수행되는 활동들, 그리고 그 활동들의 논리적 시간적 관계
소프트웨어 제품에 대한 구상이 시작된 시점에서부터 그 제품을 더 이상 사용하지 않아 종료되는 시점에 이르기까지 전 과정 기간. 소프트웨어 수명주기에는 보통 개념 단계, 요구사항 단계, 설계 단계, 구현 단계, 테스트 단계, 설치 및 체크아웃 단계, 운영 및 유지보수 단계 등으로 구성되며, 경우에 따라 단종 단계가 포함되기도 한다. 이러한 단계들은 병렬로 또는 점진적으로 수행될 수 있음
컴퓨터 시스템의 동작과 관련된 컴퓨터 프로그램과 절차, 또 경우에 따라 연관된 문서 및 데이터
시스템의 개발, 전달, 유지보수, 단종에 사용되는 프로세스 및 워크플로우(work flows), 활동 등에 대한 설명
애자일 소프트웨어 개발에서 일반적으로 사용되는 프로젝트 관리를 위한 반복적 점진적 프레임워크
특정 소프트웨어 컴포넌트를 호출하거나 의존관계에 있는 다른 컴포넌트를 개발 또는 테스트하고자, 해당 소프트웨어 컴포넌트를 골격만 또는 특정 목적을 위해 구현한 것. 스텁은 호출된 컴포넌트를 대체함
다른 시스템을 통해 특정 시스템의 특정 동작 특성을 물리적으로 또는 추상적으로 구현하는 것
제어된 입력값 조합이 제공되면 특정 시스템처럼 동작하거나 작동하는, 테스트에 사용되는 장치 또는 컴퓨터 프로그램이나 시스템
특정한 기능이나 기능 집합을 달성하기 위해 조직된 상호작용 요소들의 집합
정의된 과업을 공식적으로 시작하기 위한 조건의 집합
컴포넌트나 시스템이 특정한 조건에서 특정 기간 중 특정 기능을 수행하는 정도
컴포넌트나 시스템을 테스트할 때 출력 및 관찰되는 동작
컴파일하면 객체 코드로 변환되고, 프로그램이 실행 중일 때 절차에 맞게 실행되어 데이터에 어떤 동작을 수행할 수 있는 구문
컴포넌트나 시스템의 개발 또는 운영에 결함이 미치는 영향의 정도
컴포넌트나 시스템에서 외부 목적지로 전송되는 데이터
변경을 완료하는 데 필요한 자원의 예상 견적과 변경에 의해 영향받는 모든 작업 산출물의 식별
과거 장애(failures)에 대한 테스터의 지식이나 장애 형태에 대한 일반적인 지식에 기초하여 테스트 케이스를 도출하는 테스트 기법
팀원의 집단 지성을 이용하여 정확한 추정을 목표로 수행하는 전문가 기반 테스트 추정 기법
정의된 과업을 공식적으로 완료하기 위한 조건들의 집합
요구사항과 요구사항 속성(우선순위, 연관된 지식 등), 주석 등의 기록을 지원하고, 요구사항 계층화 및 요구사항 변경 관리를 통해 추적성 확립을 용이하게 해주는 도구. 일관성 검사나 사전에 규정된 요구사항 규칙의 위반과 같은 정적 분석 기능을 제공하는 도구도 있음
결함 등과 같은 항목에 부여된 (사업적) 중요도
테스트 대상인 컴포넌트, 향후 시스템을 사용하게 될 사용자, 또는 고객 환경에 설치된 하드웨어와 소프트웨어 제품. 소프트웨어에는 운영 체계와 데이터베이스 관리 시스템, 기타 애플리케이션 등이 포함될 수 있음
작성자가 작업 산출물에 대한 리뷰를 주도하고, 참가자들은 발생 가능 이슈에 대한 질문과 의견을 제시하는 리뷰 유형
운영 중인 시스템에 대한 변화, 또는 운영 중인 시스템에 미치는 환경 변화의 영향에 대한 테스팅
결함을 수정하거나, 품질 속성을 개선하거나, 변경된 환경에 적응하고자 출시 후 컴포넌트나 시스템을 수정하는 프로세스
유지보수자가 컴포넌트나 시스템을 의도대로 수정할 수 있는 정도
요구사항 명세서, 설계 문서, 사용자 문서, 표준 또는 누군가의 인식이나 경험 등에 기반한 기대값에서 벗어난 상태를 말한다. 이상 현상은 리뷰, 테스팅, 분석, 비교, 혹은 소프트웨어 제품이나 해당 문서의 사용 도중에 발견할 수 있지만, 이에 국한되지는 않음
애자일 소프트웨어 개발에서 짝 프로그래밍, 철저한 코드 리뷰, 모든 코드에 대한 단위 테스팅, 간단하고 명확한 코드 등과 같은 실천법을 핵심으로 삼는 소프트웨어 공학 방법론
사용자, 고객, 기타 권한을 지닌 사람이 제품을 인수하기 위해 컴포넌트나 시스템이 만족시켜야 하는 기준
작업 산출물의 이슈를 식별하기 위한 공식리뷰 유형. 리뷰 프로세스와 소프트웨어 개발 프로세스를 개선하는 데 필요한 정보를 제공
인시던트(incident)의 발생, 결과 및 상태에 대한 문서
컴포넌트나 시스템이 외부로부터 수신하는 데이터
지정된 범위 내에서 요구되는 기능을 컴포넌트나 시스템이 수행하지 못하는 경우
특정한 측정 단위에 대한 특정한 카테고리의 장애 횟수의 비율
프로젝트 범위는 일반적으로 프로젝트 수명주기 초기에 결정되고, 시간 및 비용 견적은 제품에 대한 프로젝트팀의 이해도가 높아지면서 정기적으로 수정되는 개발 수명주기 모델. 제품은 일련의 반복되는 주기들을 거쳐 개발되며, 각 주기는 제품 기능에 무언가를 성공적으로 추가하는 증분을 전달함
장애 있는 사용자가 컴포넌트나 시스템을 얼마나 쉽게 사용할 수 있는지 확인하는 테스팅
다양한 특성과 역량을 지닌 사람들이 특정 사용 환경에서 특정 목표를 완수하기 위해 컴포넌트나 시스템을 얼마나 사용할 수 있는지에 대한 정도
형식이나 구조, 내용, 문서를 기반으로, 컴포넌트나 시스템을 실행하지 않으면서 평가하는 프로세스
테스트 스위트(test suite)가 입력값과 사전조건의 모든 조합을 포함하도록 하는 테스트 접근법
질문 목록이나 확인해야 하는 특성을 기반으로 수행하는 리뷰 기법
경험, 점검, 기억에 의한 목록 또는 제품 검증 기준 및 규칙을 상위 수준으로 나열한 목록을 숙련된 테스터가 사용하는 경험 기반 테스트 기법
두 가지 이상의 작업 산출물 사이에 관계가 성립될 수 있는 정도
개체의 속성을 설명하기 위해 개체에 특정 숫자나 카테고리를 지정하는 프로세스
측정을 통해 개체의 속성에 할당되는 특정 숫자나 카테고리
테스트 실행의 완전성을 측정할 수 있는 테스트 기법을 사용해 하나 이상의 테스트 컨디션에서 도출하는 속성 또는 속성들의 결합체
커버리지 항목이 식별되거나 테스트 스위트(test suite)에 의해 수행된 정도를 백분율로 표시한 것
개별적으로 테스트할 수 있는 시스템의 최소 구성 단위
테스팅 활동 조정에 사용되며, 달성할 테스트 목표와 그것을 달성하기 위한 방법과 일정을 설명하는 문서
테스트 활동의 기획 및 일정 관리, 추정, 모니터링, 보고, 제어, 완료
테스트 분석과 설계를 기반으로 테스트 실행에 필요한 테스트웨어를 준비하는 활동
테스팅에 사용하기 위한 데이터를 기존 데이터베이스에서 선정하거나 데이터의 산출, 생성, 조작, 편집 등이 가능하도록 해주는 테스트 도구 유형
대규모 프로젝트에서 테스트 매니저에게 보고하며, 특정 테스트 레벨 또는 특정 테스트 활동 집합에 대한 프로젝트 관리를 책임지는 담당자
테스트 분석 및 설계의 기초로 사용되는 지식 체계
테스팅 활동으로 얻은 데이터를 수집/분석하고, 데이터를 보고서 형태로 통합하여 이해관계자에게 전달하는 활동
테스트 베이시스(test basis)를 분석하여 테스트 컨디션을 식별하는 활동
CASE 도구 저장소(요구사항 관리 도구 등)에 보관된 명세, 도구 자체에 보관된 특정한 테스트 컨디션, 또는 코드 자체로부터 테스트 입력값을 생성함으로써 테스트 설계 활동을 지원하는 도구
방해받지 않는 테스트 실행 시간. 탐색적 테스팅에서 각 테스트 세션은 차터(charter)를 기반으로 구성되긴 하지만, 테스터가 세션 중 새로운 기회나 이슈를 탐색할 수 있음. 테스터는 필요에 따라 바로바로 설계하고 실행하며 진행 상황을 기록
지정된 테스트 항목에 대한 테스트를 실행하고, 기대 결과 및 사후조건 대비 결과값을 평가하는 테스트 도구
테스트 주기 내에서 테스트 스위트(test suites)를 실행하기 위한 일정
테스트중인 시스템(소프트웨어)의 실제 결과와 비교할 기대 결과를 판단하기 위한 출처
컴포넌트나 시스템의 특성을 목표로 하는 구체적인 테스트 목적에 기반한 테스트 활동의 집합
테스트 환경, 테스트 도구, 사무환경 및 절차로 구성된 테스트를 수행하는 데 필요한 조직 산출물
테스트 프로세스의 활동, 과업, 이벤트 등에 대한 목록. 각각 예정된 시작/종료 날짜 또는 시간, 그리고 이들 간의 상호의존성 등의 정보를 기록
테스트 실행 중에 테스트 대상이 외부 출처로부터 받은 데이터. 이때 외부 출처로는 하드웨어, 소프트웨어, 인간 등이 있을 수 있음
실행 순서로 나열된 테스트 케이스 순서. 초기 사전조건을 설정하는 데 필요한 모든 관련 동작과 실행 이후의 모든 마무리 활동까지 포함
특정 프로젝트에 대한 테스트 전략을 구현한 것
테스팅과 관련된 조직의 원칙과 접근법, 주요 목표를 설명하는 상위 수준의 문서
테스트 대상의 인식 가능한 단일 릴리스에 대한 테스트 프로세스의 실행
하나 이상의 테스트 케이스로 구성된 테스트 케이스 집합에 대한 문서
테스트 컨디션을 기반으로 개발된 사전조건, 입력값, 행동(해당하는 경우), 기대 결과, 사후조건의 집합
조직의 테스트 프로세스 능력과 성숙도를 향상하고자 설계된 활동 프로그램 및 그런 프로그램의 결과물
테스트 계획, 테스트 모니터링 및 제어, 테스트 분석, 테스트 설계, 테스트 구현, 테스트 실행, 테스트 완료로 상호 연관되어 구성된 활동들의 집합
테스트 프로세스에 사용되는 테스트 대상의 일부
테스트 수행에 필요한 하드웨어, 계측, 시뮬레이터, 소프트웨어 도구 그리고 기타 지원 요소를 포함하고 있는 환경
테스팅에 대한 계획, 설계, 실행, 평가, 보고 등에 활용하기위한 목적으로 테스트 프로세스 동안 생성되는 작업 산출물
객관적인 테스팅의 성과를 장려하는 책임의 분리
컴포넌트나 시스템을 더 큰 집합으로 결합하는 프로세스
요구사항 문서에 명시되거나 암시되는 컴포넌트나 시스템 속성(신뢰성, 사용성, 설계 제약 등)
작업 방식에 대한 일관된 접근법을 규정하거나 지침을 제공하기 위해 개발되고 사용되는 공식적이며, 때에 따라 강제적인 요구사항들의 집합. (예) ISO/IEC 표준, IEEE 표준, 조직 표준
품질과 관련하여 조직을 감독하고 통제하는 조정 활동. 품질 관련 감독과 통제에는 일반적으로 품질 정책과 품질 목표 수립, 품질 계획, 품질 제어, 품질 보증 및 품질 개선이 포함됨
품질 활동과 이슈로 인해 발생한 총비용. 사고 예방 비용, 평가 비용, 내부 장애 비용, 외부 장애 비용 등으로 세분
품질 관리의 일부로서 품질 요구사항을 준수하는 데 중점을 둔 운영상의 기술과 활동
한 조직의 프로세스의 성능과 성숙도를 개선하기 위해 설계된 활동 계획 또는 그러한 계획의 결과물
입력을 출력으로 변환시키는 상호 연관된 일련의 활동
하나의 목표를 달성하고자 조직화 및 통제된 활동들의 고유한 집합. 프로젝트는 시작과 종료 날짜를 가지고 있으며, 시간, 비용, 자원 등의 제약을 포함한 구체적인 요구사항을 따름
주로 애자일 소프트웨어 개발에서 사용자 스토리에 필요한 노력이나 상대적 크기를 추정하고자 사용하는 합의 기반 추정 기법. 와이드밴드 델파이 기법 중 하나이며, 카드 한 벌을 이용하며 각 카드에는 팀에서 추정하는 단위 값이 표기됨
실제 결과가 기대 결과와 일치하면 테스트가 합격한 것으로 간주
형상 관리를 위해 지정되고, 형상 관리 프로세스에서 단일 개체로 처리되는 작업 산출물의 집합
구성 요소들의 수, 유형, 상호관계로 정의되는 컴포넌트나 시스템의 구성 모습
어떤 컴포넌트나 시스템이 다른 컴포넌트나 시스템과 정보 교환이 가능한 정도
컴포넌트나 시스템의 내부구조 분석에 기반한 테스팅
프로젝트가 종료될 때 프로젝트 팀원들이 그동안의 프로젝트를 평가하고 다음 프로젝트에 적용할 수 있는 교훈을 공유하는 회의