**Apzīmējumu kognitīvās dimensijas** vai **kognitīvās dimensijas** ir apzīmējumu un programmēšanas valodu dizaina principi, ko aprakstījuši pētnieki Tomass R.G. Grīns un Marians Petrs. Dimensijas var tikt izmantotas, lai novērtētu esošās informācijas artefakta lietojamību vai kā heiristiku, lai vadītu jaunas.

Kognitīvās dimensijas ir paredzētas, lai nodrošinātu vieglu pieeju, lai analizētu dizaina kvalitāti, nevis padziļinātu, detalizētu aprakstu. Tās nodrošina kopīgu vārdu krājumu, lai apspriestu daudzus faktorus notācijā, UI vai programmēšanas valodas dizainā. Kognitīvās dimensijas arī palīdz izpētīt iespējamo dizainu telpu, izmantojot dizaina manevrus, izmaiņas, kas paredzētas dizaina uzlabošanai vienā dimensijā.

Kognitīvo dimensiju saraksts
----------------------------

Tomass Grīns sākotnēji definēja 14 kognitīvās dimensijas:

### Abstrakcijas gradients

Kādi ir minimālie un maksimālie abstrakcijas līmeņi, ko pakļauj notācija? Vai dati var būt iekapsulēti?

### Kartēšanas tuvums

Cik cieši apzīmējums atbilst problēmu pasaulei?

### Konsekvence

Pēc tam, kad daļu no apzīmējumiem ir iemācījušies, cik daudz pārējo var veiksmīgi uzminēt?

### Dažādība / neskaidrība

Cik simbolu vai cik daudz vietas apzīmējums prasa, lai iegūtu noteiktu rezultātu vai izteiktu nozīmi?

### Kļūda

Cik lielā mērā notācija ietekmē varbūtību, ka lietotājs kļūdās?

### Smagas garīgās operācijas

Cik daudz smaga garīgā apstrāde ir pie notācijas līmeņa, nevis semantiskā līmenī? Vai ir vietas, kur lietotājam ir nepieciešams izmantot pirkstus vai zīmētus komentārus, lai sekotu tam, kas notiek?

### Slēptas atkarības

Vai atkarības starp vienībām ir redzamas vai slēptas? Vai katra atkarība ir norādīta abos virzienos? Vai izmaiņas vienā apzīmējuma apgabalā noved pie neparedzētām sekām?

### Samierināmība

Vai vienlaikus var salīdzināt dažādas notācijas daļas?

### Priekšlaicīga apņemšanās

Vai pastāv stingri ierobežojumi attiecībā uz kārtību, kādā lietotājam jāizpilda uzdevumi, lai izmantotu sistēmu?

Vai ir pieņemti lēmumi, pirms visa nepieciešamā informācija ir pieejama? Vai šos lēmumus var mainīt vai labot vēlāk?

### Progresīvs novērtējums

Cik viegli ir novērtēt un iegūt atgriezenisko saiti par nepilnīgu risinājumu?

### Loma izteiksme

Cik acīmredzama ir katra apzīmējuma komponenta nozīme risinājumā kopumā?

### Sekundārā notācija un izvairīšanās no formālisma

Vai apzīmējumā var būt papildu informācija, izmantojot līdzekļus, kas nav saistīti ar sintaksi, piemēram, izkārtojums, krāsa vai citi norādījumi?

### Viskozitāte

Vai ir kādi raksturīgi šķēršļi, lai mainītu notāciju? Cik lielas pūles ir nepieciešamas, lai veiktu izmaiņas programmā izteiktajā programmā?

Šo dimensiju var tālāk iedalīt šādos veidos:

* **Knock-on viskozitāte**: izmaiņas kodā pārkāpj programmas iekšējos ierobežojumus, kuru izšķirtspēja var pārkāpt citus iekšējos ierobežojumus.
* **Atkārtošanās viskozitāte**: atsevišķai darbībai lietotāja konceptuālajā modelī ir nepieciešamas daudzas atkārtotas ierīces darbības.
* **Apjoma viskozitāte**: izmaiņas ievades datu kopas lielumā prasa izmaiņas programmas struktūrā.

### Redzamība

Cik viegli var identificēt, piekļūt un padarīt redzamas vajadzīgās notācijas daļas?

Citas dimensijas
----------------

Papildus iepriekš minētajam, dažreiz tiek piedāvātas jaunas dimensijas HCI pētniecības jomā ar dažādiem pieņemšanas un pilnveides līmeņiem.

Dažas no šīm kandidātu dimensijām ietver radošu neskaidrību (vai apzīmējums veicina vairāku tā paša elementa nozīmes interpretāciju?), indeksēšana (vai ir elementi, kas palīdz atrast konkrētu daļu?), Kopsavilkums (visas anotētās struktūras "gestaltskats") vai nevienmērība (daži radīšanas ceļi ir vieglāki nekā citi, kas aizspriedušos artefaktā izsaka izteiktas idejas).

Lietotāju darbības
------------------

Autori identificē četras galvenās lietotāju aktivitātes ar interaktīviem artefaktiem: pieaugumu (radīšanu), transkripciju, modifikāciju un izpētes dizainu. Katru darbību vislabāk nodrošina atšķirīga kompromisa izmantošana katrā dimensijā. Piemēram, augsta viskozitāte (izturība pret izmaiņām) ir kaitīga modifikācijas un izpētes darbībām, bet mazāk nopietna vienreizējiem uzdevumiem, kas veikti transkripcijā un pieaugumā.

Dizaina manevri
---------------

Dizaina manevrs ir dizaina izmaiņas, ko dizainers izstrādājis, lai mainītu tās pozīciju noteiktā dimensijā. Dimensijas tiek veidotas neatkarīgi no tā, lai dizainu varētu mainīt vienā dimensijā, saglabājot otru konstantu.

Bet tas parasti rada kompromisu starp dimensijām. Modifikācija, kas palielina notācijas lietojamību vienā dimensijā (saglabājot otru konstantu), parasti samazinās tās lietojamību trešajā dimensijā. Tas atspoguļo pieņēmumu sistēmā, ka nav nevienas ideālas saskarnes un ka kompromisi ir izmantojamības dizaina būtiska sastāvdaļa.

Dizaina manevra piemērs ir notācijas viskozitātes samazināšana, pievienojot abstrakcijas mehānismus. To var izdarīt, iestrādājot stila lapas, abstrakciju, kas atspoguļo dokumentā iekļauto elementu kopīgos atribūtus, uz apzīmējumu, kurā katrs dokumenta elements ir definējis savu individuālo stilu. Pēc šī dizaina manevra veikšanas redaktors, kas maina stilu, nekavējoties izmainīs visus vienumus, novēršot atkārtošanās viskozitāti, kas ir nepieciešama, mainot katra atsevišķa vienuma stilu.

Atsauces
--------

1. ↑   Green, T. R. G.; Petre, M. (1996). "Usability analysis of visual programming environments: A 'cognitive dimensions' framework". Journal of Visual Languages and Computing. 7: 131–174. CiteSeerX 10.1.1.22.1477. doi:10.1006/jvlc.1996.0009.
2. ↑   Green, T. R. G. "Instructions and Descriptions: some cognitive aspects of programming and similar activities". CiteSeerX 10.1.1.32.8003.