Did you just implement an Agile way of working? Well, wake up, because the next hype is already here: DevOps.
DevOps is a combination of Development and Operations. It is a software development method to encourage the communication, collaboration and integration between software developers and operations professionals. The objective of DevOps is to diminish the barriers between software development and IT operations. It covers both continuous integration and continuous delivery.
As a response to reduce time-to-market, we have seen a lot of initiatives to increase efficiency, effectiveness and agility of organizations. Initiatives in various areas such as service-oriented architectures, industrialization, software quality improvement, agile processes and lean, among others.
However, all of these improvements are focused on the speed of development, and most of them are the domain of the project team. All of these are instruments to develop applications predictably, rapidly and to eliminate errors and waste during the development process.
But this is only half of the picture. Time-to-market is measured until the end users (businesses) have the application at their disposal. So, it should be in production! There are many examples that show that the project team delivers the software within the agreed timelines, but the organization still has to wait several weeks or months to use it because the software is not ready for production.
An explanation for this is that development and operations come from two different worlds. If the development process is focused on delivering features against the lowest cost with the quality required, then the operations is focused on a manageable and stable production environment. And sometimes this clashes, like Men are from Mars and Women are from Venus. During the development process, many concerns of different stakeholders are taken into account, but often the concerns of the Operations stakeholder is forgotten. One of the principles of DevOps is to involve operations into the development process and to involve developers into the operations environment.
Combining these different roles and making both parties aware of their service focus and concerns lowers the barrier for dialogue. Developers will get to know the constraints of operations and are able to take into the account these constraints during the development process.
Knitting together these two departments opens up windows of opportunities for delivering the software continuously to the business, getting faster benefits from the product and adding value to the business rapidly.
Atos already uses the DevOps method for some of its services, combined with open source tooling and the likes of Github repositories to increase agility. This enables daily code releases into production systems – enough to give yesterday’s Service Managers endless sleepless nights! But this also breaks down the barriers between the historically separate Development (“Systems Integration”) and Operations (“Managed Services”) organizations – and whilst there can be problems (rapid development can lead to configuration management issues) the pros do seem to outweigh the cons in the right circumstances and for the right services. This DevOps method goes hand-in-hand with new dynamic infrastructures with automated provisioning for scalability – another transformation that we are seeing in the industry at the moment.