Мой текущий проект использует Visual Studio Team System для специалистов по базам данных GDR2 (он же DataDude). Мы единственное приложение, использующее базу данных, которую мы моделируем с использованием DataDude.
Моя компания хотела бы рассмотреть возможность использования DataDude для всех наших проектов. Однако я не уверен, насколько хорошо это будет работать с проектами, которые совместно используют базу данных (что составляет основную часть наших приложений).
Например: ApplicationA, ApplicationB и ApplicationC все совместно используют базу данных 1 на сервере 1. (Они не разделяют исходный код, только базу данных.) Все три приложения находятся в стадии разработки (с использованием Scrum, если это имеет значение).
Проблема возникает, когда ApplicationB необходимо выпустить в нашу тестовую среду. Функции автоматического развертывания / создания сценариев в DataDude будут отслеживать текущие изменения разработчиков ApplicationA и ApplicationC. (В настоящее время внесение изменений в базу данных для каждого приложения выполняется вручную).
Итак, как я могу изолировать каждое приложение от другого, когда они совместно используют одну базу данных?
Примечание. Меня не беспокоит конфликтующие изменения в этом вопросе (т. Е. Если ApplicationA вносит изменения в БД, которые нарушают ApplicationC). Мы можем найти их в тестировании. Мне просто нужно убедиться, что я не перенесу изменения базы данных, которые не являются частью моего выпускаемого приложения, в мои тестовые / производственные среды.
Существуют ли какие-либо передовые практики или функции, которые могут помочь мне с этим?