Поделиться через


Что такое Azure DevOps?

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

Azure DevOps — это облачная платформа, которая предоставляет интегрированные средства для команд разработки программного обеспечения. Он включает все, что необходимо для планирования работы, совместной работы над кодом, сборки приложений, функциональных возможностей тестирования и развертывания в рабочей среде.

Azure DevOps предлагает широкий спектр моделей услуг, чтобы удовлетворить уникальные потребности каждой команды. Версия с бесплатным доступом помогает небольшим командам быстро приступить к работе, в то время как универсальные планы подписки и оплаты по факту использования поддерживают комплексное управление проектами.

Ключевые характеристики:

  • Комплексное управление проектами: Azure DevOps представляет собой целостный набор служб, предназначенных для поддержки полного жизненного цикла проектов программного обеспечения. Он охватывает все, начиная от первоначального планирования и разработки, путем строгого тестирования до окончательного развертывания.

  • Предоставление клиент-серверной модели: Azure DevOps работает по модели клиент-сервер, обеспечивая гибкость в том, как вы взаимодействуете со своими службами. Веб-интерфейс обеспечивает удобный способ использования большинства сервисов и совместим со всеми основными браузерами. Кроме того, некоторые службы, такие как управление версиями, конвейеры сборки и отслеживание работы, предлагают клиентские варианты управления для расширенного управления.

  • Гибкие и масштабируемые параметры службы: Azure DevOps обслуживает команды всех размеров, предлагая ряд вариантов обслуживания. Для небольших команд многие службы являются бесплатными, гарантируя, что у вас есть доступ к надежным средствам управления проектами без каких-либо первоначальных инвестиций. Для более крупных команд или более сложных потребностей службы доступны через модель подписки или на основе оплаты за использование.

Основные службы

Azure DevOps включает следующие интегрированные службы:

Снимок экрана: службы, перечисленные в навигации Azure DevOps.

Azure Boards: планирование и отслеживание работы с помощью средств Agile, досок Kanban, невыполненных работ и панелей мониторинга. Создавайте рабочие элементы, такие как истории пользователей, ошибки и задачи. Используйте планирование спринта, диаграммы сжигания и отслеживание скорости. Настройте рабочие процессы и типы рабочих элементов в соответствии с процессом команды.

Пример сценария: Группа разработчиков, планирующих функцию мобильного приложения, создает пользовательские истории для "входа пользователей", отслеживает ошибки, обнаруженные во время разработки, и использует спринт-доски для отслеживания хода выполнения в течение двух недель итерации.

Azure Repos: размещение неограниченных частных репозиториев Git или использование Управления версиями Team Foundation (TFVC) для управления исходным кодом. К функциям относятся политики ветвей, пулл-реквесты с проверкой кода, разрешение конфликтов и интеграция с популярными интегрированными средами разработки и редакторами.

Пример сценария: Участники команды разработки создают фич-ветки для новой функциональности, отправляют пулл-реквесты для проверки кода и используют политики веток, чтобы убедиться, что весь код проверяется и тестируется перед слиянием с основной веткой.

Azure Pipelines: создание, тестирование и развертывание приложений с помощью конвейеров CI/CD, работающих с любым языком, платформой и облаком. Поддерживает контейнеры Docker, Kubernetes и развертывания в Azure, AWS, Google Cloud или локально. Включает параллельные задания, шлюзы развертывания и утверждения релизов.

Пример сценария: Каждая фиксация кода активирует автоматизированный конвейер, который создает веб-приложение .NET, выполняет модульные тесты, создает контейнер Docker и развертывает в промежуточной среде для тестирования до выпуска рабочей среды.

Планы тестирования Azure: планирование, выполнение и отслеживание тестирования с помощью ручных тестов, сеансов тестирования и автоматической интеграции тестов. Создавайте наборы тестов, отслеживайте результаты тестирования, захватывайте снимки экрана и видео и создавайте подробные отчеты о тестах.

Пример сценария: Команда QA создает тестовые случаи для потока регистрации пользователей, выполняет ручные тесты в разных браузерах, записывает снимки экрана проблем и связывает результаты тестирования с пользовательскими историями для трассировки.

Артефакты Azure: создание, размещение и совместное использование пакетов, таких как NuGet, npm, Maven, Python и универсальные пакеты с вашей командой и организацией. Интеграция с конвейерами сборки, управление версиями пакетов и управление доступом к вышестоящим источникам и политикам хранения.

Пример сценария: Команда разработчиков создает общую библиотеку проверки подлинности, публикует ее в виде пакета NuGet в Azure Artifacts и ссылается на нее в нескольких проектах при управлении доступом к внутренним пакетам.

Совместная работа служб Azure DevOps

На следующей схеме показано, как службы интегрируются в течение жизненного цикла разработки:

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Azure Boards  │    │   Azure Repos   │    │ Azure Pipelines │
│                 │    │                 │    │                 │
│ • Plan features │────│ • Store code    │────│ • Build apps    │
│ • Track bugs    │    │ • Code reviews  │    │ • Run tests     │
│ • Manage sprints│    │ • Branch policies│   │ • Deploy code   │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         │                       │                       │
         ▼                       ▼                       ▼
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│ Azure Test Plans│    │ Azure Artifacts │    │   Dashboards    │
│                 │    │                 │    │                 │
│ • Test planning │    │ • Package feeds │    │ • Project views │
│ • Manual testing│◄───│ • Version control│───►│ • Team metrics  │
│ • Test reporting│    │ • Dependency mgmt│   │ • Build status  │
└─────────────────┘    └─────────────────┘    └─────────────────┘

Flow: Plan → Code → Build → Test → Deploy → Monitor → Repeat

Типичный рабочий процесс:

  1. Планирование рабочих элементов в Azure Boards
  2. Функции кода в Azure Repos с пулл-реквестами
  3. Создание и упаковка с помощью Azure Pipelines и Azure Artifacts
  4. Тестирование вручную и автоматическое использование планов тестирования Azure
  5. Развертывание с помощью Azure Pipelines в различных средах
  6. Следите за ходом выполнения и метриками с помощью панелей
  7. Итерируйте на основе отзывов и новых требований

Дополнительные сведения см. в статье "Инструменты и клиенты, которые подключаются к Azure DevOps".

Дашборды

Azure DevOps предоставляет настраиваемые панели мониторинга, которые отображают данные и рабочие процессы проекта в режиме реального времени. Создайте персонализированные представления для мониторинга хода выполнения и производительности вашей команды.

Основные возможности:

  • Несколько панелей мониторинга: создание и настройка панелей мониторинга с мини-приложениями, показывающими состояние сборки, результаты тестирования и запросы рабочих элементов
  • Быстрая навигация. Использование панелей мониторинга в качестве центрального концентратора для доступа к различным областям проекта
  • Расширяемость. Интеграция служб, отличных от Майкрософт, или создание пользовательских расширений для расширения функциональности

Дополнительные сведения см. в документации по панелям мониторинга.

Скриншот целевой страницы панели мониторинга, на которой показаны Agile Lead Time, Future Spring, New Work Item, Work in Progress и Team Velocity.

Azure Boards

Современная разработка программного обеспечения требует эффективного отслеживания работы и совместной работы между командами. Azure Boards предоставляет гибкие средства, которые упрощают планирование и отслеживание на протяжении всего жизненного цикла разработки.

Основные возможности:

  • Управление рабочими элементами: создание и обновление пользовательских историй, ошибок, задач и функций
  • Запросы и диаграммы: создание настраиваемых запросов и создание диаграмм состояния для визуализации хода выполнения
  • Управление бэклогом: Приоритизация работы и поддержание четких, осуществимых заданий.
  • Планирование спринта: планирование итерации и отслеживание хода выполнения спринта с помощью метрик скорости
  • Доски задач: обновление состояния работы с помощью интерактивных досок Kanban
  • Управление портфелем: упорядочивание работы иерархически от эпических до задач
  • Поддержка Scrum: Содействие ежедневным стендапам и обзорам спринтов с помощью досок в режиме реального времени

Azure Boards поддерживает несколько типов рабочих элементов, каждый из которых содержит настраиваемые поля, отслеживающие ход разработки. Если вы используете Scrum, Kanban или Scrumban, Azure Boards предоставляет журналы задач и доски для поддержки вашей методологии.

Команды получают полное представление о состоянии проекта, что позволяет принимать решения, основанные на данных, и отслеживать тенденции с помощью расширенных приборных панелей и отчетов.

Подробные сведения см. в статье "Что такое Azure Boards?

Снимок экрана страницы невыполненных работ Azure Boards с множеством карточек, включая

Azure Repos

Azure Repos предоставляет системы управления версиями, которые обеспечивают удобную совместную работу на базах кода при сохранении полного журнала изменений. Эти репозитории важны для проектов с несколькими разработчиками, обеспечивая согласованность и координацию на протяжении всей разработки.

Снимок экрана целевой страницы Azure Repos с главной ветвью в репозитории с папками и файлом README.

Azure DevOps поддерживает два варианта управления версиями: Git и Team Foundation Version Control (TFVC).

Git

Git предоставляет распределенное управление версиями с локальными копиями репозитория для каждого разработчика, что обеспечивает возможность автономной работы и гибкого ветвления. Git — это выбор по умолчанию для новых проектов.

Замечание

Git в Azure DevOps — это стандартный Git. Visual Studio можно использовать с службами, отличными от Microsoft Git. Вы также можете использовать клиенты, отличные от Microsoft Git, с Azure DevOps Server.

Основные возможности:

  • Просмотр файлов: проверка сведений о файле и журнал изменений
  • Скачивание и изменение файлов: получение локальных копий и внесение изменений
  • Управление фиксациями: отслеживание фиксаций и сохранение четкого журнала изменений
  • Использование Pull Requests: создание, проверка и завершение проверок кода для совместной работы над проектами
  • Использование тегов Git: пометить определенные точки в журнале репозитория

TFVC

Team Foundation Version Control (TFVC) предоставляет централизованное управление версиями с помощью управления журналами на стороне сервера. Разработчики работают с отдельными версиями файлов локально, пока сервер сохраняет полный журнал изменений.

Основные возможности:

  • Рабочий процесс с одной версией: разработчики работают с текущими версиями файлов, уменьшая сложность
  • История на стороне сервера: все изменения и версии безопасно хранятся на сервере
  • Ветвление на основе пути: управляемые сервером ветви с четкой организацией

Интеграция среды разработки

Azure DevOps поддерживает разработку с несколькими платформами с обширной интеграцией инструментов:

  • Кроссплатформенная поддержка: сборка для Android, iOS, Linux, macOS и Windows
  • Интеграция интегрированной среды разработки: работает с Android Studio, Eclipse, IntelliJ, Visual Studio, VS Code и Xcode
  • Поддержка языка: поддерживает .NET, Java, Node.js, Python, PHP, Ruby и т. д.
  • Гибкость клиента. Использование Git или TFVC с предпочитаемыми средствами разработки

Azure Pipelines (система конвейеров Azure)

Azure Pipelines автоматизирует процессы сборки, тестирования и выпуска, чтобы обеспечить быструю и надежную доставку программного обеспечения.

Основные возможности:

  • Автоматизированные сборки: триггеры сборки на основе фиксаций кода с автоматической интеграцией и проверкой
  • Интеграция тестов: выполнение тестов после сборки для проверки изменений и обнаружения проблем на ранних этапах
  • Конвейеры выпуска: развертывание сборок в разных средах от промежуточного до рабочей среды

Основные возможности:

  • Непрерывная интеграция (CI): автоматическое сборка и тестирование изменений кода
  • Непрерывная доставка (CD): оптимизация надежных выпусков от разработки до внедрения
  • Автоматизация сборки: настройка процессов сборки с помощью определенных шагов и триггеров
  • Управление выпусками. Настройка конвейеров развертывания с несколькими средами
  • Автоматизация развертывания: сокращение усилий вручную и ошибок развертывания
  • Рабочие процессы утверждения: добавьте уровни проверки перед продвижением сборок
  • Отслеживание релизов: мониторинг развертывания по всем средам

Подробные сведения см. в статье "Что такое Azure Pipelines"?

Снимок экрана целевой страницы Azure Pipelines со списком недавно запущенных конвейеров.

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

Планы тестирования Azure обеспечивают комплексное тестирование с помощью ручного, исследовательского и автоматизированного управления тестами.

Основные возможности:

  • Настройка рабочего процесса. Создание настраиваемых планов тестирования, наборов и вариантов, согласованных с потребностями проекта
  • Трассируемость: Связывание требований непосредственно с тестовыми случаями и дефектами для полного отслеживания
  • Выбор теста. Использование наборов тестов на основе запросов для выбора тестов на основе критериев
  • Пользовательский интерфейс: управление тестовых случаев с помощью интерфейса сетки, например Excel
  • Повторно используемые элементы: совместное использование шагов тестирования и параметров в тестах для согласованности
  • Совместная работа: предоставление общего доступа к планам тестирования заинтересованным лицам для проверки и обратной связи
  • Кроссплатформенное выполнение: выполнение тестов из любого браузера на любой платформе
  • Мониторинг активности. Отслеживание хода тестирования с помощью диаграмм и отчетов в режиме реального времени

Подробные сведения см. в документации по планам тестирования Azure.

Скриншот целевой страницы планов тестирования, показывающий вертикальный макет наборов тестов и тестовых случаев в плане тестирования.

Azure Artifacts

Артефакты Azure позволяют управлять пакетами для NuGet, npm, Maven, Python и универсальных пакетов. Интеграция с конвейерами сборки, управление версиями и управление доступом к вышестоящим источникам и политикам хранения.

Основные возможности:

  • Несколько типов пакетов: размещение всех основных типов пакетов в одном веб-канале
  • Источники входящего потока: подключение к публичным репозиториям при обеспечении безопасности
  • Управление версиями пакетов с помощью политик семантического управления версиями и хранения
  • Управление доступом: управление разрешениями веб-канала с помощью детализированного управления доступом
  • Интеграция сборки: автоматическая публикация и использование пакетов в конвейерах сборки
  • Поиск кода: репозитории поиска с фильтрацией по пути, расширению файла и типу кода

Службы совместной работы

Azure DevOps улучшает совместную работу команд с помощью следующих служб, предназначенных для упрощения взаимодействия и отслеживания проектов:

  • Проектная вики: Документируйте детали своего проекта, рекомендации и базу знаний в централизованной, легко доступной вики.
  • Обсуждение рабочих элементов: Упростите беседы непосредственно в формах рабочих элементов и обеспечьте контекстуальную и своевременную коммуникацию.
  • Связи трассируемости: устанавливайте связи между рабочими элементами, фиксациями, запросами на вытягивание и т. д., а также обеспечивайте комплексную трассируемость в проекте.
  • Оповещения и уведомления: настройте персонализированные оповещения и уведомления об изменениях, чтобы держать участников команды в курсе обновлений и изменений проекта.
  • Управление обратной связью: оптимизируйте процесс запроса, предоставления и управления обратной связью, чтобы постоянно улучшать результаты проекта.
  • Аналитика и отчеты: используйте службу аналитики и отчеты Power BI для получения аналитических сведений о производительности проекта и принятия решений на основе данных.

Эти услуги для совместной работы являются неотъемлемой частью поддержания сплоченной и информированной команды, способной быстро реагировать на требования и возможности проекта.

Механизмы сервисных подключений

Хуки сервисов автоматизируют взаимодействие с внешними сервисами и реагируют на события проекта. Настройте хуки для отправки уведомлений, срабатывания действий или интеграции с инструментами, не относящимися к Майкрософт, в случаях сбоев сборки, фиксации кода или изменения рабочих элементов.

Основные возможности:

  • Интеграция пользовательских приложений: активация автоматических действий в приложениях на основе событий Azure DevOps
  • Целевые объекты службы: подключение к различным внешним службам для автоматического реагирования на события проекта

Сведения о доступных интеграции см. в Visual Studio Marketplace. Дополнительные сведения см. в разделе "Интеграция с хуками службы".

Облачные службы Azure

Azure предоставляет облачные службы для разработки и развертывания приложений, которые работают независимо или интегрируются с Azure DevOps для простого рабочего процесса.

Ключевые преимущества:

  • Полная поддержка: полная инфраструктура и поддержка платформы для всего жизненного цикла приложения
  • Интеграция с Azure DevOps: объединенные службы создают интегрированный интерфейс разработки

Полный каталог служб см. в продуктах Azure.

Административные службы

Azure DevOps предоставляет упрощенные средства администрирования для эффективного управления проектами и командами.

Основные возможности:

  • Управление веб-порталом. Выполнение административных задач с помощью веб-портала Azure DevOps
  • Комплексные параметры. Настройка подробных параметров для пользователей, команд, проектов и организаций с подробным контролем

Дополнительные сведения см. в разделе "Сведения о пользователях, команде, проекте и параметрах уровня организации".

Ключевые возможности

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

  • Отслеживание историй пользователей, функций, ошибок и задач
  • Планирование спринтов и выпусков с помощью гибких методологий
  • Мониторинг хода выполнения с помощью диаграмм и отслеживания скорости
  • Настройка типов рабочих элементов и рабочих процессов

Управление исходным кодом

  • Размещение неограниченных частных репозиториев Git
  • Поддержка рабочих процессов Git, включая ветвление, создание pull-запросов и их объединение.
  • Возможности проверки кода с помощью политик комментариев и утверждений
  • Интеграция с GitHub и другими поставщиками Git

Сборка и развертывание

  • Непрерывная интеграция с автоматизированными сборками, инициируемыми изменениями кода
  • Поддержка нескольких платформ для .NET, Java, Node.js, Python, Android, iOS, Linux, macOS и Windows
  • Развертывание в Azure, AWS, GCP или локальных средах
  • Развертывание в нескольких средах: разработка, промежуточная и рабочая среды.
  • Управление выпусками с шлюзами утверждения и стратегиями развертывания
  • Параллельная обработка с несколькими агентами сборки для ускорения CI/CD

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

  • Управление и выполнение тестовых случаев вручную
  • Автоматическая интеграция тестирования в конвейерах сборки
  • Покрытие кода и отчеты о тестировании
  • Проверка безопасности и проверка соответствия требованиям

Почему выберите Azure DevOps Services?

Azure DevOps Services предлагает несколько преимуществ для команд разработки:

  • Быстрая настройка. Немедленное использование Azure DevOps без настройки инфраструктуры или обслуживания
  • Автоматическое обновление: получение последних функций и обновлений системы безопасности без вмешательства вручную
  • Глобальный масштаб: основанная на глобальной инфраструктуре Azure с 99,9% соглашение об уровне обслуживания
  • Безопасность: безопасность корпоративного уровня с помощью интеграции идентификатора Microsoft Entra ID, сертификации соответствия требованиям и защиты данных
  • Интеграция: работает с GitHub, Visual Studio, VS Code и сотнями расширений из Marketplace
  • Гибкость: поддержка любого стека разработки, языка или платформы
  • Совместная работа. Удаление барьеров между командами и поощрение совместной работы в течение всего жизненного цикла разработки

Цены и доступ

  • Бесплатный для небольших команд: до пяти пользователей получают доступ ко всем основным функциям
  • Плати по мере роста: добавление пользователей с лицензиями "Базовый" или "Базовый + Тестовые планы" по мере необходимости
  • Неограниченные заинтересованные лица: бесплатный доступ для неограниченных заинтересованных лиц для просмотра панелей мониторинга и рабочих элементов

Сервер Azure DevOps

Azure DevOps Server доступен для организаций, которые должны хранить свои данные в локальной среде или требовать определенных настроек, недоступных в облачной службе. Он включает те же основные службы, что и Azure DevOps Services, но требует собственной инфраструктуры и обслуживания.

Дополнительные сведения о Azure DevOps Server см. в статье "Установка Azure DevOps Server".

Начало работы

Готовы приступить к работе с Azure DevOps? Ниже приведены дальнейшие действия.

  1. Создание бесплатной организации — настройка организации Azure DevOps Services
  2. Создание первого проекта — начало организации работы
  3. Пригласите членов команды - Добавьте коллег для совместной работы
  4. Импорт или создание репозиториев . Получение кода в Azure Repos
  5. Настройка первого конвейера — автоматизация сборок и развертываний