본문으로 건너뛰기
입문약 20분

이슈 추적 도구: Jira 등 공통 개념과 실무 워크플로

Jira, Redmine, Mantis 등 이슈 추적 도구가 공유하는 핵심 개념(이슈 타입, 워크플로, 필드, 담당자)을 이해하고, 도구가 바뀌어도 적응할 수 있는 기반을 만든다.

  • #Jira
  • #이슈추적
  • #협업도구

개념

공고에 적힌 "Jira 사용 경험" 이 실제로 묻는 것은 버튼 위치가 아니다. 결함 하나가 등록되어 종결될 때까지 도구 안에서 어떻게 흘러가는지를 아느냐다. 그 흐름은 도구가 바뀌어도 같다.

도서관을 생각하면 구분이 쉽다. 책을 어느 선반에 꽂는지는 도서관마다 다르지만, 분류 체계(주제·저자·연도)는 어디서나 비슷하다. 선반 위치를 외운 사람은 다른 도서관에서 길을 잃고, 분류 체계를 아는 사람은 안내도만 보고 찾아간다.

이 레슨은 분류 체계를 다룬다. 선반 위치, 즉 Jira 의 실전 운영은 모듈 22(레슨 6~8) 에서 이어 받는다.

도구는 다르지만 개념은 같다

Jira, Redmine, Bugzilla, Mantis, Trac — 회사마다 쓰는 이슈 추적 도구는 다르지만, 이들이 다루는 핵심 개념은 거의 동일하다. 하나의 도구를 "버튼 위치"로 외우면 다른 도구로 옮겼을 때 처음부터 다시 배워야 한다. 반대로 공통 개념을 이해하면, 어떤 도구를 접해도 화면 어딘가에서 같은 개념을 찾아 바로 적응할 수 있다.

같은 개념이 도구마다 어떤 이름으로 나타나는지 보면 감이 온다.

개념JiraGitHub IssuesRedmineAzure DevOps
이슈 타입Issue Type라벨로 구분트래커Work Item Type
워크플로WorkflowOpen / Closed 뿐상태State
담당자AssigneeAssignees담당자Assigned To
영역 분류Component / LabelLabel프로젝트·범주Area Path
검색JQL검색 구문필터 UIWIQL
묶음Epic / SprintMilestone버전Iteration

GitHub Issues 칸을 보면 도구의 성격 차이가 보인다. 상태가 열림·닫힘 둘뿐이라, 레슨 1의 생명주기를 쓰려면 라벨로 상태를 흉내 내야 한다. 작은 팀에는 충분하고, 재검증 단계를 추적해야 하는 팀에는 부족하다.

도구를 고를 때 물을 것은 "무엇이 더 좋은가" 가 아니라 "우리가 추적해야 하는 상태가 몇 개인가" 다. 상태가 셋이면 GitHub Issues로 충분하고, 재검증·반려·보류를 구분해야 하면 Jira 계열이 필요하다.

공통 개념 1 — 이슈 타입(Issue Type)

결함(Bug)만 등록하는 게 아니다. 새 기능 요청(Story/Feature), 개선 작업(Task), 그리고 결함(Bug)이 대표적인 이슈 타입이다. QA가 주로 다루는 건 Bug지만, 테스트 케이스 작성이나 회귀 테스트 같은 QA 작업 자체를 Task로 등록해 추적하는 팀도 많다.

타입을 어떻게 가르나

"전부 Bug로 올리면 편하지 않나" 라는 생각이 들 수 있다. 그러면 레슨 5의 지표가 전부 못 쓰게 된다. 가르는 기준은 간단하다.

올라온 것타입판단 기준
기대와 다르게 동작한다Bug정해진 기대가 있고 거기서 벗어났다
이렇게 되면 더 좋겠다Story / Improvement기대가 없었다. 새로 정하는 것
이게 의도인지 모르겠다Question / Task기대 자체가 불명확하다
테스트 케이스를 쓴다TaskQA 자신의 작업
문서에 내용이 없다Task(문서)레슨 1의 "문서 공백"

가장 헷갈리는 것이 둘째 줄과 셋째 줄이다. "불편하다" 는 Bug가 아니라 개선 요청인데, Bug로 올리면 결함 수가 부풀고 개발팀은 "QA가 취향을 결함으로 올린다" 고 느낀다. 반대로 셋째 줄을 개선 요청으로 올리면 진짜 결함이 묻힌다.

판단이 안 서면 Question으로 올려 묻는 것이 안전하다. 답이 "의도가 아니다" 로 오면 Bug로 바꾸면 되고, 그 과정이 기록으로 남는다.

공통 개념 2 — 워크플로(Workflow)

레슨 1에서 배운 결함 생명주기(New → Assigned → ... → Closed)가 바로 이슈 추적 도구의 워크플로다. Jira에서는 이 워크플로를 프로젝트마다 커스터마이징할 수 있어서, 팀마다 상태 이름이나 순서가 조금씩 다를 수 있다 — 하지만 "발견 → 처리 중 → 검증 → 종결"이라는 큰 골격은 어디서나 같다.

전이와 권한 — 누가 상태를 바꿀 수 있나

워크플로에는 상태만 있는 것이 아니다. 상태 사이의 이동(전이)에 규칙이 붙는다. 이 규칙이 실무에서 중요한 이유가 있다.

전이누구만왜
Fixed → ClosedQA(보고자)개발자가 스스로 닫으면 재검증이 건너뛰어진다
Fixed → ReopenedQA재검증 실패는 QA 판단
New → Rejected리드·담당자반려는 사유가 필요하다
어느 상태든 → Closed(막아 둔다)지름길이 있으면 쓰인다

첫 줄이 가장 중요하다. 많은 팀에서 결함이 조용히 Closed 되는 이유가 여기 있다. 도구에서 Fixed → Closed 를 보고자만 할 수 있게 막아 두면 레슨 1의 재검증 단계가 절차가 아니라 구조로 보장된다.

도구에 자동화 기능이 있으면 몇 가지는 손을 덜 수 있다 — 코드가 병합되면 자동으로 Fixed, 배포되면 자동으로 Retest 대기로 옮기는 식이다. 다만 자동으로 Closed 까지 가게 만들지는 않는다. 그러면 아무도 확인하지 않은 결함이 통계상 종결된다.

공통 개념 3 — 필드(Fields)

  • 심각도(Severity) / 우선순위(Priority) — 레슨 1에서 배운 그 값
  • 담당자(Assignee) — 지금 이 이슈를 처리해야 할 사람
  • 보고자(Reporter) — 이슈를 등록한 사람(QA인 경우가 많다)
  • 라벨/컴포넌트(Labels/Components) — 어느 기능 영역에 속하는지 분류(예: "결제", "로그인") — 나중에 레슨 5의 결함 밀도 계산에 이 분류가 쓰인다
  • 연결(Links) — "이 이슈는 저 이슈의 중복이다", "이 이슈는 저 기능에 의존한다" 같은 이슈 간 관계

필드는 늘리기 쉽고 줄이기 어렵다

"이것도 필드로 받자" 가 쌓이면 등록 화면이 스크롤 두 번이 된다. 그때 생기는 일은 정해져 있다.

  • 바쁜 사람이 빈칸으로 남긴다 → 그 필드의 집계가 못 쓰게 된다
  • 아무 값이나 넣는다 → 틀린 집계가 나온다. 빈칸보다 나쁘다
  • 등록 자체를 꺼린다 → 결함이 말로 전달된다

그래서 필수 필드는 다섯 개 안쪽으로 둔다. 레슨 2의 템플릿 원칙과 같다 — 짧아야 쓰인다.

새 필드를 만들기 전에 물을 것은 "이 값으로 어떤 결정을 할 것인가" 다. 답이 "나중에 볼 수도 있어서" 면 만들지 않는다. 쓰이지 않는 필드는 비용만 남긴다.

라벨·컴포넌트 — 집계의 축이 된다

이 필드가 가장 과소평가된다. 레슨 5의 거의 모든 지표가 이 분류를 축으로 계산된다.

분류가 있으면알 수 있는 것
기능 영역별어디에서 결함이 많이 나오나 → 다음 테스트 우선순위
발견 단계별개발 중 / QA / 운영 → 얼마나 늦게 잡히나
원인 유형별요구 누락 / 구현 / 환경 → 무엇을 고쳐야 하나(모듈 10)
릴리즈별어느 배포에서 늘었나

두 번째가 조직을 바꾸는 숫자다. 운영에서 발견되는 비중이 높으면 "QA가 못 잡았다" 가 아니라 더 앞에서 잡을 장치가 없다는 뜻이고, 그 근거로 개발 단계 테스트에 투자를 요청할 수 있다.

분류 규칙은 처음에 적게 시작한다. 라벨이 50개가 되면 아무도 정확히 붙이지 않는다. 기능 영역 10개 안쪽으로 시작해 필요할 때 쪼갠다.

연결 종류가 도구마다 열 개씩 있지만 실제로 필요한 것은 셋이다.

연결쓰는 때주의
중복(Duplicates)같은 결함이 두 번 등록됐다양쪽에 링크를 남긴다(레슨 1)
관련(Relates to)같은 원인일 가능성남용하면 거미줄이 된다
차단(Blocks)이것 때문에 다른 작업을 못 한다릴리즈 판단에 직접 쓰인다

세 번째가 실무에서 힘이 있다. "이 결함이 테스트 진행을 차단하고 있다" 를 링크로 걸어 두면, 말로 설명하지 않아도 일정 영향이 보인다.

공통 개념 4 — 검색과 필터

이슈가 수백~수천 개 쌓이면, 검색·필터 없이는 아무것도 못 찾는다. "내게 할당된 채 아직 안 고쳐진 심각도 높은 이슈"처럼 조건을 조합해 찾는 기능(Jira의 JQL 등)은 도구마다 문법은 다르지만 개념은 같다 — 상태 + 담당자 + 필드값을 조합해 원하는 이슈 목록을 뽑아내는 것.

QA가 매일 쓰는 필터 다섯 개

필터는 만들어 저장해 두는 것이 전부다. 매번 조건을 다시 입력하는 사람은 결국 안 쓴다. QA라면 아래 다섯 개를 저장해 두면 하루가 달라진다.

필터조건쓰는 때
내 재검증 대기상태 = Fixed · 보고자 = 나매일 아침 첫 번째로 본다
방치된 신규상태 = New · 생성일 7일 이전배정 단계가 비었는지 확인(레슨 1)
재오픈된 것재오픈 이력 있음조건 전달이 부실한지 점검
이번 릴리즈 미해결 고위험릴리즈 = 다음 · 심각도 ≥ S2 · 상태 ≠ ClosedGo/No-Go 자료(모듈 4 레슨 5)
내가 올린 반려 건상태 = Rejected · 보고자 = 나사유를 읽고 리포트를 개선한다

첫 번째가 가장 중요하다. 재검증 대기가 쌓이면 개발은 끝났는데 결함이 계속 열려 있고, 릴리즈 직전에 한꺼번에 재검증하게 된다. 매일 아침 5분이면 그 상황을 막는다.

다섯 번째를 보는 사람이 드물다. 반려 사유는 내 리포트의 약점이 적힌 목록이다. 읽으면 같은 이유로 또 반려되는 일이 줄어든다(레슨 2).

대시보드 — 사람에게 보여 줄 숫자

저장된 필터 위에 숫자판을 얹으면 말하지 않아도 전달된다. 레슨 5에서 자세히 다루지만, 도구 쪽 관점에서 둘만 기억하면 된다.

  • 대시보드는 보는 사람 기준으로 만든다 — QA용·개발 리드용·경영용이 다르다
  • 숫자가 줄어드는 그림이 있어야 쓰인다. 쌓인 총량만 보여 주면 아무도 안 본다

템플릿으로 리포트 품질을 올린다

레슨 2의 다섯 요소를 도구의 설명란 템플릿에 넣어 둔다. 등록 화면을 열면 빈칸이 보이고, 빈칸은 채워진다.

## 환경
(환경 구분 / 빌드 / OS·브라우저 / 계정 종류 / 데이터 상태)
 
## 재현 절차
1.
2.
 
## 실제 결과
 
## 기대 결과 (근거: )
 
## 재현율        /
## 영향
## 증거

한 줄만 더하자면 "영향" 칸이다. 그 칸이 비어 있으면 우선순위를 정하는 사람이 판단할 재료가 없다(레슨 1).

이슈를 어디까지 등록하나

"이 정도는 올릴 가치가 있나" 라는 망설임이 자주 온다. 기준을 정해 두면 고민이 사라진다.

상황올린다이유
사소한 오탈자올린다(S4·P4)기록은 공짜다. 모아서 한 번에 고친다
재현이 안 되는 것올린다재현율을 적어 둔다(레슨 1)
의도인지 모르는 것올린다(Question)문서 공백을 찾는다
이미 알려진 결함안 올린다기존 건에 정보를 더한다
개선 아이디어올린다(다른 타입)Bug로는 올리지 않는다

"말로 전하고 끝내는 것"만 피하면 된다. 말로 전한 결함은 그 대화가 끝나는 순간 사라지고, 나중에 "그거 얘기했는데요" 는 증거가 없다.

도구가 망가지는 네 가지 패턴

도구 탓으로 보이는 문제의 대부분은 운영 방식의 문제다.

증상실제 원인고치는 법
아무도 상태를 안 바꾼다상태가 너무 많다5개 안쪽으로 줄인다(레슨 1)
필드가 비어 있다필수 필드가 너무 많다다섯 개로 줄인다
라벨이 제각각이다규칙이 없다목록을 고정하고 자유 입력을 막는다
담당자 없는 이슈가 쌓인다배정 단계가 사람의 선의에 달렸다매일 New 목록을 보는 자리를 만든다

네 번째가 가장 흔하고 가장 조용하다. 아무도 화를 내지 않는데 결함이 조금씩 쌓인다. 레슨 1에서 본 "New 체류 시간" 이 이것을 숫자로 보여 준다.

새 도구에 하루 만에 적응하는 순서

이직하거나 팀을 옮기면 낯선 도구를 만난다. 순서가 정해져 있다.

  1. 이슈 하나를 열어 본다 — 필드 이름과 배치를 눈에 넣는다
  2. 상태 목록을 확인한다 — 이 팀의 워크플로가 몇 단계인지
  3. 누가 어떤 전이를 하는지 묻는다 — 특히 Closed 를 누가 하나
  4. 라벨·컴포넌트 목록을 받는다 — 분류 규칙이 집계의 축이다
  5. 필터 다섯 개를 만들어 저장한다 — 위 표 그대로

3번을 묻는 사람이 적다. 그런데 이 한 질문으로 그 팀의 결함 관리가 얼마나 단단한지 바로 알 수 있다. 아무나 닫을 수 있다고 하면, 재검증이 절차로만 존재한다는 뜻이다.

사례 — 필터 세 개로 밀린 결함 180건을 정리하기

인수한 프로젝트에 열린 결함이 180건 쌓여 있었다. 목록을 처음부터 읽는 것은 불가능했다. 필터 세 개로 갈랐다.

필터건수처리
상태 = Fixed (재검증 대기)41건이틀간 재검증 → 34건 종결, 7건 재오픈
생성일 6개월 이전 · 상태 = New63건팀과 함께 일괄 판단 → 48건 종결(사양 변경·무의미), 15건만 살림
심각도 ≥ S2 · 상태 ≠ Closed22건우선순위 재논의 대상으로 목록화

실제로 지금 중요한 것은 22건이었다. 180건이라는 숫자가 주던 막막함은 분류하지 않은 탓이었고, 도구를 바꿀 필요는 전혀 없었다.

두 번째 줄에서 배운 것이 있다. 6개월 넘게 New 상태인 결함은 대부분 "안 고칠 것" 이다. 그것을 열어 둔 채 두면 숫자가 거짓이 되고, 레슨 5의 지표가 전부 왜곡된다. 닫는 것도 결함 관리다 — 단, 닫는 사유를 적는다.

Jira 실습 관점에서 볼 것들

이 강의는 Jira 사용법 자체를 목표로 하지 않지만, 실습 삼아 Jira의 무료 클라우드 계정을 만들어 위 4가지 개념(이슈 타입, 워크플로, 필드, 필터)이 화면 어디에 대응하는지 직접 찾아보는 것을 권장한다. 화면 버튼의 정확한 위치보다, "이게 레슨 1의 어떤 개념에 해당하는가" 를 연결 짓는 게 이 레슨의 목표다.

Jira 자체를 실전 수준으로 다루는 것은 모듈 22(레슨 6~8) 에서 이어 받는다 — 프로젝트 유형과 필드 3층 구조, JQL과 저장된 필터, 그리고 대시보드로 품질 지표를 자동으로 굴리는 법이다. 이 레슨의 네 개념이 그 세 레슨의 뼈대가 되므로, 여기서 개념을 확실히 잡아두면 된다.

참고 — Atlassian이 Jira Cloud의 UI 용어를 '이슈'에서 '업무 항목(work item)'으로 변경했다. 화면에서 '이슈'라는 단어가 보이지 않아도 당황할 필요 없다. JQL과 API는 하위 호환을 위해 여전히 issue 를 쓴다.

실무에서 왜 필요한가

거의 모든 QA 채용공고에 "Jira 사용 경험"이 등장한다. 하지만 실무에서 도구는 회사마다, 심지어 같은 회사 안에서도 팀 전환 시 바뀔 수 있다. "Jira 버튼 위치"만 외운 사람은 도구가 바뀌면 처음부터 헤매지만, 공통 개념을 이해한 사람은 새 도구의 화면을 보자마자 "아, 이게 여기서 말하는 워크플로구나"라고 바로 적응한다. 이게 채용 면접에서 "다른 도구도 써보셨나요?"라는 질문에 자신 있게 답할 수 있는 근거가 된다.

도구를 다루는 것이 QA의 지분을 만든다

도구를 쓰는 사람과 운영하는 사람은 다르다. 후자가 되면 QA의 영향 범위가 눈에 띄게 넓어진다.

쓰는 사람운영하는 사람
남이 만든 화면에 값을 넣는다필수 필드와 템플릿을 정한다
목록을 눈으로 훑는다필터와 대시보드를 만들어 공유한다
"왜 안 고쳐지지" 를 느낀다New 체류 시간을 숫자로 보여 준다
결함을 등록한다결함이 흐르는 구조를 고친다

오른쪽이 되는 데 특별한 권한이 필요하지 않다. 필터 다섯 개를 만들어 팀에 공유하는 것에서 시작되고, 그것만으로도 "결함 관리를 보는 사람" 으로 자리가 생긴다.

채용시장에서의 위치

거의 모든 QA 공고에 "Jira 또는 유사 이슈 트래커 사용 경험" 이 있다. 그래서 이 항목은 가점이 아니라 통과 조건이다. 변별력은 다른 데서 나온다.

질문약한 답강한 답
"Jira 써보셨어요?""네, 이슈 등록하고 관리했습니다""이슈 타입·워크플로·필드·필터 네 축으로 썼고, 필터를 저장해 팀에 공유했습니다"
"다른 도구도 쓸 수 있나요?""배우면 할 수 있습니다""상태 목록과 전이 권한부터 확인합니다. 개념은 같아서 반나절이면 적응합니다"
"JQL 쓸 수 있어요?""조금요""자주 쓰는 필터 다섯 개를 저장해 둡니다 — 재검증 대기, 7일 초과 New, 재오픈…"
"결함이 수백 건 밀려 있으면요?""중요한 것부터 봅니다""재검증 대기·오래된 New·고위험 미해결 세 축으로 가릅니다"
"워크플로를 설계해 본 적 있어요?""없습니다""Fixed → Closed 를 보고자만 하게 막았습니다"

마지막 줄이 가장 힘이 있다. 도구 설정 한 줄로 재검증을 구조로 보장한 경험은 "도구를 운영해 본 사람" 의 증거다. 신입이 말할 수 있는 답은 아니지만, 알고 있다는 것만 보여도 다르게 읽힌다.

네 번째도 좋은 답이다. 밀린 결함 앞에서 분류 축을 먼저 만드는 사람과 위에서부터 읽는 사람의 차이는 하루와 일주일이다.

공고 표현으로는 "이슈 트래킹", "Jira/Redmine", "QA 프로세스 개선", "테스트 관리 도구" 가 이 레슨에 걸린다. 실전 운영은 모듈 22 레슨 6~8 에서 이어 받는다.

실습 과제

과제 1 — 개념 매핑표 만들기 (10분)

Jira(또는 사용해본 다른 이슈 추적 도구)를 하나 떠올려, 이 레슨에서 배운 4가지 공통 개념(이슈 타입/워크플로/필드/필터)이 그 도구의 어떤 화면·메뉴에 대응하는지 표로 정리한다. 써본 도구가 없다면 Jira 무료 계정을 만들어 화면을 직접 둘러보며 채운다.

해설 보기
개념어디에 있나(Jira 기준)확인할 것
이슈 타입이슈 생성 화면 맨 위우리 프로젝트에 몇 종류가 켜져 있나
워크플로이슈 상단 상태 버튼누를 수 있는 다음 상태가 무엇인가
필드이슈 우측·하단 패널필수 표시(*)가 붙은 것이 몇 개인가
필터상단 검색 → 고급(JQL)저장된 필터가 공유되어 있나

두 번째 줄에서 전이 권한이 드러난다. Fixed 상태의 이슈를 열어 보고 Closed 버튼이 보이는지를 확인하면, 이 팀이 재검증을 구조로 막아 뒀는지 알 수 있다. 보인다면 아무나 닫을 수 있는 것이다.

세 번째 줄도 해 볼 만하다. 필수 필드가 다섯 개를 넘으면 등록이 번거로워 사람들이 빈칸으로 남긴다는 신호다.

과제 2 — 필터 조건 설계하기 (8분)

"내가 보고했지만 아직 종결되지 않은, 심각도가 높은 이슈만 보고 싶다"는 조건을 만족하는 필터를 어떤 필드들의 조합으로 구성할지 글로 적어본다.

해설 보기

필드 조합으로 쓰면 이렇다.

보고자 = 현재 사용자
그리고 상태 ≠ Closed  (또는 상태 ∈ {New, Assigned, In Progress, Fixed})
그리고 심각도 ∈ {S1, S2}
정렬: 생성일 오래된 순

세 가지가 포인트다.

  • 상태 ≠ Closed 가 상태 ∈ {열린 것들} 보다 안전하다. 나중에 상태가 하나 추가되면 목록 방식은 그 상태를 놓친다
  • 심각도로 걸러야 한다. 우선순위로 걸면 "협상으로 내려간 것" 이 빠져 심각한 결함이 목록에서 사라진다(레슨 1)
  • 오래된 순 정렬 — 최신 순으로 보면 오래 방치된 것이 영원히 아래 있다

실제 JQL 로는 reporter = currentUser() AND status != Closed AND priority in (Highest, High) ORDER BY created ASC 형태가 된다. 문법은 도구마다 다르고, 조합하는 축은 어디서나 같다.

과제 3 — 밀린 결함 가르기 (12분)

열린 결함이 150건 쌓인 프로젝트를 맡았다고 가정한다. 처음 세 개의 필터를 어떤 조건으로 만들지 적고, 각 필터의 결과를 어떻게 처리할지 한 줄씩 쓴다.

해설 보기
필터조건처리
1상태 = Fixed먼저 재검증한다. 이미 고쳐진 것을 닫으면 총량이 가장 빨리 줄어든다
2상태 = New · 생성일 6개월 이전팀과 일괄 판단. 대부분 "안 고칠 것" 이므로 사유를 적고 닫는다
3심각도 ≥ S2 · 상태 ≠ Closed지금 실제로 중요한 목록. 우선순위를 다시 논의한다

순서가 중요하다. 1번을 먼저 하는 이유는 비용이 가장 낮고 효과가 가장 크기 때문이다. 이미 수정된 결함이 열린 채 남아 있으면 숫자가 실제보다 나쁘게 보인다.

2번에서 닫는 것도 결함 관리라는 점을 받아들여야 한다. 열어 두면 "관리하고 있다" 가 아니라 지표가 거짓이 된다(레슨 5). 다만 반드시 닫는 사유를 적는다 — 나중에 같은 결함이 올라왔을 때 판단 근거가 된다.

3번만 남으면 보통 전체의 10~15% 다. 150건이 20건이 되면 그때부터는 평범한 결함 관리다. 도구를 바꿀 필요는 거의 없다.

자가 체크리스트

  • 이슈 타입·워크플로·필드·필터라는 4가지 공통 개념을 설명할 수 있다
  • 결함 생명주기(레슨 1)가 이슈 추적 도구의 워크플로와 같은 개념임을 안다
  • 심각도·우선순위 외에 담당자·보고자·라벨·연결 필드의 역할을 설명할 수 있다
  • 도구가 바뀌어도 공통 개념을 기반으로 빠르게 적응할 수 있다고 설명할 수 있다
  • 같은 개념이 Jira·GitHub Issues·Redmine 에서 어떤 이름인지 짚을 수 있다
  • Bug / 개선 요청 / Question 을 가르는 기준을 설명할 수 있다
  • Fixed → Closed 를 보고자만 하게 막는 것이 왜 중요한지 말할 수 있다
  • 필수 필드를 다섯 개 안쪽으로 두는 이유를 설명할 수 있다
  • 라벨·컴포넌트 분류가 레슨 5의 지표에서 어떤 축이 되는지 안다
  • 연결 세 종류(중복·관련·차단)의 쓰임을 구분할 수 있다
  • QA가 저장해 둘 필터 다섯 개를 말할 수 있다
  • 밀린 결함을 가르는 세 축을 말할 수 있다
  • 새 도구에 적응할 때 상태 목록과 전이 권한부터 확인하는 이유를 안다

흔한 실수

  • 도구 사용법(버튼 위치)만 암기하고 개념을 이해하지 않는다. 도구가 바뀌면 처음부터 다시 배워야 한다.
  • 모든 이슈를 Bug로만 등록한다. 개선 요청이나 작업(Task)까지 전부 Bug로 등록하면 통계(레슨 5)가 왜곡된다.
  • 라벨/컴포넌트 분류를 대충 채우거나 생략한다. 나중에 "어느 기능 영역에서 결함이 많이 나오는가"를 분석할 때 이 분류가 없으면 집계 자체가 불가능하다.
  • 필수 필드를 계속 늘린다. 바쁜 사람이 빈칸으로 남기거나 아무 값이나 넣는다. 틀린 집계는 빈칸보다 나쁘다.
  • 아무나 Closed 로 보낼 수 있게 둔다. 재검증이 조용히 건너뛰어진다. 전이 권한으로 막는 것이 절차보다 확실하다.
  • 자동화로 Closed 까지 보낸다. 아무도 확인하지 않은 결함이 통계상 종결된다. 자동화는 Retest 대기까지만 쓴다.
  • 라벨을 자유 입력으로 둔다. 같은 영역이 세 가지 이름으로 쌓이고 집계가 쪼개진다. 목록을 고정한다.
  • 필터를 매번 새로 입력한다. 결국 안 쓰게 된다. 다섯 개를 저장해 둔다.
  • 반려된 내 이슈를 다시 안 본다. 반려 사유는 내 리포트의 약점이 적힌 목록이다.
  • 결함을 말로만 전한다. 대화가 끝나는 순간 사라지고 "얘기했는데요" 는 증거가 없다.
  • 오래된 New 를 열어 둔 채 둔다. 관리하는 것이 아니라 지표가 거짓이 된다. 사유를 적고 닫는 것도 결함 관리다.
  • 도구를 바꿔 문제를 해결하려 한다. 증상의 대부분은 운영 방식이 원인이고, 도구를 옮기면 같은 문제가 따라온다.

참고 자료

이 커리큘럼 안에서

  • 모듈 6 레슨 1 — 결함 생명주기. 워크플로의 내용 그 자체
  • 모듈 6 레슨 2 — 결함 리포트. 템플릿으로 품질을 구조화한다
  • 모듈 6 레슨 3 — 비난 없는 소통. 기록이 남는 곳이 어디인가
  • 모듈 6 레슨 5 — 품질 지표. 라벨·분류가 그 집계의 축이 된다
  • 모듈 4 레슨 5 — Go/No-Go. "미해결 고위험" 필터가 그 자료다
  • 모듈 10 — 결함 분석. 원인 유형 분류를 어떻게 설계하나
  • 모듈 22 레슨 6~8 — Jira 실전: 필드 3층 구조, JQL, 대시보드

한 줄 정리 — 도구는 다르고 개념은 같다(이슈 타입·워크플로·필드· 필터). 필수 필드는 다섯 개 안쪽, 라벨은 집계의 축, Fixed → Closed 는 보고자만 — 이 세 가지 설정이 결함 관리를 절차가 아니라 구조로 만든다. 그리고 밀린 결함은 재검증 대기 · 오래된 New · 고위험 미해결 세 축으로 가른다.

낯선 말 풀이

이 레슨에 나온 약어입니다. 본문에서도 처음 나올 때 점선으로 표시해 두었습니다 (제목과 링크 글자는 그대로 둡니다).

JQL — 지라 질의 언어
결함 관리 도구에서 "이런 조건인 건만 보여 달라"고 적는 말.
UI — 사용자 인터페이스
사람이 직접 보고 누르는 부분 — 화면, 버튼, 입력창.
QA — 품질보증
만든 것이 쓸 만한지 확인하고, 애초에 덜 망가지게 만드는 방법을 정하는 일. "테스트"는 그 일의 일부다.
Go/No-Go — 내보낼지 말지 판정
미리 정해 둔 조건을 놓고 "이대로 내보낸다 / 내보내지 않는다" 를 한자리에서 정하는 일.
API — 응용 프로그램 인터페이스
프로그램끼리 주고받는 창구. 사람이 화면 버튼을 누르는 대신, 프로그램이 정해진 주소로 요청을 보내 답을 받는다.
ISTQB — 국제 소프트웨어 테스팅 자격 위원회
테스터 자격 시험을 만들고 용어를 정리하는 국제 단체.

용어집 전체 보기