What features and services do I get with Azure DevOps?

TFS 2017 | TFS 2015 | TFS 2013

With Azure DevOps, you gain an integrated set of services and tools to manage your software projects, from planning and development through testing and deployment. Services are delivered through a client/server model. Many of them are delivered through an easy-to-use web interface that you can access from all major browsers. Some services, such as source control, build pipelines, and work tracking, can also be managed through a client.

You access Azure DevOps Services through the top navigational bar, as shown in the following image. To jump to information for each major service, see the associated articles.

Azure DevOps Services, main

Many of our services are either free for small teams or available through a subscription model or per-use model. You can do a hybrid approach where you use an on-premises deployment to manage your code and work. Then, you purchase cloud build or testing services on an as-needed basis.

For information about client tools, see Tools.

Dashboards

From Dashboards, you gain access to user-configurable dashboards.

Dashboard, Overview

You can do the following tasks in Dashboards:

  • Add, configure, and manage dashboards
  • Configure widgets that you add to dashboards
  • Quickly go to different areas of your project

To learn more, see Dashboards.

Source control

Source or version control systems allow developers to collaborate on code and track changes made to the code base. Source control is an essential tool for multi-developer projects.

Our systems support two types of source control: Git (distributed) or Team Foundation Version Control (TFVC), a centralized, client-server system. Both systems enable you to check in files and organize files within folders, branches, and repositories.

With Git, each developer has a copy on their dev machine of the source repository, including all branch and history information. Each developer works directly with their own local repository and changes are shared between repositories as a separate step.

Developers commit each set of changes and do version control operations like history and compare without a network connection. Branches are lightweight. When developers need to switch contexts, they create a private local branch and can switch from one branch to another to pivot among different variations of the codebase. Later, they merge, publish, or dispose of the branch.

Note

Git in Azure DevOps is standard Git. You can use Visual Studio with third-party Git services. You can also use third-party Git clients with Azure DevOps Server.

With TFVC, developers have only one version of each file on their dev machines. Historical data is maintained only on the server. Branches are path-based and created on the server.

From Code, you gain access to your source control Git-based or TFVC repositories to support version control of your software projects. These repositories are private.

Code, Git, files page

From Azure Repos for Git, you can do the following tasks:

  • Review, download, and edit files, and review the change history for a file
  • Review and manage commits that have been pushed
  • Review, create, approve, comment on, and complete pull requests
  • Add and manage Git tags

To learn more, see the overviews for Git or TFVC.

Plan and track work

Software development projects require ways to easily share information and track the status of work, tasks, issues, or code defects. In the past, perhaps you used one or more tools. Microsoft Excel, Microsoft Project, a bug tracking system, or a combination of tools, for example. Now, many teams have adopted Agile methods and practices to support planning and development.

Our systems provide several types of work items that you use to track features, requirements, user stories, tasks, bugs, and issues. Each work item is associated with a work item type and a set of fields that can be updated, as progress is made.

For planning purposes, you have access to several types of backlogs and boards to support the main Agile methods—Scrum, Kanban, or Scrumban.

  • Product backlog: Used to create and rank stories or requirements.
  • Kanban: Used to visualize and manage the flow of work as it moves from beginning, to in-progress, to done.
  • Sprint backlogs: Used to plan work to complete during a sprint cycle, a regular two to four-week cadence that teams use when implementing Scrum.
  • Task board: Used during daily Scrum meetings to review work that's completed, remaining, or blocked.

Project managers and developers share information by tracking work items on the backlogs and boards. Useful charts and dashboards complete the picture and help teams monitor progress and trends.

From Work, you gain access to Agile tools to support planning and tracking work.

Work, Backlogs page

Specifically, you can do the following tasks:

  • Add and update work items
  • Define work item queries, and create status and trend charts based on those queries
  • Manage your product backlog
  • Plan sprints by using sprint backlogs
  • Review sprint tasks and update tasks through the task boards
  • Visualize the workflow and update the status by using Kanban boards
  • Manage portfolios by grouping stories under features and grouping features under epics

See Backlogs, boards, and plans for an overview of each.

Continuous integration and deployment

The rapid and reliable release of software comes from automating as many processes as possible. Our systems support build, test, and release automation.

  • You can define builds to automatically run whenever a team member checks in code changes.
  • Your build pipelines can include instructions to run tests after the build runs.
  • Release pipelines support managing deployment of your software builds to staging or production environments.

Azure Pipelines provides an integrated set of features to support building and deploying your applications.

Build-Release, Build pipelines page

Use pipelines to implement continuous integration and continuous delivery.

  • Build automation: Define the steps to take during build and the triggers that start a build.
  • Release management: Supports a rapid release cadence and management of simultaneous releases. You can configure release pipelines that represent your environments from development to production. Run automation to deploy your app to each environment. Add approvers to confirm that the app has been successfully deployed in an environment. Create your release manually or automatically from a build. Then track your releases as they're deployed to various environments.

To learn more, see Continuous integration on any platform.

Manual and exploratory testing

Test features support manual and exploratory testing, and continuous testing.

Test supports creating and managing manual tests.

Test

With test features, you gain access to the following features:

  • Customization of workflows with test plan, test suite, and test case work items
  • End-to-end traceability from requirements to test cases and bugs with requirement-based test suites
  • Criteria-based test selection with query-based test suites
  • Excel-like interface with the grid for easy creation of test cases
  • Reusable test steps and test data with shared steps and shared parameters
  • Sharable test plans, test suites, and test cases for reviewing with Stakeholders
  • Browser-based test execution on any platform
  • Real-time charts for tracking test activity

To learn more, see Testing overview.

Collaboration services

The following services work across the previously mentioned services to support:

  • Dashboards
  • Discussion within work item forms
  • Linking of work items, commits, pull requests and other artifacts to support traceability
  • Alerts and change notifications managed per user, team, project, or project collection
  • Ability to request and manage feedback
  • Team (chat) rooms
  • SQL Server Reporting

Note

Team rooms are deprecated for TFS 2017.2. Instead, we recommend that you use service hooks to integrate with Microsoft Teams.

Service hooks

Service hooks enable you to complete tasks on other services when events happen within your project hosted on Azure DevOps. For example, you can send a push notification to your team's mobile devices when a build fails. You can also use service hooks in custom apps and services as a more efficient way to drive activities in your projects.

The following services are available as the target of service hooks. To learn about other apps and services that integrate with Azure DevOps, visit the Visual Studio Marketplace, Azure DevOps tab.

For the latest set of supported services, see Integrate with service hooks.

Cloud-hosted services based on usage

The following services support your DevOps operations:

  • Cloud-based, Microsoft-hosted build and deployment agents
  • On-premises self-hosted agents to support build and deployment

To learn more, see Pricing.

Azure cloud-hosted services

Azure provides cloud-hosted services to support application development and deployment. You can make use of these services solely or in combination with Azure DevOps.

To browse the directory of integrated services, features, and bundled suites, see Azure products.

For continuous delivery to Azure from Azure DevOps Services, see Automatically build and deploy to Azure web apps or cloud services.

Administrative services

There are features and tasks associated with administering a collaborative software development environment. You complete most of these tasks through the web portal. To learn more, see About user, team, project, and organization-level settings.

Product backlog