Módulo 8: Proyecto Integrador — Ethics Audit of an AI System

Findings: Bias + Privacy sections

Descripción

Cómo escribir las sections Findings: Bias and Fairness y Findings: Privacy and Data Protection del Ethics Audit Report. Las dos sections más críticas técnicamente.

Al terminar vas a poder:

  • Structurar findings section profesionalmente
  • Comunicar technical findings sin perder rigor
  • Quantificar evidencia con métricas reales
  • Identificar patterns y root causes

Structure de cada findings section

# Section X: [Section Name]

## X.1 Overview
[1 paragraph: scope of this section, items audited]

## X.2 Status summary

| Item | Description | Status | Critical |
|------|-------------|--------|----------|
| 1.1 | ... | ✅ Yes | Yes |
| 1.2 | ... | ❌ No | Yes |
| ... |

## X.3 Detailed findings

### Compliant items (briefly)
[List what's working]

### Gaps identified (detailed)
For each "No" item:

#### Item X.Y: [Title]

**Current state**: [What is happening now]
**Required state**: [What checklist requires]
**Gap**: [Specific difference]
**Evidence reviewed**:
- [What you looked at]
**Root cause**: [Why it's gap]
**Impact**: [If not addressed]
**Recommendation**: [Concrete action]
**Priority**: Critical/High/Medium/Low
**Owner**: [Suggested]
**Estimated effort**: [Hours/days]

## X.4 Patterns and themes
[Cross-cutting observations]

## X.5 Recommendations summary
[List of recommendations from this section]

Section: Bias and Fairness (example)

# Section 4: Bias and Fairness Findings

## 4.1 Overview

This section presents findings from the bias and fairness assessment of
the AI Knowledge Assistant. Six checklist items were reviewed covering
identification of protected attributes, demographic parity, equalized
odds (where applicable), mitigation, and monitoring.

## 4.2 Status Summary

| Item | Description | Status | Critical |
|------|-------------|--------|----------|
| 1.1 | Protected attributes identified | ✅ Yes | Yes |
| 1.2 | Demographic parity measured | ❌ No | Yes |
| 1.3 | Equalized odds tested | N/A | No |
| 1.4 | Disparities mitigated | ✅ Yes (partial) | Yes |
| 1.5 | Mitigation effectiveness verified | ⚠️ Partial | Yes |
| 1.6 | Production bias monitoring | ❌ No | Yes |

Compliant: 1, partial: 2, gaps: 2 (both Critical), N/A: 1.

## 4.3 Detailed Findings

### Compliant items

- **Item 1.1**: Protected attributes are documented (gender, age bucket,
  language preference, hierarchical role). Justification provided.
  Recently reviewed by Tech Lead. ✅

- **Item 1.4**: Disparities found in last audit (December 2025) for
  language preference (Spanish vs English DPR 0.78). Mitigation
  implemented: retraining with balanced data sample. Post-mitigation
  language DPR rose to 0.91. ✅ However, mitigation only applied to
  language; other protected attrs not audited or mitigated.

### Item 1.2: Demographic parity measured — GAP

**Current state**: Last comprehensive bias audit conducted December 15,
2025 — five months ago. Audit covered: gender, language preference only.
Not covered: age buckets, hierarchical role.

**Required state**: Bias audit within last 90 days covering all
identified protected attributes.

**Gap**:
- 60 days overdue
- 2 of 4 protected attributes never audited

**Evidence reviewed**:
- ethics-audit/bias-2025-12-15.md (last full audit)
- Code in bias_audit/ folder (toolkit implemented)
- Production bias dashboard: not implemented

**Root cause**: Bias audit not added to quarterly cadence; team has
been firefighting other priorities.

**Impact**:
- Cannot detect bias drift since December 2025
- Untested protected attrs may have severe disparities undetected
- Risk: discriminatory outcomes affecting users; legal liability
  under anti-discrimination laws

**Recommendation**:
1. Conduct fresh bias audit covering ALL 4 protected attributes within
   2 weeks (by 2026-05-25)
2. Add bias audit to quarterly cadence permanently
3. Schedule next bias audit by 2026-08-15

**Priority**: HIGH
**Owner**: ML Engineer (Sarah)
**Estimated effort**: 8-10 hours over 2 weeks
**Target date for "Yes"**: 2026-05-25

### Item 1.6: Production bias monitoring — GAP

**Current state**: No production monitoring of bias metrics. System
behavior post-deployment not segmented by protected attribute.

**Required state**: Real-time monitoring with alerts when bias metrics
exceed thresholds.

**Gap**: Production system has no bias visibility post-deployment.

**Evidence reviewed**:
- Datadog dashboards: aggregate metrics only, no segmentation
- Code: no protected_attr tagging in metrics emission

**Root cause**: Bias considered "training-time concern", not extended
to production observability. Implicit assumption that mitigation in
training is sufficient.

**Impact**:
- Cannot detect bias drift
- Cannot detect performance degradation per group
- Cannot trigger response when something goes wrong

**Recommendation**:
1. Add demographic tags to metrics emission (1 week effort)
2. Build Datadog dashboard with per-group metrics (3 days)
3. Configure alerts: DPR < 0.80, latency disparity > 50% (1 day)
4. Validation period: 2 weeks of monitoring before declaring complete

**Priority**: HIGH
**Owner**: ML Engineer + DevOps
**Estimated effort**: 2-3 weeks
**Target date for "Yes"**: 2026-06-15

### Item 1.5: Mitigation effectiveness verified — PARTIAL

**Current state**: Language bias mitigation showed pre/post metrics.
Gender mitigation never had pre/post measurement (mitigation applied
but not measured).

**Required state**: For each mitigation, demonstrated improvement with
pre/post measurement.

**Gap**: 1 mitigation lacks verification.

**Recommendation**:
- Apply original eval set to current model (post-gender-mitigation)
- Compare to pre-mitigation baseline if available
- Document findings or accept gap with reasoning

**Priority**: MEDIUM
**Owner**: ML Engineer
**Estimated effort**: 2-3 days
**Target date**: 2026-06-30

## 4.4 Patterns and themes

**Pattern 1**: Bias treated as one-time concern during development;
not extended to ongoing operations. This is reflected in:
- Outdated comprehensive audit
- Lack of production monitoring
- Incomplete mitigation verification

**Root cause**: Cultural — bias work seen as "done" after first audit.

**Recommendation pattern**: Embed bias work into operational rhythms
(quarterly cadence, production observability, monitoring as code).

## 4.5 Recommendations summary

| ID | Recommendation | Priority | Effort | Target |
|----|---------------|----------|--------|--------|
| BF-1 | Refresh bias audit (all attrs) | HIGH | 8-10h | 2026-05-25 |
| BF-2 | Implement production monitoring | HIGH | 15-20h | 2026-06-15 |
| BF-3 | Quarterly bias cadence | MEDIUM | 1h/sprint | Ongoing |
| BF-4 | Verify gender mitigation | MEDIUM | 2-3 days | 2026-06-30 |

Section: Privacy and Data Protection (similar pattern)

# Section 5: Privacy and Data Protection Findings

## 5.1 Overview

[Similar 1-paragraph overview]

## 5.2 Status Summary

| Item | Description | Status | Critical |
|------|-------------|--------|----------|
| 2.1 | Data inventory | ✅ Yes | Yes |
| 2.2 | Data minimization | ⚠️ Partial | Yes |
| 2.3 | Anonymization | ✅ Yes | No |
| 2.4 | Tenant isolation | ✅ Yes | Yes |
| 2.5 | Retention policy | ❌ No | Yes |
| 2.6 | Encryption | ✅ Yes | Yes |

Compliant: 4, partial: 1, gap: 1, all Critical.

## 5.3 Detailed Findings

### Item 2.5: Retention policy — GAP

**Current state**: Retention policy documented in privacy policy but
not automatically enforced. Manual deletion process exists but is
ad-hoc.

**Required state**: Documented retention periods automatically
enforced via TTL or scheduled deletion.

**Gap**: Retention not enforced systematically.

**Evidence reviewed**:
- Privacy policy: states "retention 24 months"
- Database: no TTL on records
- No scheduled deletion jobs

**Root cause**: Retention policy created for legal compliance but
implementation deferred.

**Impact**:
- GDPR Art. 5(1)(e) violation (storage limitation)
- Risk of data accumulation indefinitely
- Increased breach impact (more data exposed)

**Recommendation**:
1. Implement scheduled deletion job (1 week)
2. Add TTL where applicable (1-2 days)
3. Test retention enforcement (1 week validation)

**Priority**: HIGH (regulatory)
**Owner**: Backend Engineer + DPO
**Estimated effort**: 2-3 weeks
**Target date**: 2026-06-15

Trampas comunes en findings sections

Trampa 1 — Vague descriptions. "Bias somewhat addressed" → useless. Specific: "DPR 0.92 for gender, 0.71 for age 65+".

Trampa 2 — Sin actionable recommendations. "Need better monitoring" → vague. Actionable: "Implement Datadog dashboard with X metrics, alerts at Y thresholds".

Trampa 3 — Lists, no analysis. Listing items mecánicamente sin sintetizar patterns or root causes. Analysis is the value.

Trampa 4 — Hiding compliance gaps. "Item passes 'with caveats'" instead of clear "No". Be honest. Real auditors see through it.

Trampa 5 — No effort estimates. "Critical, need to fix" sin effort estimate. Stakeholder can't plan. Always estimate (even if rough).


Ejercicio

Para tu sistema:

  1. Lleva tus M2 deliverables y el Bias section del checklist
  2. Para cada item en tu Bias section, escribe finding (status + detailed if No)
  3. Lo mismo para Privacy section
  4. Identify patterns

Resumen

Aprendiste:

  • ✅ Structure standard de findings section
  • ✅ Cómo write detailed finding para gap (Item template)
  • ✅ Cómo identify patterns y root causes
  • ✅ Cómo provide actionable recommendations con effort estimates
  • ✅ Trampas: vague, list-only, hiding gaps

Checkpoint: si tus findings son specific, traceable, y actionable, listo.


Siguiente cápsula

04 — Findings: Transparency + Compliance. Continuamos con las next sections del report.


Recursos

  1. Microsoft Responsible AI Reports.
  2. Algorithm Auditing Reports examples.
  3. Fairness Indicators (Google).