Ответ
Severity (Серьезность) и Priority (Приоритет) — это разные атрибуты, которые выставляются разными ролями.
-
Severity определяет влияние дефекта на работоспособность системы. Его выставляет QA-инженер на основе предопределенных критериев (например, чек-листа или стандартов компании).
- Пример:
Severity: Critical— приложение падает при попытке входа.
- Пример:
-
Priority определяет важность и срочность исправления с точки зрения бизнеса. Его обычно выставляет Product Owner или Project Manager, так как они лучше понимают бизнес-контекст и roadmap.
- Пример:
Priority: High— баг в функционале, необходимом для предстоящего релиза.
- Пример:
Почему так? Severity — это техническая оценка, Priority — бизнес-оценка. В Agile-командах финальное решение по приоритету часто обсуждается на планировании спринта.
Ответ 18+ 🔞
А, слушай, вот эта тема про Severity и Priority — это классика, на которой целые поколения QA-инженеров и продактов друг другу мозги выносят. Сейчас разложу по полочкам, чтобы ты, блядь, больше никогда не путал.
Представь себе такую картину: ты нашёл баг. Приложение, сука, на тебя смотрит, моргает и — хрясь! — падает в самый ответственный момент. Вот это, ёпта, и есть Severity (Серьёзность). Это чисто техническая оценка пиздеца. Её выставляет тот, кто этот пиздец и нашёл — то есть QA-инженер. Он смотрит в свой чек-лист и думает: "Ну-ка, насколько всё хуёво?" Критерии обычно заранее прописаны, чтобы не было мути.
- Severity: Critical — это когда всё, пиздец, капут. Кликнул — и приложение накрылось медным тазом. Данные потерялись. Система легла и не дышит.
- Severity: Major — основная функция не работает, но можно, кривя жопой, обойти.
- Severity: Minor — какая-нибудь ерунда: кнопка криво стоит, опечатка в тексте. Жить можно, но глаз дёргается.
А теперь смотри сюда. Допустим, ты нашёл баг, который проявляется раз в год, при определённом положении луны, и только у левшей. Severity может быть и High, потому что система-то падает! Но бизнесу, возможно, сейчас похуй. И вот тут на сцену выходит Priority (Приоритет).
Priority — это уже не про технику, а про деньги, сроки и стратегию. Это ответ на вопрос: "Насколько срочно нам нужно это чинить прямо сейчас?" И выставляет эту оценку обычно Product Owner или Project Manager. Потому что они, хитрожопые, знают, что там по roadmap, какие фичи горят и какой клиент готов уже завтра скандал закатить.
- Priority: High — это когда баг бьёт по деньгам, по релизу или по репутации. Его надо было чинить ещё вчера.
- Priority: Medium — пофиксим в следующем спринте, не дергайся.
- Priority: Low — может, когда-нибудь, если руки дойдут. А может, и нет. Да похуй.
В чём, сука, соль? А в том, что эти два параметра могут вообще не совпадать! Классический пример:
- Severity: Critical. Нашёл ты, скажем, баг, из-за которого нельзя распечатать годовой отчёт за 2050-й год. Технически — пиздец, система не выполняет свою функцию.
- Priority: Low. А продакт смотрит на календарь, видит, что сейчас 2024-й, и говорит: "О, ебать мои старые костыли! Да у нас ещё 26 лет впереди! Забьём, пофиксим потом, сейчас важнее новый функционал для клиентов".
И наоборот: какая-нибудь мелкая опечатка в слогане на главной странице (Severity: Low) может получить Priority: Critical, если сегодня запускается рекламная кампания на миллион.
В Agile-командах эту дилемму часто решают на планировании спринта: разработчики смотрят на Severity и оценивают трудозатраты, продакт смотрит на Priority и бизнес-ценность, и вместе они решают, что тащить в работу. Иногда, блядь, приходится жертвовать каким-нибудь критичным, но долгим в правке багом ради срочной, но простой фичи.
Короче, запомни: Severity — это ответ на вопрос "Насколько всё сломано?", а Priority — "Насколько нам надо это чинить прямо сейчас?". Первое — голос технаря, второе — голос бизнеса. И да, они часто орут друг на друга.