Is DevOps about the delivery pipeline, or is collaboration the key? The answer often depends on the companies that make a commitment to it.
In one corner, we have CloudBees, which provides an enterprise-grade application of the open-source Jenkins project, a continuous integration tool written in Java, represented by its CEO, Sacha Labourey. In the other corner, there is Perfecto Mobile, a provider of remote access and automated testing solutions for mobile devices, and its founder and CTO Yoram Mizrachi. Both executives answered my questions via email about Continuous Delivery (CloudBees) and Continuous Quality (Perfecto Mobile), the benefits of DevOps to their customers, and customers' feedback.
What each company has to say about DevOps is very interesting. CloudBees has had a commitment to it from its very beginning, while Perfecto Mobile completed its transition to DevOps 12 months ago. Labourey prefers a "generic" definition of the term, while Mizrachi articulated a definition more specific to his company.
Labourey of CloudBees: DevOps is a set of practices and tools that help build an integrated software delivery pipeline, typically automated, from development to production, in order to increase software delivery velocity and reduce friction between teams.
Mizrachi of Perfecto Mobile: To me, DevOps means collaboration that facilitates the ability to release at any given moment. How do we do it? Continuous Quality, a methodology for embedding quality activities into every step of the SDLC (software development life cycle) process.
The following is an abridged and lightly edited version of our Q&A. For readers who are Tech Pro Research subscribers, read my "double case study" study with CloudBees and Perfecto Mobile.
TechRepublic: When and why did your company make a commitment to supporting DevOps?
Labourey of CloudBees: When we started CloudBees back in 2010, our vision was to make it fast and trivial for companies to create business differentiation through software. We provided a fully-integrated, end-to-end cloud offering. This fully automated environment was really implementing DevOps best practices and offering those in a simplified fashion to developers and IT. In 2014, we decided to put our entire focus on Jenkins (vs. the full application lifecycle). Interestingly, this increased focus has expanded the type of use cases we now support. Instead of only supporting our own PaaS, we are now supporting many different use cases, in the public cloud or on-premise, from Docker-based deployments to legacy stacks.
Mizrachi of Perfecto Mobile: About twelve months ago we completed the transition to DevOps. The market compelled us to shift our focus to DevOps as the expectations of the speed of responsiveness increased -- new device releases, OS updates, and bug fixes happen on an almost daily basis, and we needed to be able to support these changes as quickly as they were being developed and released.
TechRepublic: What does DevOps mean to your enterprise? In other words, how do you define it, and how do you practice it?
Labourey of CloudBees: Because there is never a one-size-fits-all, I like generic definitions to DevOps. DevOps is a set of practices and tools that help build an integrated software delivery pipeline, typically automated, from development to production, in order to increase software delivery velocity and reduce friction between teams.
Mizrachi of Perfecto Mobile: To me, DevOps means collaboration that facilitates the ability to release at any given moment. How do we do it? Continuous Quality, a methodology for embedding quality activities into every step of the SDLC process -- from design through build to production -- all based on supporting processes, tools, and testing lab infrastructure that is customized to support an organization's specific requirements.
A successful Continuous Quality process optimizes time to market, drives faster and more frequent releases, and enables minimizing escaped defects to production by managing risk in an automated way as early as possible. How do you do that? Ensure quality throughout the SDLC with an extremely high percentage of testing automation (at least 95 percent recommended). To do this, you must have a stable testing environment that allows for automation. To do this, we moved all of our data to cloud servers, eliminating the server room that we used to have in-house. This was a hard move to undertake, but after its completion we had incredible improvements in every department from IT to R&D.
TechRepublic to CloudBees: Please define Continuous Delivery.
Labourey: Continuous Delivery (CD) is a practice defining how a company, business unit, or team will deliver business value through IT in a fast and iterative fashion. CD covers the entire lifecycle, from defining the business requirement to its implementation and delivery to production, its metering, as well as the feedback loop that brings back key metrics to the business, which aims at help refining future iterations. It is important to note that CD covers more than the IT development and deployment steps, it is an overall business practice embedding IT. CD shares many concepts with DevOps and, as such, they typically happen together. But it is important to know that one doesn't necessarily require the other and vice versa.
TechRepublic to Perfecto Mobile: Please define Continuous Quality.
Mizrachi: Continuous Quality is a methodology for embedding quality activities into every step of the SDLC process -- from design through build to production -- all based on supporting processes, tools, and testing lab infrastructure that is customized to support an organization's specific requirements. A successful Continuous Quality process optimizes time to market, drives faster and more frequent releases, and enables minimizing escaped defects to production by managing risk in an automated way as early as possible. For mobile, having agile-ready processes is a great start, but on top of the agile methods, development teams need fast and actionable feedback from real devices on both the functional aspects of their app as well as the performance, usability, and security of their app. Embedding all of the quality aspects into each build and delivering constant feedback to the development team gives them early insights into bugs -- this is the core value of Continuous Quality.
TechRepublic: What is the benefit to your customers from your focus on DevOps?
Labourey of CloudBees: Once projects have to move to DevOps, one of the first realizations is how much more time teams can spend on creating value rather than performing low-value and repetitive tasks, as well as how much faster things occur: from bug detection to product deployment. Past the initial investment to build a DevOps practice, the advantages are very obvious on a daily basis.
Mizrachi of Perfecto Mobile: We can now offer faster reactions to changes and resolutions, and overall better quality in our products, which translates to our clients being able to rely more heavily on our system to achieve their mobile app goals. For example, the Galaxy S6 is on our cloud weeks before it's released, which lets clients test their apps on a transparent platform before their end-users migrate to it.
TechRepublic: Overall, what feedback and results are you seeing with your customers?
Labourey of CloudBees: DevOps is a pretty obvious step IT teams are moving towards. It obviously takes more time to initiate in heavier organizations, but it is really on everybody's agenda -- past, present, or close future. With regard to continuous delivery, the companies that have started embracing it are seeing amazing results. However, it still requires a lot more education. A number of companies still do not realize how software is eating the world and how their future competitiveness in the market largely depends on how they'll be producing software. Furthermore, continuous delivery impacts how business and IT work together, possibly how virtual teams are built and how reporting happens. This requires a true commitment, both top-down and bottom-up.
Mizrachi of Perfecto Mobile: Overall satisfaction is increasing all of the time. Objective results -- when there is a bug we're able to resolve it immediately, which is contributing to customer satisfaction as well. We reduced bug resolution time by 80%, and we're seeing improvements with every new iteration of our platform.
- Jenkins and continuous delivery: Handing developers more power (ZDNet)
- Why 2016 is going to be the year of DevOps (ZDNet)
- The secret of DevOps success? It's not about the technology (ZDNet)
- Mobile is driving DevOps
Note: TechRepublic and ZDNet are CBS Interactive properties.