Afstraktionsniveauer, et nøglebegreb i systemdesign

nov 27, 2021
admin

Hvis du har set The Matrix, kan du måske huske denne scene, hvor Morpheus fortæller Neo, at den verden, han troede var “virkelig”, faktisk er en abstraktion – Matrixen.

“Vent, er det her bare et højere abstraktionsniveau?”

NEO: Dette, dette er ikke virkeligt?

MORPHEUS: Hvad er virkeligt? Hvordan definerer du det virkelige? Hvis du taler om det, du kan føle, det du kan lugte, det du kan smage og se, så er det virkelige simpelthen elektriske signaler, der fortolkes af din hjerne. Dette er den verden, som du kender. Den verden, som den var i slutningen af det tyvende århundrede. Den eksisterer nu kun som en del af en neuralt interaktiv simulation, som vi kalder Matrix. Du har levet i en drømmeverden, Neo.

Virkeligheden ifølge Morpheus

Morpheus siger i bund og grund, at virkeligheden er et komplekst system, og at den ikke kan forstås eller defineres på én bestemt måde. Virkeligheden kan bedre forstås som abstraktionsniveauer:

Niveau 2: Menneskelig perception

På dette højere abstraktionsniveau oplever vi virkeligheden gennem vores fem menneskelige sanser: se, høre, røre, smage og lugte. På dette niveau er Matrixen og virkeligheden ikke til at skelne fra hinanden.

Denne stol er “virkelig”, fordi vi kan opleve den ved hjælp af de fem sanser.

Niveau 1: Hjernevidenskab

På dette lavere abstraktionsniveau fortolker hjernen forskellige kombinationer af elektriske signaler som vores fem sanser. Det er kun på dette lavere abstraktionsniveau, at vi kan se, at det, vi troede var virkeligheden, bliver manipuleret gennem højteknologiske tandlægestole, der tilsluttes direkte til hjernen.

Det er sådan virkeligheden i Matrixen ser ud på et lavere abstraktionsniveau: højteknologiske tandlægestole, der manipulerer de elektriske signaler, der kommer ind i hjernen.

Afstraktionsniveauer i det virkelige liv

Okay, lad os komme ud af science fiction-verdenen og kigge efter abstraktionsniveauer i den virkelige verden omkring os. Det viser sig, at abstraktionsniveauer findes overalt, men det er svært at se dem, fordi vi tager dem for givet. De gemmer sig i det skjulte.

Et eksempel fra det virkelige liv: Hvor bor du?

Forestil dig, at du møder en ny person, og at vedkommende spørger dig: “Hvor bor du?” Hvordan ville du svare?

  • Hvis du blev spurgt af skattevæsenet eller på en blanket, ville du oplyse din nøjagtige adresse – ellers!
  • Hvis du mødte nogen ved et lokalt arrangement eller på en skole, ville du måske svare: Jeg bor i det blå hus på Bond Street.
  • Men hvad nu, hvis du var på besøg i et andet land? Så ville du højst sandsynligt sige: Jeg bor i USA.
  • Hvis du havde et udenjordisk møde, ville du måske sige: Jeg er fra planeten Jorden.

Det er alle meget forskellige svar! Hvilket af dem er det rigtige svar? Dem alle sammen selvfølgelig.

Du brugte abstraktionsniveauer ubevidst. Du svarede på det detaljeniveau, der ville være mere nyttigt og beskrivende for den person, du talte med. Med andre ord valgte du det abstraktionsniveau, der bedst understøttede samtalens formål.

Skabelse af abstraktionsniveauer

Vi kan give navne til disse forskellige abstraktionsniveauer – lavere abstraktionsniveauer er mere specifikke, og højere abstraktionsniveauer er mere generelle.

7. Planetarisk- Jeg er fra planeten Jorden. Før mig til din leder.

6. Land – Jeg er fra USA.

5. State – Jeg er oprindeligt fra Wisconsin.

4. City – Jeg bor i Chicago, IL.

3. Neighborhood – Jeg bor i Jackson Heights, Queens

2. Building – Jeg bor i det blå lejlighedskompleks på Michigan Ave.

1. Fysisk adresse – 476 N Bond St, Fresno, CA 9442020.

Definition af abstraktion

Du kan finde mange forskellige definitioner og forklaringer på ordet “abstraktion”, men jeg fandt Wikipedias definition som den mest nyttige, når man arbejder med komplekse systemer,

Abstraktioner skabes ved kun at udvælge de aspekter af et komplekst system, som er relevante for et bestemt subjektivt værdsat formål.

Konsekvenser af definitionen for systemdesign

  • Abstraktioner skabes til et bestemt formål – de er problemløsningsværktøjer, som vi skaber til et bestemt problem, en bestemt udfordring eller et bestemt mål.
  • Alle abstraktioner er forenklinger – vi udvælger nogle aspekter af det komplekse system og udelader andre med vilje.
  • Abstraktioner er nyttige (eller ej) – snarere end at være gode/dårlige eller rigtige/forkerte, er abstraktioner mere/mindre nyttige til at hjælpe os med at løse problemer.

Billedernes forræderi af René Magritte

“Dette er ikke et rør”

Det berømte rør. Hvor folk dog bebrejdede mig den! Og dog, kunne du proppe min pibe? Nej, det er bare en fremstilling, ikke sandt? Så hvis jeg havde skrevet på mit billede “Dette er en pibe”, ville jeg have løjet!

– René Magritte

Man må elske surrealisterne og deres tungtvejende budskab om, at kunst og virkelighed er forskellige – kunst er en abstraktion af virkeligheden.

Computerprogrammering 101 af Abstruse Goose

Der er mange abstraktionslag for at forstå, hvordan et computerprogram fungerer.

Abstraktion er et meget brugt begreb i computerprogrammering. Abstraktionsniveauerne i denne tegneserie er:

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.