State of DevOps - A Continuous Improvement Story

Rate this content
Bookmark

For nearly a decade, the DevOps Research and Assessment (DORA) project has studied the behaviors of thousands of software development teams and discovered the key capabilities that reliably predict success. DORA has consistently found that not only do top performers lead their industries in both release velocity and service reliability, they achieve better business outcomes and have more satisfied employees.

In this session, we’ll unpack the research findings and outline key steps your team can take toward continuous improvement.

We will couple these findings with stories "from the field" about how teams are putting these ideas into practice.

This talk has been presented at DevOps.js Conf 2024, check out the latest edition of this JavaScript Conference.

FAQ

The DORA quick check measures key metrics like lead time for changes, deployment frequency, change fail rate, and time to restore service.

Winning a DORA trophy should not be the main goal because it is more important to focus on continuous improvement and the underlying practices that lead to high performance in software delivery.

The DORA quick check is a tool used to set a baseline for a team's current software delivery performance and track improvements over time.

Teams should begin by focusing on areas they can influence directly, such as improving code review processes or documentation, before tackling more complex issues like architectural changes.

AI can potentially improve software development processes by enhancing code reviews, reducing manual tasks, and providing faster and more efficient solutions.

Good documentation supports better understanding, maintenance, and enhancement of software, contributing positively across multiple areas of a software development team's work.

Proper usage of the cloud allows developers to leverage on-demand self-service and rapid elasticity, which can lead to better organizational performance.

A positive culture within a team or organization enhances collaboration, satisfaction, and productivity, which are critical for successful software development.

DORA is a research program that has been running for about a decade, focusing on how teams can improve in delivering and operating software.

Amanda Lewis
Amanda Lewis
Nathen Harvey
Nathen Harvey
12 min
15 Feb, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
This Talk discusses the story of continuous improvement in software development. It emphasizes the importance of measuring software delivery performance using metrics such as lead time, deployment frequency, change fail rate, and time to restore. Code reviews play a significant role in improving software delivery, and exploring the potential impact of AI on code reviews is recommended. Focusing on documentation and proper utilization of the cloud can improve organizational performance. Finally, a good culture, user focus, and collaborative platform team are crucial for success in software development.

1. Introduction: Story of Continuous Improvement

Short description:

We are excited to be here at DevOps JS for a story of continuous improvement. Amanda Lewis, a software engineer, and Nathan Harvey, a DORA advocate, will discuss how teams improve in delivering and operating software.

Hello, everyone. We are so excited to be here at DevOps JS. Thank you for joining us for a story of continuous improvement.

Our story today will be portrayed by Amanda Lewis, a software engineer on a team that is responsible for the Kanban application that her team uses for tracking work. And we have Nathan Harvey, who will play himself, a DORA advocate and a continuous improvement cheerleader.

So Nathan, you're a DORA advocate. What is DORA? Oh, right. I'm glad you asked, Amanda. DORA is a research program that's been running for about a decade. This research program looks into how do teams get better at delivering and operating software? Awesome. I am so excited to be able to talk with you today because my team and I have this goal and I think that you're going to be able to help us achieve it.

2. Exploring Goals and Priorities

Short description:

Amanda's goal is to win the DORA trophy, but Nathan suggests focusing on continuous improvement instead. The team has taken the quick check and found areas for improvement in architecture. Nathan recommends starting with something the team can improve and suggests using the quick check to measure software delivery performance.

Wow, that's awesome. Amanda, if I'm going to help you achieve your goal, the first question I have is, what is your goal? What are you trying to do? We want to get the DORA trophy. We want to win the DORA trophy. Oh, great. That feels important, but that is maybe not the best goal. Why? Why do you want a DORA trophy? What are you trying to demonstrate with that?

You know what, Amanda, maybe we could take the quick check together with your team, the DORA quick check, and understand maybe how you're doing today. And that might even help us clarify what your goals should be. I will say, Nathan, we do want the trophy, but we acknowledge to get the trophy, you have to show that you're continuously getting better over time. And so that is absolutely what we want to do. And the team has actually gotten together and taken the quick check. So we've answered these five questions here that you're showing. And then we actually additionally went through that help me prioritize exercise, which was really interesting, you know, talking about our continuous integration, which we're doing really well on. When it came to architecture, you know, do we have control there? We actually really don't. We really like rely on other teams when we're making changes. But then we also answered the questions about culture. And I wanted to ask you, so here's our findings from the prioritize me exercise. And you know, it was great. We're doing well on continuous integration. There's some room there for improvement. Culture is doing pretty good. But that loosely coupled architecture that feels like, oh, we should start there. But the team, like we don't think we can, we don't even know how to get started. We don't really have influence over architectural decisions.

Ah, yeah, I can understand that. And I definitely recommend that you start with something that your team does have the ability to improve. So you can start with a quick check. This helps you set a baseline for how is your team doing today with software delivery performance. And it will allow you to keep track of your score over time as you make improvements. All right. So just to make sure that I understand, because we use the quick check, I want to make sure that I understand what we're measuring.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Full Stack Documentation
JSNation 2022JSNation 2022
28 min
Full Stack Documentation
Top Content
The Talk discusses the shift to full-stack frameworks and the challenges of full-stack documentation. It highlights the power of interactive tutorials and the importance of user testing in software development. The Talk also introduces learn.svelte.dev, a platform for learning full-stack tools, and discusses the roadmap for SvelteKit and its documentation.
Gateway to React: The React.dev Story
React Summit US 2023React Summit US 2023
32 min
Gateway to React: The React.dev Story
Watch video: Gateway to React: The React.dev Story
The Talk discusses the journey of improving React and React Native documentation, including the addition of interactive code sandboxes and visual content. The focus was on creating a more accessible and engaging learning experience for developers. The Talk also emphasizes the importance of building a human API through well-designed documentation. It provides tips for building effective documentation sites and highlights the benefits of contributing to open source projects. The potential impact of AI on React development is mentioned, with the recognition that human engineers are still essential.
Opensource Documentation—Tales from React and React Native
React Finland 2021React Finland 2021
27 min
Opensource Documentation—Tales from React and React Native
Documentation is often your community's first point of contact with your project and their daily companion at work. So why is documentation the last thing that gets done, and how can we do it better? This talk shares how important documentation is for React and React Native and how you can invest in or contribute to making your favourite project's docs to build a thriving community
Documenting components with stories
React Finland 2021React Finland 2021
18 min
Documenting components with stories
Most documentation systems focus on text content of one form or another: WYSIWYG editors, markdown, code comments, and so forth. Storybook, the industry-standard component workshop, takes a very different approach, focusing instead on component examples, or stories.
In this demo, I will introduce an open format called Component Story Format (CSF).
I will show how CSF can be used used to create interactive docs in Storybook, including auto-generated DocsPage and freeform MDX documentation. Storybook Docs is a convenient way to build a living production design system.
I will then show how CSF stories can be used create novel forms of documentation, such as multiplayer collaborative docs, interactive design prototypes, and even behavioral documentation via tests.
Finally, I will present the current status and outline a roadmap of improvements that are on their way in the coming months.
TypeScript for Library Authors: Harnessing the Power of TypeScript for DX
TypeScript Congress 2022TypeScript Congress 2022
25 min
TypeScript for Library Authors: Harnessing the Power of TypeScript for DX
TypeScript for library authors offers benefits for both internal and external use, improving code quality and providing accurate understanding of libraries. Documentation and examples should be in code to provide up-to-date information. Testing types alongside unit tests ensures accurate typing. Managing changes and exposing types requires careful versioning. Deep integration of types improves usability. Using a map in TypeScript allows for simpler implementation and customization. Leveraging types in libraries can generate code based on user access. TypeScript integration with Nuxt provides support and type declarations.
Next Generation Code Architecture for Building Maintainable Node Applications
Node Congress 2023Node Congress 2023
30 min
Next Generation Code Architecture for Building Maintainable Node Applications
Today's Talk focused on code architecture, modularization, and scaling in software development. The speaker discussed the benefits of separating code by domain and using tools like NX to improve productivity and enforce modular architecture. They also highlighted the importance of automating library creation and configuration. Additionally, the Talk covered code scaling and deployment strategies, including caching and automated code migrations. The speaker emphasized the flexibility and scalability of Fastify and the advantages of using a monorepo for front-end and back-end development.

Workshops on related topic

Bring Code Quality and Security to your CI/CD pipeline
DevOps.js Conf 2022DevOps.js Conf 2022
76 min
Bring Code Quality and Security to your CI/CD pipeline
WorkshopFree
Elena Vilchik
Elena Vilchik
In this workshop we will go through all the aspects and stages when integrating your project into Code Quality and Security Ecosystem. We will take a simple web-application as a starting point and create a CI pipeline triggering code quality monitoring for it. We will do a full development cycle starting from coding in the IDE and opening a Pull Request and I will show you how you can control the quality at those stages. At the end of the workshop you will be ready to enable such integration for your own projects.