Abstraktionsnivåer, ett nyckelbegrepp i systemdesign
Arbeta med komplexa system innebär att skapa olika tolkningar av verkligheten.
Om du har sett The Matrix kommer du kanske ihåg scenen där Morpheus berättar för Neo att den värld han trodde var ”verklig” i själva verket är en abstraktion – Matrix.
NEO: Detta, detta är inte verkligt?
MORPHEUS: Vad är verkligt? Hur definierar du verkligt? Om du talar om vad du kan känna, vad du kan lukta, vad du kan smaka och se, så är verkligt helt enkelt elektriska signaler som tolkas av din hjärna. Detta är den värld som du känner till. Världen som den såg ut i slutet av 1900-talet. Den existerar nu endast som en del av en neuralt interaktiv simulering som vi kallar Matrix. Du har levt i en drömvärld, Neo.
Verkligheten enligt Morpheus
Morpheus säger i princip att verkligheten är ett komplext system och att den inte kan förstås eller definieras på något särskilt sätt. Verkligheten kan bättre förstås som abstraktionsnivåer:
Nivå 2: mänsklig uppfattning
På denna högre abstraktionsnivå upplever vi verkligheten genom våra fem mänskliga sinnen: se, höra, känna, smaka och lukta. På denna nivå är matrisen och verkligheten omöjliga att skilja åt.
Nivå 1: Hjärnforskning
På denna lägre abstraktionsnivå tolkas olika kombinationer av elektriska signaler av hjärnan som våra fem sinnen. Det är bara på denna lägre abstraktionsnivå som vi kan se att det vi trodde var verkligheten manipuleras genom högteknologiska tandläkarstolar som ansluts direkt till hjärnan.
Abstraktionsnivåer i verkligheten
Okej, låt oss lämna science fiction-världen och leta efter abstraktionsnivåer i den verkliga världen omkring oss. Det visar sig att abstraktionsnivåer finns överallt, men det är svårt att se dem eftersom vi tar dem för givna. De gömmer sig i vanlig ordning.
Ett exempel från det verkliga livet:
Föreställ dig att du träffar någon ny person som frågar dig: ”Var bor du?”. Hur skulle du svara?
- Om du blev tillfrågad av skattemyndigheten eller på en myndighetsblankett skulle du uppge din exakta gatuadress – annars!
- Om du träffar någon på ett lokalt evenemang eller i en skola skulle du kanske svara: Jag bor i det blå huset på Bond Street.
- Men vad händer om du besöker ett annat land? Då skulle du sannolikt svara: Jag bor i USA.
- Om du hade ett möte med en utomjording skulle du kanske svara: Jag kommer från planeten Jorden.
Dessa är alla mycket olika svar! Vilket är det riktiga svaret? Alla naturligtvis.
Du använde dig omedvetet av abstraktionsnivåer. Du svarade på den detaljnivå som skulle vara mer hjälpsam och beskrivande för den person du talade med. Med andra ord valde du den abstraktionsnivå som bäst stödde syftet med samtalet.
Skapande av abstraktionsnivåer
Vi kan ge namn åt dessa olika abstraktionsnivåer – lägre abstraktionsnivåer är mer specifika och högre abstraktionsnivåer är mer generella.
7. Planeten- Jag kommer från planeten Jorden. Ta mig till din ledare.
6. Land – Jag är från USA.
5. State – Jag är ursprungligen från Wisconsin.
4. City – Jag bor i Chicago, IL.
3. Neighborhood – Jag bor i Jackson Heights, Queens
2. Building – Jag bor i det blå lägenhetskomplexet på Michigan Ave.
1. Fysisk adress – 476 N Bond St, Fresno, CA 9442020.
Definition av abstraktion
Du hittar många olika definitioner och förklaringar av ordet ”abstraktion”, men jag har funnit att Wikipedias definition är den mest användbara när man arbetar med komplexa system,
Abstraktioner skapas genom att man väljer ut endast de aspekter av ett komplext system som är relevanta för ett visst subjektivt värderat syfte.
Konsekvenser av definitionen för systemdesign
- Abstraktioner skapas för ett visst syfte – de är problemlösningsverktyg som vi skapar för ett visst problem, en viss utmaning eller ett visst mål.
- Alla abstraktioner är förenklingar – vi väljer ut vissa aspekter av det komplexa systemet och utelämnar avsiktligt andra.
- Abstraktioner är användbara (eller inte) – i stället för att vara bra/dåliga eller rätt/fel, är abstraktioner mer/mindre användbara för att hjälpa oss att lösa problem.
Bildernas förräderi av René Magritte
Det berömda röret. Hur folk förebrådde mig för den! Och ändå, kunde du stoppa min pipa? Nej, det är bara en representation, eller hur? Så om jag hade skrivit på min bild ”Det här är en pipa” hade jag ljugit!
– René Magritte
Man måste älska surrealisterna och deras tunga budskap om att konst och verklighet är olika – konst är en abstraktion av verkligheten.
Datorprogrammering 101 av Abstruse Goose
Abstraktion är ett tungt använt begrepp inom datorprogrammering. Abstraktionsnivåerna i den här teckningen är: