DevOps is a set of practices that combines software development (Dev) and IT operations (Ops). It aims to shorten the systems development life cycle and provide continuous delivery with high software quality.
DevOps is complementary with Agile software development; several DevOps aspects came from the Agile methodology.
Tool Chains
As DevOps is intended to be a cross-functional mode of working, those who practice the methodology use different sets of tools—referred to as "toolchains"—rather than a single one. These toolchains are expected to fit into one or more of the following categories, reflective of key aspects of the development and delivery process:
Coding – code development and review, source code management tools, code merging.
Building – continuous integration tools, build status.
Testing – continuous testing tools that provide quick and timely feedback on business risks.
Some categories are more essential in a DevOps toolchain than others; especially continuous integration (e.g. Jenkins, Gitlab, Bitbucket pipelines) and infrastructure as code (e.g., Terraform, Ansible, Puppet).
CONTINUOUS INTEGRATION & DELIVERY
CI/CD is a software engineering practice which evolved to support extreme and agile programming methodologies.
It covers Code Quality Analysis, Continuous Integration, Continuous QA, Release Management, and Continuous Deployment to QA, pre‐production and production environments in a highly automated manner.
BIORBIT has helped young startups as well as enterprises to design, deploy and manage mature continuous integration, build engineering and continuous delivery strategies.