Day 1: Basics of DevOps

Day 1: Basics of DevOps

DevOps: DevOps is a combination of software development (dev) and operations (ops). It is defined as a software engineering methodology that aims to integrate development and operations teams' work by facilitating a culture of collaboration and shared responsibility.

DevOps is a method or culture used to create a process of loop for development by implementing build, test, and deployment to create automation so that developers develop applications effectively.

Lifecycle of DevOps: DevOps lifecycle is a series of automated development processes or workflows within an iterative development lifecycle. It follows a continuous approach; hence its lifecycle is symbolized in the form of an infinity loop. This loop depicts the collaborative and iterative approach throughout the application lifecycle, consisting of tools and technology stacks for each stage. The left part deals with software development and testing. In contrast, the right side of the infinity loop represents the deployment and operations cycle. All the stages in the life cycle will continue to iterate throughout the project and go through the lifecycle continuously. There are seven stages in the DevOps lifecycle as follows;

  1. Continuous Planning & Development: This phase plays a pivotal role in delineating the vision for the entire software development cycle. It primarily focuses on project planning and coding. During this phase, project requirements are gathered and discussed with stakeholders. Once the team agrees upon the business needs, the development team starts coding for the desired requirements. It’s a continuous process where developers are required to code whenever any changes occur in the project requirement or case of any performance issues.
  2. Continuous Integration: In this phase, updated code or add-on functionalities and features are developed and integrated into existing code. Furthermore, bugs are detected and identified in the code during this phase at every step through unit testing, and then the source code is modified accordingly.
  3. Continuous Testing: Some teams carry out the continuous testing phase before the integration occurs, while others do it after it. Automation testing also reduces the time and effort to deliver quality results.
  4. Continuous Deployment: This phase is the crucial and most active one in the DevOps lifecycle, where the final code is deployed on production servers. The continuous deployment includes configuration management to make the deployment of code on servers accurate and smooth. Development teams release the code to servers and schedule the updates for servers, keeping the configurations consistent throughout the production process.
  5. Continuous Monitoring: During this phase, the application’s functionality and features are monitored continuously to detect system errors such as low memory, non-reachable servers, etc. This process helps the IT team quickly identify issues related to app performance and the root cause behind it. If IT teams find any critical issue, the application goes through the entire DevOps cycle again to find the solution. However, security issues can be detected and resolved automatically during this phase.
  6. Continuous Feedback: Continuous feedback came into existence to analyze and improve the application code. During this phase, customer behaviour is evaluated regularly on each release to improve future releases and deployments.
  7. Continuous Operations: The last phase in the DevOps lifecycle is crucial for reducing the planned downtime, such as scheduled maintenance. Generally, developers are required to take the server offline to make the updates, which increases the downtime and might even cause a significant loss to the company. Eventually, continuous operation automates the launching of the app and its updates. The key objective of this phase is to boost the application’s uptime to ensure uninterrupted services. Through continuous operations, developers save time that can be used to accelerate the application’s time-to-market.

Let’s take a look at all the DevOps tools available for all the lifecycle phases in the below table, 7Cs of the DevOps lifecycle:


Nikunj Vaishnav

QA + Cloud and DevOps Support || Helping organizations with QA, Cloud Support and DevOps || Quality Assurance || AWS || Docker || Terraform || K8S || Ansible || Azure || Monitoring || Linux || Bash Scripting || CI/CD

4 个月

Very informative

回复

要查看或添加评论,请登录

社区洞察

其他会员也浏览了