Spike (Спайк)

Spike (Спайк) – это исследовательская задача в Agile-разработке, цель которой – изучение нового функционала, технологий или проблем, связанных с реализацией продукта. Используется для снижения неопределённости перед началом разработки.


Детали термина:

Определение простыми словами

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

Расширенное описание

Спайки используются в Scrum и Kanban для уменьшения рисков перед разработкой сложных фич. Они могут включать:
а) Тестирование гипотез – например, проверка, подходит ли новая библиотека.
б) Сравнение решений – анализ плюсов и минусов разных технологий.
в) Создание прототипов – небольшой кусок кода для демонстрации идеи.
г) Документирование результатов – выводы передаются команде для дальнейшей работы.
Спайки бывают двух типов:
а) Функциональные (Functional Spike) – изучение новых требований или поведения системы.
б) Технические (Technical Spike) – исследование технологий, архитектуры или производительности.

Применение

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

Примеры

а) Функциональный спайк: как сделать тёмную тему для всего веб-приложения?
б) Технический спайк: как лучше кешировать данные на бэкенде?
в) Архитектурный спайк: можно ли заменить монолит на микросервисы?

См. также:
  • Нет связанных терминов.