DevOps Explained

DevOps is the union of people, processes, and products that provides continuous value to end users.


1

Continuous Integration

The process of automating the build and testing the code every time a team member implements changes to version control.

Build Automation

The process of automating software build creation, compiling source code into binary code, and packaging binary code.

Package Management

The process of creating and hosting packages that can be shared and used across the organization.

Unit Testing

The development process in which the smallest testable parts of an application are individually and independently tested for proper operation.

Code Analysis

Modern lint checkers are often used to find code that does not correspond to certain style guidelines.


2

Continuous Testing

Controlling the execution of tests and comparing the actual outcomes with the predicted outcomes.

Functional Testing

The process of automating regression testing.

Smoke Testing

The process of automating smoke test cases.

Load Testing

The process of applying demand on a system and measuring its response.

Security Testing

A testing technique to determine if an information system protects data and maintains functionality as intended.

Test Management

The activity of managing a testing process. A test management tool is software which governs tests that have been previously procedurally specified. These tools are often associated with automation software.


3

Continuous Delivery

A software development practice where code changes are automatically prepared for a production release.

Infrastructure As Code

Process of managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configurations or interactive configuration tools.

Artifacts Management

A universal DevOps solution providing end-to-end automation and management of binaries and artifacts through the application delivery process that streamlines productivity across your entire development ecosystem.

Configuration Management

The mechanism used to make the server reach a desirable state, previously defined by provisioning scripts using a tool’s specific language and features.

Release Management

Release management is the process of overseeing the planning, scheduling, and controlling of software builds throughout each stage of development and across various environments.

Deployment Automation

Allows applications to be deployed across the various environments used in the development process, as well as the final production environments.

ChatOps

A model where people, tools, processes, and automation are connected in a transparent flow that also helps control pipelines in one window.

Containerization

An OS-level virtualization method used to deploy and run distributed applications without launching an entire virtual machine (VM) for each app. In this process, multiple isolated applications or services run on a single host and access the same OS kernel.

Rollback

A DevOps approach that enables IT to apply the ongoing deployment experience gained through CI/CD to disaster recovery processes. In addition, the automated tools that are used to move applications from development and testing into production and back again can be used for failover and recovery.


4

Monitoring

The systematic process of collecting, analyzing, and using the information to track a program’s progress toward reaching its objectives and to guide management decisions.

Application Monitoring

Monitoring and management of performance and availability of software applications.

Infrastructure Monitoring

Monitoring and management of performance and availability of software infrastructure.

Project Planning

The phase where a set of pre-defined business processes pass through various development phases such as requirements definition, design, development, testing, deployment, and release across an entire lifecycle of a product.

Continuous Feedback

A process that occurs when outputs of a system are routed back as inputs in a chain of cause-and-effect that forms a circuit or loop.


Provide continuous value to your end-users