Why so much of buzz about DevOps? - 1
DevOps means different things to different people and there is no one clear definition, which is acceptable to all stakeholders in the Industry. This buzz word off late created a positive trigger around IT (Information Technology) community and stakeholders. Organisations started closely watching DevOps progress in the Industry and slowly started adopting it.
Simply we could define DevOps as combination of Development and Operations. DevOps is a terminology / concept comprising of Culture, People, Process and Tools, which all need to work in tandem. Let us look at the history and evolution of DevOps.
Starting 1990’s till 2000, IT was growing steadily and most of the organisations (small, medium and to some extent large organisations) had small in-house IT teams (Infrastructure and Application) in the same physical location along with Business teams. IT teams were accountable and responsible for catering to the requirements of the business.
IT teams were multi-skilled and the individuals were performing multiple roles (if not end to end, at least to the extent of Infrastructure and Application area), as organisations were not affordable to have individuals for each role. For example, one individual was performing System Administration, Database Administration, Network Administration, Mail Administration etc. and another individual was performing System Analyst, Developer, Tester, Quality Analyst etc.
This closed setup enabled teams to better collaborate, bond and work together. The ownership and accountability of meeting the business requirements were clear due to closely knitted smaller IT teams.
We need to also note that at this juncture, the complexity of Technologies and Tools were minimal, requirements from business were not so complex in nature and the expectations were not so high.
Let us take a look at typical System Development and Maintenance phases.
- Business Requirements
- Development
- Testing
- Quality Assurance
- Production
- Ongoing Maintenance and Support
In order to successfully deliver the System, many stakeholders (like System Administrator, Database Administrator, Network Administrator, Project Manager, Sponsor, System Analyst, Developer, Tester, Quality Analyst, Power / Functional users, end users / consumers etc.) need to collaborate and work together.
As IT Industry started growing fast, the Technologies and Tools evolved tremendously, requirements from business were complex and the expectations were high, IT team size started growing, many departments / divisions started coming up within IT, roles and responsibilities started evolving and many specialised roles got created to meet the growing needs of the Industry.
This trend evolved over a period of time from 2000 to 2010 and multiple roles with in IT Infrastructure and Application teams triggered divide in the teams at many levels, leading to teams working in silos. These developments, widened the gap in collaboration, bonding and togetherness to large extent between IT Infrastructure and Application teams.
The above factors started impacting business in many ways. Few of the top challenges are:
- Lack of single point of accountability / ownership
- System not meeting triple constraint (Cost, Time and Quality)
- Lack of System stability and future road-map
- Ongoing System Maintenance and support challenges and cost
- Business started seeing IT as overhead rather than business enabling function
- No visible ROI (Return on Investment)
At this juncture, Industry started catching up on the buzz word DevOps, to address the above challenges and reap the benefits.
By looking at the history and evolution, we could summarise the following observations:
- Largely divided IT teams, which are physically separated and geographically spread
- Lack of accountability / ownership due to, multiple roles and stakeholder’s involvement
- Evolution of Technologies and Tools
- Highly demanding complex business requirements
Organisations could leverage DevOps to address the above challenges and observations by meticulously focusing on few critical factors like:
- IT Environment (Existing Infrastructure and Application landscape)
- Culture (Organisation, Department / Division, Team culture – one team, one goal, collaboration etc.)
- People (Technical, organisational and social skills, multi skilled Subject Matter Expert to handle end to end requirements, attitude and team belonging, knowledge sharing etc.)
- Process (Lean, Agile, standardised and streamlined service management process)
- Technology and Tools (Leverage optimal Technology and Tools, to automate complete requirements and eliminate manual intervention wherever practical)
By adopting DevOps and practising the above factors day in day out continuously, organisations started converting the challenges into opportunities and gaining business value.
In summary, DevOps buzz word has helped, is helping and will help organisation to realise the benefits.
Please share your valuable thoughts and comments.
Well summarised. Thanks.
Very well written and informative.
Thank you, very well written context. I'm hoping that there's a follow up in the works, which discusses how DevOps works, and its co-evolution with Agile project management & Digital Technologies. Also it would be of good interest if you could reflect on how a traditional IT shop can transform into a DevOps shop.