We live in an application-first world. And the closer you can get to continuous integration (AKA continuous improvement) the better.
Your IT department’s new job is to accelerate the application lifecycle.
Traditionally, infrastructure deployment and application updates both slowed the cycle down.
But now the cloud is upturning the whole process.
Prototyping, development, testing, QA, continuous integration, staging, deployment, post-production, monitoring, management.
All this can now be done in the cloud.
Even better, computing resources can be summoned in minutes. And as the complexity of IT environments increases, highly-automated operations tools that require minimal configuration are being employed.
These trends are increasing agility and reducing risk.
The future of application development now takes on a new guise. Imagine a web-based environment in which developers can streamline the whole development process at the click of a button. All the tools and infrastructure they require are readily available.
Through the cloud, tweaks to development and deployment can now be completed rapidly, near-constantly, and from practically anywhere.
Organisation, not infrastructure
But solve one problem, and you create another.
With near-continuous development and deployment phases, the stages of development and operations are increasingly converging. Both are moving away from slow predictability, and towards experimentation, speed and agility.
They also increasingly need to work together because cloud infrastructure need not be configured manually – scripts can be written that do this automatically.
The cloud can be coded.
This means that system and network architecture can advance in lockstep with application architecture. Both development and operations work on the whole system, together.
The problem is ensuring that your teams work together effectively in this increasingly fast-paced and unpredictable environment.
With cloud infrastructure available on demand, where your IT team now differentiates your business from the competition is by focusing on efficient collaboration across all phases of the application lifecycle.
This makes it more important than ever to ensure the best possible cooperation between development and operations.
There is a word for this: DevOps.
Cloud is at the heart of DevOps
DevOps is a portmanteau of ‘development’ and ‘operations’.
As I said in a previous blog, there are hundreds of different definitions of DevOps available.
But the main thing that needs to be understood is that the vision that underpins it is one of a streamlined, integrated organisation that facilitates an accelerated application lifecycle.
Continuous everything is the goal.
And cloud is at the heart of this process. Some of DevOps’ key principles – automated testing, continuous delivery and integration – are scarcely possible without it. And it is comparatively easy to continuously update cloud applications and infrastructure.
Both enable agility and experimentation, whilst shifting the conversation internally away from questions about how to react to problems, and towards proactive collaboration around how IT can add value and functionality.
If cloud is the playing field, DevOps is how the players work together as a team to win. They are mutually supportive strategies for adding value through your IT department.