What is DevOps?

Completed

DevOps is a commonly misunderstood and mischaracterized term. Before you explore more nuanced aspects of DevOps, it's essential that you understand its meaning and what DevOps isn't.

What is DevOps (and what isn't)?



DevOps is a set of principles, practices, and values that are meant to enhance cross-team synergies, with the common goal of optimizing software delivery.

It's not a state that an organization can reach, but rather a continuous journey that requires an ongoing commitment and effort from all stakeholders.

It’s also important to note that DevOps isn't tied to a specific technology or tools.

Screenshot of the DevOps toolchain and application lifecycle.

Now to explore DevOps in a contextual way, let's consider the traditional organization in the software development company example in which the development team and the operations team work in silos. Review challenges associated with this scenario and examine the meaning of DevOps in this context and how it can help.

What challenges are associated with a traditional application lifecycle?

Traditional application lifecycle tends to separate developing software from the process of operationalizing it, which involves delivering it to its intended recipients and ensuring that it functions in the optimal manner. This siloed approach leads to many inefficiencies.

For one, developers and operational teams have commonly different objectives. The former focuses on innovation and continuous enhancements to their software. The primary objective of the latter is maintaining the stability and security of the environment they support.

The conflicting goals result in clashes, driving a wedge between different parts of the internal IT organization.

In addition, traditional operational practices are frequently based on an outdated, largely manual approach, which is inherently slow and vulnerable to human errors. This impedes the pace of innovation and increases the level of risk associated with deployment of new or updated versions of applications.

How does DevOps help?

The purpose of DevOps is to address these inefficiencies. This is accomplished by uniting people, processes, and technologies. DevOps promotes coordination and collaboration between traditionally siloed roles, spanning such areas as development, operations, quality engineering, and security.