okr/skills/okr-offentlig-sektor/references/okr-calculator.md
Kjell Tore Guttormsen 285d18ebfa fix(okr): differensier samlet-aggregat i references (patch-lane #4)
Tre maler i references/ lovet EN udifferensiert samlet score, i strid med
separasjonsregelen i okr-framework.md: committed og aspirational maales mot
ulike standarder og skal rapporteres hver for seg.

Rot-aarsak: vektings-listen i okr-framework.md oppga "noen KR-er committed og
andre aspirational" som en GRUNN TIL AA VEKTE -- seks linjer over seksjonen som
forbyr aa aggregere de to i det hele tatt. Malene lovet et samlet tall fordi
kanon sanksjonerte det. Bulleten er fjernet og erstattet av prosa som avgrenser
vekting til innenfor EN type.

Malene foelger naa generatorens form (lib/syklus-rapport.mjs): committed binaert
mot kravet, aspirational som snitt over N KR. ASCII-boksenes bredde er bevart.

(k)-vaktens skanne-sett utvidet fra commands/+agents/ til ogsaa references/.
Eksklusjonen var KATALOG-BRED for aa skaane per-Objective-aggregeringen i
kalkulatoren, og tok team-aggregatene med seg -- samme lekse som R4. Per-Objective
gaar fortsatt klar, men paa MOENSTERET i stedet for paa katalogen.

Ny vakt (k2) mot at kanon gjenoppretter sanksjonen. Strukturell, ikke semantisk:
et kulepunkt i vektings-listen som navngir begge typene er en sanksjon i kraft av
posisjon. Mutasjons-verifisert -- identisk ordlyd flyttet INN i listen feller
vakten, som beviser at den maaler posisjon og ikke ordlyd.

Suite 328 -> 329.
2026-08-09 14:59:20 +02:00

280 lines
18 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# OKR Kalkulator
Praktiske formler og maler for beregning av OKR-progresjon, confidence og prognose.
## Hurtigreferanse: Formler
### Score (progresjon)
```
Score = (Nåværende - Baseline) / (Target - Baseline)
```
**Score-grenser (kapp og udefinert):**
- **Kapp til [0, 1.0]:** rå score under 0 rapporteres som 0, over 1.0 som 1.0 (over-/underoppnåelse endrer ikke at KR er (u)nådd). Behold gjerne rå prosent i parentes for kontekst.
- **Divisjon på null → udefinert:** når `Target == Baseline` (eller et Objective har 0 målbare KR) er nevneren 0. Score er da **udefinert**, ikke 0 — marker KR-et som «ikke målbart» og korriger formuleringen (en baseline lik target er ikke et meningsfullt mål).
### Forventet verdi (lineær)
```
Forventet = Baseline + (Target - Baseline) × (Tid brukt / Total tid)
```
### Prognose ved syklusslutt
```
Prognose = Baseline + (Nåværende - Baseline) × (Total tid / Tid brukt)
```
---
## Kalkulator-mal for enkelt KR
Fyll inn verdiene og beregn:
```
┌────────────────────────────────────────────────────────────────┐
│ KEY RESULT KALKULATOR │
├────────────────────────────────────────────────────────────────┤
│ │
│ KR-beskrivelse: ________________________________________ │
│ │
│ ─── INPUT ─── │
│ │
│ Baseline (startverdi): ____________ │
│ Target (målverdi): ____________ │
│ Nåværende verdi: ____________ │
│ │
│ Tid brukt (måneder): ____ av 4 │
│ │
│ ─── BEREGNING ─── │
│ │
│ Score = (Nåværende - Baseline) / (Target - Baseline) │
│ = (______ - ______) / (______ - ______) │
│ = _______ / _______ │
│ = _______ (___%) │
│ │
│ Forventet ved denne tid = Baseline + (Target-Baseline) × %tid │
│ = ______ + (______) × ______ │
│ = ______ │
│ │
│ Gap (Nåværende - Forventet): ______ │
│ │
│ Prognose ved syklusslutt: │
│ = Baseline + (Nåværende-Baseline) × (4 / tid brukt) │
│ = ______ │
│ │
│ ─── RESULTAT ─── │
│ │
│ Score: ______ (______%) │
│ Confidence: [ ] On Track [ ] At Risk [ ] Off Track │
│ Prognose: ______ │
│ │
└────────────────────────────────────────────────────────────────┘
```
---
## Utfylt eksempel
```
┌────────────────────────────────────────────────────────────────┐
│ KEY RESULT KALKULATOR │
├────────────────────────────────────────────────────────────────┤
│ │
│ KR-beskrivelse: Øke NPS fra 30 til 50 │
│ │
│ ─── INPUT ─── │
│ │
│ Baseline (startverdi): 30 │
│ Target (målverdi): 50 │
│ Nåværende verdi: 40 │
│ │
│ Tid brukt (måneder): 2 av 4 │
│ │
│ ─── BEREGNING ─── │
│ │
│ Score = (Nåværende - Baseline) / (Target - Baseline) │
│ = (40 - 30) / (50 - 30) │
│ = 10 / 20 │
│ = 0.5 (50%) │
│ │
│ Forventet ved denne tid = Baseline + (Target-Baseline) × %tid │
│ = 30 + (20) × 0.5 │
│ = 40 │
│ │
│ Gap (Nåværende - Forventet): 0 (på skjema!) │
│ │
│ Prognose ved syklusslutt: │
│ = 30 + (40-30) × (4 / 2) │
│ = 30 + 10 × 2 = 50 │
│ │
│ ─── RESULTAT ─── │
│ │
│ Score: 0.5 (50%) │
│ Confidence: [X] On Track [ ] At Risk [ ] Off Track │
│ Prognose: 50 (treffer target!) │
│ │
└────────────────────────────────────────────────────────────────┘
```
---
## Objective-aggregering
Beregn samlet score for et Objective med flere KR:
```
┌────────────────────────────────────────────────────────────────┐
│ OBJECTIVE SCORE KALKULATOR │
├────────────────────────────────────────────────────────────────┤
│ │
│ Objective: ____________________________________________ │
│ │
│ ─── KEY RESULTS ─── │
│ │
│ KR1: __________________________ Score: ______ Vekt: ____ │
│ KR2: __________________________ Score: ______ Vekt: ____ │
│ KR3: __________________________ Score: ______ Vekt: ____ │
│ KR4: __________________________ Score: ______ Vekt: ____ │
│ │
│ ─── BEREGNING ─── │
│ │
│ Uvektet gjennomsnitt: │
│ = (KR1 + KR2 + KR3 + KR4) / antall │
│ = (_____ + _____ + _____ + _____) / _____ │
│ = _____ │
│ │
│ Vektet gjennomsnitt (hvis relevant): │
│ = Σ(score × vekt) / Σ(vekt) │
│ = _____ │
│ │
│ ─── OBJECTIVE SCORE ─── │
│ │
│ Score: ______ (______%) │
│ │
└────────────────────────────────────────────────────────────────┘
```
---
## Confidence-vurdering
Confidence-nivået (On Track / At Risk / Off Track) defineres i den **kanoniske confidence-tabellen i `okr-framework.md`** (sannsynligheten for å nå target). Sjekklisten under er et diagnostisk *innspill* til den vurderingen — ikke en egen definisjon; det endelige nivået settes mot framework-skalaen, ikke ved å telle avkryssinger:
```
┌────────────────────────────────────────────────────────────────┐
│ CONFIDENCE VURDERING │
├────────────────────────────────────────────────────────────────┤
│ │
│ KR: ________________________________________________ │
│ Dato: __________ Tid i syklus: ____ av 4 måneder │
│ │
│ ─── SJEKKLISTE ─── │
│ │
│ [ ] Er vi på eller foran forventet progresjon? │
│ [ ] Er trenden positiv (akselererende eller stabil)? │
│ [ ] Er kjente blokkere løst eller under kontroll? │
│ [ ] Har vi nødvendige ressurser tilgjengelig? │
│ [ ] Er eksterne faktorer stabile/gunstige? │
│ │
│ ─── VURDERING ─── │
│ │
│ Antall JA: _____ av 5 │
│ │
│ 4-5 JA → On Track 🟢 │
│ 2-3 JA → At Risk 🟡 │
│ 0-1 JA → Off Track 🔴 │
│ │
│ ─── BESLUTNING ─── │
│ │
│ Confidence: [ ] On Track [ ] At Risk [ ] Off Track │
│ │
│ Begrunnelse: ________________________________________ │
│ ____________________________________________________ │
│ │
│ Tiltak (hvis At Risk/Off Track): │
│ ____________________________________________________ │
│ ____________________________________________________ │
│ │
└────────────────────────────────────────────────────────────────┘
```
---
## Team-dashboard mal
Oppsummering av alle OKR for et team:
```
┌────────────────────────────────────────────────────────────────┐
│ TEAM OKR DASHBOARD │
│ Team: ____________________ Syklus: ____ Dato: __________ │
├────────────────────────────────────────────────────────────────┤
│ │
│ ─── OBJECTIVE 1: ______________________________________ ─── │
│ │
│ │ KR │ Baseline │ Target │ Nåværende │ Score │ Confidence │ │
│ ├────┼──────────┼────────┼───────────┼───────┼────────────┤ │
│ │ 1 │ │ │ │ │ │ │
│ │ 2 │ │ │ │ │ │ │
│ │ 3 │ │ │ │ │ │ │
│ ├────┴──────────┴────────┴───────────┼───────┼────────────┤ │
│ │ Objective total │ │ │ │
│ │
│ ─── OBJECTIVE 2: ______________________________________ ─── │
│ │
│ │ KR │ Baseline │ Target │ Nåværende │ Score │ Confidence │ │
│ ├────┼──────────┼────────┼───────────┼───────┼────────────┤ │
│ │ 1 │ │ │ │ │ │ │
│ │ 2 │ │ │ │ │ │ │
│ │ 3 │ │ │ │ │ │ │
│ ├────┴──────────┴────────┴───────────┼───────┼────────────┤ │
│ │ Objective total │ │ │ │
│ │
├────────────────────────────────────────────────────────────────┤
│ TEAM TOTALT │
│ │
│ Committed: ____ av ____ KR nådd │
│ Aspirational: ______ (snitt over ____ KR) │
│ │
│ On Track: ____ OKR At Risk: ____ OKR Off Track: ____ OKR │
│ │
│ Highlights: ________________________________________________ │
│ Risiko: ________________________________________________ │
│ │
└────────────────────────────────────────────────────────────────┘
```
---
## Hurtigreferanse: Forventet progresjon over tid
Confidence-nivåene (On Track / At Risk / Off Track) defineres KUN i den kanoniske confidence-tabellen i `okr-framework.md` (sannsynlighet for å nå target). Innfør ingen egne terskler her. Tabellen under gir bare forventet *score* ved lineær progresjon — bruk gapet mellom faktisk og forventet score som ETT innspill til confidence-vurderingen, ikke som en mekanisk regel:
| Tid i syklus | Forventet score (lineær) |
|--------------|--------------------------|
| Måned 1 (25%) | 0.25 |
| Måned 2 (50%) | 0.50 |
| Måned 3 (75%) | 0.75 |
| Måned 4 (100%) | 1.00 |
**Merk:** Gjelder lineær progresjon. Noen KR har naturlig ikke-lineær progresjon (f.eks. prosjektleveranser som skjer sent i syklus). For selve confidence-nivået: se den kanoniske tabellen i `okr-framework.md`.
---
## Tips for bruk
1. **Oppdater ukentlig** - Confidence bør vurderes minst ukentlig i check-ins
2. **Vær ærlig** - Overdreven optimisme hjelper ingen
3. **Fokuser på tiltak** - At Risk og Off Track krever konkrete handlinger
4. **Del synlig** - Bruk Oboard eller lignende for transparens
5. **Lær av avvik** - Gap mellom prognose og resultat gir verdifull innsikt
---
## Ressurser
### Interne referanser
- `okr-framework.md` - Scoring og prognosering i metodisk kontekst
- `meeting-guides.md` - Check-in-møtene der confidence vurderes
- `okr-quality-rubrics.md` - Kvalitetsvurdering av selve KR-formuleringen
*Sist oppdatert: Juli 2026*