WARNING: This post is geekier in nature.
Digital Transformation Is the profound transformation of business and organizational activities, processes, competencies, and models to fully leverage the changes and opportunities of a mix of digital technologies and their accelerating impact across society in a strategic and prioritized way, with present and future shifts in mind. (i-scoop).
DevOps (a clipped compound of “development” and “operations”) is a software development and delivery process that emphasizes communication and collaboration between product management, software development, and operations professionals. It supports this by automating and monitoring the process of software integration, testing, deployment, and infrastructure changes by establishing a culture and environment where building, testing, and releasing software can happen rapidly, frequently, and more reliably. (Wikipedia)
So why did I start off with some definitions? Because of this article: Why DevOps and cloud are essential to digital transformation. Granted, the author of the article is the CTO of a company that produces automation software, an essential piece of DevOps. But let’s dig deeper and take a look at what he is talking about. John Purrier talks about two challenges:
- Redesign the IT architecture to speed delivery and create operational efficiencies
- Eradicate the slow and cumbersome processes in the organizational fabric
So how does DevOps help? DevOps is critical to that second piece about eradicating slow and cumbersome processes. If you can automate something that people do frequently, do it. Let’s step back 12 years and look at DeCo. The original process was for someone to submit a request and then someone in PSS would track down all of the necessary approvals to make sure that it was authorized. This was a long and cumbersome process that revolved around trying to find the right people to do the approvals and then getting them to respond to an email saying that they approved the request. Add some automation and instead of doing thirty deployments a month we do thirty deployments a day.
Now we have automated deployments where that same process is done, getting approvals, but everything is automated as much as possible. We still do thirty deployments a day, but on same days over 130 automated deployments are also done. We have improved the process. It is no longer slow and it is the least cumbersome as possible. A manual deployment in our system still requires approval from the Configuration Manager and the Deployment Team. We’ve removed those steps and just ask for business approval.
Our system? Kind of the predecessor of DevOps.
So, if project teams can get their work done faster, without the need for my team’s involvement, this leads to a faster rate of change, part of what is needed for digital transformation. So where does the cloud come in? That is required for the rapid provisioning of servers and services. If you can create and destroy servers at will, you can do things like comprehensive end-to-end testing with fresh machine any time you want to do so. You can scale up or scale down quickly and efficiently. No need to have twelve servers when you only need four for 50 weeks of the year. For those other two weeks? Push a few buttons and create some servers. In an automated fashion.
And all of this leads to digital transformation. If you can think of an idea and implement that idea in days, hours even, that gives you more opportunity to try different things, experiment with the world. It gives you more opportunity to change at the pace that you want to change. It gives you the opportunity to shift. Much like how mankind shifted from an agrarian to an industrial society, it is now shifting from an industrial to digital society. Some of that shift has already occurred but some of it hasn’t even been thought of yet. Through the use of DevOps and Cloud technologies, you can position yourself to experience that shift in the terms that you want and in the time frame you want.