Continuous Delivery Using Azure DevOps Services

Continuous Delivery Using Azure DevOps Services

Course Length:
Delivery Methods: Available for private class only
Course Topics
  • Learn to increase flow at scale.
  • Learn to plan and execute at scale.
  • Learn to share code.
  • Learn to integrate continuously.
  • Learn to deliver continuously.
  • Learn to empower the product owner.
Course Overview

This two-day Continuous Delivery Using Azure DevOps Services training class provides students with the DevOps principles and related hands-on practices to work better as a team, scale their agility, share and integrate their work, and deliver working software continuously in order to enable faster delivery of value and receive early and valuable feedback.

This course is intended for experienced software development professionals who want to learn about DevOps in order to achieve Continuous Integration, Continuous Delivery, Continuous Feedback, and Continuous Learning in a technical value stream as supported by Azure DevOps Services, Visual Studio, and Azure in order to continually deliver working software at scale. Students will also install and evaluate several extensions from the Azure DevOps Marketplace. Those who use the on-premises version of Azure DevOps Server (Team Foundation Server/TFS) will also benefit from this course.

Course Outline
  1. Increasing Flow at Scale
    1. The complexity of software development
    2. The need for empirical process control
    3. Increasing flow through a technical value stream
    4. Scrum and Professional Scrum
    5. The Nexus scaled Scrum framework
    6. Practices for organizing teams
    7. Establishing feature teams to minimize dependencies
  2. Planning and Executing at Scale
    1. Organizing and refining the Product Backlog
    2. Creating a definition of "Ready"
    3. Dependencies, types, and related risks
    4. Cross-team refinement to identify dependencies
    5. Planning and executing a Sprint
    6. Limiting work in progress (WIP)
    7. Working in small batches
    8. Creating and obeying a definition of "Done"
    9. Using queries, charts, and dashboards for reporting
  3. Sharing Code
    1. Working collaboratively as a team
    2. Collective ownership mindset
    3. Git version control workflow (optional)
    4. Branching strategies and related side effects
    5. Using Code Maps to visualize code dependencies
    6. Using Package Management to share binaries
    7. Adopting an internal open source model
  4. Integrating Continuously
    1. Why and how to create fast feedback loops
    2. The importance of automated testing
    3. Unit testing in Visual Studio
    4. Automated builds in Azure Pipelines
    5. Build definitions and build tasks
    6. Cloning and managing build definitions
    7. Hosted build agents and agent pools
    8. Running tests during an automated build
    9. Code coverage and regression testing
    10. Configuring and using Test Impact Analysis
    11. Continuous Integration (CI) and CI+
  5. Delivering Continuously
    1. Azure Pipelines deployment
    2. Release definitions, environments, and releases
    3. Deployment targets, IaaS, PaaS, containers
    4. Using Microsoft Azure for DevOps
    5. Configuring endpoints and deployment groups
    6. Automated deployment to an Azure Virtual Machine
    7. Installing and configuring Azure Pipelines agents
    8. Release tasks and phases
    9. Creating and deploying a release
    10. Infrastructure as Code
    11. Creating and importing YAML builds
    12. Automatic creation of environments
    13. Azure Resource Manager and ARM templates
    14. Release and environment triggers
    15. Continuous Delivery (CD)
  6. Empowering the Product Owner
    1. Build-Measure-Learn explained
    2. Hypothesis-Driven Development (HDD)
    3. Customizing Azure DevOps to implement HDD
    4. Feature flags overview
    5. Using LaunchDarkly to manage feature flags
    6. Telemetry and application performance management
    7. Application Insights for gathering telemetry
    8. A/B testing
    9. Using feature flags to support A/B testing
    10. Exploratory testing, testing "tours" practice
    11. Using the Microsoft Test and Feedback extension
    12. Understanding and identifying technical debt
    13. Using SonarQube to gauge your technical debt
    14. Practices for paying off technical debt
  7. Learning and Improving Continuously
    1. Building a culture of learning and improvement
    2. Agile metrics and reporting
    3. Communities of Practice (COPs)
    4. Lean thinking and practices to eliminate waste
    5. Using the wiki to build tribal knowledge
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Azure DevOps Services class:

  • Team-based development experience.
  • Familiarity with Visual Studio and Scrum and have basic experience with Azure DevOps Services, Visual Studio Team Services, or Team Foundation Server.
Request a Private Class
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors
Request Pricing