Обеспечение качества через интегрированное управление проектами разработки ПО - настоящее и будущее Ромуальд Здебский. Microsoft
Jun 12, 2015
Обеспечение качества через интегрированное управление проектами разработки ПО - настоящее и будущее
Ромуальд Здебский. Microsoft
О чем мы поговорим
• Проблематика• Опыт Microsoft • Microsoft Solutions Framework• История развития инструментария и методологии• Visual Studio Team System и Team Foundation Server
2008 • Будущее - Visual Studio Team System 2010• Designed For Operations - Разработка для
применения
Что первично?
Опасность разрыва между методологией и инструментами
• Еще один блок управления рисками
• Потеря продуктивности• Снижение
конкурентоспособности• Скрытые отклонения от
методологии• Снижение мотивации• Влияние на качество
Интеграция – бизнес идеяИнтегрированные инновации – интегрированная платформа
Краткая история
1994 1995 1997 1999 2002 1994 1995 1997 1999 2002 2005-06 2005-06
MSF MSF v1v1
2233 правилаправила
““DynamicDynamics”s”
SolutionsSolutionsDevDevDisciplineDiscipline(SDD)(SDD)
MSF v2MSF v2Principles of …Principles of …App Dev (PAD)App Dev (PAD)Infra Deploy (PID)Infra Deploy (PID)Ent Arch (PEA)Ent Arch (PEA)Comp Des (PCD)Comp Des (PCD)
MSF MSF v2.5v2.5
MSF v3MSF v3
EssentialsEssentials+ + ЭкзаменЭкзамен
ОсноваОсноваAgileAgileCMMICMMI……
MSF v4MSF v4
Microsoft Solutions Framework
• Качества продукта наследуется от качества разрабатывающей его команды
• Задача разработки интегрированных продуктов = интеграция работы команд + интегрированный инструментарий
http://www.mccarthyshow.com
ДисциплинаУправлениярисками
Модель процесса
Модель Проектной группы
ДисциплинаУправленияпроектами
ДисциплинаУправленияготовностью
Модели
Дисциплины
Microsoft Solution Framework
взаимодействие
Управление разработкой и доставкой в соответствии с условиями спецификации
Управление связями с клиентом
Изучение проблем пользователей,
оценка соответствия их потребностям
Развёртывание, поддержка, проверка ИТ заказчика на предмет
готовности
Устранение неполадок и разрешение на выпуск
Разработка в соответствии с заданными спецификациями
РазработчикРазработчик
ТестированиеТестирование
Менеджер по выпуску
Менеджер по выпуску
Специалист по удобству
использования
Специалист по удобству
использования
Менеджерпродукта
Менеджерпродукта
Менеджерпроекта
Менеджерпроекта
www.microsoft.com/msf
Microsoft Solution Framework
Утверждение проектных планов
Разработка проекта завершена
Готовность проекта к выпуску
подтверждена
Решение развёрнуто
Утверждение документа единого видения проекта
Пилотная версия завершена
Предпроизводственное тестирование завершено
Release Candidates
Тестирование пользователями завершено
Zero Bug Bounce
Выявления ошибок
Выполнены технологические проверки
Сформированы функциональные спецификации
Сформирован основной план проекта
Сформирован основной график проекта
Установка тестовой среды и среды разработки
Применение стабилизировано
Развертывание на объекте завершено
Базовые технологии применены
Ядро команды сформировано
Видение общей картинысформировано
Выполнен экспериментПервый внутренний прототип
Второй внутренний прототипN-й внутренний прототип
www.microsoft.com/msf
Итеративный подход
Время
Пол
нота
реш
ени
яП
ол
нота
реш
ени
я
Ри
ск
Ри
ск
Знани
еЗ
нани
е
Microsoft Product Studio
Microsoft Visual Studio Team System
ТестерТестер
РазработчикРазработчик
АрхитекторАрхитектор
Бизнес--аналитикБизнес--аналитик
СпециалистСпециалист
по базам по базам данныхданных
DesignerDesigner
Менеджер ИТ/проекта
IDE сторонних
разработчиков
Web клиенты и XML Web-службы
Администрирование и служба поддержки
Управление
проектами
Интегрированная разработка
Visual Studio Development Edition
•Статический анализ кода•Метрики качества кода•Профилировщик производительности•Unit-Testing•Политики Check-in
Visual Studio Architecture Edition
Visual Studio Test Edition
•Тестирование веб-сервисов, HTTP, XML и ASP.NET приложений•Нагрузочное тестирование•Code coverage
Visual Studio Database Edition
•Работа со схемами БД – сравнение, версионность, рефакторинг•Генерирование тестовых данных•Unit testing•T-SQL дизайнер
Team Foundation Server
• Программный интерфейс - веб-сервисы
• SQL Server• Analysis Services• Reporting Services• Windows SharePoint Services• Team Build Server• Непрерывная интеграция
XML Web Services
Интеграция• Delphi
– SourceConneXion плагин для Delphi
• Eclipse
– TeamPrise• IntelliJ Idea
– IntelliJ TFS
Веб интерфейс
Портал Команды
Когда нужно переключить ресурсы?
Scope Creep – расползание границ
Утечки ресурсов
Team System для Менеджеров
Создание задач Создание задач вв
Microsoft ExcelMicrosoft Excel
Создание задач Создание задач вв
Microsoft ExcelMicrosoft Excel
Просмотр задач в Просмотр задач в Visual StudioVisual Studio
Просмотр задач в Просмотр задач в Visual StudioVisual Studio
Назначение задач Назначение задач ресурсам в ресурсам в
Microsoft ProjectMicrosoft Project
Назначение задач Назначение задач ресурсам в ресурсам в
Microsoft ProjectMicrosoft Project
Просмотр статусов Просмотр статусов проектов впроектов в
Microsoft Excel Microsoft Excel илиилиMicrosoft ProjectMicrosoft Project
Просмотр статусов Просмотр статусов проектов впроектов в
Microsoft Excel Microsoft Excel илиилиMicrosoft ProjectMicrosoft Project
Microsoft Expression Studio
Expression WebExpression BlendExpression DesignExpression EncoderExpression Media
Пакет специализированного инструментария для дизайнеров
Доступна финальная версия 2.0 всех продуктов
Поддержка Silverlight –
доступен Expression 3 Preview
Слайд: 27
Windows Presentation Foundation + Managed Extensibility Framework
• Использование WPF + MEF
Работа с кодом
• Historical Debugging
• TDD – Использование, потом определение.
Gated Check-In
Изменение кода
Изменение кода
Gated check-in
Gated check-in
Автоматическая сборка
Автоматическая сборка
Основной Check-In
Основной Check-In
Да / НетДа / НетГотовность для тест.
Готовность для тест.
Анализ влияния на зону тестирования
• Позволяет при изменении кода запускать только нужные тесты
• Повышает качество check-ins
• Особенно полезен на больших проектах
Test Case Management Client (Codename: Camano)
• Тестирование веб и Windows приложений, автоматическая запись шагов в тексте и видео.
Test Case Management ClientLab Management
• Управление виртуальными машинами для тестирования
• Слепок состояния при нахождении бага
«Разработка для применения»Designed For Operations
• Исключение «разговора в последнюю минуту» с IT в момент развертывания приложения на серверы
• System Definition Model (SDM)• Предоставляет общий язык для описания всех
аспектов IT систем (ограничений и установок) • Позволяет проверять SDM документы
относительно друг друга.• UML против DSL (Domain Specific Language)
• UML мертв? Нет!• UML лучшее средство для документирования• DSL лучшее средство для точной разработки
приложений
Поддержка UML
System Definition Model
Приложения
ХостингПриложений
Логическая топологияМашин и сетей
Оборудование
SystemDefinition
Model
Logical Datacenter Diagram
Application Diagram
Основные мысли
• Инструменты должны быть интегрированы с методологией
• Инструменты должен создавать ситуацию, когда следование методологии дает осязаемые для участников команды мотивирующие преимущества.
• Microsoft видит будущее в создании исполняемых моделей развертывания и управления информационных систем
• Microsoft видит большую важность развития рынка инструментов обеспечения качества на платформе Microsoft для того, чтобы интеграция была важной конкурентной характеристикой ПО, создаваемого на платформе Microsoft.
Обеспечение качества через интегрированное управление проектами разработки ПО - настоящее и будущее
Ромуальд Здебский. Microsoft