# Methodology: The 6-Check Accessibility System

**How we tested 18 websites and what each check measures.**

---

## Overview

The B1C3 UX Evaluation uses a **standardized 6-check system** to measure accessibility against WCAG 2.1 Level AA criteria.

- **6 checks** covering major accessibility dimensions
- **Scored 0-100** based on issue severity
- **Reproducible** — same methodology, same results
- **Automated + manual verification** — catches real problems

---

## The 6 Checks

### Check 1: Color Contrast & Alt Text

**What it measures:**
- Image alt text coverage (WCAG 1.1.1)
- Text color contrast ratios (WCAG 1.4.3)

**Why it matters:**
- Blind users need alt text to understand images
- Low-vision users need sufficient contrast to read
- Affects approximately 2.2 billion people globally

**Severity:**
- Missing alt text: **CRITICAL** (−25 points)
- Low contrast: **HIGH** (−10 points)

---

### Check 2: Focus Management

**What it measures:**
- Visible focus styles (`:focus` or `:focus-visible` CSS)
- Unlabeled interactive elements (buttons, links without text)
- Proper focus order (logical tab sequence)

**Why it matters:**
- Keyboard users need to see where they are
- Screen reader users rely on focus to navigate
- Motor impairments may require keyboard-only access

**Severity:**
- Unlabeled interactive element: **CRITICAL** (−25 points)
- Missing focus styles: **HIGH** (−10 points)

---

### Check 3: Semantic HTML

**What it measures:**
- Document landmarks (`<main>`, `<nav>`, `<header>`, etc.)
- Heading hierarchy (proper h1-h6 structure)
- Semantic elements vs divs

**Why it matters:**
- Screen readers navigate using landmarks
- Proper structure aids all users
- Improves SEO and code maintainability

**Severity:**
- Missing `<main>`: **CRITICAL** (−25 points)
- Bad heading hierarchy: **HIGH** (−10 points)
- Divs instead of landmarks: **MEDIUM** (−5 points)

---

### Check 4: ARIA & Accessibility Attributes

**What it measures:**
- Icon labels (aria-label, title, alt on decorative icons)
- aria-hidden abuse (hiding focusable elements)
- Redundant ARIA roles
- Missing aria-* attributes

**Why it matters:**
- Screen readers rely on ARIA for dynamic content
- Icons need descriptions
- Improper ARIA can break accessibility

**Severity:**
- Icon without label: **CRITICAL** (−25 points)
- aria-hidden on button: **CRITICAL** (−25 points)
- Redundant role: **HIGH** (−10 points)

---

### Check 5: Form Accessibility

**What it measures:**
- Form inputs with proper labels
- Placeholders vs actual labels (distinction matters)
- Fieldsets with legends
- Error message associations

**Why it matters:**
- Forms are critical user workflows
- Screen reader users can't use unlabeled inputs
- Error messages must be linked to fields

**Severity:**
- Input without label: **CRITICAL** (−25 points)
- Placeholder-only label: **HIGH** (−10 points)
- Missing fieldset legend: **HIGH** (−10 points)

---

### Check 6: Navigation Structure

**What it measures:**
- Navigation landmarks (`<nav>` vs `<div>`)
- List structure (`<ul>`, `<ol>` vs divs)
- Breadcrumb markup
- Menu button proper ARIA attributes

**Why it matters:**
- Screen readers identify nav landmarks
- Proper structure aids keyboard navigation
- Semantic markup improves maintainability

**Severity:**
- All issues: **MEDIUM** (−5 points)

---

## Scoring Algorithm

### Per-Check Score
```
score = 100 - (critical × 25) - (high × 10) - (medium × 5) - (low × 2)
```

Example with 2 CRITICAL + 1 HIGH:
- Base: 100
- Critical: 100 - (2 × 25) = 50
- High: 50 - (1 × 10) = **40/100**

### Overall Score
```
overall = average(check1, check2, check3, check4, check5, check6)
```

Example: Checks scoring [100, 40, 100, 90, 95, 85]:
- Average: 510 / 6 = **85/100**

---

## Severity Levels

| Level | Points | User Impact |
|-------|--------|------------|
| **CRITICAL** | −25 | Blocks access entirely |
| **HIGH** | −10 | Degrades user experience |
| **MEDIUM** | −5 | Best practices violation |
| **LOW** | −2 | Minor issues |

---

## Methodology Limitations

### What We Catch
✅ Common accessibility issues (70% of real problems)  
✅ Automated issues (missing attributes, structure)  
✅ Patterns across multiple pages  
✅ Critical blocking issues  

### What We Miss
❌ Context-specific issues (only fixable by manual review)  
❌ Color perception issues (depend on color chooser)  
❌ Screen reader-specific quirks  
❌ Mobile-specific edge cases  

---

## WCAG Mapping

| Check | WCAG A | WCAG AA | WCAG AAA |
|-------|--------|---------|----------|
| Contrast & Alt | 1.1.1, 1.4.3 | ✓ | ✓ |
| Focus | 2.1.1, 2.4.7 | ✓ | ✓ |
| Semantics | 1.3.1, 2.4.1 | ✓ | ✓ |
| ARIA | 4.1.2, 4.1.3 | ✓ | ~ |
| Forms | 1.3.1, 3.3.2 | ✓ | ✓ |
| Navigation | 1.3.1, 2.4.1 | ✓ | ✓ |

---

## Reproducibility

The methodology is designed to be reproducible and transparent:

1. **Open methodology** — Anyone can understand what we tested
2. **Standard criteria** — Based on WCAG 2.1 Level AA
3. **Consistent scoring** — Same algorithm for all sites
4. **Manual verification** — Low scorers verified for accuracy

---

**Methodology Version:** 1.0  
**Last Updated:** June 10, 2026  
**Based on:** WCAG 2.1 Level AA  
