DevOps Lifecycle

devops2As the IBM DevOps Approach describes DevOps core capabilities are those that enable a high velocity, end to end idea-to-software deployment lifecycle:

  • Plan and Measure
  • Develop and Test
  • Release and Deploy
  • Monitor and Optimize

The Application Map organizes technologies in major capability categories aligned to this lifecycle.

Open source DevOps

The news story of Accenture open sourcing their own DevOps platform, a framework of Jenkins plugins, also defines a DevOps Lifecycle, and what application functionality is applied at each phase.

This is achieved through:

  • Cloud-hosted development environment integrated to source code repository via code review server
  • Autonomous build and testing of code submissions
  • Quality gates

Capability List

In this blog Greg Felice defines a DevOps Capability Map:

  1. Version Control
    1. Code Review Workflows and Tooling
    2. Shared Repositories and Reuse Model
  2. Self Service Environments
    1. Self Serve Development Environment
    2. Self Serve Database
    3. Configuration Standards
    4. Service Now Integration
  3. Automated Test Platform
    1. Automated Acceptance Tests
    2. Automated Security Tests
  4. Continuous Delivery Platform
    1. Automated Build
    2. Automated Deploy
  5. Inventory and Asset Management
    1. CMDB Integration
    2. Asset Metadata & Introspection
    3. Asset Lifecycle Management
  6. Monitoring
    1. App-Level Monitoring
    2. OS-Level Monitoring
    3. Dashboard Integration
    4. Alerts Management
  7. Software Packaging and Repository
    1. Standardized Software Packaging
    2. Secure Repositories
    3. Deployment Rollback
  8. Dashboard and Metrics
    1. System Health
    2. Build Status
    3. Deployment Status
    4. MTTR Metrics
    5. Ship Frequency Metrics
    6. Lead Time to Changes Metrics