If automation is increasingly important in the digital workplace, one of the principle enablers of automation is DevOps. DevOps is everywhere, and has been for a long time, but in terms of automation it makes software and app delivery a lot quicker, enabling enterprises that have developed it to push it to market sooner and making it more reliable for the end user.
Amazon Web Services describes DevOps, or to be more accurate the DevOps model, as a combination of cultural philosophies, practices and tools that increases an organization's ability to deliver applications and services at high velocity. It also enables developers to evolve and improve products at a faster pace than organizations using traditional software development and infrastructure management processes.
So, what exact role does it have in the workplace? First and foremost, DevOps continuous delivery and consistent cadence of software releases have a major role to play in the operations strategies of the IT organization, Pushpraj Kumar, business analyst at India-based iFour Technolab, told us. It can make automation of operations such as development, testing, production infrastructure, configuring networks at the digital workplace. DevOps supports digital infrastructure, it can manage the application running on it and can maintain the transitions, upgrades as well.
“DevOps accelerate digital services, continuous improvement, operational flexibility, and could provide innovative and cost-effective ways for delivering high-value automation development and operations,” he said.
From this is would seem that artificial intelligence (AI) and machine learning (ML)are next in the pipe for DevOps. However, Michael ‘Fritz’ Fritzius of St. Louis-based Arch DevOps pointed out that many companies still have not figured out how to do regular DevOps properly, which makes it difficult for AI or ML.
CTOs, CIOs and VPs all over the world continue to struggle with making quick decisions when deadlines loom. “More often than not, those decisions are rooted in fear, which causes people to guess wrong about the problems needing to be solved, and it creates a mess,” he said.
DevOps, though, has been around for a long time even if it has not been named as such. Even still, very few companies understand DevOps well enough to execute it properly. AI and ML are new concepts that are available to the public, but even they are so cutting edge that the vast majorities will not know how to implement it properly. It is likely to be years or maybe decades until companies can do either right.
“Long story short: I don't think we need to be thinking about how to use AI and ML in the day-to-day until it matures enough to be extremely easy to use,” he said.
The Culture Of DevOps
Rick Stewart is chief software technologist at Herndon, Va.-based DLT Solutions. He points out that DevOps is not just about development, but about a cultural movement focusing on a shared understanding between developers and operations and sharing responsibility for the software/services they build.
When done properly, digital workplaces employing DevOps practices display an increase in transparency, communication, and collaboration across development, IT/operations, and all stakeholders within a workplace.
A common attitude in an organization with a mature DevOps mindset is continuous improvement, which constantly looks for efficiencies in all aspects of the workflow that produces services that are highly available, secure, resilient, and flexible for changing needs on a frequent basis.
Software development and deployment, he said, is a highly repetitive process and the removal of manual processes is imperative so that most important features and capabilities can be deployed in small increments on a frequent basis to serve end user's needs in a timely manner.
Manual activities are prone to human error and most likely cause bottlenecks when trying to deliver services to the workforce especially in testing. Automation is also critical when it comes to infrastructure to allow a workforce resources to expand and contract based on usage brings cost efficiencies to the organization.
There is a reason why DevOps is expressed as an infinite loop as those activities executed repeatedly providing feedback to the teams exposing any inefficiencies that can be addressed in a subsequent iteration.
“Finally, a characteristic of a DevOps culture is joy. It may seem trite, but an effective DevOps practice addresses the most important feature/capability at every iteration or deployment,” he said.
“End users expect their services to always be available when they need them and are easily frustrated when their experience is not seamless. By increasing the ability to deliver important features fast on resilient infrastructure, DevOps addresses all stakeholders’ primary needs which leads to happiness in the workplace,” he said.
DevOps is critical to speed new code and services into production with minimal risk. However, how quickly new services can be brought to market are dependent upon how isolated they are from other services and how fast they can move through the DevOps process, Eva Tuczai, advanced solutions product management and engagement manager of Boston-based Turbonomic, said.
The goal is to bring services to market quickly by breaking apps into small discrete parts that can be independently changed and using automation to move through the process quickly and efficiently. DevOps is a combination of scale (many independent parts) and speed (automated process that minimizes or eliminates human overhead).
“The automation wave has overtaken IT departments everywhere, she said “making DevOps a critical piece of infrastructure technology. What is next for DevOps? We need to look no further than artificial intelligence and machine learning,” she said. Now she sees specialization in two areas:
- TenantOps: Helps application teams onboard and best leverage the platforms and pipeline. These specialists provide operational support to app teams on how to maintain performance within the platform and efficiently use the DevOps process.
- ResourceOps: Helps ensure application performance and end user experience by making sure the IT resources meet the application requirements while being efficient. Applications are often significantly overprovisioned to minimize the potential for performance issues.
What Next for DevOps?
Automation, AI/ML, and other advances are going to enable DevOps to scale in large enterprises and therefore to have the kind of impact that DevOps promises in terms of rapid innovation, differentiating new capabilities, and technology teams meeting and exceeding the needs of the business. This will result in an acceleration of digital transformation for those larger organizations and for the customers they serve according to Richard Hawes, director of product marketing for DevOps at Santa Clara, Calif-based ServiceNow.
He said that while DevOps is transforming the efficiency of the way products are delivered, there is still more in the DevOps space itself that can be automated. While individual teams can become agile and iterate rapidly, the pace of innovation slows down when those teams must participate in the broader business processes and culture.
The larger the organization, the more regulation they are subjected to, and the more risk averse they must be. Automation of corporate requirements, such as production release stage gates (e.g. activities traditionally associated with ITIL management techniques), will result in DevOps delivering at its full potential.
“Compliance remains a challenge in any real-world development environment and growth of continuous compliance capabilities, such leveraging corporate Integrated Risk Management approaches, will also contribute to the success of DevOps initiatives,” he said."
Companies are starting to standardize on DevOps toolchains, but a vast variety of tools remain in use even within individual organizations. Standardization on DevOps platforms will continue but, thanks to the rate of change and experimentation, for some time there will be a need for cross-tool DevOps management platforms (i.e. along the lines of Value Stream Management).
“DevOps brings the business closer to the technologists that are delivering the solutions by focusing work into teams that own a business product or are directly aligned with a value stream,” he added.