Ren value-preserving label-relabel av de to norske header-labelene til engelsk på 51 ref-filer (22 bærer begge). Ny testet ren primitiv relabelHeaderDialect() (header-blokk-scoped, kollisjons-/multiforekomst-guard) + manifest-drevet driver relabel-dialect.mjs (frosset 51-fil-manifest, hard per-fil-invariant, idempotent, isMain-guard). **Dato:** bevisst UTE (body-template-felle → Enhet 2). Premiss-korreksjon i roadmap R22: tredje Dato-dialekt (16), 0 bold-duplikater (ikke 4), 1 datoløs (ikke 5), category-none = vindus-artefakt. test-relabel-dialect 11/11; diff +73/-73 0 linjer utover label; suite 782/782 exit 0.
314 lines
16 KiB
Markdown
314 lines
16 KiB
Markdown
# Alternativanalyse-metodikk — Vektet multi-kriterie-analyse (MCA)
|
||
|
||
**Last updated:** 2026-02 (v1.0)
|
||
**Målgruppe:** Arkitekter som gjennomfører AI-arkitekturutredninger for norsk offentlig sektor
|
||
**Regulatorisk forankring:** Utredningsinstruksen (2016), DFOs veileder til utredningsinstruksen
|
||
**Category:** Solution Architecture & Advisory
|
||
**Status:** Established Practice
|
||
|
||
---
|
||
|
||
## Om dette dokumentet
|
||
|
||
Denne referansefilen definerer en strukturert metodikk for alternativsammenligning i AI-arkitekturutredninger. Metodikken sikrer etterprøvbare, transparente og rettferdige sammenligninger — i tråd med utredningsinstruksens krav om at beslutningsgrunnlaget skal være "så omfattende og grundig som nødvendig" (§2-2).
|
||
|
||
---
|
||
|
||
## 1. Scoringsskala 1-5
|
||
|
||
Alle kriterier scores på en felles skala med eksplisitte definisjoner per nivå. Vurderingene skal være konkrete og etterprøvbare — unngå vage formuleringer.
|
||
|
||
| Score | Betegnelse | Definisjon | Eksempel (norsk språkstøtte) |
|
||
|-------|-----------|------------|------------------------------|
|
||
| **1** | Oppfyller ikke | Oppfyller ikke kravet i det hele tatt. Fundamental mangel som ikke kan kompenseres uten betydelig ekstraarbeid. | Ingen støtte for norsk. Kun engelskspråklige modeller uten mulighet for tilpasning. |
|
||
| **2** | Delvis, vesentlige mangler | Oppfyller kravet delvis, men har vesentlige mangler som krever betydelige workarounds eller tilleggsinvesteringer. | Begrenset norskstøtte. Forstår grunnleggende norsk, men produserer ofte grammatiske feil og blander bokmål/nynorsk. |
|
||
| **3** | Oppfyller minimumskrav | Oppfyller minimumskravet uten vesentlige mangler. Funksjonelt akseptabelt, men uten margin. | Akseptabel norskstøtte. Forstår og produserer korrekt bokmål. Nynorsk og fagterminologi er ustabilt. |
|
||
| **4** | Over minimumskrav, god dekning | Overgår minimumskravet. God dekning med noen forbedringsmuligheter. | God norskstøtte. Behersker bokmål og nynorsk. Forstår vanlig fagterminologi. Noen mangler i spesialdomener. |
|
||
| **5** | Utmerket, overgår forventning | Utmerket dekning som overgår forventningene. Beste tilgjengelige løsning for dette kriteriet. | Utmerket norskstøtte. Behersker bokmål, nynorsk og vanlige dialektuttrykk. Korrekt fagterminologi i domenet. Samisk grunnstøtte. |
|
||
|
||
### Regler for scoring
|
||
|
||
- **Alltid begrunn scoren** med en kort setning som refererer til verifiserbar informasjon
|
||
- **Bruk hele skalaen** — unngå å gi alle alternativer 3-4 (dette indikerer at kriteriene er for vage)
|
||
- **Skill mellom "i dag" og "planlagt"** — score kun det som er tilgjengelig nå, ikke roadmap-løfter
|
||
- **Dokumenter usikkerhet** — hvis scoren er usikker, noter det (f.eks. "Score 3, usikkerhet +/- 1, mangler testdata")
|
||
|
||
---
|
||
|
||
## 2. Standard vurderingskriterier for AI-arkitektursammenligning
|
||
|
||
### 2.1 Kriteriesett med foreslåtte vekter
|
||
|
||
| # | Kriterie | Foreslått vekt | Beskrivelse | Typiske vurderingspunkter |
|
||
|---|----------|---------------|-------------|---------------------------|
|
||
| K1 | **Teknisk modenhet** | 15% | Hvor moden og stabil er teknologien? | GA vs. preview, versjonsstabilitet, kjente begrensninger, community/økosystem, dokumentasjonskvalitet |
|
||
| K2 | **Norsk språkstøtte** | 15% | Kvalitet på norskstøtte (bokmål, nynorsk, fagterminologi) | Språkforståelse, tekstgenerering, oversettelse, fagterminologi, samisk (hvis relevant) |
|
||
| K3 | **Sikkerhet og compliance** | 20% | Oppfyllelse av regulatoriske og sikkerhetskrav | AI Act, GDPR/DPIA, dataresidenskrav (Norway East/Sweden Central), NSM grunnprinsipper, Schrems II |
|
||
| K4 | **Kostnadseffektivitet** | 15% | Total eierkostnad (TCO) relativt til verdi | Lisenskostnader, Azure-forbruk, driftskostnader, implementeringskostnad, skjulte kostnader |
|
||
| K5 | **Skalerbarhet** | 10% | Evne til å håndtere vekst i brukere, data og funksjoner | Horisontal skalering, autoscaling, throughput-grenser, multi-region, ytelsesgarantier |
|
||
| K6 | **Organisatorisk gjennomførbarhet** | 15% | Evne til å gjennomføre med tilgjengelig kompetanse og organisasjon | Kompetansegap, endringsledelse, leverandøravhengighet, økosystem-tilpasning, intern forankring |
|
||
| K7 | **Tid til verdi** | 10% | Hvor raskt kan løsningen levere målbar verdi? | POC-varighet, MVP-tid, produksjon, kompleksitet i oppsett, tilgjengelige akseleratorer |
|
||
|
||
**Total:** 100%
|
||
|
||
### 2.2 Justering av vekter
|
||
|
||
Vektene over er utgangspunkt og **skal tilpasses** konteksten. Vanlige justeringer:
|
||
|
||
| Kontekst | Juster opp | Juster ned | Begrunnelse |
|
||
|----------|-----------|-----------|-------------|
|
||
| Høyrisiko AI Act | K3 Sikkerhet → 25-30% | K7 Tid → 5% | Compliance er ikke forhandlingsbart |
|
||
| Tidskritisk prosjekt | K7 Tid → 15-20% | K5 Skalerbarhet → 5% | Første versjon trenger ikke full skalering |
|
||
| Lavt kompetansenivå | K6 Organisatorisk → 20-25% | K1 Teknisk → 10% | Hjelper ikke med moden teknologi hvis ingen kan bruke den |
|
||
| Tett budsjett | K4 Kostnad → 20-25% | K5 Skalerbarhet → 5% | Prioriter å holde seg innenfor budsjett |
|
||
| Samisk befolkning berørt | K2 Norsk språk → 20% | K1 Teknisk → 10% | Språkkrav er avgjørende for likeverdig tjeneste |
|
||
|
||
**Regel:** Dokumenter alltid *hvorfor* vektene er justert fra standardoppsettet.
|
||
|
||
---
|
||
|
||
## 3. Sammenligningstabellmal
|
||
|
||
### 3.1 Komplett vektet scorecard
|
||
|
||
```markdown
|
||
### Alternativsammenligning — Vektet multi-kriterie-analyse
|
||
|
||
**Prosjekt:** [Prosjektnavn]
|
||
**Dato:** YYYY-MM-DD
|
||
**Vektbegrunnelse:** [Standard / Justert — begrunn justeringer]
|
||
|
||
| # | Kriterie | Vekt | Alt 0: Null | Alt 1: [Navn] | Alt 2: [Navn] | Alt 3: [Navn] |
|
||
|---|----------|------|-------------|---------------|---------------|---------------|
|
||
| K1 | Teknisk modenhet | 15% | — | [1-5] | [1-5] | [1-5] |
|
||
| K2 | Norsk språkstøtte | 15% | — | [1-5] | [1-5] | [1-5] |
|
||
| K3 | Sikkerhet og compliance | 20% | — | [1-5] | [1-5] | [1-5] |
|
||
| K4 | Kostnadseffektivitet | 15% | — | [1-5] | [1-5] | [1-5] |
|
||
| K5 | Skalerbarhet | 10% | — | [1-5] | [1-5] | [1-5] |
|
||
| K6 | Org. gjennomførbarhet | 15% | — | [1-5] | [1-5] | [1-5] |
|
||
| K7 | Tid til verdi | 10% | — | [1-5] | [1-5] | [1-5] |
|
||
| | **Vektet totalsum** | **100%** | **—** | **[X.XX]** | **[X.XX]** | **[X.XX]** |
|
||
|
||
**Beregning:** Vektet sum = Σ (score_i × vekt_i)
|
||
**Maks mulig:** 5.00 | **Anbefalt terskel:** ≥ 3.50 for anbefaling
|
||
```
|
||
|
||
### 3.2 Begrunnelsestabell (obligatorisk)
|
||
|
||
Hver score **må** ha en kort begrunnelse:
|
||
|
||
```markdown
|
||
### Scorebegrunnelser
|
||
|
||
| Kriterie | Alternativ | Score | Begrunnelse | Kilde |
|
||
|----------|-----------|-------|-------------|-------|
|
||
| K1 Teknisk modenhet | Alt 2: Copilot Studio | 4 | GA siden nov 2023, stabil plattform, god dokumentasjon | KB: platforms/copilot-studio.md |
|
||
| K2 Norsk språkstøtte | Alt 2: Copilot Studio | 3 | GPT-4o forstår norsk godt, men generative topics har begrenset nynorsk-støtte | MCP: microsoft-learn (verifisert 2026-02) |
|
||
| K3 Sikkerhet | Alt 2: Copilot Studio | 4 | Data i EU, GDPR-compliant, mangler noen granulære DLP-kontroller | KB: public-sector-checklist.md |
|
||
| ... | ... | ... | ... | ... |
|
||
```
|
||
|
||
### 3.3 Beregningseksempel
|
||
|
||
```
|
||
Alt 2: Copilot Studio + Azure AI Search
|
||
K1: 4 × 0.15 = 0.60
|
||
K2: 3 × 0.15 = 0.45
|
||
K3: 4 × 0.20 = 0.80
|
||
K4: 3 × 0.15 = 0.45
|
||
K5: 3 × 0.10 = 0.30
|
||
K6: 4 × 0.15 = 0.60
|
||
K7: 4 × 0.10 = 0.40
|
||
──────────────────────
|
||
Vektet totalsum: 3.60 ✅ (over terskel 3.50)
|
||
```
|
||
|
||
---
|
||
|
||
## 4. Sensitivitetsanalyse
|
||
|
||
Sensitivitetsanalysen avdekker om anbefalingen er robust — eller om den "vipper" ved rimelige endringer i vekter eller scorer.
|
||
|
||
### 4.1 Metode
|
||
|
||
For hvert kriterie, test hva som skjer dersom:
|
||
1. **Vekten økes med 10 prosentpoeng** (og fordeles jevnt fra øvrige)
|
||
2. **Vekten reduseres med 10 prosentpoeng** (og fordeles jevnt til øvrige)
|
||
3. **Scoren endres med +/- 1** for det ledende alternativet
|
||
|
||
### 4.2 Sensitivitetsanalysetal
|
||
|
||
```markdown
|
||
### Sensitivitetsanalyse
|
||
|
||
**Basecase:** Alt 2 (score 3.60) > Alt 3 (score 3.45) — forskjell: 0.15
|
||
|
||
| Test | Endring | Alt 2 ny score | Alt 3 ny score | Vinner endres? |
|
||
|------|---------|----------------|----------------|----------------|
|
||
| K3 vekt +10pp | Sikkerhet 20% → 30% | [X.XX] | [X.XX] | Ja/Nei |
|
||
| K3 vekt -10pp | Sikkerhet 20% → 10% | [X.XX] | [X.XX] | Ja/Nei |
|
||
| K4 vekt +10pp | Kostnad 15% → 25% | [X.XX] | [X.XX] | Ja/Nei |
|
||
| K6 vekt +10pp | Org. gj.førb. 15% → 25% | [X.XX] | [X.XX] | Ja/Nei |
|
||
| Alt 2 K2 score -1 | Norsk 3 → 2 | [X.XX] | — | Ja/Nei |
|
||
| Alt 2 K3 score -1 | Sikkerhet 4 → 3 | [X.XX] | — | Ja/Nei |
|
||
|
||
**Robusthetskonklusjon:**
|
||
- [ ] Anbefalingen er **robust** — den endres ikke ved noen rimelig endring
|
||
- [ ] Anbefalingen er **betinget robust** — den endres kun ved ekstreme vektendringer
|
||
- [ ] Anbefalingen er **sensitiv** — den endres ved [spesifiser hvilke endringer]
|
||
```
|
||
|
||
### 4.3 Kritiske kriterier ("swing criteria")
|
||
|
||
Identifiser kriterier der en endring i score eller vekt vil endre anbefalingen:
|
||
|
||
```markdown
|
||
### Kritiske kriterier
|
||
|
||
| Kriterie | Breakpoint | Implikasjon |
|
||
|----------|-----------|-------------|
|
||
| K3 Sikkerhet | Hvis Alt 3 scorer ≥ 4 (i stedet for 3) | Alt 3 overtar som anbefalt |
|
||
| K4 Kostnad | Hvis vekt økes til > 25% | Alt 1 (billigere) blir anbefalt |
|
||
| K6 Org. gjennomf. | Hvis Alt 2 scorer ≤ 2 | Ingen alternativer når terskel |
|
||
|
||
**Aksjonspunkter:**
|
||
- [ ] Verifiser K3-score for Alt 3 — hent oppdatert compliance-informasjon
|
||
- [ ] Avklar faktisk budsjettramme — påvirker K4-vekting
|
||
```
|
||
|
||
---
|
||
|
||
## 5. Krav om tilstrekkelig dybde (utredningsinstruksen)
|
||
|
||
### 5.1 Regulatorisk grunnlag
|
||
|
||
Utredningsinstruksen §2-2 fastslår at utredningen skal være "så omfattende og grundig som nødvendig". DFOs veileder presiserer at kravene til grundighet øker med tiltakets omfang og virkninger. For alternativanalysen innebærer dette:
|
||
|
||
- **Alle reelle alternativer skal beskrives tilstrekkelig** til at beslutningstaker kan vurdere dem
|
||
- **Virkningene av hvert alternativ** skal utredes med tilstrekkelig dybde
|
||
- **Nullalternativet** skal alltid inkluderes som referanse
|
||
- **Ikke-AI-alternativ** bør alltid vurderes (prosessforbedring, tradisjonell automatisering)
|
||
|
||
DFOs veileder til utredningsinstruksen (kap. 2.1) presiserer minimumskravene, der spørsmål 2 ("Hvilke tiltak er relevante?") krever at alle aktuelle alternativer identifiseres og vurderes.
|
||
|
||
### 5.2 Sjekkliste for tilstrekkelig dybde
|
||
|
||
Bruk denne sjekklisten **etter** at alternativanalysen er ferdig for å verifisere at alle alternativer er behandlet med tilstrekkelig og rettferdig dybde:
|
||
|
||
```markdown
|
||
### Sjekkliste: Tilstrekkelig dybde i alternativanalysen
|
||
|
||
**Strukturell likhet:**
|
||
- [ ] Alle alternativer har beskrivelse av samme lengde (+/- 30%)
|
||
- [ ] Alle alternativer er vurdert mot samtlige kriterier (ingen tomme celler)
|
||
- [ ] Alle scorer har skriftlig begrunnelse
|
||
- [ ] Kildehenvisning finnes for alle vesentlige påstander
|
||
|
||
**Informasjonsdybde:**
|
||
- [ ] Nullalternativet er beskrevet med reelle konsekvenser (ikke bare "ingen endring")
|
||
- [ ] Minst ett ikke-AI-alternativ er inkludert og reelt vurdert
|
||
- [ ] Tekniske detaljer (arkitektur, komponenter) er beskrevet for alle alternativer
|
||
- [ ] Kostnadsestimater dekker alle alternativer med sammenlignbare kostnadsposter
|
||
- [ ] Sikkerhetsvurdering dekker alle alternativer med samme dimensjoner
|
||
|
||
**Objektivitet:**
|
||
- [ ] Ingen alternativer er beskrevet med systematisk positivt/negativt ladede ord
|
||
- [ ] Fordeler og ulemper er balansert for alle alternativer
|
||
- [ ] Ukjente aspekter er merket som ukjente (ikke utelatt)
|
||
- [ ] Antakelser er eksplisitt merket og gjelder likt for alle alternativer
|
||
|
||
**MCA-integritet:**
|
||
- [ ] Vekter er begrunnet uavhengig av alternativene (bestemt før scoring)
|
||
- [ ] Scorer er begrunnet per alternativ per kriterie (ikke bare totalvurdering)
|
||
- [ ] Sensitivitetsanalyse er gjennomført
|
||
- [ ] Terskelverdi for anbefaling er definert på forhånd
|
||
|
||
**Ettersporing:**
|
||
- [ ] Det er klart hvem som har scoret (person/rolle)
|
||
- [ ] Det er klart når scoringen ble gjort (dato)
|
||
- [ ] Det er klart hvilke kilder som ble brukt (MCP-verifisert, KB, ekspert, antakelse)
|
||
```
|
||
|
||
### 5.3 Vanlige feil som bryter med kravet om tilstrekkelig dybde
|
||
|
||
| Feil | Eksempel | Konsekvens | Korreksjon |
|
||
|------|----------|------------|------------|
|
||
| **Stråmannsalternativ** | Alt 1 er en åpenbart dårlig løsning inkludert bare for å gjøre Alt 2 bedre | Manipulerer beslutningen | Sørg for at alle alternativer er realistiske og relevante |
|
||
| **Ujevn informasjonstilgang** | Alt 2 (anbefalt) har 2 sider beskrivelse, Alt 3 har 3 linjer | Beslutningstaker kan ikke vurdere Alt 3 | Beskriv alle med sammenlignbar dybde |
|
||
| **Manglende nullalternativ** | Nullalternativet nevnes bare som "ikke et alternativ" | Bryter utredningsinstruksen | Beskriv reelle konsekvenser av å ikke gjøre noe |
|
||
| **Cherry-picking kriterier** | Kriterier er valgt fordi anbefalt alternativ scorer høyt | Skjult bias | Definer kriterier uavhengig av løsning, gjerne med interessenter |
|
||
| **Post-hoc vekting** | Vekter justeres etter scoring for å få "riktig" resultat | Manipulasjon | Sett vekter før scoring. Dokumenter tidspunkt. |
|
||
| **Manglende ikke-AI-alternativ** | Kun AI-løsninger sammenlignes | Kan bryte utredningsinstruksen | Inkluder alltid minst ett ikke-AI-alternativ |
|
||
|
||
---
|
||
|
||
## 6. Prosess for gjennomføring
|
||
|
||
### 6.1 Anbefalt rekkefølge
|
||
|
||
```
|
||
1. Definer kriterier med interessenter (workshop)
|
||
↓
|
||
2. Sett vekter (før scoring!) — dokumenter begrunnelse
|
||
↓
|
||
3. Identifiser 3-5 reelle alternativer (inkl. nullalt. og ikke-AI)
|
||
↓
|
||
4. Beskriv hvert alternativ med tilstrekkelig dybde
|
||
↓
|
||
5. Score hvert alternativ per kriterie — begrunn skriftlig
|
||
↓
|
||
6. Beregn vektet sum
|
||
↓
|
||
7. Gjennomfør sensitivitetsanalyse
|
||
↓
|
||
8. Verifiser tilstrekkelig dybde (sjekkliste 5.2)
|
||
↓
|
||
9. Formuler anbefaling med referanse til MCA-resultater
|
||
```
|
||
|
||
### 6.2 Hvem scorer?
|
||
|
||
| Tilnærming | Når | Fordel | Ulempe |
|
||
|------------|-----|--------|--------|
|
||
| **Arkitekt alene** | Enkle utredninger, rådgivende karakter | Rask, konsistent | Subjektivt, lav legitimitet |
|
||
| **Tverrfaglig team** | Middels/komplekse utredninger | Bredere perspektiv, høyere legitimitet | Tidkrevende, kan kreve fasilitering |
|
||
| **Delphi-metode** | Komplekse utredninger med mange interessenter | Reduserer gruppetenkning, dokumenterer uenighet | Krever flere runder, tar tid |
|
||
|
||
---
|
||
|
||
## 7. Referanser
|
||
|
||
- [Utredningsinstruksen](https://www.regjeringen.no/no/dokumenter/instruks-om-utredning-av-statlige-tiltak-utredningsinstruksen/id2476518/) (Regjeringen, 2016)
|
||
- [Veileder til utredningsinstruksen](https://dfo.no/fagomrader/utredning-og-analyse-av-statlige-tiltak/veileder-til-utredningsinstruksen/) (DFO)
|
||
- [Kap. 2.1 Minimumskrav](https://dfo.no/fagomrader/utredning-og-analyse-av-statlige-tiltak/veileder-til-utredningsinstruksen/kap-21-minimumskrav-til-utredning-av-statlige-tiltak) (DFO)
|
||
- [Kap. 2 Krav til innhold i beslutningsgrunnlaget](https://dfo.no/fagomrader/utredning-og-analyse-av-statlige-tiltak/veileder-til-utredningsinstruksen/kap-2-krav-til-innhold-i-beslutningsgrunnlaget) (DFO)
|
||
|
||
---
|
||
|
||
## For Cosmo Skyberg
|
||
|
||
Denne referansefilen er ditt verktøy for strukturert alternativsammenligning. Slik bruker du den:
|
||
|
||
### Når du gjennomfører en alternativanalyse:
|
||
|
||
1. **Bruk standardkriteriene (K1-K7)** som utgangspunkt. Juster vekter basert på kontekst og begrunn justeringene.
|
||
2. **Score med 1-5-skalaen** og bruk de eksakte definisjonene. Aldri gi en score uten begrunnelse.
|
||
3. **Beregn vektet sum** og presenter i sammenligningstabellmalen.
|
||
4. **Kjør sensitivitetsanalyse** for å avdekke om anbefalingen er robust.
|
||
5. **Verifiser tilstrekkelig dybde** med sjekklisten i seksjon 5.2.
|
||
|
||
### Integrasjon med andre referansefiler:
|
||
|
||
- **Kostnadsdata** (K4): Hent fra `cost-models.md` og `/architect:cost`
|
||
- **Sikkerhetsscorer** (K3): Hent fra `/architect:security` (6-dimensjons-rammeverket)
|
||
- **Plattformmodenhet** (K1): Hent fra `platforms/*.md` (kunnskapsbasen)
|
||
- **Regional tilgjengelighet**: Kryssreferanse med `regional-availability-verification.md`
|
||
- **Antakelser**: Dokumenter i `source-traceability-assumption-register.md`
|
||
- **Gjennomførbarhet** (K6): Bruk `capacity-feasibility-benchmarks.md` for kompetansegap og tidsplan
|
||
|
||
### Viktige regler:
|
||
|
||
- **Sett vekter FØR scoring** — aldri juster vekter etter at du har scoret alternativene
|
||
- **Inkluder alltid nullalternativ og minst ett ikke-AI-alternativ**
|
||
- **Bruk sjekklisten** i seksjon 5.2 før du leverer analysen
|
||
- **Vær eksplisitt om usikkerhet** — en ærlig "score 3, usikker +/- 1" er bedre enn en falsk presis "score 4"
|