Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
Azure DevOps Explained

You're reading from   Azure DevOps Explained Get started with Azure DevOps and develop your DevOps practices

Arrow left icon
Product type Paperback
Published in Dec 2020
Publisher Packt
ISBN-13 9781800563513
Length 438 pages
Edition 1st Edition
Tools
Concepts
Arrow right icon
Authors (3):
Arrow left icon
Sjoukje Zaal Sjoukje Zaal
Author Profile Icon Sjoukje Zaal
Sjoukje Zaal
Stefano Demiliani Stefano Demiliani
Author Profile Icon Stefano Demiliani
Stefano Demiliani
Amit  Malik Amit Malik
Author Profile Icon Amit Malik
Amit Malik
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

Preface 1. Section 1: DevOps Principles and Azure DevOps Project Management
2. Chapter 1: Azure DevOps Overview FREE CHAPTER 3. Chapter 2: Managing Projects with Azure DevOps Boards 4. Section 2: Source Code and Builds
5. Chapter 3: Source Control Management with Azure DevOps 6. Chapter 4: Understanding Azure DevOps Pipelines 7. Chapter 5: Running Quality Tests in a Build Pipeline 8. Chapter 6: Hosting Your Own Azure Pipeline Agent 9. Section 3: Artifacts and Deployments
10. Chapter 7: Using Artifacts with Azure DevOps 11. Chapter 8: Deploying Applications with Azure DevOps 12. Section 4: Advanced Features of Azure DevOps
13. Chapter 9: Integrating Azure DevOps with GitHub 14. Chapter 10: Using Test Plans with Azure DevOps 15. Chapter 11: Real-World CI/CD Scenarios with Azure DevOps 16. Other Books You May Enjoy

Understanding DevOps principles

There are a lot of different definitions when it comes to DevOps. Most of them are good at explaining the different aspects of finding the right flow in delivering software and IT projects. In the upcoming sections, we will highlight six DevOps principles that we think are essential when adopting a DevOps way of working.

Principle 1 – Customer-centric action

Nowadays, it is important that software development projects have short cycles and feedback loops, with end users and real customers integrated into the team. To fully meet the customers' requirements, all activity around building software and products must involve these clients. DevOps teams and organizations must continuously invest in products and services that will allow clients to receive the maximum outcome, while also being as lean as possible to continuously innovate and change the chosen strategy when it is no longer working.

Principle 2 – Create with the end in mind

Organizations need to act more like product companies. They should focus more on building working products that are sold to real customers. This engineering mindset needs to be shared by all employees. This is required to realize those products. This means that they should let go of the approach where each unit focuses on a particular role with their own scoped responsibility.

Principle 3 – End-to-end responsibility

In most traditional software development projects, the software and services that are developed are handed over to operations, where they then deploy and maintain those solutions after the initial development process. By adopting a DevOps way of working, the DevOps teams become fully responsible and accountable for the project they deliver. This means that once the product has been delivered by the team and it needs to be maintained, it still remains under the responsibility of the team. The team will also provide support for the product until it reaches its end of life. This greatly increases the level of responsibility of the team and the quality of the products that are developed.

Principle 4 – Cross-functional autonomous teams

Organizations that work with vertical and fully responsible teams will need to let these teams work completely independently throughout the whole life cycle. To enable these teams to work completely independently, a broad and balanced set of skills are required. Team members need to have T-shaped profiles instead of old-school IT specialists who are only skilled in their own role. Examples of skills that every team member should have include development, requirement analysis, testing, and administration skills.

Principle 5 – Continuous improvement

Another part of end-to-end responsibility is that, for organizations, it is important to adapt changes continuously. There can be a number of changing circumstances, such as new technology that has been released, changing customer requirements, and so on. Continuous improvement is a strong focus in DevOps when it comes to optimizing for speed and costs, minimizing waste, easy of delivery, and to continuously improve the software and services that are being built and released. An important activity to embed inside these cycles is experimentation. This will allow teams to develop a way of learning from their failures, which is essential to continuous improvement.

Principle 6 – Automate everything

To fully adopt and embed a continuous improvement culture inside an organization, most organizations have a lot of waste and tech depth to eliminate. To work with high cycle rates and to process the instant feedback from customers and end users as soon as possible, it is imperative to automate everything. This means that not only the software development process should be automated using continuous delivery (which includes continuous development and integration), but also the whole infrastructure landscape needs to be automated. The infrastructure also needs to be ready for new ways of working. In this sense, automation is synonymous with the drive to renew the way in which the team delivers their services to their customers.

In this section, we have covered the six principles that are very important when adopting or migrating to a DevOps way of working. In the next few sections, we are going to look at what Azure DevOps has to offer as a tool that supports teams so that they can work in a DevOps oriented manner.

You have been reading a chapter from
Azure DevOps Explained
Published in: Dec 2020
Publisher: Packt
ISBN-13: 9781800563513
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at AU $19.99/month. Cancel anytime
Visually different images