本文へ移動
cccskills
無料GitHub で公開

severity-vs-priority-reference

Pure-reference catalog for defect classification: severity (impact on the system / user) vs priority (urgency of fix) on independent axes - the canonical 5-point severity scale (Critical / High / Medium / Low / Trivial), the 5-point priority scale (Immediate / High / Medium / Low / Deferred), the 5x5 matrix with worked S1/P5 and S5/P1 examples, and IEEE 1044-2009 severity classes; plus the full defect lifecycle (ISTQB-canonical states new / open / assigned / fixed / verified / closed / reopened / deferred / rejected / duplicate, allowed and forbidden transitions, tracker vocabulary maps) and the defect-categorisation taxonomies (IEEE 1044 anomaly classification, ISTQB CTAL-TA root-cause categories, Orthogonal Defect Classification) in references. Use when triaging or classifying a defect, configuring a tracker's severity/priority/state fields, reviewing a bug report's classification, or running root-cause analysis.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qaスター 13(GitHub 13 + cccskills 0)
連携ツールJiraGitHubAWSAzure

実行スコア 未検証

インストール方法を見る

含まれるファイル(5)

  • SKILL.md11.9 KB
  • .tessl-plugin/plugin.json1.0 KB
  • references/lifecycle.md9.0 KB
  • references/taxonomy.md9.0 KB
  • references/tracker-vocabulary-map.md1.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

severity-vs-priority-reference

Overview

Severity and priority are two independent axes, not synonyms. Every triaged defect must have both, and the combination drives scheduling, escalation, and SLA enforcement.

  • Severity measures how badly the defect breaks the system / user when triggered. It's an objective property of the defect.
  • Priority measures how urgently the fix must land. It's a scheduling decision, influenced by severity but also by business context (customer commitments, regulatory deadlines, release timing).

This skill is a pure reference consumed by defect-report review (which rejects reports that conflate the two), bug-tracker-workflow, and downstream triage tooling. Two companion references extend it: the defect lifecycle (states, allowed / forbidden transitions, tracker vocabulary) in references/lifecycle.md, and the categorisation taxonomies (IEEE 1044, ISTQB CTAL-TA root cause, ODC) in references/taxonomy.md.

When to use

  • Reviewing whether a bug report's severity + priority are both set and consistent with the defect description.
  • Configuring a tracker's severity / priority field options.
  • Coaching a tester / triager on the distinction.
  • Checking a state transition against the canonical lifecycle (see references/lifecycle.md).
  • Categorising defects for root-cause analysis or process metrics (see references/taxonomy.md).

How to use

  1. Read the defect and decide what function it breaks and how badly; pick a severity (S1-S5) from the severity scale anchors.
  2. Separately weigh how urgently the fix must land given business context; pick a priority (P1-P5) from the priority scale.
  3. Locate the pair in the 5x5 matrix; if the cell is "rare" or "unusual", record an explicit rationale for the combination.
  4. Confirm you did not collapse the axes (do not force P1 just because severity is S1) - the two values are independent.
  5. Set the tracker's severity and priority fields per the configuring-a-tracker table for your platform.
  6. On any later re-triage (state change), keep severity fixed and revisit priority only.
  7. Log every priority change with its rationale.

The two axes

Severity scale

Per IEEE 1044-2009 (cite by stable ID; "Standard Classification for Software Anomalies") and ISTQB CTFL syllabus:

SeverityDefinitionExample
Critical (S1)System unusable; data loss; security breach; total loss of function.Production database is corrupted on user signup.
High (S2)Major function broken; significant user impact; no easy workaround.Checkout fails 30 % of the time; no workaround.
Medium (S3)A function works incorrectly; usable workaround exists; impact bounded.Date picker shows wrong month abbreviations; users can type the date.
Low (S4)Cosmetic or minor inconvenience; functionality not impaired.Footer copyright year not updated.
Trivial (S5)Spelling, alignment, polish-level issues."Settngs" link misspelled in sidebar.

Per ISTQB Glossary "severity" entry (glossary.istqb.org): "the degree of impact that a defect has on the development or operation of a component or system."

Priority scale

Per ISTQB Glossary "priority": "the level of (business) importance assigned to an item, e.g., a defect."

PriorityDefinitionExample
Immediate / Blocker (P1)Stop the release; halt downstream work until fixed.Production outage; security incident in progress.
High (P2)Fix in current sprint / before next release.Customer-reported high-severity bug.
Medium (P3)Fix when capacity permits in coming sprints.Medium-severity bug with workaround.
Low (P4)Backlog; fix opportunistically.Low-severity, no customer impact.
Deferred (P5)Won't fix in foreseeable horizon.Cosmetic in deprecated feature.

Why they must be separate axes

The "combined severity-priority" scale is a common anti-pattern. Each cell in the 5×5 matrix below represents a real combination:

P1 ImmediateP2 HighP3 MediumP4 LowP5 Deferred
S1 Criticaltypicalunusual but realrarerarerare
S2 Hightypicaltypicaltypicalrarerare
S3 Mediumunusualtypicaltypicaltypicalunusual
S4 Lowunusualunusualtypicaltypicaltypical
S5 Trivialunusual (PR demo!)rareunusualtypicaltypical

Worked examples that prove the distinction:

  • S1 / P5 (Critical / Deferred) - Real defect: a security vulnerability in a legacy system scheduled for deprecation next quarter. Severity is objectively Critical (the bug, if triggered, breaks the system) but priority is Deferred (the whole subsystem is being removed; patching it is wasteful). Action: track + monitor; if exploited before deprecation, re-prioritise.

  • S5 / P1 (Trivial / Immediate) - Real defect: a typo on the hero copy of the marketing site that says "Bweekly" instead of "Biweekly," and the CEO just shared the page on LinkedIn. Severity is objectively Trivial (no function broken) but priority is Immediate (PR / brand impact).

  • S2 / P3 (High / Medium) - Real defect: checkout intermittently fails for a specific bank's cards (3 % of transactions), workaround = use a different card. Severity is High (major function impaired), priority is Medium (workaround exists + no SLA breach yet).

  • S3 / P1 (Medium / Immediate) - Real defect: a regression surfaced 4 hours before a marketing email lands that mentions the feature. Severity is Medium (function works in 90 % of cases) but priority is Immediate (marketing dependency).

Worked example

A CSV export appends one trailing blank column for every user. The export still succeeds and every data value is correct.

  1. Severity: the function works and data is intact; the defect is a cosmetic formatting flaw -> S4 Low (functionality not impaired).
  2. Priority: a major enterprise customer's ingestion pipeline breaks on the extra column, and their renewal is next week -> P2 High (business commitment, near-term deadline).
  3. Matrix check: the pair is S4 / P2 - an "unusual" cell, so log the rationale (customer renewal dependency).
  4. Set Jira Severity = Low, Priority = High; do not bump severity to justify the urgency.

Result: the fix is scheduled in the current sprint despite Low severity, driven entirely by the High priority - a clean demonstration that the two axes move independently.

Mapping to lifecycle

Severity and priority don't change with state (typically). However:

  • Re-triage at state change: when a deferred defect resurfaces as a production failure, severity is unchanged but priority jumps.
  • Severity escalation rules: many trackers auto-bump priority if severity is S1/S2. The platform-workflow skills configure these.
  • SLA driven by priority: P1 = e.g., 4-hour response, P2 = 1 business day, P3 = 1 week. SLAs are tracker config, not severity-derived.

See references/lifecycle.md for the state transitions; this skill defines the orthogonal severity / priority fields.

Common confusions

ConfusionReality
"Severity = customer impact."Severity = system function impact. Customer impact informs priority. A bug that breaks an unused admin tool is High severity but Low priority.
"Priority always equals severity."False. The 5×5 matrix has 25 distinct cells, all observed in practice.
"Critical defects always get fixed immediately."False. A Critical defect in a deprecated subsystem may be Deferred.
"Cosmetic = Low / Trivial severity always Low priority."False. Marketing context (S5 / P1 example above) can make trivial severity an immediate priority.
"Severity is set by the reporter; priority by the PM."Convention varies. Best practice: reporter proposes severity; triager confirms severity + assigns priority.

Configuring a tracker

TrackerSeverity fieldPriority field
JiraCustom field (often Severity with select-list)Built-in Priority field
LinearCustom field (Severity), no first-classBuilt-in Priority field (Urgent / High / Medium / Low / No priority)
GitHub IssuesLabels (severity:critical etc.)Labels (priority:p1 etc.) + Projects status
Azure DevOpsBuilt-in Severity (1 - Critical / 2 - High / 3 - Medium / 4 - Low)Built-in Priority (1 / 2 / 3 / 4)
BugzillaBuilt-in Severity + PrioritySame

bug-tracker-workflow covers the platform-specific configuration for Jira, Linear, GitHub Issues, and Azure DevOps.

Anti-patterns

Anti-patternWhy it failsFix
Single combined fieldLoses information; everyone fights about whether to bump severity to escalate or vice versaTwo fields, explicit per defect
Default both fields to "Medium"Triagers don't engage with the distinctionRequire both fields explicitly on transition from New → Open
Auto-equate severity with priority"S1 must be P1" - disallows S1/P5 deferred legacy bugsAllow both axes independently
Severity is purely subjectiveVariability across reporters; metrics unreliableUse the IEEE 1044 examples + team-calibrated rubric
Priority changes weekly without reasonMetrics chaos; no accountabilityLog priority changes with rationale
Critical defects always escalated to release managerFloods the escalation channelUse severity and priority for escalation rules

Limitations

  • Subjectivity remains. Severity has objective anchors (S1 = data loss, S5 = cosmetic) but boundary cases (S2 vs S3 with a workaround) require judgment. Reviewer disagreement is normal.
  • Priority is a moving target. Business context shifts weekly; a P3 today may be P1 next sprint after a customer escalation.
  • Severity classes vary by tracker. Some use 4-point scales (Bugzilla), some 5 (Azure DevOps), some define their own. The team must pick one and document it.
  • No automation can fully classify severity. AI classifiers can suggest, but the final call needs a human in the loop.

References

  • ISTQB Glossary - "severity" and "priority" entries - glossary.istqb.org.
  • IEEE 1044-2009 "Standard Classification for Software Anomalies" - cite by stable ID; canonical severity classification.
  • ISO/IEC/IEEE 29119-3:2021 §6 anomaly-report fields - cite by stable ID.
  • Atlassian "Configure priority levels" - Jira priority docs.
  • Linear "Priority levels" - Linear priority docs.
  • GitHub Issues - labels + Projects status documentation.
  • Companion references: references/lifecycle.md, references/taxonomy.md, references/tracker-vocabulary-map.md.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Builds a CI gate that fails the build on **new** WCAG / a11y violations introduced by a PR while grandfathering pre-existing violations on a per-rule / per-page baseline. Aggregates verdicts from axe-core / pa11y / Lighthouse a11y / WAVE / IBM Equal Access scans. Use when a project has accumulated a11y debt and a strict "zero violations" gate would block every PR - the ratchet pattern lets the team ship while preventing regressions.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

Workflow skill that builds an A/B-test validity checklist from an experiment proposal, walking the canonical design-correctness gates - pre-registered OEC/power/guardrails, randomization unit + SRM check, assignment integrity, telemetry, peeking discipline, novelty/primacy, post-experiment SRM re-check - into a per-experiment checklist + sign-off form. Use when launching, auditing, or governing an experiment. For pitfall mechanics (guardrails, peeking) see experiment-results-interpreter's references; to read an already-valid result use experiment-results-interpreter; for per-SDK harness tests use experiment-sdk-testing - this gates DESIGN, not SDK code.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

The single install-flow skill: the reference contract for the PWA install flow (installability gate fields, `beforeinstallprompt` handshake, per-platform paths - Android WebAPK / iOS Share menu / Firefox no-op - and the `display-mode` post-install signal, in references/install-flow-reference.md) plus the build-an-X workflow that emits the Add-to-Home-Screen suite. Walks the four-stage timeline, emitting one test per gate cell per [web.dev/articles/install-criteria][install-criteria], the deferred-prompt → `prompt()` → `userChoice` chain per [web.dev/articles/customize-install][customize-install], the iOS Safari manual-metadata branch (`apple-touch-icon`) per [web.dev/learn/pwa/installation][learn-pwa], and the post-install `(display-mode: standalone)` MQ assertion. Output: a Playwright spec with per-stage cells plus a coverage matrix. Use when a PWA's manifest, icons, or install handler change, when install conversion drops at an unknown stage, or when triaging a flaky install assertion.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

Build-an-X workflow that uses an LLM to map existing tests to spec sections - given a spec doc + the test suite, the LLM identifies which tests cover which sections, surfaces uncovered sections (gap), and recommends specific tests to add. Output is a coverage matrix per spec ID. Scope is mapping tests that already exist and naming the gaps, not authoring tests for new acceptance criteria. Use when a spec doc and a test suite both exist but nobody can say which requirements are actually covered - before a release sign-off, an audit, or a decision about where to spend the next round of test effort.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

Generates tests from natural-language specs (acceptance criteria, user stories, requirements) using an LLM, with confidence scoring per test case (LLM self-assessment plus heuristics: assertion quality, naming, completeness), batching uncertain cases for human review, and integration with the team's existing test framework. Use when the user asks to generate unit tests from acceptance criteria, convert user stories to test cases, automate test creation from requirements, or augment a spec-driven test suite with AI-generated stubs that are then curated before merge.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

Configures Allure Report (test-runner adapter install, `allure-results` directory wiring, `categories.json` for failure classification, `history-trend.json` retention via the copy-history-between-runs pattern), runs the Allure CLI to convert `allure-results` to a static HTML site, and uploads the report as a CI artifact. Use when the team needs richer test reporting than JUnit XML - step-level attachments, per-test history, retry tracking, and severity / epic / feature labeling across framework-agnostic adapters (pytest, Jest, JUnit, TestNG, NUnit, Mocha). As a rich static HTML report generator, it is the open-source alternative to the sunset ExtentReports (JVM/.NET per-test HTML narrative); for hosted cross-run flakiness analytics rather than a static per-run report use currents-integration.

日本語の概要は準備中です。原文の説明を表示しています。

testland/qa132026年10月20日 更新

testland のスキルをすべて見る

このスキルの問題を報告する