Introduction to DevOps

Introduction to DevOps

DevOps has become an IT buzzword that is defined in different ways by different people. According to me, Devops is a set of practices that streamlines the software organization culture wherein the software devlopment, testing and operations coordinates effeciently to build, test and release a product much faster and more reliably.

The main objective of the DevOps is to inculcate automation and monitoring at all steps of software building, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, and faster software releases, identify and solve issues quickly in close alignment with business objectives.

Definitions and history

A definition proposed by Bass, Weber, and Zhu, is:

DevOps is a set of practices intended to reduce the time between committing a change to a system and the change being placed into normal production, while ensuring high quality.

DevOps is a combination of two words ‘Dev’ as in Development and ‘Ops’ as in Operations.

In simple word,

                             DevOPs = Dev + Ops

The Devops movement started sometime between 2007 and 2008 when the Software Development and Operations community became vocal about the inefficeincy of the current software release cycle. At the 2008 Agile Toronto conference, Andrew Shafer and Patrick Debois introduced the term in their talk on “Agile Infrastructure”. From 2009, the DevOps term has been steadily promoted and brought into more mainstream usage through a series of “devopsdays”, which started in Belgium and has now spread to other countries.

Advantages of DevOps

DevOps implementation increases the collaboration between all teams in the organization from planning to delivery and automation of delivery process to monitoring after release. This results in:

  • Improves development speed
  • Improves QA speed
  • Improve deployment frequency
  • Faster time to release
  • Low error rate of releases
  • Improves error resolution time.

DevOps toolchain

DevOps consists of a set of tool chains each focusing on different part of the process. The tools are expected to fit in one or more of these categories:

DevOps Tool Chain
  • Code: source code management tools, code review and code merging.
  • Build: Build status and CI (Continuous) tools.
  • Test: Continuous testing tools.
  • Package: Application pre-deployment staging, artifact repository.
  • Release: Change management, release approvals and release automation.
  • Configure: Infratructure configuration and management, IaC (Infrastructure as Code) tools.
  • Monitor: Application performance monitoring, User experience monitoring.

The below tutorial will give you a brief idea of DevOps basic required to start the DevOps journey. Please go through the complete video and drop a message in the comment section if you have any doubts and we will be happy to assist you clearing your doubts in your DevOps journey.

Safi Ahmed Choudhury

Safi Ahmed Choudhury

Safi is the founder and chief editor of ZoomTutorials Blog, a leading tutorials and technology blogging site specializing in DevOps, SysAdmin and Cloud Technologies to help IT professionals in their day to day work. He is a Senior Cloud and DevOps Solutions Engineer at a leading eCommerce development Company and has more than 8 years of SysAdmin experience working with Fortune 500 companies to solve their most important IT backbones. Safi lives in Hyderabad with his wife and a son.

Leave a Reply

Your email address will not be published. Required fields are marked *