Слайд 1Автоматизация процессов разработки.
Нужно ли это, почему и какими средствами?
Дмитрий Андреев
dmitryan@microsoft.com
Twitter
@dmandreev
Международная конференция
«Управление проектами 2010 с минимальными затратами»
Слайд 2Проекты разработки ПО: Текущее состояние
Приемлемый уровень неудач?
Отталкиваясь от сроков, бюджета и
функциональности, 68% проектов никогда не достигли результатов или были вообще остановлены
32% успешны
44% были выполнены в срок/бюджет/функциональность
24% были прекращены
Слайд 3Уровень успеха
Должны ли мы его поддерживать в таком виде?
Слайд 4Понимание успеха проекта
Успех проектов по
разработке исторически
рассматривается как
комбинация
Времени
Денег
Функциональности
На самом деле это
уже квадрат
Качество – четвертый показатель
Хотите ли вы выбирать два из четырех?
Слайд 5Путь к успеху
Идея
Решение
Изменения рамок
Старый код
Неразделяемые
цели
Невоспроизводимые ошибки
Трудности в эксплуатации
Сомнения в качестве
Changing architecture
Стоимости
оборудования
Новые сотрудники
Ошибки
сборок
Тяжелое составление отчетности
Изменения требований
Гетерогенные среды
Плохая оценка сроков
Плохая документация
Качество билдов
Интеграционные проблемы
Слайд 7Предсказуемость
Все члены команды знают процесс и средства
Всегда актуальный проектный план
Каждая
реализованная функция тщательно проверяется
Составляется детальная отчетность по каждому шагу
Слайд 8Полный комплекс интегрированных средств
Слайд 9VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 10
Больше нет Черного Ящика Планирования
Отслеживание с верху в низ
Трассировка Требований
Отношения Родитель/Потомок
Свертка
и Детализация
Гибкое Планирование
Встроенный менеджер бэклога
Встроенное планирование
итераций
Простое конфигурирование
Интеграция с Project
Полная связь зависимостей
Полная поддержка
синхронизации туда и обратно
Слайд 11VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 12
Больше нет Поздних Сюрпризов
Отчеты для на все случаи
Генерация отчетов из запросов
Манипулирование
данными в Excel
Очевидные OLAP кубы
Информация для Всех
Подключение отчетов в MOSS
Слайд 13
Больше нет Недоумения у Заказчиков
Информационные панели
Иерархия ключевых показателей
Детализация для анализа
Быстрая настройка
Простое
взаимодействие
Сообщения об ошибках через веб
Требования об изменениях через веб
Отслеживание статусов запросов/ошибок через веб
Слайд 14VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 15Больше нет Проблем с Параллельной Разработкой
Какая ветка содержит мои изменения?
Какая сборка
содержит мои изменения?
Откуда взялось это изменение?
Зачем нужна эта ветка?
Как эти ветки соотносятся?
Кто ответственен за эту ветку?
Слайд 16
Больше нет Проблем с Параллельной Разработкой
Создание веток на сервере
Визуализация веток и
отношений
Отслеживание изменений в ветках
История
Время
Аннотации
Разрешение конфликтов
Слайд 17VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 18
Больше нет Запутавшихся Администраторов
Простая установка
Минимум вводимых параметров
Снижение требований по предварительной установке
Возможность
записи сценария установки
Журналы установки
Слайд 19
Больше нет Запутавшихся Администраторов
Эффективное
Администрирование
Базируется на MMC
Транзакционные
механизмы
Предварительная
проверка
Слайд 20VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 21
Практичные Ошибки
Тестеры создают полную информацию об ошибках
Шаги для воспроизведения
Системную информацию
Снимки экранов
Полноэкранное
видео с метками
Отладочный журнал
Тестовое окружение
Слайд 22VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 23
Контроль внесения изменений
Сбор изменений «на полке»
Слияние с основной веткой и сборка.
Если
все нормально, внесение изменений в основную ветку.
Слайд 24
Анализ затронутых Тестов
Сбор информации о тестах на сервере
Сравнение результатов тестирования текущего
изменения с результатами сервера
Рекомендации по изменению затронутых тестов
Слайд 25VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 26Эффект бабочки
Как можно проверить то что небольшое изменение не затронет всю
систему?
Как можно понять и изучить всю систему?
Каких бабочек необходимо поймать в Нью-Йорке чтобы предотвратить наводнение в Токио?
Слайд 27
Диаграммы слоев
Архитектурная проверка соответствия кода дизайну.
Диаграмма слоев детализирует реальное состояние
дел
Классы и области имен попадают в соответствующие слои
Слайд 28
Архитектурный Обозреватель
Понимание системы не допустит эффекта бабочки
Архитектурный Обозреватель помогает понять как
работает система в целом
Визуализация кода и его взаимосвязей
Слайд 29VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 30
Автоматическое Регрессионное тестирование
Новый тип тестов (Coded UI)
Возможность автоматического тестирования интерфейса
Поддержка:
Web UI
(IE & FF Beta)
Windows Forms
Windows Presentation Foundation
Слайд 31VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 32Выберите билд
Узнайте какие тесты
запустить
Система рекомендует запуск специфичных именно для этой сборки
тестов
Слайд 33Выделение требований без тестов или без удачных тестов
Отчеты отображают статусы требований
Потерянные
требования
- в прошлом
Слайд 34VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 35Управление лабораторией тестирования
Поддержка группы виртуальных машин для тестов
Быстрое развертывание виртуальных машин
Разработчики
имеют доступ к среде тестирования
Специальные сетевые настройки позволяют запускать копии окружений тестирования
Слайд 36VSTS 2010 == Успех
Больше нет Черного Ящика Планирования
Больше нет Поздних Сюрпризов
Больше
нет Проблем с Параллельной Разработкой
Больше нет Запутавшихся Администраторов
Больше нет Неповторяемых Ошибок
Больше нет Несобираемых Билдов
Больше нет Эффекта Бабочки
Больше нет Наведенных ошибок
Больше нет Потерянных Требований
Больше нет Ожиданий Установки Билда
Больше нет Снижения Производительности
Слайд 37Профайлер Visual Studio
Проверка только
своего кода
Профайлинг нагрузочных
тестов
Профайлинг JScript
Три новых типа
Выделение памяти
Ресурсной
конкуренции
Потоковой конкуренции
Сравнительные отчеты
Работает под виртуализацией!
Слайд 38Веб и Нагрузочное тестирование
Новое последовательное смешение
Отчетность сразу в Excel
Визуализация журнала
Запуск
функциональных тестов как нагрузочных тестов
Сбор подробной информации о запуске
Интеграция удаленного профайлера
Сбор системной информации
Расширяемый механизм сбора данных
Слайд 40Основные показатели
Затраты на персонал
Программисты
Тестеры
Менеджмент
Незапланированные затраты
Переработка по проектам
Поддержка развернутых решений
Технологические затраты
Поддержка инфраструктуры
Слайд 41Nucleus Research
Лидер в области оценки эффективности внедрений
Независимые исследования
Know-how по вычислениям ROI
подтвержденные примерами (Case Study)
Сотни примеров для различных продуктов и вендоров
На рынке с 2000 года
Слайд 42Пример
Команда
10 разработчиков
2 менеджера
3 тестера
Ожидаемая эффективность
Эффективность труда
Разработчик 10%
Менеджер 20%
Тестировщик 10%
Снижение оцененных потерь
35%
от 70 тыс. долл. в год.
Двухнедельная задержка проекта длительностью 6 мес.
Основные затраты на ПО
Visual Studio Ultimate 11924$
Test Professional 2169$
Слайд 43Некоторые стоимости лицензий
Ultimate MSDN 11 924 / 3814
Premium MSDN 5 469
/ 2 999
Professional MSDN 1 199 / 799
Слайд 45Варианты лицензирования
Retail
Лицензирование организаций
Open Value
Open License
Select
Enterprise Agreement
Слайд 46Как сэкономить еще больше
Особые условия для государственных и образовательных учреждений
Стать партнером
Microsoft
Воспользоваться программами *Spark
Business Spark – если вы работаете в компании зарегистрированной менее трех лет, можете получить все средства разработки бесплатно
Dream Spark
Website Spark
Слайд 47Заключение
Инструменты Visual Studio позволяют решать застарелые проектные проблемы при разработке ПО
Это
интегрированный комплекс
Внедрение Visual Studio повышает производительность команды и качество разрабатываемого ПО
При самых скромных оценках эффективности очевидна финансовая выгода
Существует несколько вариантов лицензирования которые позволяют экономить средства
Слайд 48Ссылки
Обзор Visual Studio Team System 2010 http://www.microsoft.com/visualstudio/
ROI калькулятор http://www.nucleusresearch.com
О лицензировании
простым языком http://technet.microsoft.com/ru-ru/licensing.aspx
Программа Biz Spark http://ms-start.ru/Programs/BizSpark.aspx