What is Azure DevOps?
Azure DevOps is Microsoft’s Software as a Service (SaaS) offering a DevOps toolchain for software development and deployment. It not only provides its own tools, but also integrates with most of the leading tools on the market covering the entire development lifecycle. As a SaaS offering, Azure DevOps is reliable, scalable, and globally available with backed by a 99.9% uptime SLA and 24/7 support.
If a user is a single developer or working in a small environment, then the user roles might include tracking issues, plan features, code, test, build and deploy. When working in a large environment, then the user will be focused on a specific set of tasks tailored to a specific role. These specific roles are software development, product and scrum management, or DevOps.
Features and Task based on Role
1. Contributor Role –
Team members are contributors who have access to
- Code Base
- Work Item Tracking
- Agile Tools
- Build Pipelines
- Test Tools
2. Software Developers –
Developers develop applications using Visual Studio or other tools. It is then shared to Git or Team Foundation Server repository hosted on Azure DevOps. Using the web portal or a supported IDE, a developer can view repositories, check history, etc.
The code can be shared in the Git using the following:
- Share code with Git & Visual Studio
- Share code in Git using Eclipse
- Share code in Git using XCode
- Share code in Git using IntelliJ
- Git and Azure DevOps Services
The code can be shared in the Team Foundation Server using the following:
- Share code with Team Foundation Server (TFS) using Visual Studio
- Share code in Team Foundation Server using Eclipse
- Share code in Team Foundation Server using XCode
3. Product Owners –
The Product Owner plans & prioritize the roll out of feature sets, track the status of work, code defects and customer issues. Azure DevOps web-based Agile Tools provides the view & capabilities that are required by the product owner to accomplish these tasks. All the work is recorded within a work item. Each work item represents a particular type such as user story, task, or bug. Some of the features are as following:
- Product Backlog is used to define and prioritize user stories, features, and other work items
- Sprint Backlog and Task Board is used to implement Scrum practices
- Kanban board is used to work with Kanban methods
- Queries to List and update work items is used to create status and trend charts, and post charts to dashboards
- Dashboards is used to share information, status, and trends with your team or organization
4. Scrum Masters –
A Scrum Master helps make Scrum easier for large teams by ensuring that the Scrum framework is adhered to. It is committed to the practices but remain flexible and open to ways for the team who can improve their workflow. The Scrum Master uses the same functions as the Product Owner.
5. DevOps (Builders, Testers, and Release Manager) –
A benefit of using Azure DevOps is a set of tools and built-in features that support building, testing, and deploying software applications. The following general DevOps tasks that are supported by Azure DevOps:
- Define Builds
- Test the code
- Run tests with the builds
- Perform Exploratory tests
- Define, Manage, Track, and Approve Releases
- Deploy applications to Azure, a virtual machine, Docker containers, etc.
6. Stakeholders –
Stakeholder access allows anyone in the organization to see the project status and provide feedback. Stakeholders can track project priorities and provide feature ideas, and business direction to the team. Stakeholders can also contribute to the plan by adding and modifying work items. However, they cannot contribute to the code base or run test tools. Stakeholder access provides free access to a limited set of features for project sponsors and contributors.
7. Administrator Roles –
The advantage of working with Azure DevOps Services is reduced server maintenance effort. However, supporting a collaborative and integrated software development environment requires some administrative tasks. Major tasks are grouped by security group or role membership, as follows:
- Team Administrator – They are responsible for configuring team settings, that includes
- Backlog and board settings
- Team areas and iterations (sprints)
- Team members
- Team dashboards
- Teamwork item templates
- Team alerts
- Project Administrator – They are responsible for configuring project level resources that includes
- Area paths and iteration paths
- Project permissions and repository security
- Build agents, pools, and service connections
- Test and release retention policies
- Organization Owners and Project Collection Administrator – Organization Owners are the members of the Project Collection Administrators group. They are responsible for configuring organization-level resources and include the following other tasks.
- Manage Billing
- Add and Manage Projects
- Manage collection-level permissions
- Customize work tracking processes
- Install and manage extensions
Conclusion
The Azure platform is widely used in software development processes. Azure DevOps is a powerful and flexible tool commonly used in the software development process which helps organizations to simplify the SLAs.