Need for coverage from software development to deployment-in-production resulting in achieving the business outcomes.
Let us outlines various metrics used to assess different stages of software development and deployment, as well as the overall progress towards business outcomes. These metrics can be categorized into three main stages:
Excellence in Software Development:
This involves evaluating the quality and efficiency of the software development process. Metrics used in this stage include:
- Passing Tests: Measures the number of tests that pass successfully.
- Security Violations: Tracks the number of security breaches or violations.
- Cyclomatic Complexity: Assesses the complexity of the code.
- Test Coverage: Indicates the percentage of the codebase covered by tests.
- Technical Debt: Quantifies the cost of additional rework caused by choosing an easy solution now instead of a better approach that would take longer.
- Velocity: Measures the amount of work a team completes during a sprint.
- Defects Count: Counts the number of defects or bugs in the software.
- UAT (User Acceptance Testing) Issues: Tracks issues found during the final phase of testing where users try the software under realistic conditions.
Excellence in Deployment into Production:
This stage focuses on the effectiveness and reliability of deploying software into production. The metrics include:
- Lead Time: The time taken from code commit to code successfully running in production.
- Deployment Frequency: How often deployments occur.
- MTTR (Mean Time to Recover): The average time taken to recover from a failure.
- Change Fail Percentage: The percentage of changes that fail.
- Security Incidents: Number of security-related incidents.
- Production Issues: Problems encountered in the production environment.
- Availability: The degree to which the system is operational and accessible when required for use.
Progress towards desired business outcomes:
This stage is about measuring the impact of the software on business goals. Metrics include:
- Unique Visitors per Month: The number of distinct individuals visiting the site within a month.
- Session Duration: The average length of a user's visit.
- Infrastructure Spend: The amount of money spent on IT infrastructure.
These three stages represent a comprehensive approach to evaluating the value flow from the product organization to the business.
While the DORA (DevOps Research and Assessment) metrics focus primarily on the Excellence in Deployment into Production stage, the EEBO (Engineering Excellence to Business Outcomes) Metrics advocate for considering the entire spectrum to ensure that engineering excellence leads to positive business outcomes. This holistic view is crucial for organizations to effectively bridge the gap between technical processes and business success.