Course Overview

This three-day, instructor-led course provides students with the knowledge and skills to effectively use the Application Lifecycle Management (ALM) tools found in Visual Studio and Azure DevOps Server (f.k.a. Team Foundation Server). This includes the tools and practices used to plan, track, design, develop, test, and deliver business value in the form of working software. The course demonstrates to developers, testers, product owners, project managers, architects, testers, and release managers the value of the various features and capabilities found in Visual Studio and Azure DevOps Server.

Key Learning Areas

  • Using coded UI tests to automate UI testing
  • Visual Studio and Azure DevOps ALM tools
  • Editions, capabilities, and version compatibilities
  • Azure DevOps Server vs. Azure DevOps Services
  • Administrator types and related tools (Team Explorer)
  • Planning/creating team projects and collections
  • Configuring services, security, teams, areas, iterations
  • Introduction to Azure Boards
  • Selecting an appropriate work item process
  • Work item types and work item characteristics
  • Using the agile tools (backlogs/boards) to visualize work
  • Creating and refining a product backlog
  • Tagging, finding, querying, and removing work items
  • Using hierarchical (epics and features) backlogs
  • Planning and tracking work in a sprint
  • Introduction to Azure Repos
  • Basic and advanced Git workflows
  • Basic and advanced TFVC workflows
  • Working with Azure Repos from Visual Studio
  • Associating work items to commits for traceability
  • Collaborating as a team and improving productivity
  • Pairing, swarming, and mobbing patterns of work
  • Creating and maintaining a wiki
  • Performing code reviews using pull requests
  • Requesting and capturing stakeholder feedback
  • Using the Test and Feedback browser extension
  • Using Visual Studio Live Share to collaborate in real time
  • Writing and executing .NET unit tests
  • Using IntelliTest to generate unit tests
  • Using Live Unit Testing to run only impacted tests
  • Using FxCop Analyzers and code metrics
  • Using code clone analysis to find duplicate code
  • Using IntelliTrace to troubleshoot and diagnose
  • Using Performance Profiler to find problems in code
  • Introduction to Azure Test Plans
  • Test Case Management using test plans, suites, cases
  • Testing web and desktop applications
  • Capturing screenshots and video while testing
  • Viewing and charting test run results
  • Creating automated acceptance tests in Visual Studio
  • Using Selenium and Appium for automated UI testing
  • Using JMeter for load testing applications
  • Practicing exploratory testing by taking testing tours
  • Introduction to Azure Pipelines
  • Creating and using build and release pipelines
  • Running automated tests in the pipeline
  • Configuring on-premises agent for build/release
  • Practicing Continuous Integration (CI) and Delivery (CD)
  • Improving performance with Test Impact Analysis
  • Agile metrics vs. traditional project metrics
  • Configuring project alerts and notifications
  • Using Excel for reporting and charting
  • Using the Analytics Service and related widgets
  • Using the REST API for reporting
  • Relevant Visual Studio Marketplace extensions
  • DevOps principles, challenges, and goals
  • DevOps practices and related tools in Azure DevOps

Course Outline

  • Introduction to Visual Studio ALM
  • Team Projects
  • Planning and Managing Work
  • Version Control
  • Collaborating as a Team
  • Writing Quality Code
  • Testing the Application
  • Building and Releasing
  • Reporting
  • Improving DevOps

Contact us for older versions or customizations.

Who Benefits

This course is intended for current software development professionals who are involved in building applications with Visual Studio and Azure DevOps. Regardless of the student’s role, he or she will be able to learn and get hands-on experience with all of the ALM features found in Visual Studio and Azure DevOps Server.

Prerequisites

Before attending this course, a student should have experience working on a software development team and be familiar with that team’s ALM processes, practices, and tools. Additionally, students should:

  • Have familiarity with agile practices and Scrum
  • Be able to read and understand C# .NET code (all source code will be provided)
  • Have used Visual Studio2015, 2017, or 2019
  • Be able to read and understand requirements
  • Understand Microsoft Windows basics