DevOps is fast gaining traction in the IT sphere. The term refers to the breaking down of silos between the development and operations teams in IT departments.
A DevOps engineer can be from either department, although he or she will wear two hats. In a typical DevOps cycle, a developer will write code, build and deploy binaries on a QA/Test system, then execute tests and verify functionality. The developer will then deploy the application through the production system. Ideally, this will be a smooth flow and allow for immediate rollback. This cycle is automated, using tools from Continuous Integration and some form of a virtualized environment that mirrors the live production system. Joachim Bauernberger, managing director, Valbonne Consulting, believes that DevOps has an important role to play in industries that design hardware. He shared his thoughts on how to integrate DevOps into these industries’ development and operations.
Bauernberger explained that in industries in which the product is hardware, such as the automotive space, Agile development principles reign. DevOps is an extension of the Agile method. The consultant explained that Agile is limited to the development and test/QA phase. It involves constant software changes, which can cause friction with the operations portion of the IT department. Bauernberger noted that operations staff has a more conservative outlook, and are concerned that such changes can lead to the risk of system failures.
The reign of Agile in these industries means that software is not “shipped” to a web server. Rather, the downstream integration department loads the software onto the target hardware, or a sub-component of the hardware which requires further integration. This process is not automated, and creates “walled gardens” in which information is maintained in silos and not shared with other departments. Bauernberger added that organizational hierarchy and the compartmentalization of teams and processes do not help matters. Such compartmentalization prevents the embrace of DevOps, Bauernberger asserted.
He recommended further automation using technologies and APIs to deploy software packages continuously and with fast feedback cycles to all stakeholders. Different tools should be consolidated to unify the deployment process wherever possible and to reduce API complexity and cost of automation. Bauernberger also advocated building the knowledge base of how the delivery chain works from end to end, not just from one link to the next.
Part of the shift towards DevOps does not involve technology. Bauernberger advised the tighter integration of team members from different departments and cross-functional activities where people from development work a certain number of days per week as part of the integration team and vice versa in order to facilitate the transformation. The consultant went on to say that there must be awareness amongst managers that the political attitude must change to foster inter-departmental cooperation. Managers should also provide a clear path and incentives for stakeholders willing to cross departmental boundaries. Consolidating management teams is another way to break down silos.
“The benefit of DevOps is to become not only Agile within the development department but to extend this agility into the integration and test-departments,” Bauernberger remarked. “This leads to quicker feedback to developers about faults and speeds up the time of correction. DevOps brings the developer closer to the actual products and lets them identify what they're actually building.” There are other advantages to using DevOps in hardware-producing industries. “Since time to market is everything when competing against others it also reduces complexity of internal processes and frees up resources which in turn reduces OPEX,” Bauernberger said. “All points lead to more efficiency and speed but also reduce the number of faults in the product, allowing the company to operate faster and also with less cost than the competition.”