DevOps Workshop - Supporting the Microsoft Professional Program (40500A)

This 3 day Instructor-led workshop provides discussion and practical hands-on training of key DevOps strategies, including Continuous Integration and Continuous Deployment, DevOps Testing, and Application Monitoring and Feedback Loops. This workshop is a subset of the existing online MOOC content is intended to be used with the DevOps MOOC courses and provides students with an in-classroom experience with direct instructor feedback to better prepare students to pass the MPP.

You will be required to have an active Azure subscription, an active Visual Studio Team Services account, and a Github account. You will be provided an Azure Pass to create your Azure subscription, if you do not have an existing Azure subscription to use. If you do not have an active Visual Studion Team Services account, you can set up a free one online. The labs are intended to be used with your own accounts so that after the class you will still be able to access your work for a period of time.

Audience ProfileThis three-day workshop is for IT professionals who are responsible for deploying and maintaining code in an efficient dependable manner through adoption of Devops practices across medium, large, and enterprise organizations. Typically, this course’s audience has some introductory experience with DevOps practices, and are looking to increase their knowledge level through a predominately hands-on experience with DevOps labs. This workshop is also beneficial for those interested in taking the Microsoft Professional Program for DevOps Capstone.

PrerequisitesThis workshop is part of a larger series of MOOC courses offered by Microsoft on the practice of DevOps. While it is not required that you have completed any of the other courses in the DevOps series before taking this workshop, it is highly recommended that you start with the first course in the series, Introduction to DevOps Practices, so that you get a big picture view of DevOps before drilling down into specific methodologies. It is also recommended that you have experience working in Visual Studio or another IDE, as well as knowledge of Azure IaaS. However, students who may not have a technical background in these technologies, but who are curious about DevOps practices as a culture shift, should be able to follow the procedural and expository explanations in this workshop

A basic understanding of version control and Agile software development process.

Experience with software development and understanding of core development principles.

ObjectivesAfter completing this course, students will have a working understanding of key DevOps strategies, including Continuous Integration and Continuous Deployment, DevOps Testing, and Application Monitoring and Feedback Loops.

Module 1: Continuous Integration and Continuous Deployment Continuous Integration (CI) is the practice used by development teams to automate the merging and testing of code. Implementing CI helps to catch bugs early in the development cycle, which makes them less expensive to fix. Continuous Delivery (CD) is a process by which code is built, tested, and deployed to one or more test and production environments. Deploying and testing in multiple environments drives quality. Lessons

Continuous Integration

Continuous Delivery

Continuous Deployment

Module 2: DevOps Testing This module provides you with an overview of core testing concepts and guides you to implement a DevOps testing process using the features available in the Visual Studio family. You will learn about the different test types, including automated and manual tests. You will also learn how to create unit, integration, UI & exploratory tests. Finally, you will learn how to perform load testing and take advantage of some of the advanced features in Visual Studio to improve your tests. Lessons

Unit Testing

Integration Testing

Functional Testing

Module 3: Application Monitoring and Feedback Loops Monitoring is essential for DevOps teams to deliver at speed, get feedback from production, and increase customer satisfaction, acquisition, and retention. In this module you will explore application monitoring to understand monitoring, it's benefits, and how monitoring can be used as part of a DevOps practice. Lessons