In few of the Agile & DevOps forums, I saw community members raised the question – ‘Is DevOps the big thing next in Software Development?’ and few other related posts. While I agree that #DevOps is buzzing around the corner and it is definitely the Big Thing in IT Industry today. I strongly believe that it is not only The Next Big Thing; rather it’s one The CURRENT BIG THING in IT Industry in the domain of Software Development. In future, the software development in the twenty-first century would be highly influenced and centered around it; very much alike the Agile Software Development.
1. It’s been existing and future is bright –
The DevOps has been around from past several years, now from approx. five plus years people are getting more familiar to it. Agile development to a large extent has filled the gap in delivering business value through early and fast delivery with quality, reliability and relevance. The application Development to Operations life-cycle existed long but they worked in silos and have been biased towards their own individual interests. This being identified as the biggest bottleneck to continuous delivery and agility. For the Development and Operations had no other options left except to come together for the mutual benefits and optimize the whole software product delivery chain. Major companies like Facebook, Amazon, Google, Netflix etc… have identified, innovated and successfully filled this gaps and they have been benefiting from DevOps implementation from a long time, as it was necessary for their business continuity. Other major IT Service companies have already started following the footprints for betterment and existence.
2. Being based on Lean and Agile, it will never demise –
DevOps, having been rooted on the Lean and Agile principles, it helped organizations to identify the wastes, delays, and operational gaps. DevOps helped to eliminate these issues by optimizing the processes, practices, tools and team structures in order to achieve the quality products and services delivery hence quicker business value realization without incurring additional cost more frequently and optimally. The Agile adoption movement has given sufficient reasons and pre-requisites; that paved the ways for DevOps adoption and future road-map.
3. Being automation focused, it would help innovate and automate more –
Tool based automation (scripting and/or configuration) for some of the core engineering practices like Continuous Integration, build, code quality checks, testing, release, and delivery; that are promulgated and practiced under Agile Development, are still the foundation to DevOps. Tools that are configured or built, processes that are automated by developers during development can still be used by operations team later for daily monitoring and support of applications in production as well as later features enhancement, upgrade or maintenance activities. Any manual tasks that are repeatable would are automated in order to reduce manual interventions, bring transparency and tractability; which would bring operational stability, reliability and uninterrupted business continuity.
4. Acceptance to much needed structural change to build cross-functional teams –
Similar to the Agile, DevOps transformation forces the organizations to bring culturally and mindset change among the management and the staffs involved in development, operations, quality assurances and support functions like Infrastructure, Security teams etc. to work together as one team. Thereby taking the Agile concept of self-organizing multi-functional team to next level to be a cross-functional cohesive team working towards achieving the same end-result. DevOps philosophy does not give any specific focus or importance to any specific disciple or stream of works; rather highlights and optimize the software business value creation through collective efforts from all stream of works. With this cross-functional cohesive team, the culture of accepting and deploying the software changes to on-production environment increases similar to that of that of pre-production.
5. It can be applied to any software products (or projects) at any time –
DevOps practices can be brought at any time, especially for any New Product Development or even for Application Support & Maintenance (ASM) under any kinds of project management; after aligning teams, processes and tools to get its benefit. Though, it is a good that DevOps concepts should be bought into practice earlier in development. But there is not a hard and fast rule which mandates that it can not be injected when project journey has already started long before.
Having said that, DevOps practice is in highlight and it will be in near future as well. But, it does not mean that the Agile is going to die away. Software Development would still follow the Agile methods and practices. But anything that brings agility, value creation, minimize wastes and optimizes the software delivery chain; would continue to evolve in one or other forms – which may be either as any new or modified concepts, practices, tools / technologies in any new or re-branded names.