Azure DevOps Overview

Preface – This post is part of the SAP on Azure series.

Introduction

Microsoft in 2008 came with a cloud computing service and named it Windows Azure which was later known as Microsoft Azure. Till 2018, developers using Azure or non-azure service was provided with a code version control tool called Microsoft TFS, which was later upgraded and called Azure DevOps. Likewise Azure, Azure DevOps too is a cloud-based service used mainly for version control and project planning.

What is Microsoft Azure

Microsoft Azure is a cloud computing service offering that includes Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS).

What is Microsoft Azure DevOps

Microsoft Azure DevOps is a planning and collaboration tool inbuilt with version control (both Git and Microsoft TFS). Microsoft DevOps provides the following options:

  • Azure Boards: Users can create Kanban boards, interactive backlogs and plan a sprint for developers and testers.
  • Azure Repos: With Git and TFS, user can create a Repository, branches and their policies to control the flow of a project.
  • Azure Pipelines: Users can build, test and deploy to any cloud or on-premise environment using CI/CD Pipelines.
  • Azure Test Plans: Users can manage Quality Assurance with the help of test plans and improve the quality of their project.
  • Azure Artifacts: With the help of Azure Artifacts, users can share npm, python and other packages with the entire team.
  • Azure Extension Marketplace: From Docker to slack, everything can be integrated with Azure DevOps.

The architecture of Azure DevOps lifecycle

Azure DevOps lifecycle includes almost all the services that we have discussed above. It starts with project planning, and the task is created for developers using Azure Boards. Then the developer starts coding in an IDE with the help of branches created over Azure Repos. Once the development is completed, then the user creates a CI/CD pipeline using Azure Pipelines and deploy it in the required environment. Once the deployment is completed, tasks are created for testers who use Azure Test Plans to execute the tests. These steps are shown in the image below:

Azure DevOps lifecycle

The above diagram shows end to end lifecycle of our CICD pipeline, including all other Azure DevOps steps.

Difference between Microsoft Azure DevOps and Microsoft TFS

Microsoft TFS (Team Foundation Server) was introduced by Microsoft to manage high volume codes for big organizations. Later, with the introduction of Git in the market and an increasing number of Git users, Microsoft integrated it too and launched a tool called Azure DevOps. Let’s discuss all the differences between Microsoft Azure DevOps and Microsoft TFS:

Features Microsoft Azure DevOps Microsoft TFS
Type It is a distributed source control system It is a Centralized Source control system
Scaling It cannot scale to a very large code base, but it is highly distributed between teams It scales to a very large codebase
Version Control It has repository and branch level version control It has fine level version control
Usage Monitoring No usage monitoring system It allows usage monitoring
File lock option No lock files options It has the ability to lock files exclusively
Code bases It is mainly used for modular codebases It is mainly used for Large Integrated codebases
Offline Experience and Speed It has full offline experience and speed It needs always to be online
CI/CD Support It supports continuous integration and continuous delivery of codes No CI/CD option

Author

  • Barry Allen

    A Full Stack Developer with 10+ years of experience in different domain including SAP, Blockchain, AI and Web Development.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.