Devops is the buzz word on everyone’s lips in the software industry and should be the goal of all IT organisations; but what actually is it?
Devops is a set of automated software practices that combine development (Dev) and IT operations (Ops) – see what they did there?
Its aim is to shorten the development life cycle of resilient systems whilst providing continuous and scalable features, fixes and updates with superb software in line with a business’ stated goals.
Or… In plain English it’s a set of practises for delivering the highest possible standard of IT support that reduces the time between committing to a change for a system and that change being implemented.
At its heart Devops is a union of roles, processes and products that enable the continuous delivery of high-quality software solutions.
In times past Development and IT Operation teams tended to be siloed away from each other in an organisation and rarely the twain meet with the ‘Dev’ team being considered the ‘makers’ and the ‘Ops’ team being the people involved after its implementation. But by combining the two into a multidisciplinary approach it meant the various individuals and teams involved in a project could work much more closely and efficiently.
Some of the practises that are essential to Devops can be broken down as:
Still with us?
Getting a bit more technical on the Devops definition now; because Devops is a system of working that pulls from different disciplines, those who employ it often need to use different sets of tools rather than a single one.
These are often referred to as Toolchains.
These toolchains will generally fit into one or more activities which support specific Devops functions. Those functions are:
Or to summarise; Devops can be best characterised by Dev staff and IT Ops staff making use of the same techniques for the diffrent systems they both work in.
Software development should be measured in terms of throughput and stability. Throughput being measured by deployment frequency and stability being measured by the mean time to recover should something go wrong.
It doesn’t take a business genius then to see how improving those two measures are good for a business bottom line profits and that goal completely synergises with the goals of Devops.
Which are:
Deploying Devops within your company makes process a lot more dynamic which then maximises the predictability, efficiency, security and stability of them.
Companies that have used a Devops approach to their software development all report significant benefits including shorter times to market for their product, improved customer satisfaction and customer retention, better quality products with much more reliable releases resulting in increased reputational awareness within their sectors, improved productivity and efficiency and the ability to build the right product by increased experimentation times.
OK…
So by now you should have a good understanding of what Devops is and the benefits it can bring to your organisation. You’re fully enthused about the entire concept… But how do you even begin to implement a culture of Devops into an existing corporate culture?
Devops can’t work without critical cultural changes; Operations, Developers and Testers need to change the way they work to become much more collaborative during the entire development and delivery process. Getting those groups to work cohesively is key.
Something cloudThing understands well is that Devops is much more about the culture than the toolchains used. It’s not a process; it’s a way of life.
Team building is a must. Every person involved in the process needs to understand on a basic level that things such as data flow, collaboration, shared responsibility for project success, being able to learn and move on from failures are vital to the success of a Devops culture.
DevOps at cloudThing means looking after our customer’s estates
In need of the cloudThing DevOps team? Get in touch today to see how we can help...