The feud between developers and IT operations teams is likely to come to head with the launch this week of a new framework that gives developers a lot more control over how and when applications are deployed.
Ever since the advent of agile development methodologies and the rise of virtual machines, IT operations teams have been under the gun to keep pace with the number of new applications and updates that are being released with increased fury and frequency.
Now Electric Cloud, a provider of application deployment tools, is releasing ElectricDeploy, a framework that not only automates the deployment process, it allows developers to roll back an application to its last known working state in the event of a problem. According to Electric Cloud CTO Anders Wallgren, that not only gives developers more control over the IT environment, it allows developers an ability to recover from problems and issues in a way that has a minimal impact on the business.
That’s critical, explains Wallgren, because up until now IT operations teams have not been able to effectively support the need for an IT infrastructure environment that is both flexible and dynamic enough to support agile application development. Applications developed using agile methodologies are not necessarily more error-prone than others. But because iterative updates now arrive at a mind-boggling rate, the number of opportunities to have an error in an application increases exponentially, says Wallgren.
In fact, a new survey of more than 730 applications development and operations professionals conducted by Electric Cloud indicates that 75 percent of application deployments are done manually or with little automation. At the same time, 70 percent of respondents stated that their deployments take more than one day, while 50 percent admitted missing release dates due to complexity and lack of coordination between their development and operations teams.
ElectricDeploy overcomes many of the problems these issues create, says Wallgren, by allowing developers to first model and test how their application will behave in a production environment, and then roll back if there are any unexpected issues.
Businesses today want to be able to roll out application updates with greater frequency, but existing IT operations processes are increasingly being seen as a bottleneck in achieving that goal. As a result, companies that specialize in “DevOps” technologies have been steadily introducing higher levels of abstraction and automation to give developers more control of IT infrastructure.
Obviously, automation of the application deployment process provides an opportunity to increase and reduce tensions between developers and the IT operations team. On the one hand, IT operations teams may resent the implied loss of control. On the other hand, many of them may come to appreciate not having to manually manage application rollouts that generally tend to be error-prone.
In either case, the business just wants everyone involved to get out of each other’s way in order to derive business value as quickly as possible from new and existing applications that increasingly are becoming the lifeblood of the business. Anything that prolongs that process is ultimately going to be seen as an obstruction that needs to be reduced, if not outright eliminated, no matter how good the intentions of the IT operations team might actually be.