Monday, January 30, 2017

DevOps: the movement revolutionizing the Software Industry

In the current market scenario, DevOps, a term which can be described as a mix of Development and Operations, isn’t exactly unheard of  in the world of Software Development (It’s been around for 7 years).  It can be described as an approach  that lays stress on collaboration between the development and operations wings of an organization,  adopted to optimize the delivery of software and also improving the production cycle rate.

As a term it was coined by Patrick Deboise, a system administrator, during the “DevOpsDays” events organized by him in Belgium in 2009. In the same year, John Allspaw’s made a presentation on “10+ Deploys per Day: Dev and Ops Cooperation”       at the Velocity 2009 conference.        Eric Ries’ work “The Lean Startup”, the 451 Group’s report “The Rise of DevOps” in 2010 and various other mentions eventually made this methodology popular. This approach emphasizes closer cooperation between the Development and Operations departments. Though it bears some semblance  to the Agile Software Development model, they are not the same. The usage of DevOps will help an organization to produce higher quality software faster. Automation plays a major role in DevOps, and this, aids in the target of faster delivery of the product, as well as ensuring its quality.

Through this method of cooperation, an organization gains continous, faster delivery of products or services. DevOps can also be considered not just as an approach but also a movement which can have various attributes such as a culture, an emphasis on automation, which is a necessary pre-requisite to obtain an immediate response and ways to share new, innovative thinking and strategies.  It can be seen as an improvement to the existing agile methodology of software development. One result was that the operations unit of a technological organization functioned as a seperate unit while the programming,testing along with the business units were brought in line. In DevOps, with its increased focus on operations, Agile methods are to be applied on this unit.

DevOps has grown popular as a result of the software industry’s frustration with the existing software delivery process which are becoming expensive with errors being part of the process. This unproductivity has led to its adoption. Apart from its collaborative aspect, DevOps also depends on continuous feedback for better quality of products at every stage of software development. Automation in product builds and testing are more emphasized than ever. Technologies such as cloud and development on the mobile platform are also well-known for adopting this approach.

RedHat in its whitepaper “Accelerate Your Business with DevOps” by Gordon Haff has made a thrust for the adoption of DevOps, ‘citing the speed and flexibility with which new features are delivered’.  The whitepaper talks of DevOps as instilling a “culture of collaboration”, automation for accelerating application delivery and the building of a dynamic software platform. The whitepaper also stresses on the aspect of automation as well .

Red Hat also, as part of its focus on DevOps, offers a RHCA certification based on it namely Red Hat Certified Architect (RHCA): DevOps, with Red Hat Certified Engineer (RHCE) or Red Hat Certified Developer as necessary prerequisites. Red Hat’s website defines it as someone “who has attained Red Hat’s highest level of certification, proving their skills and knowledge in technologies and practices that can accelerate the process of moving applications and updates from development through the build and test processes and on to production”.  

About Author:

Mr. Thomas Mathew is an IT professional with MSc IT from Amritha School of Arts & Science Cochin. He has a deep passion in system administration. Mr. Thomas is very active in technical forums and blog and love sharing information and views in the media. At present he is doing RHCE (Fast Track) from IPSR.