Azure DevOps Services is Microsoft’s cloud-based, team focused services to help your entire organization plan smarter, collaborate better, and ship faster with a set of modern developer services. Azure DevOps is designed to be a one-stop solution to help you deliver value and build quality in for any app, written using any code, on any platform. You can build and deploy both to the cloud and on-premises for desktop, web, mobile, and more. You’ll learn about the services and how you can use them effectively together. However, Microsoft has made the service to be fully extensible and integrates with popular services and platforms so you’re never locked in.
In this 3-day, hands-on course, you will learn how you can apply good DevOps principles so you and your team can deliver value as fast as your customers need and expect.
Key Learning Areas
Attendees will acquire first-hand experience using Azure DevOps Services and the features that it offers.
You will learn:
- How you, your team, and company should provision an organization in Azure DevOps
- How to on-board developers and stakeholders
- How you can use Azure Boards track and manage your teams work
- How use Azure Repos for distributed version control of your teams assets using Git
- How to use Azure Pipelines to create build pipelines to package up your applications
- How to use Azure Pipelines to publish your applications and other items to the cloud or on-premises
- How to increase quality with Azure Test Plans
- How to create, host, and share packages with your team, and add artifacts to your pipelines with Azure Artifacts
Each course module consists of a lecture followed by a hands-on lab designed to reinforce the principles presented during lecture.
A Day in the Life of a Developer
- Level set of “what is DevOps”
- Overview of Azure DevOps (aka VSTS)
- Examine end-to-end workflow
- Examine Organization and Team configuration
Azure Boards: Plan, Track, and Discuss Work Across Your Teams
Deliver value to your users faster using proven agile tools to plan, track, and discuss work across your teams.
- What does every team member need to know?
- Organizing and refining the Product Backlog
- Tools in Azure Boards
- Dependencies, Types, and Related Risks
- Planning and executing a Sprint
- Using Queries, Charts, and Dashboards for basic reporting
- "Just enough project management" to support full DevOps traceability
Azure Repos: Using Git Effectively
Get unlimited, cloud-hosted private Git repos and collaborate to build better code with pull requests and advanced file management.
- Centralized vs decentralized version control
- Defining and managing repos
- Don’t fear the command-line
- Working with branches
- Pull Requests
- Using Code Search
Azure Pipelines: Building Quality In
Build and test with continuous integration that works with any language, platform, and cloud.
- Defining Quality Gates
- Azure Pipelines for Builds
- Understanding and Managing Agents
- YAML Build Definitions
- Testing with Build
- Managing and Sharing Build Definition
Microsoft Azure DevOps
Azure Pipelines: Releasing to the World
- Use continuous deployment to get any app deployed to any platform and cloud.
- Understanding deployment models
- Azure Pipelines for Releases
- YAML Release Definitions
- Service Connections
- Stages and environments
- Defining approval processes and quality gates
- Deployment Groups and Targets
- Managing and Sharing Release Definitions
Azure Test Plans: Exploratory and Manual Testing
- Test Plans and Test Suites
- Managing Test Cases
- Running Manual Tests
- Running Exploratory Tests
Azure Artifacts: Sharing Code Effectively
- Why and what of the service
- Integrating with Azure Pipelines
- Designing your repos to better support sharing
- Updating your workflow to support collective ownership mindset
- Branching strategies
- Applying Open Source Software principles to internal development
- Building Integration Tests
- Automated UI Testing with Selenium for Web Apps
- Integrating Automated Tests with Builds and Releases
Feedback: User Acceptance Testing, Monitoring, and Analytics
- Continuous Feedback
- Involving Stakeholders
- Running UAT Tests
- Application Insights
- Quality Tracking and Reporting
- Azure DevOps Analytics
This course is primarily designed for software developers who want to learn how to work with Azure DevOps Services to manage and build cloud-based applications. The hands-on labs involve mostly configuration with some light coding. Coding is done in C#. Non-developers including Scrum Masters,
Product owners, and more test focused engineers can attend and pair with developers as needed but will find most areas of the course valuable even if they don’t write code.
In order to work along with the labs, attendees must have the following:
- A modern web browser like Microsoft Edge, Chrome, or Firefox. Internet Explorer is NOT supported.
- An Azure subscription (Azure Pass, MSDN subscription, free trial, company subscription, etc.)
- A Visual Studio 2017 compatible version of Windows
- Any “edition” of Visual Studio 2017 (Community, Professional, or Enterprise) with the latest
updates installed and the ASP.NET and Web Development, and Azure Development workloads installed
- Local Administrative permissions to install additional tools such as the Git command-line tools, NuGet packages, and other tools that are required during the course of the labs
Basic programming experience, preferably in C# with Visual Studio.