SQL 2012 И ГИБКИЕ МЕТОДЫ КОМАНДНОЙ РАЗРАБОТКИ C TFS Добро пожаловать в команду! Alexander Yakovlev
Сложности разработки баз данных Проблемы при изменении базы Сохранение данных, разные целевые версии Совместимость потребителей данных Синхронизация с версией приложений Проблемы при командной разработке Сложности при параллельных изменениях Отсутствие или слабая история изменений Оторванность от планирования и контроля работ Недостаток инструментов контроля качества 2Track # – Session #
Без чего невозможен Agile? Хорошая команда Взаимодействие внутри команды Непрерывная сборка проекта Автоматические тесты Доска работ Хороший проект 3Track # – Session #
Добро пожаловать в команду! SQL Server Developer Tools Единая инфраструктура всего проекта Совместная работа над проектом БД Управление работами Автоматизация сборки Тестирование баз данных Track # – Session #4
v v Единая инфраструктура проекта Visual Studio forever!
Visual Studio для разработки БД Проблема Где «истинная» схема? Как вести версии? Как проводить тестирование? Как управлять изменениями? Решение В едином проекте БД Так же, как и в привычных программных проектах. Сборка, генерация тестовых данных, тестирование баз данных Рефакторинг, сравнение схем, ветки 6Track # – Session #
Жизненный цикл: классика ALM Database Project Edit Refactor Compare Data Gen Test Compare Build Deploy
Visual Studio: единая среда разработки баз данных и приложений SQL Server Data Tools Visual Studio 10 shell Visual Studio Premium 11 Beta 8Track # – Session #
SSDT vs Visual Studio Database Prj 9Track # – Session # ФункцииSSDT VS DB10 VS 11 Beta SQL 2012, SQL Azure Database Project Build & Deploy Schema Compare Code Analysis Source Control Database Unit Testing Coming Soon Data Generation, Data Compare Coming Soon Load Test
v v Управление работами Демонстрация Scrum проекта
Портал проекта Track # – Session #11
Команды проекта 12Track # – Session #
Бэклог продукта, планирование 13Track # – Session #
Планирование ресурсов 14Track # – Session #
Доска задач 15Track # – Session #
Система версионного контроля TFS Совместная работа нескольких разработчиков Редактирование разных объектов БД Объединение изменений в одном объекте Управление версиями, метками и ветками Разграничение прав доступа История изменений, Аннотирование кода Интеграция с задачами, сборками, политиками Проверки перед помещением в хранилище Track # – Session #16
Demo: Система версионного контроля 17Track # – Session #
v v Непрерывная сборка
Преимущества непрерывной интеграции Совместная работа команды Материализация знаний Раннее обнаружение ошибок Система собираема и готова к поставке Автоматизация развёртывания Автоматизация тестирования Для автотестов необходима автосборка Поставка итерации при автотестах 19Track # – Session #
Генерация тестовых данных Основные инструменты Генерация данных для таблиц Генерация по образцу Генераторы для различных типов полей String, RegExp, data bound Можно написать свой собственный генератор Тонкие настройки генераторов
v v Автоматическое тестирование
Тестирование SQL запросов Тестирование процедур Тестирование функций Юнит-тесты Web-тесты UI-тесты Нагрузочное тестирование Раннее обнаружение Упрощение рефакторинга Тестирование данных Тестирование вычислений Регрессионное тестирование Генерация нагрузки 22Track # – Session #
Статический анализ SQL кода 23Track # – Session #
Lab Management Моделирование разных сред Тестирование поставки на разные версии баз данных Автоматизация развёртывания Автоматизация тестирования Автодокументирование дефектов Сбор журналов IntelliTrace 24Track # – Session #
IntelliTrace и события ADO.NET 25Track # – Session #
Поддержка этапа эксплуатации 26Track # – Session # TFS, Preemtive System Center IntelliTrace
Кто расскажет про неудачные итерации? Неудачные итерации «откатываются» Полностью Частично Экспериментальные итерации Остаются «в стороне» Продолжаются Комбинируются Только представьте эти сценарии без системы версионного контроля! Track # – Session #27
Резюме Наличие полной инфраструктуры обязательно для гибкой разработки: Версионный контроль Управление работами Автосборки Автотесты Поддержка эксплуатации SQL Server, Visual Studio/SSDT, TFS предлагают полный набор инструментов Track # – Session #28
Visual Studio: Meet Any Challenge