56
Современные подходы организации процессов разработки Шамрай Александр [email protected]

Cовременные подходы организации процессов разработки

  • Upload
    -

  • View
    246

  • Download
    0

Embed Size (px)

Citation preview

Современные подходы организации процессов разработки

Шамрай Александр

[email protected]

ТИПОВЫЕ ПРОБЛЕМЫ

• Управление▪ Распределенные команды▪ Проблемы коммуникации и координации▪ Сложно понять состояние проекта▪ Непредсказуемые и ненадежные процессы

• Реализация▪ Не понятны активности процесса▪ Сплошные дедлайны▪ Задачи по телефону▪ Большое количество ошибок

• И так далее….

На уровне разработки

• Задержка или отмена выпусков

• Увеличение стоимости разработки

• Низкое качество продукта

• Падает доверие заказчиков

На уровне бизнеса

Почему MS ALM?

Gartner Magic Quadrant - Конкуренты

Общий обзор

Инструменты для каждой роли

Team ExplorerEverywhere

Р А С Ш И Р Я Е М Ы Е A P I

SharePoint

Project Server

System CenterTEAM

FOUNDATIONSERVER

SQL Server

Office

Веб-доступ

Windows Azure

Управление

версиямиАвтоматизации

построений

Настраиваемые

процессы

Управлениетребованиями

Управление

тестовыми случаями

Управление

проектами

Полная

прослеживаемость

Lab ManagementАналитика

Microsoft ALM

ТРЕБОВАНИЯ

Журналпродукта

ЖурналOPS

МониторингСпринт

РАБОЧЕЕ ПО

Разработка

Эксплуатация

Определение

Определение требований

Раскадровка

Управление журналом продукта

Планирование спринта

Выполнение работ

Тестирование

Получение отзывов

Отслеживание проблем пром. среды

Intellitrace

Scrum Agile CMMI

Доступные шаблоны процессов

Scaled Agile Framework

• Отдельный шаблон для управления ЖЦ приложений на основе гибкой и формальной безопасной методологии

• Инструмент для контроля безопасности кода

• Инструмент для моделирования потов данных, возможных проблем с безопасностью и их проверки

SDL ALM

Управление требованиями

Инструменты для каждой роли

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

• Наблюдение за выполнением бизнес процессов

• Интервью с участниками автоматизируемых процессов

• Мозговой штурм с большим количеством заинтересованных одновременно

• …..

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Сбор требований

Создание плана

Определение заинтересованных лиц

Выявление требований

Оформление требований

Планирование работ и реализация

Инструменты для каждой роли

Планирование итераций• Важные для заказчика

требования

• Рискованные работы, которые могут сорвать сроки или провести к потере проекта

• Построение прогнозов для текущей и будущей итерации

Использование компетенций• Использование компетенций и доступности ресурсов позволяет обеспечить

более качественное планирование итерации.

Использование компетенций• Использование компетенций и

доступности ресурсов позволяет обеспечить более качественное планирование итерации.

Интеграция среды разработки с заданиями• Единая среда для отслеживания назначенных на

разработчика задач и текущих изменений.

• Возможность оформления рецензирования кода

• Возможность временно отложить текущие изменения

Отчеты по работе с требованиями

• Отчет отображает ход работ по требованиям с учетом дочерних задач/требований, которые были запланированы на реализацию.

• Стандартная функциональность по отслеживанию работы в итерации scrum и формальном процессе

Тестирование

Инструменты для каждой роли

Планирование тестов• Планирование тестирования

требований

• Планирование регрессионного тестирования

• Планирование сред для развертывания

• Планирование сбора данных диагностики

• Формирование тестов

• Планирование тестировщиков

Тестирование

• Выполнение по ранее запланированным шагам, данным и соответствующими тестировщиками

• Запись данных тестирования, а также формирование снимков виртуальных сред для обеспечения определения точной причины ошибок

• Запись шагов тестирования для упрощения организации процесса регрессионного тестирования

Автоматизация тестирования

• Автоматическая генерирование кода тестирования из ранее пройденных ручных тестов.

• Подключение параметров для тестирования их ранее пройденных ручных тестов

Тестирование свободным поиском

• Обеспечивается новый и более удобный подход тестирования и просмотра результатов тестирования

• Для каждого шага создается скриншот, что в дальнейшем может использоваться при документировании ошибок

• Для дальнейшей проверки исправления ошибок могут быть созданы тесты

• Тестирование веб-интерфейсов через Chrome

• Создание снимков экрана и их описание

• Создание новых или обновление существующих ошибок

Тестирование свободным поиском в веб – TFS 2015 Update 2

Отчетность

DevOps

Инструменты для каждой роли

Классическая компания

РазработкаБизнес Поддержка

DevOps

Бизнес

РазработкаПоддержка

Пром. средаРазработка

Управление +Экспертиза

Планирование

Разработка + Тестирование

Выпуск

Требования

Сотрудничество

• Снижение затрат на поддержку инфраструктуры тестирования и разработки

• Снижение времени, необходимого на развертывание, а также времени циклов разработки

• Пред-продуктивное тестирование на основе реплики продуктивной среды

• Не зависит от географического распределения команды

Использование Azure

• Автоматизация развертывания

• Автоматизация циклов утверждения

• Развертывание по единому шаблону

• Полная трассировка

Управление выпусками

DEV QAINT PRODTFS

• Реализован в веб и является частью развертывания TFS

• Упрощено создание релизов и их шагов

• Используется общий механизм для агентов сборки и развертывания

• Интегрирован с Azure, VM Ware, System Center

Управление выпусками – TFS 2015 Update 2

Трассировка

Трассировка рабочих элементов

Разработка Управление проектом Тестирование

Сборка

Набор изменений

Ошибка

Рецензия кода

Тестовый план

Тестовый набор

Тестовый случай

Запрос на изменение

ТребованиеЗадача

Комплексное представление

Комплексный отчет

• Отчет позволяет построить требований и задач, отслеживать их выполнение, а также результаты тестирования в одном представлении

Адаптация платформы

• Управление составом рабочих элементов, их атрибутами, формами, а также жизненным циклом.

Адаптация рабочих элементов

TFS NET API• Работает на основе подключаемых .Net библиотек

• Хорошо документировано

TFS Plugin• Выполняется подписание на события TFS

• Основывается на TFS Net Api

TFS REST API• Обмен данными на основе SOAP

• Поддерживается с 2013 версии

TFS Alerts• На основе стандартной рассылки TFS, которая позволяет

подписывать SOAP сервисы

TFS Web Hooks• Новая возможность для обмена информацией между системами

на основе веб-сервисов

TFS User Controls • Расширения для пользовательских интерфейсов VS и веб-части

TFS Extensions • Расширения для веб-части TFS

Точки расширения

• Компания не всегда видит проблему целиком.

• Решение локальных задач усугубляет возможность расширения решения в будущем.

• Консультант привносит свой опыт и опыт решения проблем в других компаниях

Нужны ли консультанты?Вернуть_на_регистр

Экспертиза

(Эксперт)

Указание_на_постановку

(Постановщик)Вернуть_на_экспертизу

На_постановку

Очередь_на_

разработку

(Нач. Разработчика)

Версионный_

контроль

(Мен. версий)

Тестирование

(Тестировщик)

Очередь_на_

тестирование

(Нач.Тестировщика)

Указание_на_

тестирование

(Тестировщик)

Испытания

(Мен испыт)

Назначить_

разработчикаВернуть_

рук_разработки

Вернуть_

рук_разработки

На_

дора

ботк

у

Приступить

В_очередь_

тестирования

На

дора

ботк

у

Тестировать

Приемка_АПД

(Мен. АПД)Сдать_в_АПД

(I кат)

Вернуть_

на_тест

Зарегистрировать

На

пост

анов

ку

Вернуть в указ

тестирования

Постановка

(Постановщик)

Вернуть_в_

указ_

постановки

Приступить_к_

постановке

Указание_на_экспертизу

(Нач. Экспертов)

На_экспертизу

Отказать

Вернуть_на_

регистр

На_испытания

Вернуть_на_установку

Мен СПЗ

(Секретарь)

Согласование

(Постановщик)

На_

согласование

В очередь

на_внедрение

На_тест_

установку

Вернуть_

на_экспертизу_

На_

дора

ботк

у

На разработку_

Приостановлена

(Разработчик)

На_согласование

Согласование_

экспертизы

(Эксперт)

Вернуть_рук_разработки

Приостановить

Приступить

Передать

Согласовано

Копировать_заявку

Отказано

(Эксперт)

Приостановить

Вер

нуть

_на_

реги

стр

В_сторонней_

организации

(Куратор)

Внедрение

(Мен внедр)

Выполнено

Выполнено

Передать_в_

стороннюю_орг

Передать_в_

стороннюю_орг

Передать_в_

стороннюю_орг

Передать_в_

стороннюю_орг

Вы

полнено

На_верс_контроль

Копировать_заявку

Постановка_

отложена

(Постановщик)Отложить_

постановку

Приступить_к_

постановке

Согласовано

Назаначить разработчика

Передача_в_

филиалы

(Разработчик)

На_сборку_

Передать_в_

филиалы

Вы

полнено

Запросить_

документы

Перед

ать

Передать

Вернуть_на_доработку

Вернуть_

нач_тест

Контроль

(Эксперт)

Указание_на_разработку

(Разработчик)

На контроль

Запрос

документов

(Исполнитель)

Запросить

документы

На

контроль

Пер

едат

ь

В_АПД (Критич. приоритет)

Отложить_

установку

Очередь_на_

Внедрение

(Нач. Мен.

внедрения)

Указание_на_

внедрение

(Мен внедр)На_внедр

Внедрять

Вернуть_в_АПД

Разработка_отложена(

Нач.Разработчика)

ВернутьОтложить

Указание_на_

установку

(Мен внедр)

Очередь_на

установку

(Нач. Мен.

внедрения)

Тестовая_

установка

(Мен внедр)На_тест

Разработка

(Разработчик)

Вернуть_

рук_тестированияНа тест

Устана

вливать

Вернуть_

нач_ внедр

Перед

ать

Приемка_

тестирования

(Нач.Тестировщика)

Сдать_в_АПД

(II кат)

На_приемку

тестирования

Вернуть_нач_внедрения

На_разработку

Выполнено

(None)

В очередь

установки

Пер

е

дать

Вернуть на

контроль

Запрос_

документов

(Исполнитель)

Вернуть_

в_АПД

Вернуть на

контроль

На_дора

ботку_

На_

_дор

абот

ку_

Копир

оват

ь_за

явку

На_доработку_Вернуть_в_

стороннюю_орг

Вернуть_в_

стороннюю_орг

Вернуть_

на_экспертизу

Вернуть_

на_постановку

На

дора

ботк

у

Внедрение

отложено

(Мен внедр)

Отложить внедрение

Отложить

внедрениеВернуть на

внедрение

Тестирование

отложено

(Тестировщик)Отложить

тестирование

Отложить

тестированиеВернуть на

тестирование

Вернуть_в_указ_внедрения

Партнерские решения

Планирование тестов на основе MS Project• Обеспечение возможности планирования и отслеживания работ по

тестированию на основе календарных сроков и результатов тестирования из одного инструмента

Планирование тестов на основе MS Project - отчет

• Отображение результата тестирования в разрезе выпускаемых релизов с отображением активностей по тестированию, результатов и количества, а также приоритетности ошибок

Перепланирование работ

• Решение задач связанных с необходимостью «ускорить» реализацию текущих работ

• Автоматизация создания ошибок TFS на основе инцидентов CRM.

• Автоматизация изменения состояний между системами

• Учет потраченного на исправление проблем времени

Интеграция с MS CRM Dynamics

• Использование стандартных возможностей TFS для организации учета потраченного времени.

• Списание времени по задачам вручную.

• Использование клиента для автоматизации учета затраченных часов.

Учет времени - Time Sheeting

• Дополнительная автоматизация на основе событий в TFS

• Интеграция со смежными системами повышает гибкость использования платформы

Автоматизация на основе событий

USA HQToll Free: 866-687-3588 Tel: +1-512-516-8880

Ukraine HQTel: +380-32-240-9090

BulgariaTel: +359-2-902-3760

GermanyTel: +49-69-2602-5857

NetherlandsTel: +31-20-262-33-23

PolandTel: +48-71-382-2800

UKTel: +44-207-544-8414

[email protected]

WEBSITE:www.softserveinc.com

Вопросы?