Автоматизация процессов разработки. Нужно ли это,...
DESCRIPTION
Процессы разработки это одна из областей, в которой эффективность от внедрения тех или иных средств автоматизации играет ключевую роль. Изучив техническую сторону вопроса и заинтересовавшись новыми возможностями, вы наверняка сразу же зададите себе вопрос. Как та или иная возможность повлияет на существующие процессы? Не внесет ли она, вместо улучшения, излишнюю бюрократию в и так сложные и порой не прозрачные текущие процессы? Каких улучшений показателей можно ожидать? Если вам интересно, каким образом возможности Visual Studio Team System 2010 могут воздействовать на подходы по ведению проектов, и каких результатов можно ожидать от внедрения таких средств, послушайте данную сессию. В рамках этого доклада будут рассмотрены ключевые возможности VSTS2010, приведены примеры оценок экономической эффективности при внедрении, и обзор вариантов при которых возможна экономия затрат на развертывание таких систем.TRANSCRIPT
Автоматизация процессов разработки. Нужно ли это, почему и какими средствами?Дмитрий Андреев[email protected] @dmandreev
Международная конференция «Управление проектами 2010 с минимальными затратами»
Проекты разработки ПО: Текущее состояние
Приемлемый уровень неудач?Отталкиваясь от сроков, бюджета и функциональности, 68% проектов никогда не достигли результатов или были вообще остановлены
32% успешны44% были выполнены в срок/бюджет/функциональность24% были прекращены
Уровень успеха
Должны ли мы его поддерживать в таком виде?
Перерасходы по Стоимости: 45%
Перерасходы по Времени: 63%
Снижение Функциональности: 67%
Extreme Chaos, The Standish Group International, Inc. – 2009
Понимание успеха проекта
Успех проектов поразработке исторически рассматривается каккомбинация
ВремениДенегФункциональности
На самом деле это уже квадратКачество – четвертый показатель
Хотите ли вы выбирать два из четырех?
Функции
Время Бюджет
Выберите два
Путь к успеху
Идея
Решение
Изменения рамок
Старый код
Неразделяемыецели
Невоспроизводимые ошибки
Трудности в эксплуатации
Сомнения в качестве
Changing architecture
Стоимости оборудования
Новые сотрудники
Ошибкисборок
Тяжелое составление отчетности
Изменения требований
Гетерогенные среды
Плохая оценка сроков
Плохая документация
Качество билдов
Интеграционные проблемы
6
Представим себе…
Предсказуемость
Все члены команды знают процесс и средстваВсегда актуальный проектный план Каждая реализованная функция тщательно проверяетсяСоставляется детальная отчетность по каждому шагу
8
Полный комплекс интегрированных средств
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
10
Больше нет Черного Ящика Планирования
Отслеживание с верху в низТрассировка ТребованийОтношения Родитель/ПотомокСвертка и Детализация
Гибкое ПланированиеВстроенный менеджер бэклогаВстроенное планированиеитерацийПростое конфигурирование
Интеграция с ProjectПолная связь зависимостейПолная поддержкасинхронизации туда и обратно
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
12
Больше нет Поздних Сюрпризов
Отчеты для на все случаи
Генерация отчетов из запросовМанипулирование данными в ExcelОчевидные OLAP кубы
Информация для Всех
Подключение отчетов в MOSS
13
Больше нет Недоумения у Заказчиков
Информационные панелиИерархия ключевых показателейДетализация для анализаБыстрая настройка
Простое взаимодействиеСообщения об ошибках через вебТребования об изменениях через вебОтслеживание статусов запросов/ошибок через веб
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Больше нет Проблем с Параллельной Разработкой
Какая ветка содержит мои изменения?Какая сборка содержит мои изменения?Откуда взялось это изменение?Зачем нужна эта ветка?Как эти ветки соотносятся?Кто ответственен за эту ветку?
Больше нет Проблем с Параллельной Разработкой
Создание веток на сервереВизуализация веток и отношенийОтслеживание изменений в ветках
ИсторияВремяАннотации
Разрешение конфликтов
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Больше нет Запутавшихся Администраторов
Простая установкаМинимум вводимых параметровСнижение требований по предварительной установкеВозможность записи сценария установкиЖурналы установки
Больше нет Запутавшихся Администраторов
ЭффективноеАдминистрирование
Базируется на MMCТранзакционные механизмыПредварительнаяпроверка
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Практичные Ошибки
Тестеры создают полную информацию об ошибках
Шаги для воспроизведенияСистемную информациюСнимки экрановПолноэкранное видео с меткамиОтладочный журналТестовое окружение
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Контроль внесения изменений
Сбор изменений «на полке»Слияние с основной веткой и сборка.Если все нормально, внесение изменений в основную ветку.
24
Анализ затронутых Тестов
Сбор информации о тестах на сервереСравнение результатов тестирования текущего изменения с результатами сервераРекомендации по изменению затронутых тестов
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Эффект бабочки
Как можно проверить то что небольшое изменение не затронет всю систему?
Как можно понять и изучить всю систему?
Каких бабочек необходимо поймать в Нью-Йорке чтобы предотвратить наводнение в Токио?
27
Диаграммы слоев
Архитектурная проверка соответствия кода дизайну.
Диаграмма слоев детализирует реальное состояние дел
Классы и области имен попадают в соответствующие слои
28
Архитектурный Обозреватель
Понимание системы не допустит эффекта бабочки
Архитектурный Обозреватель помогает понять как работает система в целом
Визуализация кода и его взаимосвязей
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
30
Автоматическое Регрессионное тестирование
Новый тип тестов (Coded UI)Возможность автоматического тестирования интерфейсаПоддержка:
Web UI (IE & FF Beta)Windows FormsWindows Presentation Foundation
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
32
Выберите билдУзнайте какие тестызапустить
Система рекомендует запуск специфичных именно для этой сборки тестов
33 Microsoft Confidential
Выделение требований без тестов или без удачных тестов
Отчеты отображают статусы требований
Потерянные требования - в прошлом
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Управление лабораторией тестирования
Поддержка группы виртуальных машин для тестовБыстрое развертывание виртуальных машинРазработчики имеют доступ к среде тестированияСпециальные сетевые настройки позволяют запускать копии окружений тестирования
VSTS 2010 == Успех
Больше нет Черного Ящика ПланированияБольше нет Поздних СюрпризовБольше нет Проблем с Параллельной РазработкойБольше нет Запутавшихся АдминистраторовБольше нет Неповторяемых ОшибокБольше нет Несобираемых БилдовБольше нет Эффекта БабочкиБольше нет Наведенных ошибок Больше нет Потерянных ТребованийБольше нет Ожиданий Установки БилдаБольше нет Снижения Производительности
Профайлер Visual Studio
Проверка только своего кодаПрофайлинг нагрузочныхтестовПрофайлинг JScriptТри новых типа
Выделение памятиРесурсной конкуренцииПотоковой конкуренции
Сравнительные отчеты
Работает под виртуализацией!
Веб и Нагрузочное тестирование
Новое последовательное смешениеОтчетность сразу в Excel Визуализация журналаЗапуск функциональных тестов как нагрузочных тестовСбор подробной информации о запуске
Интеграция удаленного профайлераСбор системной информацииРасширяемый механизм сбора данных
39 Microsoft Confidential
Основные показатели
Затраты на персоналПрограммистыТестерыМенеджмент
Незапланированные затратыПереработка по проектамПоддержка развернутых решений
Технологические затратыПоддержка инфраструктуры
Nucleus Research
Лидер в области оценки эффективности внедренийНезависимые исследованияKnow-how по вычислениям ROI подтвержденные примерами (Case Study)Сотни примеров для различных продуктов и вендоровНа рынке с 2000 года
Пример
Команда10 разработчиков2 менеджера3 тестера
Ожидаемая эффективностьЭффективность труда
Разработчик 10%Менеджер 20%Тестировщик 10%
Снижение оцененных потерь35% от 70 тыс. долл. в год.
Двухнедельная задержка проекта длительностью 6 мес.
Основные затраты на ПОVisual Studio Ultimate 11924$Test Professional 2169$
Некоторые стоимости лицензий
Ultimate MSDN 11 924 / 3814Premium MSDN 5 469 / 2 999Professional MSDN 1 199 / 799
44
Test and Lab Manager
Manual Testing
Layer Diagram
UML Modeling
Load Testing Web Testing
Test Case ManagementIntelliTrace™
Architecture Explorer Fast Forward for Manual Testing
Logical Class Designer
Cloud Development
Office Development
Windows Development
New WPF Editor Customizable IDE
Multi-core DevelopmentSilverlight Tools
Web Development
SharePoint Development
Generate from Usage
Static Code Analysis
Database Deployment
Code Metrics
Database Unit Testing Test Data Generation
Test Impact AnalysisUI Test Automation
Code Coverage
Performance Profiling
Database Change Mgmt
Варианты лицензирования
RetailЛицензирование организаций
Open ValueOpen LicenseSelectEnterprise Agreement
Как сэкономить еще больше
Особые условия для государственных и образовательных учрежденийСтать партнером MicrosoftВоспользоваться программами *Spark
Business Spark – если вы работаете в компании зарегистрированной менее трех лет, можете получить все средства разработки бесплатноDream SparkWebsite Spark
Заключение
Инструменты Visual Studio позволяют решать застарелые проектные проблемы при разработке ПОЭто интегрированный комплексВнедрение Visual Studio повышает производительность команды и качество разрабатываемого ПОПри самых скромных оценках эффективности очевидна финансовая выгодаСуществует несколько вариантов лицензирования которые позволяют экономить средства
Ссылки
Обзор 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
Вопросы?