Infrastructure as Code – is a common term among developers, architects, and operational staff and the practice has evolved in response to demand for quality and efficiency in the industry. Over the last decade many organizations have come to realize that the essence of Infrastructure as Code is to treat the configuration of systems the same way that software source code is treated. Frequent code integration, automated builds, and integrated testing have resulted in stronger IT performance and therefore business value.
Security as Code – An increase in security breaches across all industries has brought forward a similar concept, and that is to look at “Security as Code”. This concept would include the usage of repeatable algorithms to integrate security checks with each code check. This expands the scope of traditional “Continuous Integration” and automation. Organizations realize that security is no longer a second thought and must be addressed at the front of the value stream. We must be able to gather security requirements at the same rate and importance as the functional requirements. Security is integrated throughout the entire development, test and deployment stream. The result is that code is not only in a releasable state (Continuous Delivery) but rather code is now in a “Secure” releasable state.
Availability as Code – If the value of “Infrastructure as Code” and “Security as Code” is understood than it is not a far stretch to realize the true essence of “Availability as Code”. While availability engineering is mostly about reducing unplanned downtime, “Availability as Code” will help us to also reduce planned downtime. Availability as Code / Designing for Availability is the only way that some organizations will ever be able to truly move from a reactive to a proactive state. Biggest gains here include customer confidence and increase in market share. Relieving the “Ninjaneers” from operational firefighting allows organizations to leverage that skill set in the design/development lifecycle stage where repeatable and automated algorithms, builds and testing evolve with business demand.
Warranty as Code - We know that the application alone won’t get us there. We now realize that integrating Infrastructure as Code helps but is not all inclusive. Best Practice for ITSM defines “Warranty” as specified levels of Availability, Capacity, Continuity and Security. In order to realize value with efficiency industries could benefit from looking at each of these elements as… “CODE”. Where are you in your DevOps journey? What are your thoughts?
For more information please see http://www.itsmacademy.com/agile/