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

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

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

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

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

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

Матрицы трассировки помогут проконтролировать и поддержать целостность реализуемой функциональности в ядре и кастомизированной версии

Если вы не смогли найти рецепт для решения вашей задачи, то просто напишите нам или позвоните, мы проведем для вас бесплатное демо возможных вариантов ее решения.