# IOM Prioriteringsroadmap > Vilka lager ger mest värde snabbast för quiXzoom Fas 1 > Status: Utkast | 2026-06-26 --- ## Sammanfattning Alla 10 lager är värdefulla, men inte alla är kritiska för Fas 1. Denna roadmap prioriterar utifrån: - **Tid till värde**: Hur snabbt ger det kundnytta? - **Teknisk komplexitet**: Hur mycket arbete krävs? - **Beroenden**: Vilka lager måste finnas innan andra kan byggas? > **Status:** Produktionspaus hävd 2026-06-25. Full fart framåt. --- ## Fas 1: Grund (Månad 1-2) ### Lager 1 — Objektshierarkin (Taxonomi) ✅ KRITISK **Varför först:** Allt annat bygger på detta. **Scope:** - Definiera 3-5 domäner för quiXzoom Fas 1 - `BYG` (Byggnad): Fasader, tak, fönster, entréer - `BEL` (Belysning): Gatubelysning, trafiksignaler - `TRN` (Transport): Vägar, broar, parkeringar - `ENE` (Energi): Laddstationer, transformatorer - `COM` (Kommersiellt): Skyltfönster, reklam, butiksfronter **Exempel:** ``` BYG (Byggnad) ├── FAC (Fasad) │ ├── WIN (Fönster) │ │ ├── GLA (Glas) │ │ ├── FRM (Fönsterkarm) │ │ └── SIL (Fönsterbleck) │ ├── PAN (Fasadpanel) │ └── ENT (Entré) ``` **Leverans:** - JSON-fil med hierarki - Valideringsregler (3 bokstäver, unika inom förälder) - Dokumentation med exempel **Tid:** 1 vecka **Komplexitet:** Låg --- ### Lager 2 — Global Object ID (GOID) ✅ KRITISK **Varför först:** Utan ID kan man inte referera till objekt. **Scope:** - Format: `[DOM]-[SYS]-[SUB]-[OBJ]-[SEQ]` - Sekvens: Löpnummer per objekttyp - Regler: Permanent, unikt, oföränderligt **Exempel:** ``` BYG-FAC-WIN-GLA-0001 # Fönsterglas #1 BYG-FAC-WIN-GLA-0002 # Fönsterglas #2 BYG-FAC-ENT-DOR-0047 # Entrédörr #47 ``` **Leverans:** - ID-genereringsfunktion - Kollisionsdetektering - API-endpoint: `POST /objects` → returnerar GOID **Tid:** 3 dagar **Komplexitet:** Låg --- ### Lager 5 — Standardiserade egenskaper ✅ KRITISK **Varför först:** Gör det möjligt att jämföra objekt och filtrera. **Scope (minimal):** | Egenskap | Typ | Exempel | |---|---|---| | `condition` | 1-5 | 3 (tillfredsställande) | | `location` | lat/lng | 59.3293, 18.0686 | | `risk_level` | 1-5 | 3 | | `function_status` | enum | "operational" | **Leverans:** - JSON-schema - Validering - Filter-API: `GET /objects?condition=4&risk_level>3` **Tid:** 3 dagar **Komplexitet:** Låg --- ### Lager 6 — Observationer ✅ KRITISK **Varför först:** Det är vad quiXzoom faktiskt samlar in. **Scope (minimal):** ```yaml observation: id: "OBS-2026-0012847" timestamp: "2026-06-26T09:15:00Z" object_goid: "BYG-FAC-WIN-GLA-2847" observer: "zoomer:anna_k" findings: - type: "dirt_accumulation" description: "Smuts på fönster" confidence: 0.94 media: - type: "image" url: "..." ai_analysis: overall_condition: 3 ``` **Leverans:** - Observation-API - Bilduppladdning - AI-integrationspunkt **Tid:** 2 veckor **Komplexitet:** Medel --- ## Fas 2: Struktur (Månad 2-3) ### Lager 3 — Objektets DNA (Metadata) **Varför nu:** När objekt skapas behöver de metadata. **Scope (minimal):** ```yaml object: goid: "BYG-FAC-WIN-GLA-2847" object_type: "window_glass" material: ["glass"] dimensions: {width: 2.1, height: 1.5, unit: "m"} installation_date: "2020-03-15" owner: "org:ikea" ``` **Leverans:** - Metadata-API - Materialkatalog (20 vanligaste) - Dimensionsvalidering **Tid:** 1 vecka **Komplexitet:** Låg --- ### Lager 7 — Felklassificering **Varför nu:** AI behöver koder för att klassificera. **Scope (minimal — Fas 1-relevanta):** ``` 2000 — Ytskada ├── 2100 — Smuts / Nedsmutsning ├── 2200 — Färgförändring └── 2300 — Skada på yta 3000 — Strukturell skada ├── 3100 — Spricka ├── 3200 — Deformation └── 3300 — Materialförlust 4000 — Saknad / Trasig komponent ├── 4100 — Saknad del └── 4200 — Trasig del 5000 — Blockering ├── 5100 — Fysisk blockering └── 5200 — Synlig blockering ``` **Leverans:** - Felkods-API - AI-klassificeringsmapping - Mänsklig gransknings-UI **Tid:** 1 vecka **Komplexitet:** Låg --- ### Lager 4 — Komponentstruktur (BOM) 🔄 FÖRENKLAT **Varför senare:** Komplext, men ger stort värde för underhåll. **Scope (förenklat för Fas 1):** ```yaml # Endast 1 nivå djup object: goid: "ENE-EVC-CHA-AC22-003" components: - goid: "ENE-EVC-CHA-FND-003" name: "Fundament" - goid: "ENE-EVC-CHA-POL-003" name: "Stolpe" - goid: "ENE-EVC-CHA-CBL-003" name: "Kabel" ``` **Leverans:** - BOM-API (1 nivå) - Komponentkoppling **Tid:** 1 vecka **Komplexitet:** Medel --- ## Fas 3: Intelligens (Månad 3-4) ### Lager 8 — Riskmodell **Varför nu:** Kräver observationer och felkoder för att fungera. **Scope (förenklat):** ```yaml risk: dimensions: safety: 0-10 economic: 0-10 operational: 0-10 # För Fas 1: endast 3 dimensioner weights: safety: 0.4 economic: 0.3 operational: 0.3 ``` **Leverans:** - Riskberäknings-API - Risktröskel-alerts - Dashboard-visning **Tid:** 1 vecka **Komplexitet:** Medel --- ### Lager 9 — Relationer (Kunskapsgraf) 🔄 FÖRENKLAT **Varför senare:** Kraftfullt men komplext. **Scope (förenklat):** ```yaml # Endast 3 relationstyper relations: - type: "part_of" target: "BYG-FAC-001" - type: "owned_by" target: "org:ikea" - type: "adjacent_to" target: "BYG-FAC-WIN-GLA-2848" ``` **Leverans:** - Relations-API - Enkel grafquery **Tid:** 2 veckor **Komplexitet:** Medel --- ## Fas 4: Vision (Månad 4-6) ### Lager 10 — Digital tvilling **Varför sist:** Bygger på alla andra lager. **Scope:** - Grafvisualisering - Tidslinje per objekt - Prediktiva modeller - Kontradiktionsdetektering **Leverans:** - Dashboard - API för komplexa frågor - Exporter (PDF, Excel) **Tid:** 4-6 veckor **Komplexitet:** Hög --- ## Sammanfattning: Prioritering | Fas | Lager | Tid | Värde | Komplexitet | |---|---|---|---|---| | 1 | 1 (Taxonomi) | 1v | ⭐⭐⭐⭐⭐ | Låg | | 1 | 2 (GOID) | 3d | ⭐⭐⭐⭐⭐ | Låg | | 1 | 5 (Egenskaper) | 3d | ⭐⭐⭐⭐⭐ | Låg | | 1 | 6 (Observationer) | 2v | ⭐⭐⭐⭐⭐ | Medel | | 2 | 3 (Metadata) | 1v | ⭐⭐⭐⭐ | Låg | | 2 | 7 (Felkoder) | 1v | ⭐⭐⭐⭐ | Låg | | 2 | 4 (BOM, förenklat) | 1v | ⭐⭐⭐ | Medel | | 3 | 8 (Risk) | 1v | ⭐⭐⭐⭐ | Medel | | 3 | 9 (Relationer, förenklat) | 2v | ⭐⭐⭐ | Medel | | 4 | 10 (Digital tvilling) | 4-6v | ⭐⭐⭐⭐⭐ | Hög | **Total tid till full IOM:** 4-6 månader **Tid till första kundvärde:** 2-3 veckor (Fas 1) --- ## Rekommendation Börja med **Fas 1** omedelbart. De fyra lagren är tekniskt enkla och ger direkt värde: 1. Zoomers kan klassificera objekt (Lager 1) 2. Objekt får permanenta ID:n (Lager 2) 3. Systemet kan filtrera och jämföra (Lager 5) 4. Observationer sparas strukturerat (Lager 6) Detta möjliggör redan i vecka 3: - "Visa alla smutsiga fönster i Stockholm" - "Hur många observationer har vi på objekt X?" - "Vilka objekt har försämrats sedan förra månaden?" Resten bygger ni ovanpå efterhand.