What Is DevOps?!
Basic Overview on DevOps Concepts

What Is DevOps?!

Concept of DevOps

Project and Project management is a common phrase in every industry. Project means a carefully planned set of activities which are executed to achieve a particular goal. It may be house construction, Designing a new vehicle model, Developing a new product or software system etc.

Project management is simply the practice of initiating, analyzing, executing, managing, and finishing the work of a team to achieve a set of goals and meet specific success criteria within a defined time. The primary goal of project management is to cover all of the project goals within the given set of constraints. The constraints may be the number of limited resources, lack of financial support, Weather situations etc..

In IT related projects, project management methodology plays a pivotal role in success of a project. Like any other methodology, DevOps is also adopted by the organisations according to the nature of the project. There are several methodologies like Scrum, Kanban, Waterfall model, Agile etc..

Waterfall Methodology:

In Waterfall methodology, project activities are divided into linear sequential phases, where each phase depends on the deliverable of the previous one and corresponds to a specialization of tasks.

Breaks of Project Stages

As the name ‘Waterfall’ indicates, The fallen outfits cannot be re-entered to the previous stage. Which is the major disadvantage of this model.

Waterfall Structured Project Management Methodology:

Waterfall Structured Project Management Methodology

Why is the Waterfall Model not so popular nowadays?

Simply because of..

1. High risk and uncertainty.

2. High risk of Backtracking or iteration, It costs huge when compared to others.

3. No working system/product is produced until the completion of the final stage.

4. Decisions set should be defined before the development of the project.

5. Technology may vary as it takes a long time to implement.

6. High risk on long running projects.

7. Cannot apply for short market projects.

8. Down time may be high for fixings.

9. It does not allow revision or revision can possess high risk in terms of project cost and resource time-sheets.

Agile Methodology:

In this strategy, each stage of projects is broken into ‘several iterations’ and all iterations are of the same duration. It uses incremental, iterative work sequences that are generally called as Sprints.

At the end of each iteration of particular operations, a product or a software system is delivered. The below image (Image Courtesy: Ouriken) is describing its difference with waterfall methodology.

Waterfall vs Agile

What is the demerit then?

The development and testing will happen continuously. But the deployment stage would face issues which are out of the agile cycle. The development team always needs Agility but the Operation team needs Stability. In this trade-off, the deliverable might face some practical issues.

The development team always needs ‘Agility’ but the Operation team needs ‘Stability’.


What is DevOps?

DevOps is not a pure tool nor a technique. It is more like a cultural change. DevOps is the combination of practices, cultural philosophies and set of tools that catalyzes an organization’s ability to deliver applications and related services at high velocity. Through the methodology, development and operational life cycle of a system or product will go to the market at a faster pace than organizations using traditional software development and infrastructure management processes.

In other words, DevOps can be considered as a couple of key practices which includes continuous integration (CI) and continuous delivery (CD) as its corner stones . It couples a set of processes and methods to be adopted throughout the entire delivery pipeline and spans multiple stakeholders.

The practice of Development & Operations Engineers participating together in the entire software life cycle from the designs to the development process to production server support.

IMG: Infinite Loop Concept Of Devops with Continuous Development & Deployment:

Infinite Loop Concept Of Devops with Continuous Development & Deployment

The major advantages of DevOps are:

>> High level of efficiency & Team Collaboration.

>> Faster delivery of features & Higher customer satisfaction..

>> Early detection and correction of blocking.

>> Less chance of project failure.

>> Maximum utilization of resources & Less productivity cost.

>> More time to investigate.

>> Professional/Technical developments.

>> Improved flexibility and support.

The Devops methodology is achieved by the various tools in various sectors to ensure continuity in every stage. So, a DevOps engineer should know the role play of each tool in a software product life cycle. Devops Tools are purely based on the product or system which is to be developed. For an engineer, There are plenty of alternative tools available in each stage of development and operation. DevOps engineers will choose them in such a way that the maximum output with least amount of time without compromising on the quality.

IMG: Devops with its Tool Sets for Stages:

No alt text provided for this image

DevOps Stages :

The workflow of DevOps is in such a way that the agility and automation of the project is guaranteed all the time. The phases of DevOps tied together in a circular loop of development & Operation. Each of the stages are correlated and automated with the DevOps tools and it ensures the continuous dispatches of deliverables during the product life cycle. The stage diagram of DevOps is as follows:

DevOps Stages


DevOps Flow Diagram:

DevOps Flow Diagram

DevOps Tool Sets:

DevOps Tool Sets:

Developers commit the codes through Git or any other version controllers to the source code repository. The Junkin server set has open eyes there in the repository and it will catch the changes withing a regular interval. The Junkin server will create a new build based on the developer’s commits. The Junkin also has toolsets to notify the corresponding programmers with logs if the build becomes fails. If everything seems perfect, Junkins will deploy it into the test server and will do the proper testings. The same procedure will repeat as a cyclic process and ensure the automation on the development level. See the tool sets examples used in a DevOps system.

Base Principles of DevOps:

There are five basic principles which are essential when adopting for DevOps.

1. Customer-Focused Actions.

2. End-To-End Responsibility: Team must provide the bottom level support to the product for higher quality measurements.

3. Continuous Improvement: Maximum utilization of resources will reduce the costs and continuous deliveries will catalyses the production cycle.

4. Automation & Unity: Automation is a heart of DevOps concept not only on the basis of technical aspects but even in a meeting of the project.

5. Monitor & Testings: DevOps teams should have the tools for robust monitoring and testing engines.

Conclusion:

The ‘DevOps’ idea began in 2008 with a discussion between a French independent IT consultant Patrick Debois and Andrew concerning the concept of agile infrastructure. However, the idea became popular only in 2009 with the advent of the first DevOpsDays event that was held in Belgium. So that , Patrick Debois is called ‘Godfather of DevOps’. And, It is widely spread to modern project methodology within a short span. Even though it is a set of processes and practices, DevOps Engineers connect various tools and elements of coding along with library packages , software development kits and various components of integrations.

I believe the article covered some basic aspects of the DevOps and its terms. But As I mentioned earlier, the tools and related studies regarding Devops is wider than this.

Thanks & Regards

Nilmar Shereef

To view or add a comment, sign in

More articles by Shereef PT

  • How To Secure Your Google Account?

    We are living in a time, having a google account is inevitable. Using google account credentials, we logon to systems…

    2 Comments
  • LOT & Serial Number.? How it is managed in business and ERP System

    Almost all of the manufacturing product is mandatory to have an LOT/Serial number associated with it. Which is used to…

  • What is SaaS, IaaS, PaaS & Cloud Computing ?

    Cloud computing ! One of the widely used terms in this century. I think at least on some stage even a non-technical…

    2 Comments
  • How to Set Tax & Tax Incl/Excl prices in Odoo ERP

    As all of us know, Tax is an important terms in business world. That is nothing but a compulsory contribution to state…

  • How to Import Data& Product Stock in Odoo ERP

    Data is a primitive term of every ERP or business software. Odoo ERP is a well known ERP application in the world.

    1 Comment
  • Point of Sale: For Cafe/Restaurant Business

    Before the onset of a coffee shop/cafeteria/bar business, we have to be prepared with some essential infrastructure…

    2 Comments
  • Processes In Linux/Unix

    Majority of the IT people are very familiar with “Process” but may not be in its depth. Process and its terms are well…

  • Vehicle Service ERP In Odoo

    Auto Car Service is one of the emerging industry in the business world. The key factor pertaining to every…

    3 Comments
  • MVC Architecture & MVC in Odoo ERP

    Every programmer or an IT guy should have heard this term often, at least once in a month. A lot of techies are…

    4 Comments
  • What is the Difference Between 127_0_0_1 and 0_0_0_0?

    We developers are very familiar with these two addresses even we are working on different platforms. Let's see what…

    2 Comments

Others also viewed

Explore content categories