Skip to main content

DevOps


DevOps is the blending of the terms development and operations, meant to represent a collaborative or shared approach to the tasks performed by a company's application development and IT operations teams. DevOps is an operational philosophy that promotes better communication between these teams and others. It describes the adoption of automation and programmable software development and infrastructure deployment and maintenance. 

While DevOps is not a technology, there are tools commonly used in DevOps environments. These include continuous integration and continuous delivery or continuous deployment tools, with an emphasis on task automation. Other products to support DevOps include real-time monitoring and incident response systems as well as collaboration platforms.

DevOps vs. Waterfall development

In Waterfall development, developers test new code in an isolated environment for quality assurance (QA) and if requirements are met release the code to operations for use in production, usually in a bundle with other releases so that operations can tightly control the process. The operations team deploys the program and maintains it from that point on. Waterfall approaches usually engender a long time between software releases and because developer and operations teams work separately and the development team is not always aware of operational roadblocks that might prevent code from working as anticipated.

The DevOps approach seeks to meld application development and deployment into a more streamlined process that aligns development, QA and IT operations team efforts with fewer gates and more continuous flow. This approach also shifts some of the operations team's responsibilities onto the development team to facilitate continuous development, continuous integration, continuous delivery, and continuous monitoring processes. It is a way to tear down the metaphorical silos that isolate steps in the software delivery process to release code faster and more often.

DevOps and Agile development

Agile is a software development approach focused on incremental and rapid cycles of code creation and delivery referred to as sprints. Each sprint iterates upon the last, creating a high level of flexibility, as changes and scope and direction can be evaluated between each cycle. However, it is possible for the original vision of a project to be lost through this cycle.

DevOps arose from the success in the speed of development in Agile when it became clear that there is a lack of communication between development and operations teams that put a significant hindrance on speed and flexibility of code delivery to users.

As Agile development became more efficient, it became clear having development and operations work apart from each other was inefficient. Before DevOps, development, and operations teams worked in a way where those who wrote the code had separate objectives and leadership from those who deployed and supported the code. With DevOps and Agile, communication between development and operations ensures code can be managed by both teams fluently without miscommunications or confusion. DevOps does not have an official framework, nor does it consider speed as a core focus. Agile relies on the Agile manifesto and often is formalized with a framework, such as Scrum.

DevOps benefits and drawbacks

DevOps benefits include the following:


Increased communications between development and operations leading to fewer silos; coverage for the whole software delivery pipeline; a focus on automation within the delivery pipeline;streamlined development processes by making development teams aware of possible issues that may appear in operation stages; and broad roles in DevOps environments, allowing many IT generalists to find positions in DevOps teams.

DevOps tools

Although marketers have jumped on the DevOps bandwagon, there is really no such thing as a DevOps product. There is software that helps the development and operations team work together more efficiently and respond to changing requirements more flexible. Automation is a common focus in DevOps, ranging from container orchestrators to monitoring software, and commonly found throughout continuous integration and delivery (CI/CD) pipelines. New types of software tools have sprung up to help organizations automate development, testing, and deployment to create a more streamlined development and release pipeline.

Comments

Popular posts from this blog

Linux Story

Linus Torvalds History Linux was created by Linus Torvalds in the early 1990's he was inspired from Minix (A Unix like free operating system) which was created by Andrew Stuart Tanenbaum , Torvald's professor at University of Helsinki. Linus created Linux as a hobby project but it, later on, becomes one of the best Operating System and it is still growing. Kernel Linux kernel is the core of Linux operating system ( The kernel is a computer program that is the core of a computer's operating system, with complete control over everything in the system ) and it is based on UNIX. Linus designed Linux for his personal computer later on expanded to support a huge array of a computer. Linus Torvalds was heavily influenced by the GNU project in which his first kernel was released under the GPL-General Public Licence ( GPL, the source code remain freely available to anyone who might want it ). Distributions ( based on Linux academy.com ) Linux has many distrib

BIG DATA

Big Data describes the large volume of data. Both structured and unstructured, that cannot be managed in the day- to- day basis. It is not the data that is important. It is what the organizations do with the data matters. Big Data can be analyzed for insights that lead to a better decision and strategic business moves. An industrial analyst Doung Lancy explains Big Data as 3 V s Volume : Organizations collect data from a variety of sources, including business transactions and social media and information from a sensor or machine-to-machine data. In past storing, such large data was a problem but new technology like Hadoop have eased the burden Velocity : Data streams in at an unprecedented speed and must be dealt with in a timely manner. RFID tags, sensors, and smart metering are driving need to deal with torrents of data in near-real time. Variety :  Data comes in all type of formats, from structured, numeric in the traditional database to unstructured. text documents, em

Internet of Things (IoT)

Have you ever think of a world in which the devices around you are talking to you and between devices..! Imagine your music player turns on your favourite music based on your present mood or when you walk to the refrigerator it tells you what you can make with the stuff you already have in the refrigerator. Is this possible ?. These are possible with the help of IoT or Internet of Things . IoT applications are beyond our imagination. IoT or Internet of Things is a concept which comes to reality which describes the idea of interconnecting our everyday physical objects to the internet. How do this work? Sophisticated sensors ( a small chip that senses the surrounding activities ) and the actuators ( another small chip that responds to sensed activity ) are embedded inside the physical device around us collecting and transmitting valuable data. The devices can be your music system, Air Conditioner, Mobile phone etc which are securely communicating through an internet of t