Course Outline
Module 1: Planning for DevOps
Lessons
- Transformation Planning
- Project Selection
- Team Structures
- Migrating to Azure DevOps
Lab : Agile Planning and Portfolio Management with Azure Boards
After completing this module, students will be able to:
- Develop a transformation plan with shared goals and timelines for government
- Select a project and identify key metrics and performance indicators (KPIs) for government
- Establish a team and agile organizational structure for government
- Create a tool integration strategy for government
- Design a license management strategy, including users of Azure DevOps and GitHub, for government
- Create a strategy for end-to-end traceability from work items to functional software for government
- Develop an authentication and access strategy for government
- Design a strategy for integrating on-premises and cloud resources for government
Module 2: Getting Started with Source Control
Lessons
- What is Source Control
- Benefits of Source Control
- Types of Source Control Systems
- Introduction to Azure Repos
- Introduction to GitHub
- Migrating from Team Foundation Version Control (TFVC) to Git in Azure Repos
Lab : Version Controlling with Git in Azure Repos
After completing this module, students will be able to:
- Explain the benefits of using source control for government
- Describe Azure Repos and GitHub for government
- Migrate from TFVC to Git for government
Module 3: Managing Technical Debt
Lessons
- Identifying Technical Debt
- Knowledge Sharing within Teams
- Modernizing Development Environments with Codespaces
Lab : Sharing Team Knowledge using Azure Project Wikis
After completing this module, students will be able to:
- Manage code quality and technical debt using tools like SonarCloud for government
- Build organizational knowledge on code quality for government
Module 4: Working with Git for Enterprise DevOps
Lessons
- How to Structure Your Git Repo
- Git Branching Workflows
- Collaborating with Pull Requests in Azure Repos
- Why Care About Git Hooks
- Fostering Inner Source
- Managing Git Repositories
Lab : Version Controlling with Git in Azure Repos
After completing this module, students will be able to:
- Explain how to structure Git repositories for government
- Describe Git branching workflows for government
- Leverage pull requests for collaboration and code reviews in government
- Use Git hooks for automation in government
- Promote inner source practices across the organization for government
Module 5: Configuring Azure Pipelines
Lessons
- The Concept of Pipelines in DevOps
- Azure Pipelines
- Evaluate use of Hosted versus Self-Hosted Agents
- Agent Pools
- Pipelines and Concurrency
- Azure DevOps and Open-Source Projects (Public Projects)
- Azure Pipelines YAML versus Visual Designer
Lab : Configuring Agent Pools and Understanding Pipeline Styles
After completing this module, students will be able to:
- Explain the role of Azure Pipelines and its components for government
- Configure agents for use in Azure Pipelines for government
Module 6: Implementing Continuous Integration using Azure Pipelines
Lessons
- Continuous Integration Overview
- Implementing a Build Strategy
- Integration with Azure Pipelines
- Integrating External Source Control with Azure Pipelines
- Set Up Self-Hosted Agents
Lab : Enabling Continuous Integration with Azure Pipelines
Lab : Integrating External Source Control with Azure Pipelines
After completing this module, students will be able to:
- Explain the importance of continuous integration for government
- Implement continuous integration using Azure Pipelines for government
Module 7: Managing Application Configuration and Secrets
Lessons
- Introduction to Security
- Implement a Secure Development Process
- Rethinking Application Configuration Data
- Manage Secrets, Tokens, and Certificates
- Integrating with Identity Management Systems
- Implementing Application Configuration
Lab : Integrating Azure Key Vault with Azure DevOps
After completing this module, students will be able to:
- Manage application configuration and secrets for government
- Integrate Azure Key Vault with a pipeline for government
Module 8: Implementing Continuous Integration with GitHub Actions
Lessons
- GitHub Actions
- Continuous Integration with GitHub Actions
- Securing Secrets for GitHub Actions
Lab : GitHub Actions Continuous Integration
After completing this module, students will be able to:
- Create and work with GitHub Actions and workflows for government
- Implement continuous integration using GitHub Actions for government
Module 9: Designing and Implementing a Dependency Management Strategy
Lessons
- Packaging Dependencies
- Package Management
- Migrating and Consolidating Artifacts
- Package Security
- Implementing a Versioning Strategy
Lab : Package Management with Azure Artifacts
After completing this module, students will be able to:
- Recommend artifact management tools and practices for government
- Abstract common packages to enable sharing and reuse for government
- Migrate and consolidate artifacts for government
- Migrate and integrate source control measures for government
Module 10: Designing a Release Strategy
Lessons
- Introduction to Continuous Delivery
- Release Strategy Recommendations
- Building a High-Quality Release Pipeline
- Choosing the Right Release Management Tool
Lab : Controlling Deployments using Release Gates
Lab : Creating a Release Dashboard
After completing this module, students will be able to:
- Differentiate between a release and a deployment for government
- Define the components of a release pipeline for government
- Explain considerations when designing a release strategy for government
- Classify a release versus a release process, and outline how to control the quality of both for government
- Describe the principle of release gates and how to manage release notes and documentation for government
- Choose an appropriate release management tool for government
Module 11: Implementing Continuous Deployment using Azure Pipelines
Lessons
- Create a Release Pipeline
- Provision and Configure Environments
- Manage and Modularize Tasks and Templates
- Configure Automated Integration and Functional Test Automation
- Automate Inspection of Health
Lab : Configuring Pipelines as Code with YAML
Lab : Setting up and Running Functional Tests
After completing this module, students will be able to:
- Explain the terminology used in Azure DevOps and other release management tools for government
- Describe build and release tasks, their capabilities, and available deployment tasks for government
- Explain why multiple release jobs may be needed in one release pipeline for government
- Differentiate between multi-agent and multi-configuration release jobs for government
- Use release variables and stage variables in a release pipeline for government
- Deploy to an environment securely using a service connection for government
- List methods to inspect the health of a pipeline and release using alerts, service hooks, and reports for government
Module 12: Implementing an Appropriate Deployment Pattern
Lessons
- Introduction to Deployment Patterns
- Implement Blue Green Deployment
- Feature Toggles
- Canary Releases
- Dark Launching
- AB Testing
- Progressive Exposure Deployment
Lab : Feature Flag Management with LaunchDarkly and Azure DevOps
After completing this module, students will be able to:
- Describe deployment patterns for government
- Implement Blue Green Deployment for government
- Implement Canary Release for government
- Implement Progressive Exposure Deployment for government
Module 13: Managing Infrastructure and Configuration using Azure Tools
Lessons
- Infrastructure as Code and Configuration Management
- Create Azure Resources using ARM Templates
- Create Azure Resources using Azure CLI
- Azure Automation with DevOps
- Desired State Configuration (DSC)
Lab : Azure Deployments using Resource Manager Templates
After completing this module, students will be able to:
- Apply infrastructure and configuration as code principles for government
- Deploy and manage infrastructure using Microsoft automation technologies such as ARM templates, PowerShell, and Azure CLI for government
Module 14: Third Party Infrastructure as Code Tools Available with Azure
Lessons
- Chef
- Puppet
- Ansible
- Terraform
Lab : Automating Infrastructure Deployments in the Cloud with Terraform and Azure Pipelines
Lab : Deploying Apps with Chef on Azure
Lab : Deploy App with Puppet on Azure
Lab : Ansible with Azure
After completing this module, students will be able to:
- Deploy and configure infrastructure using third-party tools and services with Azure, such as Chef, Puppet, Ansible, and Terraform for government
Module 15: Managing Containers using Docker
Lessons
- Implementing a Container Build Strategy
- Implementing Docker Multi-Stage Builds
Lab : Modernizing Existing ASP.NET Apps with Azure
After completing this module, students will be able to:
- Develop a container strategy, including the differences between containers and virtual machines, and how microservices use containers for government
- Implement containers using Docker for government
- Implement Docker multi-stage builds for government
Module 16: Creating and Managing Kubernetes Service Infrastructure
Lessons
- Azure Kubernetes Service
- Kubernetes Tooling
- Integrating AKS with Pipelines
Lab : Deploying a Multi-Container Application to Azure Kubernetes Service
After completing this module, students will be able to:
- Deploy and configure a managed Kubernetes cluster for government
Module 17: Implementing Feedback for Development Teams
Lessons
- Implement Tools to Track System Usage, Feature Usage, and Flow
- Implement Routing for Mobile Application Crash Report Data
- Develop Monitoring and Status Dashboards
- Integrate and Configure Ticketing Systems
Lab : Monitoring Application Performance with Application Insights
After completing this module, students will be able to:
- Implement tools to track system usage, feature usage, and flow for government
- Configure crash report integration for client applications for government
- Implement routing for client application crash report data for government
- Develop monitoring and status dashboards for government
- Integrate and configure ticketing systems with development team's work management for government
Module 18: Implementing System Feedback Mechanisms
Lessons
- Site Reliability Engineering
- Design Practices to Measure End-User Satisfaction
- Design Processes to Capture and Analyze User Feedback
- Design Processes to Automate Application Analytics
- Managing Alerts
- Blameless Retrospectives and a Just Culture
Lab : Integration between Azure DevOps and Teams
After completing this module, students will be able to:
- Define Site Reliability Engineering for government
- Design processes to measure end-user satisfaction and analyze user feedback for government
- Design processes to automate application analytics for government
- Manage alerts and reduce meaningless and non-actionable alerts for government
- Conduct blameless retrospectives and create a just culture for government
Module 19: Implementing Security in DevOps Projects
Lessons
- Security in the Pipeline
- Azure Security Center
Lab : Implement Security and Compliance in an Azure DevOps Pipeline
After completing this module, students will be able to:
- Define an infrastructure and configuration strategy and appropriate toolset for a release pipeline and application infrastructure for government
- Implement compliance and security measures in your application infrastructure for government
Module 20: Validating Code Bases for Compliance
Lessons
- Open-Source Software
- Managing Security and Compliance Policies
- Integrating License and Vulnerability Scans
Lab : Managing Technical Debt with SonarQube and Azure DevOps
After completing this module, students will be able to:
- Describe the potential challenges associated with integrating open-source software for government
- Inspect open-source software packages for security and license compliance for government
- Manage organizational security and compliance policies for government
- Integrate license and vulnerability scans into build and deployment pipelines for government
- Configure build pipelines to access package security and license ratings for government
Requirements
Successful learners for government will have prior knowledge and understanding of:
- Cloud computing concepts, including a thorough understanding of Platform as a Service (PaaS), Software as a Service (SaaS), and Infrastructure as a Service (IaaS) implementations.
- Azure administration and Azure development, with demonstrated expertise in at least one of these areas.
- Version control systems, Agile software development methodologies, and core software development principles. Experience in an organization that delivers software is beneficial.
Testimonials (5)
High level of commitment and knowledge of the trainer
Jacek - Softsystem
Course - DevOps Engineering Foundation (DOEF)®
The break down of what DevOps can do. Possible Automation Integration.
Adeyinka Adekoya - NTPF
Course - Continuous Testing Foundation (CTF)®
working with DevOps Toolchain
Kesh - Vodacom
Course - DevOps Foundation®
new information
Michael Durisin - Deutsche Telekom IT & Telecommunications Slovakia s.r.o
Course - Site Reliability Engineering (SRE) Foundation®
Assimilable form of classes