search menu icon-carat-right cmu-wordmark

Posts by Todd Waits

Three Strategies to Minimize the Implementation Dip in DevOps

Three Strategies to Minimize the Implementation Dip in DevOps

• Blog
Todd Waits

Change is hard. When we help teams adopt DevOps processes or more general Agile methodologies, we often encounter initial resistance. When people learn a new tool or process, productivity and enthusiasm consistently dip, which is known as the "implementation dip." This dip should not be feared, however, but embraced. In his book Leading in a Culture of Change, Michael Fullan defines the implementation dip as "a dip in performance and confidence as one encounters an...

Read More
Malicious User Stories, Rejection Criteria, and the New Business Value

Malicious User Stories, Rejection Criteria, and the New Business Value

• Blog
Todd Waits

Traditionally, DevOps practitioners think of business value as simply measuring the difference between money earned and money spent. In that line of thinking, security is often relegated to a secondary goal because it fails to directly drive revenue. The misguided goal is to deliver functionality at all costs, even if it compromises the integrity of the system or data. As Rob Joyce, head of the National Security Agency's Tailored Access Operations group, mentions in his...

Read More
Applying DevOps Principles in Incident Response

Applying DevOps Principles in Incident Response

• Blog
Todd Waits

By Todd WaitsProject Lead CERT Division DevOps principles focus on helping teams and organizations deliver business value as quickly and consistently as possible. While the principles advocate for improving the coordination between development and operational teams, they can be adapted for any number of domains. The key components of DevOps we want to emulate across other domains are: collaboration between project team roles infrastructure as code automation of tasks, processes, and workflows monitoring of applications...

Read More
Three Challenges to Documentation for DevOps Teams

Three Challenges to Documentation for DevOps Teams

• Blog
Todd Waits

Formal documentation (such as source code documentation, system requirements and design documentation, or documentation for various user types) is often completely ignored by development teams; applying DevOps processes and philosophies to documentation can help alleviate this problem. Software documentation tends to fall into several categories: code, requirement, design, system, and user documentation. One reason documentation is often ignored is that standard documentation tools and processes create an obstacle for development teams since the tools and...

Read More
The Benefits of High Frequency Testing

The Benefits of High Frequency Testing

• Blog
Todd Waits

At a recent workshop we hosted, a participant asked why the release frequency was so high in a DevOps environment. When working with significant legacy applications, release may be a once-in-a-year type event, and the prospect of releasing more frequently sends the engineering teams running for the hills. More frequent releases are made possible by properly implementing risk mitigation processes, including automated testing and deployment. With these processes in place, all stakeholders can be confident...

Read More
Addressing the Detrimental Effects of Context Switching with DevOps

Addressing the Detrimental Effects of Context Switching with DevOps

• Blog
Todd Waits

In a computing system, a context switch occurs when an operating system stores the state of an application thread before stopping the thread and restoring the state of a different (previously stopped) thread so its execution can resume. The overhead incurred by a context switch managing the process of storing and restoring state negatively impacts operating system and application performance. This blog post describes how DevOps ameliorates the negative impacts that "context switching" between projects...

Read More
ChatOps in the DevOps Team

ChatOps in the DevOps Team

• Blog
Todd Waits

In the post What is DevOps?, we define one of the benefits of DevOps as "collaboration between project team roles." Conversations between team members and the platform on which communication occurs can have a profound impact on that collaboration. Poor or unused communication tools lead to miscommunication, redundant efforts, or faulty implementations. On the other hand, communication tools integrated with the development and operational infrastructures can speed up the delivery of business value to the...

Read More
What is DevOps?

What is DevOps?

• Blog
Todd Waits

In a previous post, we defined DevOps as ensuring collaboration and integration of operations and development teams through the shared goal of delivering business value. Typically, when we envision DevOps implemented in an organization, we imagine a well-oiled machine that automates infrastructure provisioning code testing application deployment Ultimately, these practices are a result of applying DevOps methods and tools. DevOps works for all sizes, from a team of one to an enterprise organization....

Read More

Contact the Author

Todd Waits

SEI Digital Library

SEI Publications

Visit the SEI Digital Library to see other publications by Todd Waits

View publications