DevOps: The Integration of Development and Operations
This post is the introduction for the DevOps Deliver Series. All of the currently posted Blogs will be listed below. New ones will be added and updated on a regular basis.
This Series is a Complete Product Delivery Offering
The Series Includes:
Creating an RFP, a Request for Proposal
Cost and Effect Estimations
A full Development Delivery Process based on the Semantic Design Series
The Agile Value Based Delivery System
These posts are currently available:
The Goal of DevOps:
To Eliminate Waste through a Culture of Automation, Systems Monitoring and Sharing of
Information across all Business, Development and Operations Corporate Divisions
Let’s define what DevOps IS:
Culture Movement: A Fundamental Cultural Transformation
Alignment: A Corporate Aligning of People, Business and Technology Processes for the Common Goal to Eliminating Process Waste
Ultimate Goal: Increasing Overall Value in Development and Operations for Business through Continuous Iterative Evolution of Corporate Processes
Defined Roles and Responsibilities: The Right People, with the Right Processes and Automation Technologies that feeds the Continuous Iterative Evolution Culture Transformation
Not let’s define what DevOps IS NOT:
DevOps in NOTa Product to Sell: It is actions taken through a fundamental cultural shift to demonstrate the Power of DevOps by Implementing a Continuous Iterative Evolution Culture within your Corporate processes
DevOps in NOT a New Team: It’s NOT a New Corporate Initiative created to solve all the Company’s Technology issues through Automation
It is NOT a CIO Initiated Directive: It’s not a Top Down directive to middle management
DevOps is an Iterative Process of Cultural Evolution
The recurring pains that a company experiences due to Corporate Technology and Business process waste can not be fixed overnight.
It requires small “Baby Steps” in an iterative fashion to evolve from the current state to an enlightened mature DevOps environmental culture.
DevOps is not a “Silver Bullet” to eliminate the
Pains of Corporate Waste.
DevOps helps a Company Evolve
… from the Pains of Corporate Waste
With Delivery and Support Processes
… Of Efficiency through Iterative Baby Steps
The DevOps Mantra: CAMS
There are four core concepts that are the essence of the DevOps Movement.
These concepts define the activities, actions and mindset of an effective DevOps Environment.
It is very difficult to achieve a higher level of product delivery and support for the Business Community if all of these concepts are not in play.
These four core concepts are required to be mandated from the highest level of Corporate management not only in the Technological Environment but in the Full Corporate Community, as well.
The DevOps Culture:
DevOps is not a new team put in place to dictate policies and procedures.
DevOps is about a structure environment where the Development and Operational relationships are molded into a culture of synergistic activities.
DevOps is about eliminating Corporate waste through process and procedure modernization through Technology Automation.
If you Can’t Measure it you Can’t Manage it
DevOps is about Continuous Monitoring to create Continuous Measurements for Continuous Improvements.
You can replace your Reactive Fire Fighting with Proactive Issue Management through a shared monitoring culture.
DevOps is about a Shared Learning and Process understanding between Business, Development and Operations for the health of your Business Life Blood Pipelines.
Common Misconceptions of DevOps
I recently read an article from a developer titled: “How ‘DevOps’ is Killing the Developer”.
In my opinion, and the opinion of a number of responses to his post, this developer is the “Poster Child” of why DevOps is Successful.
The Removal of “Technologist Silos”
Fosters a Community of Trust and Respect
The problem is not that DevOps is “Killing the Developer” but that a mature DevOps environment removes that “Prima Donna Technologist Throw it Over the Wall” attitude that breeds mistrust and disrespect.
DevOps places all the team members in a culture of respect and growth.
DevOps often suffers from the same
“Perception of Failure” as Agile
… A Poor DevOps Implementation
Failure through poor implementation or stopping the iterative maturity evolution process of the DevOps culture prematurely believing you have already attained the DevOps goal is one of the major contributors to the belief that DevOps is a failing concept.
The DevOps Maturity Pipeline
Application Development or “App-Dev” is a component of the DevOps Pipeline.
An implementation of the Agile Methodology is the first step to a mature product delivery pipeline. Agile is an Iterative Development philosophy that is the first step for the Iterative DevOps philosophy
The next step is a Continuous Integration Process that creates Daily Development Builds with the Automated Acceptance Tests created within an Acceptance Test Driven Development (ATDD) environment that validates the Acceptance Criteria of the Business-driven Feature Stories.
These “Tests” become the development road map for the delivery process and serves as automated regression testing to lower the cost of development and application maintenance support.
The full DevOps Culture is created by integrating the development processes with the operations support processes in a “One Team” concept from the very first day of development.
The DevOps Culture is built using the
LEAN “Software Manufacturing” Philosophy.
DevOps seeks to identify Technology, Business and Community Pain and its associated Corporate Waste to improve the Software Manufacturing Assembly Line.
DevOps as LEAN Software Manufacturing
LEAN Manufacturing is a production philosophy that considers the Expenditure of Resources in any aspect other than the Direct Creation of Value for the Customer to be wasteful, and a target for elimination.
Working from the Perspective of the Client
who Consumes a Product or Service …
Customer Value is any action or process
that a Customer would be Willing to Pay for
LEAN is centered on making obvious what adds value by reducing everything else.
LEAN manufacturing is a management philosophy derived mostly from the Toyota Production System (TPS) and identified as “LEAN” only in the 1990s.
TPS is renowned for its focus on reduction of the original Toyota Seven Wastes to improve overall customer value, but there are varying perspectives on how this is best achieved.
The Pain Points that DevOps Seeks to Solve
Company Pain without a DevOps Culture
Corporate recurring “Pain Points” is generally the driving force to undertake the major culture shift that DevOps requires.
The seven areas of waste addressed above is the cause of the pain that a company will feel over and over again.
Here are just a few that we have all experienced:
Painful Outages: The Blame Game Disruptions from Silo Team Members
Minimum Incremental Value: Project Protracted Delivery Pain from Changing Business Requirements due to Long Delivery Release Models
Poor Perception of IT: Not Delivering Business Value when it is really needed
Company Infighting: The “Us Versus Them” mentality
Segregation of Business from IT: Lack of a “First Class Citizen” Relationship
Lack of Company Transparency: Lack of Trust and the Fear of “Whistle Blowing”
Competing Employee Reward Systems: Management Bonuses based of Feature Delivery Quantity, Development Bonuses based on Product Quality, Ops Team Bonuses based on Stability and High Availability:
These Bonus Criteria are Conflicting Requirements and Guarantee Failure!
There are plenty of surveys, reports and commissioned studies to document the “Trendy DevOps Movement“.
Here are some statistics that supports why you want to be with the “Herd” on this one:
These figures show the results of a maturing DevOps Environment.
These results are possible even while moving through the evolutionary process.
Many of the Corporate Pains that hinder production revenue are minimized with early advances toward Continuous Operations Maturity.
There are obstacles that presents challenges when creating a DevOps Culture change.
These obstacles must be addressed one by one from the unique perspective of your Corporation and the company’s current culture.
As discussed above, CAMS represents that DevOps arenas: Culture, Automation, Monitoring and Sharing of the information created by the implementation of the first three arenas..
The value of the above statistics is the “Priority of Value” that the percentages demonstrate.
The Automation component of DevOps is generally what is considered as DevOps.
DevOps is NOT Information Technology Automation
of Development Processes in Isolation …
A Major Cause of the Perception of DevOps Failure
DevOps must be implemented with all four of the CAMS DevOps arenas.
Automation will only yield results for your Corporate Pains if your Development Process is Iterative and a Strong Bond of Respect is Nurtured between Business, Development and Operations.
All the other components support the evolutionary
culture that is created by the One Team Success
Mindset that a maturing DevOps culture spawns
Final Thoughts and What’s Next
DevOps builds a new corporate culture that better manages the Past Pains of Technology that the company just had to chalk up to the cost of doing modern business.
DevOps creates Business Wisdom
through Information gathered though Automation
that generates Knowledge with Systems Monitoring
that is Shared throughout the entire Organization
in a One Team Cultured Mindset
This is the first of a number of posts that will drill down on the details on DevOps and how you can begin the Odyssey of DevOps within your Corporate environment.
Wisdom Pearl # 127 – Embrace Your Failures
Recognize and Admit Your Failures
… They are Your Bridges to Success
…… You Only Gain Wisdom by the Acceptance of Your Failures
The following two tabs change content below.
I am a Principal Architect at Liquid Hub in the Philadelphia area specializing in Agile Practices as a Certified Scrum Master (CSM). I use Test Driven Development (TDD) and Acceptance Test Driven Development (ATDD) with Behavior Driven Development (BDD) as my bridge to Agile User Stories Acceptance Criteria in a Domain Driven Design (DDD) implementing true RESTful services