What is DevOps?
DevOps (a clipped compound of “development” and “operations”) is a software engineering practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, more dependable releases, in close alignment with business objectives
DevOps has only recently began to come into focus, sprouting from an idea in Belgium during 2009 onwards. It began as a series of “DevOp” days which aimed to introduce cross-department collaboration as a software development methodology.
DevOps focuses on promoting collaboration, communication and integration between the developers and IT professionals (operations). It aims to help departments produce software in a timely manner while stressing the aforementioned focuses.
Its utilized to manage and aid in software development release management by helping standardize development environments – which is one of the main reasons companies which have a high deployment cycles such as Flickr which has adopted a DevOps approach. DevOps integration targets product delivery, quality testing, feature development and maintenance releases in order to improve reliability and security and faster development and deployment cycles. Many of the ideas (and people) involved in DevOps came from the Enterprise Systems Management and Agile software development movement
The adoption of DevOps is being driven by factors such as:
Use of agile and other development processes and methodologies
Demand for an increased rate of production releases from application and business unit stakeholders
Wide availability of virtualized and cloud infrastructure from internal and external providers
Increased usage of data center automation and configuration management tools