Топ-50 вопросов на собеседовании по Agile

СОДЕРЖАНИЕ

Чтобы успешно пройти собеседование по Agile, изучите 50 самых распространенных вопросов и ответов, которые помогут подготовиться к интервью.

1. В чем разница между Agile и Scrum?

AgileScrum
Agile описывает набор руководящих принципов, которые используют итеративный подход к разработке ПО. Agile-менеджмент представляет собой различные методологии разработки ПО, основанные на итеративном и инкрементальном подходе, в том числе Extreme Programming (XP), Rational Unified Process (RUP), Scrum и другие.Scrum — это один из фреймворков Agile с определенным набором правил, которые необходимо соблюдать при разработке ПО. Он использует итеративный и инкрементальный подход, называемый спринтами, которые длятся 2-4 недели.
Agile наиболее эффективен в организациях с небольшими, но опытными командами разработчиков.Scrum лучше всего подходит для проектов, где требования постоянно меняются.
Лидерство играет ключевую роль в Agile.Scrum предполагает наличие самоорганизующейся и кросс-функциональной команды.
Менее гибкий, чем Scrum.Гибкость Scrum — его главное преимущество, поскольку он позволяет быстро адаптироваться к изменениям.
Нормой в Agile является открытая коммуникация, где происходит непосредственное взаимодействие между кросс-функциональными командами.Ежедневно проводятся стендапы, на которых присутствуют Scrum-мастер, владелец продукта и члены команды.
Перед началом внедрения Agile необходимы значительные структурные и организационные изменения.При внедрении Scrum не требуется много изменений.
В Agile каждый этап процесса разработки, такой как сбор требований, анализ и проектирование, отслеживается регулярно.После каждого спринта запрашивается обратная связь от заказчика для оценки результатов.
Руководитель проекта контролирует выполнение задач и принимает решения.В команде нет лидера, поэтому все вопросы и задачи решаются коллективно.
Проектирование и реализация должны быть простыми.Инновации должны быть движущей силой проектирования и реализации.
Приоритетом Agile является непрерывная поставка рабочего продукта.В Scrum используется эмпирический контроль процесса.

2. Что такое Velocity в Agile? Как ее измерить?

Velocity (скорость) — это метрика, отражающая сумму завершенных стори-поинтов (Story Points) в рамках одного спринта. Она показывает среднее количество задач из бэклога, преобразованных в инкремент продукта Scrum-командой за один спринт. Метрика помогает прогнозировать будущую нагрузку. Например, если команда взяла 5 историй на 30 стори-поинтов и все их завершила к концу спринта, скорость команды равна 30.

3. Что такое User Story Mapping?

User Story Mapping (карта пользовательских историй) — это метод проектирования, который используется для визуализации процесса взаимодействия пользователя с продуктом. Он помогает определить набор приоритетных функций, которые должны быть у минимально жизнеспособного продукта (Minimal Viable Product).

4. Назовите методы оценки в Scrum

Для оценки в Scrum используются следующие методы:

  • Planning Poker Estimation (покер планирования)
  • Disaggregation Estimation (дезагрегация)
  • T-Shirt Estimation Technique (оценка по футболке)
  • Estimation by Analogy (оценка по аналогии)

5. Что такое «критерии готовности»‎ (Definition of Done)?

«Критерии готовности» (Definition of Done, DoD) – это контрольный список пунктов, которые необходимо выполнить, чтобы объявить проект, требование или задачу «завершенными». 

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

6. Каковы три столпа Scrum?

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

7. Что такое «критерии приемки» (Acceptance Criteria)? Кто их определяет?

«Критерии приемки» — это заранее определенные условия, которые должны быть выполнены, чтобы пользовательская история (User Story) была завершена. «Критерии приемки» определяет Scrum-команда, и обычно они формулируются во время доработки бэклога продукта.

8. В чем разница между обзором и ретроспективой спринта?

Обзор спринта (sprint review) фокусируется на продукте, в то время как ретроспектива спринта (sprint retrospective) фокусируется на процессе. Обзор спринта в первую очередь касается оптимизации и максимизации ценности продукта, а ретроспектива связана с взаимодействиями между людьми, процессами, инструментами и качеством продукта.

9. Что такое диаграммы сгорания BurnUp и Burndown?

  • Burndown диаграмма это визуальное представление в виде графика, который показывает объем выполненной работы в спринте или проекте. Помогает команде отслеживать прогресс и выявлять проблемы на ранних стадиях. Показывает, как быстро команда выполняет задачи и насколько она близка к завершению спринта или проекта.
  • BurnUp диаграмма — еще одно визуальное средство для отслеживания прогресса, но в отличие от burndown, показывает объем проделанной работы по отношению к общему объему работ по проекту. Это помогает лучше понять, как команда справляется с задачами и дает наиболее полное представление о прогрессе проекта.

10. Что такое Agile-тестирование? Назовите его принципы.

Agile-тестирование – это процесс разработки ПО, в ходе которого продукт тестируется на наличие ошибок, сбоев и других проблем. Он объединяет команду разработчиков и команду QA для совместной работы над обеспечением высокого качества результатов. Agile-тестирование опирается на восемь принципов:

  • непрерывное тестирование;
  • постоянная обратная связь;
  • командная работа;
  • чистый код;
  • минимальная документация;
  • разработка через тестирование;
  • удовлетворенность заказчиков;
  • адаптивность к изменениям.

11. Каковы элементы хорошей пользовательской истории?

Элементами хорошей истории пользователя являются:

  • определенные критерии приемки;
  • зависимости;
  • критерии эффективности;
  • критерии отслеживания;
  • описание.

12. Что такое ‎дорожная карта продукта?

Дорожная карта продукта — это руководство, определяющее направление развития компании и сроки достижения целей. Она помогает организовать работу, расставить приоритеты и четко донести долгосрочные цели и стратегии. При создании дорожной карты следует учитывать следующие аспекты:

  • стратегию продукта для достижения целей;
  • приоритеты, основанные на ценности для бизнеса;
  • ответственность за разработку продукта;
  • сроки реализации продукта.

13. Каковы ценности Scrum?

Пять ценностей Scrum:

  • Openness (открытость)
  • Courage (смелость)
  • Focus (фокус)
  • Respect (уважение)
  • Commitment (обязательство)

14. В чем разница между эпиками, задачами и историями?

Epic (эпик) — это крупная задача или цель, которая состоит из множества меньших задач. Эпики помогают командам фокусироваться на больших целях, разбивая их на более мелкие задачи, которые можно выполнить в течение одного или нескольких спринтов. Содержит множество User Stories.

Story (история) — это инструмент, который используется в Agile для описания программного продукта с точки зрения конечного пользователя. Истории разбиваются на небольшие задачи и разрабатываются командами в течение одного спринта.

Task (задача) — конкретное действие для реализации части User Story. Это наименьшая единица в Scrum, которая используется для обозначения работы.

15. Кто определяет цель спринта?

Scrum-команда определяет цель спринта во время его планирования, где владелец продукта формулирует четкую бизнес-цель.

16. Что такое рефакторинг?

Рефакторинг — это улучшение внутренней структуры исходного кода существующей программы без изменения функциональности.

17. Что такое Agile-метрики? Назовите наиболее распространенные из них.

Agile-метрики — это ключевые показатели, которые помогают компаниям оценивать производительность команды, процесс разработки и качество выпускаемых продуктов.

К наиболее распространенным метрикам относятся:

  • Диаграмма сгорания работ спринта (Sprint Burndown Chart);
  • Диаграмма сгорания эпика и релиза (Epic and Release Burndown Chart);
  • Производительность команды/Скорость (Velocity);
  • Контрольная диаграмма (Control Chart);
  • Время производства (Lead Time);
  • Накопительная диаграмма потока (Cumulative Workflow);
  • Время цикла (Cycle Time).

18. В чем разница между понятиями Definition of Ready (DoR) и Definition of Done (DoD)?

«Критерии готовности к разработке» (Definition of Ready) — это чек-лист с контрольным списком критериев, определяющих, что пользовательская история готова для добавления в следующий спринт. Подход Scrum официально не предписывает использование DoR. Но поскольку формулировка критериев DoR обычно происходит на ранних этапах планирования проекта, этот метод позволяет описать все, что должно быть в результате выполнено прежде, чем задача будет взята в работу.

«Критерии выполненности» (Definition of Done) включают в себя такие действия, как программирование, проектирование, тестирование, составление комментариев и релизных заметок. «Критерии готовности к разработке» используются как «фильтр на входе», а «Критерии выполненности» — как «фильтр на выходе» из разработки.

19. Что такое Скрамбан (Scrumban)?

Скрамбан — это гибридная методология управления проектами, сочетающая лучшие принципы Scrum и Kanban. Она сочетает в себе структурированность и предсказуемость Scrum с гибкостью Kanban, повышая эффективность и адаптивность рабочего процесса команд. Скрамбан хорошо работает у команд, которые стремятся одновременно работать над стратегическими задачами и параллельно оптимизировать процессы.

20. Что такое артефакты Scrum?

Артефакты Scrum предоставляют scrum-команде и заинтересованным сторонам важную информацию о продукте, который находится в разработке.

К основным артефактам Scrum относятся:

  • Бэклог продукта (Product Backlog) – это список всех задач и элементов, которые необходимо сделать в проекте в приоритетном порядке. Это единственный источник требований для любого вида изменений, которые могут быть внесены в продукт.
  • Бэклог спринта (Sprint Backlog) – это список задач, которые scrum-команда запланировала в рамках текущего спринта.
  • Инкремент (Increment) – это сумма всех завершенных в течение спринта задач из бэклога продукта в сочетании с инкрементами всех предыдущих спринтов.
  • Диаграмма сгорания задач (Burn-Down Chart) – это график, наглядно отображающий объем выполненной командой работы по пользовательским историям.

21. Что такое релиз-кандидат (Release Candidate)?

Релиз-кандидат — это версия ПО, которая еще не завершена, но близка к финальной стадии. Это своего рода предварительный просмотр продукта. Основное внимание в релиз-кандидате уделяется функциональности, безопасности и качеству.

22. Что такое таймбоксинг (timeboxing) в Scrum?

Таймбоксинг — это выделение определенного временного интервала для выполнения задачи. Таймбокс — это единица времени, которая не должна превышать 15 минут для ежедневного скрама (Daily Scrum) и 8 часов для планирования спринта (Sprint Planning).

23. В чем разница между Sprint 0 и Spike?

Sprint 0 — это минимальный период времени, используемый для разработки базовой версии бэклога продукта. Однако в официальной структуре Scrum понятия Sprint 0 не существует, поэтому лучше избегать его использования в контексте Scrum. Sprint 0 обычно подразумевает оценку сроков выпуска продукта и аналогичен планированию релиза или этапу обнаружения продукта.

Spike — это тип исследовательской энейблер-истории (Enabler Story), предназначенный для проверки жизнеспособности предложенного технического решения, а также направленный на получение знаний, необходимых для лучшего понимания требований и оптимизации точности оценки истории.

24. Кто пишет пользовательские истории (user stories)?

Пользовательские истории может написать любой член scrum-команды. Требования обсуждаются на начальных этапах проекта. Затем на основе коллективного вклада участников команды они преобразуются в пользовательские истории с четким определением сути требований.

25. Что такое Scrum of Scrums (SoS)?

Scrum of Scrums — это масштабируемая гибкая методология, которая помогает организациям объединять свои многочисленные команды для разработки и реализации сложных решений. 

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

26. Что такое «‎разрастание границ проекта»‎ (Scope Creep) и как с ним справляться?

«Разрастание границ проекта» — это постоянное и неконтролируемое увеличение масштаба проекта после его начала.

Контролировать разрастание границ можно следующими способами:

  • мониторинг хода проекта и установление базового объема работ;
  • сравнение фактических показателей выполнения работ с базовым объемом при помощи анализа отклонений;
  • определение источника и масштаба обнаруженных изменений;
  • принятие решения о необходимости профилактических или корректирующих действий в ответ на изменения;
  • управление всеми запросами на изменения через процедуру интегрированного управления изменениями.

27. Что означает аббревиатура INVEST?

Аббревиатура INVEST расшифровывается как:

I – independent, независимость

N – negotiable, обсуждаемость

V – valuable, ценность

E – estimable, оцениваемость

S – small, компактность

T – testable, проверяемость

Эта модель используется для составления качественных пользовательских историй.

28. Что такое «‎конус неопределенности» (Cone of Uncertainty)?

«Конус неопределенности» описывает уменьшение неопределенности объема работ после завершения каждого спринта. В начале проекта вариативность может быть слишком велика, и это приводит к неопределенности в оценке. Но по мере продвижения команды уровень неопределенности снижается, что повышает точность прогнозов.

29. Какова цель управления релизами?

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

30. Какие качества необходимы Agile-тестировщику?

Успешного Agile-тестировщика отличают следующие качества:

  • позитивное мышление и ориентация на поиск решений;
  • фокус на достижение результатов;
  • отличные коммуникативные навыки;
  • глубокое понимание потребностей заказчиков и умение их удовлетворять;
  • наличие опыта применения принципов и процессов Agile на практике;
  • развитое критическое и креативное мышление;
  • умение ясно и эффективно доносить свои идеи;
  • навык планирования и расстановки приоритетов в соответствии с требованиями;
  • гибкость и готовность к изменениям.

31. В чем разница между методологиями Agile и Waterfall?

Методологии AgileМетодологии Waterfall
Проект разбивается на короткие итерации, называемые спринтами.Цикл разработки делится на отдельные фазы.
Используется инкрементальный подход.Используется последовательный процесс проектирования.
Есть возможность быстрее собирать обратную связь благодаря быстрой разработке версий продукта.Жесткая структурированная методология разработки.
Обеспечивает мобильность.Процесс разработки осуществляется в одном едином цикле.
Состоит из множества различных мини-проектов.Невозможно добавлять новые функции после начала разработки.
Отличается гибкостью и допускает внесение изменений даже после первичного планирования.Ключевые процессы (тестирование, проектирование, разработка) происходят один раз.
Следует повторяющемуся паттерну, в котором планирование, разработка, прототипирование и другие действия происходят многократно.План тестирования редко обсуждается на начальных этапах.
План тестирования пересматривается после каждого спринта.Метод подходит для проектов без изменения требований.
Agile-процесс разработки предполагает, что требования эволюционируют со временем.Тестирование происходит после этапа разработки.
Разработка и тестирование идут параллельно.Основная цель — завершить проект и предоставить оптимальную ценность заказчику.
Ориентирован на удовлетворение потребностей заказчика, а продукт развивается в соответствии с изменяющимися требованиями.Сотрудничество и координация команды ограничены.
Небольшие команды с высокой степенью координации и синхронизации работают наиболее эффективно.Бизнес-аналитики определяют требования до начала проекта.
Владелец продукта (Product Owner) постоянно уточняет требования.Для реализации Waterfall требуется подробное описание требований.

32. Назовите 5 этапов управления рисками

Пять этапов управления рисками:

  • Идентификация рисков. На первом этапе необходимо определить риски, с которыми организация сталкивается в своей повседневной деятельности. Сюда входят нормативные, экологические, юридические и рыночные риски.
  • Анализ рисков. После выявления рисков необходимо оценить потенциальный ущерб, который они могут нанести. Также важно изучить взаимосвязь между риском и его внутренними компонентами, определить степень опасности риска и его влияние на бизнес-процессы.
  • Приоритизация рисков по степени серьезности. Упорядоченные риски легче нейтрализовать. Решения по управлению рисками разрабатываются на основе ранжирования от наиболее критичных к наименее критичным.
  • Устранение риска. Риск остается угрозой до тех пор, пока он не будет устранен. Для устранения рисков привлекаются специалисты по рискам. Это предполагает регулярные встречи с заинтересованными сторонами до полного устранения угрозы.
  • Пересмотр риска. После устранения каждый риск еще раз пересматривают, чтобы убедиться, что он устранен полностью.

33. Дайте определение итеративной и инкрементальной разработки

Инкрементальная модель разработки — это методология разработки ПО, основанная на последовательном выпуске функциональных блоков продукта, называемых инкрементами.

Итеративная разработка— это повторяющийся процесс разработки с целью постоянного улучшения продукта. Разработка осуществляется в спринтах или итерациях, которые обычно длятся от одной до четырех недель.

34. Что такое «‎парное программирование»‎ и каковы его преимущества?

«Парное программирование»‎ — это техника Agile, при которой два разработчика совместно работают над одним кодом.

Преимущества:

  • написание кода оптимального качества;
  • минимизация количества ошибок;
  • конструктивный обмен знаниями;
  • повышение продуктивности;
  • улучшение командного взаимодействия.

35. Какова цель ежедневных стендап-встреч (Daily Stand Up)?

Ежедневные стендап-встречи — это короткие собрания, на которых Scrum-мастера, владельцы продукта и команда разработчиков обсуждают достигнутый прогресс. На стендап-встречах каждый участник рассказывает, что он сделал накануне для достижения целей итерации, что планирует сделать сегодня и с какими препятствиями может столкнуться.

36. В чем разница между Scrum-мастером и Agile-коучем?

Главное различие заключается в масштабе их деятельности: работа с одной командой против работы с целым предприятием.

Scrum-мастер работает с одной или несколькими командами и оказывает влияние только на них в контексте ценностей и принципов Scrum.

Agile-коуч работает с несколькими подразделениями бизнеса или IT, включая руководство среднего и высшего звена, и продвигает принципы Agile на уровне всей организации.

37. В чем разница между MVP и MMP?

MVP (Минимально жизнеспособный продукт): прототип продукта с базовыми функциями, выпущенный на рынок для получения обратной связи от первых пользователей.

MMP (Минимально коммерчески жизнеспособный продукт): функциональное ПО, готовое к монетизации, которое включает все минимально необходимые функции для выхода на рынок. Вы экономите время, не создавая продукт с полным набором функционала, а сразу предлагаете заказчикам то, что они хотят.

38. Оцениваются ли пользовательские истории в часах или днях? Если нет, то почему?

Пользовательские истории не оцениваются в часах или днях, потому что:

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

39. Является ли Scrum-мастер управленческой позицией?

Scrum-мастер — это позиция управления процессом, но не руководящая должность в классическом понимании. Scrum-мастер управляет только процессами Scrum и помогает команде устранять препятствия, но не обладает полномочиями руководителя.

40. Дайте определение методу оценки «Покер планирования» (Planning Poker)

«Покер планирования‎» — это Agile-метод коллективной оценки трудоемких задач, при которой используется система стори-поинтов, основанная на числах из последовательности Фибоначчи: 0, 1, 2, 3, 5, 8, 13, 20, 40, 100. Каждое из этих значений представляет собой уровень сложности задачи или проекта.

41. Что такое системное мышление?

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

42. Что означает «качественный бэклог продукта»?

Качественный элемент бэклога продукта должен соответствовать принципам DEEP:

  • D – Detailed appropriately (достаточно детализированный)
  • E – Estimated (просчитанный)
  • E – Emergent (гибкий к изменениям)
  • P – Prioritized (приоритизированный)

43. Может ли владелец продукта отменить спринт?

Да, владелец продукта имеют право отменить спринт, но это должно происходить после консультации с ключевыми заинтересованными сторонами и только в случае, если цель спринта утратила актуальность.

44. Кто может участвовать в ретроспективах Scrum?

Ретроспектива спринта – это время размышлений о процессах, взаимодействии в команде и других аспектах, способствующих повышению эффективности работы.

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

45. Что означает «‎эмпирическое управление процессами» в Scrum?

Эмпиризм — очень важный термин в контексте Scrum. Он определяется как работа, основанная на фактах, опыте, доказательствах, наблюдениях и экспериментах. 

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

Вместо того, чтобы полагаться исключительно на интуицию или догадки, эмпирическое мышление развивается благодаря практикам Agile, таким как, например, рефакторинг кода.

46. Каковы ограничения Scrum?

Scrum требует от участников наличия опыта работы с этим фреймворком. Команды должны быть сплоченными и преданными общей цели, чтобы гарантировать достижение результатов. Недостаток опыта у участников может привести к срыву проекта.

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

47. Как осуществляется контроль за выполнением задач (Action Items)?

Action items (пункты действий) — это один из основных результатов ретроспектив. Для контроля их выполнения необходимо:

  • открывать список всех задач и назначенных ответственных за них;
  • отмечать прогресс по каждому пункту;
  • добавлять новые выявленные пункты действий.

48. В чём разница между оценкой (estimating) и обязательством (committing)?

Когда Agile-команды работают с бэклогом продукта, они разбивают его на более мелкие элементы и выстраивают дорожную карту. Этот процесс позволяет получить общее представление о завершении работы, функциональном подходе и сложности.

Оценка — это предположение о затратах усилий, времени и сложности выполнения элемента.

Обязательства — это обещания, которые дают команды, гарантируя доставку элемента в течение спринта или в релизе.

49. Как владелец продукта отбирает пользовательские истории перед добавлением идеи в бэклог продукта?

Владелец продукта должен быть открыт к новым идеям и серьезно их рассматривать, но при этом отфильтровывать только те из них, которые действительно соответствуют целям компании. Каждая новая идея требует объективного анализа, который может включать тестирование на пользователях (например, в формате пилотных проектов). И только после тщательной оценки идея может быть включена в бэклог продукта.

50. Следует ли увеличивать скорость работы команды для достижения оптимальной продуктивности?

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

Вместо этого необходимо стремиться найти оптимальный баланс, уделяя внимание качеству конечного продукта и развитию профессиональных навыков команды.

Перевод статьи «Top 50+ Agile Interview Questions and Answers for 2025».

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх