Classify an error-rate reading against a release budget.

error budget An error budget report can reduce a release decision to a small traced status label.

Error Budget Reliability Report

errorRate
ErrorBudgetReliabilityReport.java
Replay: real traced execution (multi-file project)
public class ErrorBudgetReliabilityReport {
    public static void main(String[] args) {
        int errorRate = 2;
        int budget = 5;
        String budgetStatus = "halt";

        if (errorRate <= 2) {
            budgetStatus = "ok";
        } else if (errorRate <= budget) {
            budgetStatus = "watch";
        }

        System.out.println("error_rate=" + errorRate + " budget=" + budget + " status=" + budgetStatus);
    }
}
public class ErrorBudgetReliabilityReport {
    public static void main(String[] args) {
        int errorRate = 4;
        int budget = 5;
        String budgetStatus = "halt";

        if (errorRate <= 2) {
            budgetStatus = "ok";
        } else if (errorRate <= budget) {
            budgetStatus = "watch";
        }

        System.out.println("error_rate=" + errorRate + " budget=" + budget + " status=" + budgetStatus);
    }
}
public class ErrorBudgetReliabilityReport {
    public static void main(String[] args) {
        int errorRate = 7;
        int budget = 5;
        String budgetStatus = "halt";

        if (errorRate <= 2) {
            budgetStatus = "ok";
        } else if (errorRate <= budget) {
            budgetStatus = "watch";
        }

        System.out.println("error_rate=" + errorRate + " budget=" + budget + " status=" + budgetStatus);
    }
}
  1. errorRate ← 2, budget ← 5, budgetStatus ← halt

    1public class ErrorBudgetReliabilityReport {2    public static void main(String[] args) {3        int errorRate→ 2 = 2;  //@errorRate=4, 74        int budget→ 5 = 5;5        String budgetStatus→ halt = "halt";
  2. budgetStatus ← ok

    7if (errorRate2 <= 2) {8    budgetStatus→ ok = "ok";9} else if (errorRate <= budget) {
  3. System.out.println("error_rate=" + errorRate + " budget=" + budget + "…

    13    System.out.println("error_rate=" + errorRate2 + " budget=" + budget5 + " status=" + budgetStatusok);14}
    outputerror_rate=2 budget=5 status=ok
  1. errorRate ← 4, budget ← 5, budgetStatus ← halt

    1public class ErrorBudgetReliabilityReport {2    public static void main(String[] args) {3        int errorRate→ 4 = 4;4        int budget→ 5 = 5;5        String budgetStatus→ halt = "halt";
  2. budgetStatus ← watch

    8    budgetStatus = "ok";9} else if (errorRate4 <= budget5) {10    budgetStatus→ watch = "watch";11}
  3. System.out.println("error_rate=" + errorRate + " budget=" + budget + "…

    13    System.out.println("error_rate=" + errorRate4 + " budget=" + budget5 + " status=" + budgetStatuswatch);14}
    outputerror_rate=4 budget=5 status=watch
  1. errorRate ← 7, budget ← 5, budgetStatus ← halt

    1public class ErrorBudgetReliabilityReport {2    public static void main(String[] args) {3        int errorRate→ 7 = 7;4        int budget→ 5 = 5;5        String budgetStatus→ halt = "halt";67        if (errorRate <= 2) {8            budgetStatus = "ok";9        } else if (errorRate <= budget) {10            budgetStatus = "watch";11        }1213        System.out.println("error_rate=" + errorRate7 + " budget=" + budget5 + " status=" + budgetStatushalt);14    }
    outputerror_rate=7 budget=5 status=halt