In 2008, after facing problems between development and operation teams during software development for years, Patrick Debois and Andrew Shafer coincidentally got together to work on something which would come to be known as DevOps in 2009.The problem DevOps solves is so widely spread that the first Velocity Conference in Belgium called DevOpsDays saw an interesting and impressive mix of developers, system administrators and toolsmiths amongst others.
DevOps focuses on collaboration, communication and their convergence between development and operation teams. It applies the lean principles to the IT value stream by accelerating the flow of work through product management, development, test and operations. This ultimately results in smoother operations, better run development teams, and happy customers.
Other than growth in technology areas, DevOps has also benefited from convergence of philosophical management movements, such as Lean Startup, Innovation Culture, Toyota Kata, Rugged Computing, and the Velocity community. All of these mutually reinforce each other, creating the conditions of a powerful coalition of forces that can accelerate its adoption.
DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity
evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes.
This speed enables organizations to better serve their customers and compete more effectively in the market.
The Three Way Principle
Break down the systems into small tasks. Make a process repeatable and safe for delivery, accounting for all tasks and dependencies. The process is broken down into work which can be done in small intervals, and they are constantly optimized for global goals of the organization.
Feedback must be both ways, from left to right and from right to left. The idea must be to address and recover from problems faster. This will prevent same problems from happening again. Newer problems will occur, but be prepared to resolve all problems with continuous feedback loops.
Try old and new ideas to improve the process. In other words, it is repetition to find a better way towards improvement. This is innovative and risk taking at the same time, but results in a best-in-industry delivery processes. The best always finds a way to get better!
Why Do DevOps ?
Any business is an IT business, regardless of the business they think they are in. IT is business enabler and needs importance, autonomy and resources. You remove any one of these, and IT becomes a business burden. DevOps move development and operations together. As a result, it is precisely known what work needs to be done, how many resources are available to complete the work and constraints are minimized. It is very important to minimize constraints as constraints multiply delays.
Work is broken down into small tasks. Tasks are very well defined as either business tasks, IT tasks, maintenance tasks or Unplanned tasks. The earlier the feedback, the better it gets. Most likely we will prevent same mistakes, but will make new ones and solve those.
In nutshell, Higher Software Delivery Performance == Powerful Business Outcomes!
Developers regularly merge their code changes into a central repository, after which automated builds and tests are runThe key goals of continuous integration are to find and address bugs quicker, improve software quality
Code changes are automatically built, tested, and prepared for a release to productiondeployment-ready build artifact that has passed through a standardized test process
Developers and system administrators use code to automate operating system and host configuration, operational tasks, and more
Policy As Code
Organizations can monitor and enforce compliance dynamically and at scale. Infrastructure that is described by code can thus be tracked, validated, and reconfigured in an automated way
Communication And Collaboration
The use of DevOps tooling and automation of the software delivery process establishes collaboration by physically bringing together the workflows and responsibilities of development and operations
Some of the highest success achievers attribute their success to frequent code deployments, lead time from commit to deploy, time to recover from incidents and lower failure rates
Strong performers still have more availability times and able to optimize for throughput and stability.
To summarize, there's nearly $ 3 trillion wasted in IT projects on an annual basis. The plan is to minimize this wastage for prosperity. DevOps is one way to get there!