[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"general-list":3,"footer-feature-tags":4,"slate-glossary-term-extreme-programming":66},true,[5,14,20,29,34,40,46,52,56,62],{"id":6,"name":7,"hex":8,"translations":9,"count_pages":13},8,"Компания","#f40925",{"ru":10,"en":11},{"name":7},{"name":12},"Company",9,{"id":15,"name":16,"hex":17,"translations":18,"count_pages":6},26,"Главная страница",null,{"ru":19},{"name":16},{"id":21,"name":22,"hex":23,"translations":24,"count_pages":28},2,"Проекты","#3027ff",{"ru":25,"en":26},{"name":22},{"name":27},"Project",15,{"id":30,"name":31,"hex":17,"translations":32,"count_pages":21},33,"ИИ",{"ru":33},{"name":31},{"id":35,"name":36,"hex":17,"translations":37,"count_pages":39},34,"Комментарии",{"ru":38},{"name":36},4,{"id":41,"name":42,"hex":17,"translations":43,"count_pages":45},25,"Задачи",{"ru":44},{"name":42},24,{"id":47,"name":48,"hex":17,"translations":49,"count_pages":51},27,"Рабочие пространства",{"ru":50},{"name":48},3,{"id":45,"name":53,"hex":17,"translations":54,"count_pages":6},"Kanban-доска",{"ru":55},{"name":53},{"id":57,"name":58,"hex":17,"translations":59,"count_pages":61},23,"Диаграмма Ганта",{"ru":60},{"name":58},1,{"id":28,"name":63,"hex":17,"translations":64,"count_pages":61},"Календарь",{"ru":65},{"name":63},{"detail":67,"more":185},{"id":68,"slug":69,"translations":70,"category":84,"tags":91,"letter":112,"og_image":17,"cover":17,"author_name":17,"author_position":17,"author_avatar":17,"faqs":113,"related":127,"views_count":181,"helpful_yes_count":116,"helpful_no_count":116,"created_at":182,"updated_at":183,"published_at":184},393,"extreme-programming",{"ru":71},{"title":72,"short_definition":73,"tldr":74,"full_explanation":75,"when_to_apply":76,"when_not_to_apply":77,"examples":78,"tips":79,"synonyms":80,"translation_en":81,"seo_title":82,"seo_description":83},"Экстремальное программирование (XP)","Гибкая методология разработки Кента Бека: короткие циклы, тесты до кода, парная работа и постоянная сборка доведены до предела.","Экстремальное программирование сложилось на проекте расчёта зарплаты в Chrysler в середине девяностых, а описал его Кент Бек в книге 1999 года «Extreme Programming Explained». Название означает, что известные хорошие практики доведены до предела: раз обзор кода полезен, пишем в паре постоянно; раз тесты полезны, пишем их до кода; раз интеграция полезна, собираем по нескольку раз в день. Во втором издании 2004 года ценностей пять: общение, простота, обратная связь, смелость и уважение.","\u003Cp>XP отвечает на вопрос, который Scrum обходит стороной: как именно писать код, чтобы изменения оставались дешёвыми. Scrum описывает роли и события, XP спускается до инженерной работы.\u003C\u002Fp>\u003Ch3>Ценности\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Общение\u003C\u002Fstrong>: разработчики, тестировщики и заказчик разговаривают напрямую.\u003C\u002Fli>\u003Cli>\u003Cstrong>Простота\u003C\u002Fstrong>: делаем то, что нужно сегодня.\u003C\u002Fli>\u003Cli>\u003Cstrong>Обратная связь\u003C\u002Fstrong>: от тестов, от сборки, от заказчика — быстро и постоянно.\u003C\u002Fli>\u003Cli>\u003Cstrong>Смелость\u003C\u002Fstrong>: выбросить неудачный код и сказать заказчику правду о сроке.\u003C\u002Fli>\u003Cli>\u003Cstrong>Уважение\u003C\u002Fstrong>: добавлено во втором издании книги.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3>Практики\u003C\u002Fh3>\u003Cp>Во втором издании тринадцать основных практик и одиннадцать дополнительных. Из основных до реальных команд чаще всего доживают четыре: разработка через тестирование, парное программирование, непрерывная интеграция и постоянный рефакторинг. Заказчик на площадке, метафора системы и общее владение кодом приживаются реже, потому что требуют перестройки не только команды, но и её окружения.\u003C\u002Fp>\u003Ch3>Что с ним стало\u003C\u002Fh3>\u003Cp>Как цельная методология XP почти не встречается. Зато его инженерные практики разошлись по индустрии и живут отдельно. Команда на Scrum с тестами, парной работой и ежедневной сборкой применяет XP, обычно этого не называя.\u003C\u002Fp>","\u003Cul>\u003Cli>Требования меняются на ходу, а стоимость правки растёт\u003C\u002Fli>\u003Cli>Небольшая команда, сидящая рядом или работающая в одном ритме\u003C\u002Fli>\u003Cli>Заказчик доступен и готов отвечать на вопросы в течение дня\u003C\u002Fli>\u003C\u002Ful>","\u003Cul>\u003Cli>Фиксированный объём и цена по договору: XP предполагает переговоры об объёме\u003C\u002Fli>\u003Cli>Распределённая команда без пересечения по часовым поясам\u003C\u002Fli>\u003Cli>Регламент запрещает править код без формальной процедуры изменений\u003C\u002Fli>\u003C\u002Ful>","\u003Cp>Команда из шести человек берёт из XP три практики. Тесты пишут до кода, поэтому регрессия ловится за минуты. Пары садятся на сложные места вроде расчёта скидок, и знание перестаёт жить в одной голове. Сборка запускается на каждый коммит. За квартал число правок после релиза заметно падает, при этом ни ролей, ни событий Scrum команда не меняла.\u003C\u002Fp>","\u003Cp>Не берите XP целиком за один заход. Начните с непрерывной интеграции: она даёт обратную связь, почти не меняя привычек команды, и делает видимой цену остальных практик. Парную работу и тесты до кода добавляйте после, по одной, с разбором на ретроспективе.\u003C\u002Fp>","экстремальное программирование, XP, Extreme Programming, методология XP, практики XP","Extreme Programming (XP)","Экстремальное программирование (XP) | Глоссарий Shtab","Экстремальное программирование Кента Бека: пять ценностей, тринадцать основных практик и то, что из них дожило до обычных команд. Когда XP подходит и когда мешает.",{"id":61,"slug":85,"hex":86,"icon":17,"order":61,"translations":87},"agile","#5e79ec",{"ru":88},{"title":89,"description":90},"Agile","Гибкие методологии разработки и управления проектами: Scrum, Kanban, XP и их элементы — спринты, бэклоги, церемонии, роли.",[92,97,103],{"id":61,"slug":93,"kind":93,"hex":86,"order":61,"translations":94},"methodology",{"ru":95},{"title":96},"Методология",{"id":21,"slug":98,"kind":98,"hex":99,"order":21,"translations":100},"framework","#7c5ce6",{"ru":101},{"title":102},"Фреймворк",{"id":104,"slug":105,"kind":106,"hex":107,"order":108,"translations":109},31,"quality","other","#0F9488",71,{"ru":110},{"title":111},"Качество","Э",[114,121],{"id":115,"order":116,"translations":117},1753,0,{"ru":118},{"question":119,"answer":120},"Чем XP отличается от Scrum?","\u003Cp>Scrum описывает организацию работы: роли, события, артефакты. XP описывает инженерные практики: как писать, собирать и менять код. Они не конкурируют и часто применяются вместе — команда живёт по Scrum и пишет код по XP.\u003C\u002Fp>",{"id":122,"order":61,"translations":123},1754,{"ru":124},{"question":125,"answer":126},"Актуален ли XP сегодня?","\u003Cp>Как отдельная методология он почти не встречается, но его практики стали общим местом. Разработка через тестирование, непрерывная интеграция, парное программирование и рефакторинг пришли именно из XP, и большинство команд применяет их, не ссылаясь на источник.\u003C\u002Fp>",{"related":128},[129,136,143,150,157,161,167,174],{"id":130,"slug":131,"translations":132},394,"tdd",{"ru":133},{"title":134,"short_definition":135},"TDD (разработка через тестирование)","Способ писать код, при котором сначала появляется падающий тест, потом минимальный код для его прохождения, потом уборка.",{"id":137,"slug":138,"translations":139},396,"pair-programming",{"ru":140},{"title":141,"short_definition":142},"Парное программирование (Pair Programming)","Двое разработчиков пишут один код на одном рабочем месте: один набирает, второй следит за направлением, роли регулярно меняются.",{"id":144,"slug":145,"translations":146},395,"continuous-integration",{"ru":147},{"title":148,"short_definition":149},"Непрерывная интеграция (CI)","Практика, при которой изменения от всех разработчиков попадают в общую ветку по нескольку раз в день и каждый раз автоматически собираются и проверяются тестами.",{"id":151,"slug":152,"translations":153},397,"refactoring",{"ru":154},{"title":155,"short_definition":156},"Рефакторинг (Refactoring)","Изменение внутреннего устройства кода без изменения его поведения: код становится понятнее и дешевле в правке, а результат работы остаётся прежним.",{"id":61,"slug":85,"translations":158},{"ru":159},{"title":89,"short_definition":160},"Семейство гибких подходов к разработке продуктов и управлению проектами, основанное на коротких итерациях и быстрой адаптации к изменениям.",{"id":21,"slug":162,"translations":163},"scrum",{"ru":164},{"title":165,"short_definition":166},"Scrum","Гибкий фреймворк разработки продуктов короткими итерациями — спринтами — с фиксированными ролями, артефактами и встречами.",{"id":168,"slug":169,"translations":170},6,"user-story",{"ru":171},{"title":172,"short_definition":173},"Пользовательская история (User Story)","Краткое описание требования глазами пользователя по формуле «как [роль], я хочу [действие], чтобы [польза]».",{"id":175,"slug":176,"translations":177},20,"definition-of-done",{"ru":178},{"title":179,"short_definition":180},"Definition of Done (критерии завершённости)","Согласованный командой перечень условий, при выполнении которых задача считается полностью завершённой.",29,"2026-08-30T15:05:42.424221+03:00","2026-08-30T15:05:42.424237+03:00","2026-08-30T15:05:42.492463+03:00",[186,204,223],{"id":61,"slug":85,"translations":187,"category":189,"tags":192,"letter":202,"cover":17,"updated_at":203,"published_at":17},{"ru":188},{"title":89,"short_definition":160,"translation_en":89},{"id":61,"slug":85,"hex":86,"icon":17,"order":61,"translations":190},{"ru":191},{"title":89,"description":90},[193,196],{"id":61,"slug":93,"kind":93,"hex":86,"order":61,"translations":194},{"ru":195},{"title":96},{"id":6,"slug":197,"kind":106,"hex":198,"order":6,"translations":199},"concept","#4b5370",{"ru":200},{"title":201},"Концепция","A","2026-04-25T22:42:14.793028+03:00",{"id":205,"slug":206,"translations":207,"category":212,"tags":215,"letter":202,"cover":17,"updated_at":222,"published_at":17},22,"acceptance-criteria",{"ru":208},{"title":209,"short_definition":210,"translation_en":211},"Acceptance Criteria (критерии приёмки)","Конкретные проверяемые условия, которым должна соответствовать пользовательская история, чтобы её приняли как выполненную.","Acceptance Criteria",{"id":61,"slug":85,"hex":86,"icon":17,"order":61,"translations":213},{"ru":214},{"title":89,"description":90},[216],{"id":39,"slug":217,"kind":106,"hex":218,"order":39,"translations":219},"artifact","#888ca0",{"ru":220},{"title":221},"Артефакт","2026-04-25T22:42:15.380450+03:00",{"id":224,"slug":225,"translations":226,"category":231,"tags":234,"letter":243,"cover":17,"updated_at":244,"published_at":17},10,"burndown-chart",{"ru":227},{"title":228,"short_definition":229,"translation_en":230},"Burndown chart (диаграмма сгорания)","График, который показывает, сколько работы осталось в спринте или релизе по дням.","Burndown chart",{"id":61,"slug":85,"hex":86,"icon":17,"order":61,"translations":232},{"ru":233},{"title":89,"description":90},[235,238],{"id":39,"slug":217,"kind":106,"hex":218,"order":39,"translations":236},{"ru":237},{"title":221},{"id":168,"slug":239,"kind":239,"hex":107,"order":168,"translations":240},"metric",{"ru":241},{"title":242},"Метрика","B","2026-04-25T22:42:15.056246+03:00"]