There has been a lot of talk about the integration of software developers and software operators (DevOps) within the tech community lately. By fostering collaboration between the two departments, the aim is to accelerate the development, testing and deployment of reliable software. Despite the attention the concept has received, embracing a DevOps culture is easier said than done. Based on a survey of more than 200 IT decision makers by Pensa, the following is a list of the top five barriers facing DevOps adoption.
Limited budgets were cited as the biggest challenge thwarting DevOps success by 19.7% of respondents. The annual IT budgeting process requires executives to make long-term predictions and effectively allocate company resources. Since DevOps is a relatively recent idea, some companies are waiting to see if it really is a long-term norm rather than a short-lived trend. And while investing in and retraining staff with DevOps tools like Chef Server, Puppet, Ansible and Saltstack isn’t necessary, it certainly makes the transition easier.
Legacy system constraints
The survey found legacy system constraints closely followed limited budgets as a hurdle to adoption at 17.2%. The ability to speed up time-to-market applications demands a more agile infrastructure. However, the legacy systems used by IT departments were created during a time when IT resources were fixed, making them very difficult to update. While many businesses feel hindered by legacy systems, they also have to walk a fine line between championing stable technology versus budding technology.
Application complexity was deemed the third major barrier IT professionals have at 12.8%. Application complexity can make operations more difficult for participants. The complexity of software systems can sometimes surpass control of a company, making applications hard to maintain and enhance. Moreover, software complexity can spill over into applications that have already been delivered.
Managing multiple environments
An estimated 11.3% of respondents cited difficulties attached to managing multiple environment as another challenge. A DevOps work environment leverages a software development practice known as continuous delivery to provide new applications quickly. This is enabled by the continuous delivery pipeline, which breaks down the software delivery process into stages where each stage represents a different environment, including a development environment, a test environment and a staging environment. These environments can create bottlenecks in the deployment pipeline if they are configured differently. As the code moves down the pipeline, software breaks can occur — not because of glitches in the underlying code — but because the environments are configured differently. Consequently, multiple environments have to be managed to provide the agility promised by DevOps.
Last, 9.4% of participants said company culture was a stumbling block for adopting a DevOps work environment. Embracing the work practice requires restructuring business operations. A lack of awareness concerning company culture can flounder the success of DevOps operations. Since DevOps teams automate everything from code testing to infrastructure provisioning, some employees may feel as if their job security is at risk, making them resistant to the idea from the get go.
Despite the hurdles anchored to DevOps, the trend is expected to survive and thrive. Speaking on how companies can address some of the challenges facing a DevOps culture, Pensa’s CEO Tom Joyce told RCR Wireless News: “The survey shows us that customers are no longer just talking about it, they are doing it. So it is important for service providers to communicate in the DevOps terminology, and adapt their offerings to faster development approaches. They also need to learn to go faster themselves, and should consider new tools like Pensa Lab.”