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