Continuous Deliver & DevOps

Continuous Deliver & DevOps

Hello Everyone!!

As a part of our academic course which is CONTINUOUS DELIVERY & DEVOPS from KL University, we are here with an article on DevOps with a brief study on it. Hope you look at the entire article and share your feedback.

What is DevOps?

No alt text provided for this image


DevOps outlines a software development?process and an organizational culture shift that speeds the delivery of higher quality software?by automating and integrating the efforts of development and IT?operations teams – two groups that traditionally practiced separately from each other, or in silos.

The best DevOps processes and cultures extend beyond development and operations to incorporate inputs from all application stakeholders - including platform and infrastructure engineering, security, compliance, governance, risk management, line-of-business, end-users, and customers - into the software?development lifecycle.?

Benefits of DevOps

No alt text provided for this image


No alt text provided for this image




Collaboration

The software methodologies preceding DevOps did recognize the value that Dev, Ops, and QA teams can bring if they coexist.

No alt text provided for this image




Speed

One of the inherent benefits of DevOps is that it accelerates the pace at which your business generally functions.?

No alt text provided for this image




Innovation

For most people, DevOps might only mean doing stuff faster at reduced costs.

No alt text provided for this image




Customer Satisfaction??

Customer satisfaction is one of those things that can make or break your business.

No alt text provided for this image




Agility

The demands of modern-day customers are intense in terms of product complexity and time.

No alt text provided for this image




Quality and Reliability

The quality of your software is important for obvious reasons, and DevOps can help you maximize that quality.

No alt text provided for this image




Security

Another integral benefit that a good DevOps strategy will bring is strengthened security.

No alt text provided for this image




Competitive Advantage

The saying “every business is a software business” is becoming irrefutably true in this age, and the recent boom of software companies corroborates the statement.

No alt text provided for this image




Costs Reduction

Arguably, a solid DevOps strategy’s biggest benefit from a business perspective is maximizing profitability.

How DevOps works: The DevOps lifecycle

No alt text provided for this image

Plan:?Initially plan yourself regarding the type of application you need to develop.?Make the rough picture regarding the development?process

Code:?Code the application as per the client's requirement.?with the plan, you have made in the initial step.

Build:?Build the application by performing the integration of various codes you have done in the previous step.?

Test:?This is the heart of the application. Test the application that you have built so far. And rebuilt the application if necessary.

Releases:?If you succeed in the test phase, then it's time to release the application into Live.?

Deploy:?Deploy the code into a cloud?environment for further usage. It is performed in such a manner any changes?made should not affect the functioning of high traffic website.

Operate:?Operate on the code if any have.

Monitor:?Monitor the performance of the application as per the client's requirement.?Keep a note of the performance of the application.?Make modifications if any to satisfy the clients. And if does not reach up to the mark make changes in that particular area to satisfy the client.

DevOps culture

DevOps is a cultural shift. Full stop. It’s not a matter of simply adopting agile planning or automated testing or continuous delivery, although those practices are certainly important. DevOps culture is all about a shared understanding between developers and operations and sharing responsibility for the software they build. That means increasing transparency, communication, and collaboration across development, IT/operations, and "the business".

No alt text provided for this image






Roles and Responsibilities

Now that development and operations are collaborating closely, it's time to clarify who does what, plus identify any skill gaps. Run this play early in your DevOps journey, as well as any time your team's membership changes.?

No alt text provided for this image







Working Agreements

Whether you're a united DevOps team or a cross-team working group, you'll work better together if you explicitly define how?you'll work together. Run this play to set or refresh your social contract every 6-12 months.?







Pre-mortem

What's better than doing root cause analysis on an incident? Anticipating risks so you can solve for them while there's still time! Run this play in the early phases of a project and before big releases.

No alt text provided for this image







Retrospectives

This classic agile technique is critical for creating a culture of continuous improvement and learning. Retrospectives provide a safe space to discuss what's working, what's not, and what needs to change. Run them regularly.?

DevOps practices

DevOps practices reflect the idea of continuous improvement and automation. Many practices focus on one or more development cycle phases. These practices include:

  • Continuous development:?This practice spans the planning and coding phases of the DevOps lifecycle. Version-control mechanisms might be involved.
  • Continuous testing:?This practice incorporates automated, prescheduled, continued code tests as application code is being written or updated.
  • Continuous Integration(CI):?This practice brings configuration management (CM) tools together with other test and development tools to track how much of the code being developed is ready for production.
  • Continuous Delivery:?This practice automates the delivery of code changes, after testing, to a preproduction or staging environment.
  • Continuous deployment (CD):?Similar to continuous delivery, this practice automates the release of new or changed code into production.
  • Continuous monitoring:?This practice involves ongoing monitoring of both the code in operation and the underlying infrastructure that supports it.
  • Infrastructure as code:?This practice can be used during various DevOps phases to automate the provisioning of infrastructure required for a software release.

Continuous integration and continuous delivery (CI/CD)

No alt text provided for this image

CI and CD stand for continuous integration and continuous delivery/continuous deployment. In very simple terms, CI is a modern software development practice in which incremental code changes are made frequently and reliably. Automated build-and-test steps triggered by CI ensure that code changes being merged into the repository are reliable. The code is then delivered quickly and seamlessly as a part of the CD process. In the software world, the CI/CD pipeline refers to the automation that enables incremental code changes from developers’ desktops to be delivered quickly and reliably to production.

Version Control

No alt text provided for this image

Version control, also known as source control, is the practice of tracking and managing changes to software code. Version control systems are software tools that help software teams manage changes to source code over time. As development environments have accelerated, version control systems help software teams work faster and smarter. They are especially useful for DevOps?teams since they help them to reduce development time and increase successful deployments.

DevOps tools: Building a DevOps toolchain

Teams have many DevOps tools to help them facilitate a DevOps culture in their organization. Most teams rely on several tools, building custom toolchains that fit their needs for each phase in the application lifecycle. While adopting a specific tool or technology is not the same as adopting DevOps, when the DevOps culture is present and the processes are defined, people can implement and streamline DevOps practices if they choose the proper tools.

No alt text provided for this image
No alt text provided for this image



Git?is a free and open-source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

No alt text provided for this image




Bitbucket is a Git-based source code repository hosting service owned by Atlassian. Bitbucket offers both commercial plans and free accounts with an unlimited number of private repositories.

No alt text provided for this image






Jenkins is an open-source automation server. It helps automate the parts of software development related to building, testing, and deploying, facilitating continuous integration and continuous delivery.

No alt text provided for this image






Azure DevOps Server is a Microsoft product that provides version control, reporting, requirements management, project management, automated builds, testing, and release management capabilities.

No alt text provided for this image







JUnit 5 is?the next generation of JUnit. The goal is to create an up-to-date foundation for developer-side testing on the JVM. This includes focusing on Java 8 and above, as well as enabling many different styles of testing. JUnit 5 is the result of JUnit Lambda and its crowdfunding campaign on Indiegogo.

No alt text provided for this image





A cucumber is?a tool based on Behavior Driven Development (BDD) framework?which is used to write acceptance tests for web application.There are many other tools like JBehave which also support BDD framework. Initially Cucumber was implemented in Ruby and then extended to Java framework.

No alt text provided for this image





Docker is a set of the platform as a service products that use OS-level virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries and configuration files they can communicate with each other through well-defined channels.

No alt text provided for this image






Chef in DevOps is an automation tool. It is a Configuration Management (CM) tool that lets you automate processes and tasks across numerous servers and other devices of an organization in simple steps. Such a framework is highly beneficial to a company.?

No alt text provided for this image






Kubernetes is an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.

What is DevSecOps?

No alt text provided for this image

DevSecOps?evolved from DevOps as development teams began to realize that the DevOps model didn’t adequately address security concerns. Instead of retrofitting security into the build, DevSecOps emerged as a way to integrate the management of security earlier on throughout the development process.?Through this method, application security begins at the outset of the build process, instead of at the end of the development pipeline. With this new approach, an engineer of DevSecOps strives to ensure that apps are secure against cyberattacks before being delivered to the user, and are continuously secure during app updates.

DevOps VS DevSecOps

No alt text provided for this image

The goal of DeOps is to Bridge communication gaps between teams by focusing on collaboration, continuous integration, and automation to reduce risk while delivering quality software faster whereas the goal of DevSecOps is to provide a safe and secure way to share security decisions while maintaining the highest level of security, speed, and control.

The Purpose of Devops, Heavily involved in the everyday aspect of the engineering process; the main purpose of DevOps is speed whereas The main purpose of DevSecOps is to provide premium security while also applying faster speed of the process, accessibility, and scalability.


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

Reshma Mantri的更多文章

  • Electronic Voting System Using BlockChain

    Electronic Voting System Using BlockChain

    Hey everyone!!! We are from KL University, Vijayawada. As a part of our Final Year Project, we have conducted a field…