惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recorded Future
Recorded Future
S
Secure Thoughts
D
Docker
The GitHub Blog
The GitHub Blog
Y
Y Combinator Blog
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
D
DataBreaches.Net
F
Fortinet All Blogs
月光博客
月光博客
S
Security @ Cisco Blogs
AI
AI
IT之家
IT之家
P
Proofpoint News Feed
Stack Overflow Blog
Stack Overflow Blog
大猫的无限游戏
大猫的无限游戏
N
News and Events Feed by Topic
Hacker News: Ask HN
Hacker News: Ask HN
人人都是产品经理
人人都是产品经理
Recent Announcements
Recent Announcements
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Google Online Security Blog
Google Online Security Blog
K
Kaspersky official blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
P
Proofpoint News Feed
Latest news
Latest news
Webroot Blog
Webroot Blog
GbyAI
GbyAI
L
Lohrmann on Cybersecurity
T
Threat Research - Cisco Blogs
S
Schneier on Security
G
Google Developers Blog
N
News | PayPal Newsroom
C
Check Point Blog
T
Tenable Blog
L
LINUX DO - 最新话题
C
CERT Recently Published Vulnerability Notes
T
Troy Hunt's Blog
Know Your Adversary
Know Your Adversary
SecWiki News
SecWiki News
TaoSecurity Blog
TaoSecurity Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
爱范儿
爱范儿
W
WeLiveSecurity
Project Zero
Project Zero
M
MIT News - Artificial intelligence
H
Hacker News: Front Page
Apple Machine Learning Research
Apple Machine Learning Research
V
V2EX
C
Cyber Attacks, Cyber Crime and Cyber Security

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
КТЗ показал единицу, а задачу вернули трижды. Что на самом деле ломает процесс требований
John Galt · 2026-06-24 · via Все публикации подряд на Хабре

КТЗ показал единицу, а задачу вернули трижды. Что на самом деле ломает процесс требований

Средний

9 мин

0

Под моей прошлой статьей про КТЗ – коэффициент токсичности задачи (вот она) – был комментарий, на который я сначала не обратил особого внимания. Смысл такой: все, что вы описываете – это результат некачественной работы аналитика и руководителя. Их работу свалили на программиста и назвали методом.

Неприятнее всего, что человек прав. Фиксируй договоренности, проверяй готовность задачи, не отменяй проработку требований, возвращай сырое заказчику – это азбука ремесла. Этому учат на любом курсе по управлению. Любой аналитик с опытом прочитает и скажет: спасибо, кэп.

Только через пару недель после той статьи у меня случилась история, которая показала кое-что неприятное. Я знаю все эти правила. И задача все равно вернулась трижды, хотя на входе мой собственный фильтр поставил ей низший балл.

Эта статья не про то, какие правила правильные. Их все знают. Она про то, почему правильное не делается, даже когда ты знаешь его наизусть и держишь под рукой метрику.

Третий возврат

Задача выглядела рядовой: доработать отчетную форму. На входе мы прогнали ее через фильтр. Критерий приемки? Есть, обсуждали с заказчиком на встрече. Владелец один? Один. Срок реальный? Вполне. КТЗ – единица, рабочий диапазон. В работу.

Команда сделала, показала. Заказчик вернул: «мы имели в виду другое». Ладно, бывает. Уточнили, переделали, показали снова. Вернул второй раз: «а где выгрузка за период, мы же это обсуждали».

Открываю переписку. Ищу обсуждение выгрузки. Его нет. Ни в письмах, ни в протоколах, нигде. Обсуждали, видимо, в коридоре или по телефону. Третья итерация ушла не на работу, а на археологию: собрать заново, что заказчик имел в виду с самого начала.

Вот что по-настоящему задевает. Ничего не нарушено. КТЗ единица – значит «задача готова». Я фиксирую договоренности – просто эту не зафиксировал, она проскочила в разговоре. Я проверяю готовность – проверил, она ответила «готова». Все правила были при мне, и метрика была при мне. И не сработали.

Потому что знать правило и применить его в нужный момент – не одно и то же. Знание никуда не делось. Не сработало применение ровно тогда, когда было нужно.

Почему правильное не делается

Тут легко скатиться в мораль: будьте дисциплинированнее, ребята. Не всегда помогает. Я и так считал себя дисциплинированным, но все равно проскочило.

Дело не в дисциплине отдельного человека. Дело в том, что у каждого правильного действия есть момент, когда его дешевле не сделать. И таких моментов в обычной рабочей неделе десятки.

Зафиксировать договоренность письменно? Дешевле кивнуть и побежать дальше, все же друг друга поняли. Проверить готовность по-настоящему, а не для галочки? Дешевле поверить на слово, человек ведь сказал «понятно». Защитить встречу проработки, когда горит? Дешевле ее отменить, время сейчас дороже. Вернуть сырую задачу заказчику? Дешевле взять и разобраться по ходу, чем идти на конфликт.

Сделать правильно почти всегда дороже в моменте. Сэкономить – дешевле. А счет приходит потом – через две недели, тремя итерациями правок, когда уже не вспомнить, на какой именно встрече все пошло не так. Связь между сэкономленной минутой сегодня и потерянной неделей потом неочевидна. Поэтому правило знают все, а исполняют единицы и непостоянно.

Значит, бесполезно полагаться на силу воли. Полагаться надо на то, что не требует силы воли в момент, когда дешевле схалтурить. На привычку, которую один раз сделал частью процесса и дальше она работает сама, даже когда ты устал, торопишься и хочешь домой.

Дальше – четыре места, где правильное проигрывает чаще всего. И четыре привычки, которые я встроил, чтобы перестать каждый раз делать выбор заново.

Четыре разлома

За свою трудовую практику я наблюдал процесс требований с разных сторон: в проектном институте, в строительном подрядчике, в корпоративной разработке. Среда разная, люди разные, а ломается все в одних и тех же местах. Проверьте на своей команде. Подозреваю, минимум два узнаете сразу.

Разлом 1. Договоренности живут в воздухе

Встреча прошла отлично. Все друг друга поняли, все закивали, разошлись довольные. Через две недели выясняется: поняли все разное, а кивал каждый своему.

Все знают, что договоренности надо фиксировать. И все равно не фиксируют – потому что в момент встречи кажется, что и так все ясно. Зачем тратить время на очевидное. Устная договоренность – это не договоренность. Это набор индивидуальных воспоминаний, и расходиться они начинают в ту секунду, когда люди выходят из переговорки. Чем выше ставки, тем быстрее они расходятся – память услужливо подстраивается под то, что человеку выгодно помнить. Никто не врет. Просто все помнят по-разному, и каждый при этом искренне.

Самый коварный вариант – фиксация «потом». Протокол, написанный через три дня, фиксирует уже не договоренность, а чье-то воспоминание о ней. И спорить с таким протоколом легко: «я этого не говорил».

Разлом 2. Готовность проверяют по памяти, а не по факту

Мой фильтр многие справедливо назвали рабочим Definition of Ready. По сути, это он и есть. Только тогда возникает честный вопрос: DoR придумали не вчера, почему он у большинства не работает?

А ответ простой: обязательные критерии готовности команда соблюдает, необязательные под давлением сроков пропускает первыми. Вот и весь механизм смерти DoR – он держится, пока есть время, и отваливается ровно тогда, когда времени нет.

Есть и вторая причина, почему DoR мертвый. Он сформулирован через свойства: «требования ясны», «оценка проведена». А свойство проверяется по памяти и на глаз. Требования ясны – кому ясны? Тому, кто ставил задачу? Ему всегда все ясно, он же ее придумал.

Моя история с третьим возвратом показала вторую дыру, которую я раньше недооценивал. Даже хороший вопрос с числовым порогом можно убить, если отвечать на него по памяти. «Критерий приемки есть?» – «да, обсуждали на встрече». Формально готовность подтверждена, КТЗ низкий. Фактически подтверждено воспоминание о встрече, а не документ. Фильтр проверял не задачу. Он проверял, что команда о задаче помнит.

Мертвый DoR, кстати, опаснее отсутствующего. Он создает иллюзию, что фильтр есть. Галочка стоит, а сырая задача прошла – ровно мой случай.

Разлом 3. Проработку требований отменяют первой

Проведите эксперимент: посмотрите, какую встречу команда отменяет первой, когда горит. Я спрашивал об этом многих коллег из разных компаний. Ответ совпадает у всех: проработку требований. Груминг, рефайнмент, уточнение задач – называйте как хотите, отменяют именно ее.

И ведь все знают, что это вредно. Логика все равно простая: некогда обсуждать, там все понятно, надо делать. Ровно эта логика гарантирует, что через месяц будет гореть снова. Команда делает быстрее – и переделывает чаще. Час, сэкономленный на обсуждении, возвращается тремя итерациями правок. Я проверял это на собственных итерациях, когда разбирался, куда утекает время: утекало оно не в разработку, а в переделки задач, взятых без проработки.

Получается парадокс. Проработка требований – единственная встреча, которая экономит время. И единственная, которую регулярно приносят в жертву.

Разлом 4. Сказать «нет» сырой задаче некому

Здесь обычно говорят: наймите хороших аналитиков и дайте им полномочия. С первой половиной согласен полностью. Вся загвоздка во второй – в полномочиях.

Даже сильный аналитик, который видит, что задача сырая, упирается в простой факт: взять ее проще, чем вернуть. Возврат – это разговор с заказчиком, а у заказчика свой начальник, свои сроки и свое любимое «вы же профессионалы, разберетесь, дайте свои предложения». В крупных организациях задачи к тому же прилетают мимо аналитика, напрямую от руководства, уже с дедлайном – аналитик физически не успевает их проработать до планирования. Знание, что задачу надо вернуть, есть. Полномочий и желания идти на конфликт – нет.

Поэтому сырая задача проходит. Команда берет ее «в работу», но в работу на самом деле берется не задача. Берется расследование, что заказчик имел в виду. Расследование под видом разработки, причем с дедлайном, который назначили раньше, чем кто-либо понял объем.

Что я с этим делаю

Дальше – четыре приема, по одному на разлом. Сразу скажу, чем это не является: не методология, не фреймворк, внедрять нечего. И да – ни одного нового правила вы тут не увидите. Новое не в правилах, а в том, как сделать их исполнение дешевле, чем нарушение. Чтобы в тот самый момент, когда обычно халтуришь, схалтурить было сложнее, чем сделать.

Прием 1. Фиксация в день встречи, три строки

Любое устное решение по требованиям записывается в тот же день. Не протокол на две страницы, который никто не прочтет. Три строки: что решили, кто подтвердил, что это меняет в задаче. Текст уходит участникам с одной фразой: «Зафиксировал так, поправьте до завтра, иначе работаем по этому».

Почему три строки, а не нормальный протокол? Потому что нормальный протокол – это работа, а работу под конец дня откладывают. Три строки пишутся за две минуты, и эти две минуты не проигрывают по цене даже уставшему менеджеру вечером. Я специально сделал планку такой низкой, чтобы у меня не было повода ее не взять.

«Иначе работаем по этому» – вторая половина приема. Молчание превращается в согласие. Поправить текст в день встречи легко и не стыдно. Оспаривать его через две недели – уже неловко, и все это понимают.

Эффект я почувствовал в тот день, когда на очередное «мы имели в виду другое» впервые ответил ссылкой на письмо с датой. Разговор занял две минуты. Не две итерации – две минуты.

Прием 2. Ответ о готовности – ссылка, а не «да»

Пять вопросов готовности – это базовая механика КТЗ, повторять ее тут не буду. Здесь – про то единственное, что изменилось после третьего возврата, и изменилось как раз в сторону «исполнять, а не помнить».

Раньше команда отвечала на вопросы по памяти. «Критерий есть?» – «да». И этого хватало, КТЗ выходил низкий. Теперь правило жестче: засчитывается только ссылка. Письмо, протокол, карточка задачи – что угодно с датой и автором. «Обсуждали на встрече» равно «нет».

Звучит мелочью, а закрывает ту самую слепую зону из разлома 2: фильтр перестает оценивать воспоминания и начинает оценивать факты. И заодно убирает спор о субъективности. С формулировкой «требования ясны» спорить можно до хрипоты. Со ссылкой – не о чем: она либо открывается, либо ее нет.

Прием 3. Проработка требований – защищенный слот

Встреча проработки не отменяется. Совсем, ни при каких пожарах. Если горит – сокращается до пятнадцати минут на одну ближайшую задачу. Но из календаря не исчезает.

Я сделал ее неотменяемой именно потому, что на силу воли тут полагаться нельзя – в момент пожара любая встреча выглядит роскошью. Если каждый раз решать заново, оставить ее или убрать, она всегда проиграет горящей задаче. Поэтому решение принято один раз и не обсуждается.

Скажу прямо: правило стоило мне нескольких неприятных разговоров. Когда горит, человек, который защищает встречу, выглядит бюрократом. Спорить про методологию бессмысленно, никто не слушает. Сработал другой аргумент – про время в часах: я взял конкретную итерацию и показал, сколько ушло на переделки задач, взятых без проработки. Против цифр спорить тяжело. Против чужой методологии – легко и приятно.

Прием 4. Возврат с вопросами, а не с вердиктом

Возврат сырой задачи с вопросами – прием не новый. Но дело не в самом возврате, а в том, что делает его дешевым для исполнителя. Возврат-конфликт дорогой, на него надо решиться. Возврат-вопрос почти ничего не стоит.

«Не готова, доработайте» – это конфликт. Вы оцениваете работу заказчика и не даете ему пути вперед. Получите оборону, эскалацию или то самое «вы же профессионалы».

«Чтобы взять задачу, нам нужны два ответа: кто принимает финальное решение по форме отчета, ваш отдел или планирование? и какой период выгрузки обязателен?» – это уже не отказ. Заказчик получает короткий список, с которым идет к своему руководству и выглядит там человеком, который двигает вопрос, а не получил отлуп.

Содержание одно и то же. «Задача сырая, верните» – так сказать тяжело, это диагноз заказчику лично. «Нужны два ответа» – так легко, это просьба о помощи в его же интересах. Меняешь не суть, а цену поступка для того, кто его совершает. И поступок начинает совершаться.

Где все это хранится

Прошлую статью я закончил вопросом: где хранится история изменений требований? Я сам однажды на нем споткнулся – и это, пожалуй, лучшая иллюстрация ко всей теме.

У четырех приемов есть побочный продукт, ценность которого видна не сразу. Зафиксированные решения, ответы заказчика на возвраты, итоги проработок – все это накапливается. Складывается в одну ленту: что решили, когда, кто подтвердил, почему отказались от альтернатив.

Зачем она, кроме споров? Вот зачем. Когда в команду приходит новый человек, он первым делом спрашивает не «что мы делаем». Он спрашивает «почему так». Почему отказались от третьего варианта интеграции. Почему с этим отделом переписываемся только письменно. Почему вот этот срок реальный, а вон тот – ритуальный. Документация отвечает на «что». На «почему» отвечает только история решений. Если она есть.

С прошлого года у этой истории появился второй потребитель – языковые модели. Перед разбором каждого нового документа требований я загружаю в модель файл с историей решений. И модель перестает предлагать варианты, которые мы отклонили полгода назад. Зато начинает находить противоречия с тем, что уже зафиксировано – то, что человек глазами пропустит. Один из практиков дал точную формулировку: ИИ умножает то, что у вас уже есть. Есть порядок в требованиях – модель умножит порядок. Есть хаос – получите хаос, просто быстрее. Но это уже территория контекст-инжиниринга, и она тянет на отдельный разговор.

Вместо вывода

Главное возражение к моей методике КТЗ бьет в точку: все, что я описал – азбука, и хороший аналитик с полномочиями снимает половину этих проблем еще на входе. Спорить не буду.

Но между «знать азбуку» и «исполнять ее в пятницу вечером на третьей горящей задаче» лежит пропасть, и проваливаются в нее все – я в том числе, со своим стажем и собственной метрикой наперевес. КТЗ показал единицу. Задачу вернули трижды. Правила знают все, но работает не знание, а четыре скучные привычки, которые делают исполнение дешевле нарушения. Записывать в день встречи. Требовать ссылку, а не «да». Не отдавать проработку пожарам. Возвращать вопросом, а не вердиктом.

Ни одна не требует фреймворка, бюджета или разрешения сверху. Все можно начать со следующей рабочей недели в одиночку. Я начинал именно так – и первые недели чувствовал себя занудой с тремя строками фиксации. Потом занудой быть перестал. А КТЗ той отчетной формы так и остался единицей. Только теперь это правда.

Шаблон фиксации решений из трех строк и чек-лист готовности из пяти вопросов я собрал в один файл – он лежит в закрепе моего телеграм-канала про контекст-инжиниринг в закрытом корпоративном контуре: t.me/async_mind_it. Там же про то, как из истории требований вырастает контекст для работы с ИИ.