""TERIMAKASI TELAH BERKUNJUNG KEBLOG SAYA""

Selasa, 28 April 2015

Pengertian dan Elemen HTML

Pengertian dan Elemen HTML Pengertian HTML - HTML merupakan singkatan dari HyperText Markup Language, yaitu bahasa pemrograman untuk membangun halaman web. Untuk membangun halaman web dan mengakses halaman web tersebut kita memerlukan hal-hal berikut ini : Sebuah program Editor, bisa Notepad Webserver, seperti Apache, IIS, Xitami Dan Aplikasi Web Browser, seperti Mozilla Firefox, Google Chrome Dengan ketiga aplikasi diatas, kita bisa membangun dan menampilkan halaman website yang kita buat mengunakan bahasa pemrograman HTML. Element HTML Sebuah halaman HTML dibangun dengan unsur-unsur yang dimulai dan diakhiri dengan tag : Tag HTML terdiri dari (<), beberapa teks, dan tanda (>) Didalam Tag HTML ada nama tag dan ada juga Atribut HTML Bagian yang terdiri dari Tag HTML diantaranya : 1. Tag HTML … 2. Kepala Bagian kepala dalam HTML biasanya ditandai dengan : … Bagian ini berguna untuk membuat judul sebuah halaman HTML dengan tag berikut ini : 3.Badan Bagian badan dalam HTML biasanya ditandai dengan : … Bagian ini akan berisikan konten dalam sebuah halaman web yang akan ditampilkan. Secara sederhana Halaman sebuah web dapat ditampilkan sebagai berikut : Pengertian dan Elemen HTML Demikian artikel mengenai pengertian dan elemen HTML semoga bisa bermanfaat buat pembaca yang sedang ingin membuat sebuah halaman web

Bahasa Pemograman

Bahasa Pemograman Java Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek dan program java tersusun dari bagian yang disebut kelas. Kelas terdiri atas metode-metode yang melakukan pekerjaan dan mengembalikan informasi setelah melakukan tugasnya. Para pemrogram Java banyak mengambil keuntungan dari kumpulan kelas di pustaka kelas Java, yang disebut dengan Java Application Programming Interface (API). Kelas-kelas ini diorganisasikan menjadi sekelompok yang disebut paket (package). Java API telah menyediakan fungsionalitas yang memadai untuk menciptakan applet dan aplikasi canggih. Jadi ada dua hal yang harus dipelajari dalam Java, yaitu mempelajari bahasa Java dan bagaimana mempergunakan kelas pada Java API. Kelas merupakan satu-satunya cara menyatakan bagian eksekusi program, tidak ada cara lain. Pada Java program javac untuk mengkompilasi file kode sumber Java menjadi kelas-kelas bytecode. File kode sumber mempunyai ekstensi *.java. Kompilator javac menghasilkan file bytecode kelas dengan ekstensi *.class. Interpreter merupakan modul utama sistem Java yang digunakan aplikasi Java dan menjalankan program bytecode Java. Beberapa keunggulan java yaitu java merupakan bahasa yang sederhana. Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak menyediakan fitur-fitur rumit bahasa pemrograman tingkat tinggi, serta banyak pekerjaan pemrograman yang mulanya harus dilakukan manual, sekarang digantikan dikerjakan Java secara otomatis seperti dealokasi memori. Bagi pemrogram yang sudah mengenal bahasa C++ akan cepat belajar susunan bahasa Java namun harus waspada karena mungkin Java mengambil arah (semantiks) yang berbeda dibanding C++. Java merupakan bahasa berorientasi objek (OOP) yaitu cara ampuh dalam pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program komputer sebagai kelompok objek yang saling berinteraksi. Deskripsi ringkas OOP adalah mengorganisasikan program sebagai kumpulan komponen, disebut objek. Objek-objek ini ada secara independen, mempunyai aturan-aturan berkomunikasi dengan objek lain dan untuk memerintahkan objek lain guna meminta informasi tertentu atau meminta objek lain mengerjakan sesuatu. Kelas bertindak sebagai modul sekaligus tipe. Sebagai tipe maka pada saat jalan, program menciptakan objek-objek yang merupakan instan-instan kelas. Kelas dapat mewarisi kelas lain. Java tidak mengijinkan pewarisan jamak namun menyelesaikan kebutuhan pewarisan jamak dengan fasilitas antarmuka yang lebih elegan. Seluruh objek diprogram harus dideklarasikan lebih dulu sebelum digunakan. Ini merupakan keunggulan Java yaitu Statically Typed. Pemaksaan ini memungkinkan kompilator Java menentukan dan melaporkan terjadinya pertentangan (ketidakkompatibelan) tipe yang merupakan barikade awal untuk mencegah kesalahan yang tidak perlu (seperti mengurangkan variabel bertipe integer dengan variabel bertipe string). Pencegahan sedini mungkin diharapkan menghasilkan program yang bersih. Kebaikan lain fitur ini adalah kode program lebih dapat dioptimasi untuk menghasilkan program berkinerja tinggi. Java menggunakan model pengamanan tiga lapis (three-layer security model) untuk melindungi sistem dari untrusted Java code. Pertama, bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan-aturan dasar bahasa Java. Kedua, class loader menangani pemuatan kelas Java ke runtime interpreter. Ketiga, manajer keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem window. Platform independence adalah kemampuan program bekerja di sistem operasi yang berbeda. Bahasa Java merupakan bahasa yang secara sempurna tidak bergantung platform. Tipe variabel Java mempunyai ukuran sama di semua platform sehingga variabel bertipe integer berukuran sama tidak peduli dimana program java dikompilasi. Begitu telah tercipta file .class dengan menggunakan kompilator Java di platform manapun, maka file .class tersebut dapat dijalankan di platform manapun. Jadi “dimanapun dibuat, dimanapun dapat dijalankan”. Slogan ini biasa diringkas sebagai Write Once, Run Anywhere (WORA). Java termasuk bahasa Multithreading. Thread adalah untuk menyatakan program komputer melakukan lebih dari satu tugas di satu waktu yang sama. Java menyediakan kelas untuk menulis program multithreaded, program mempunyai lebih dari satu thread eksekusi pada saat yang sama sehingga memungkinkan program menangani beberapa tugas secara konkuren. Program Java melakukan garbage collection yang berarti program tidak perlu menghapus sendiri objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat di bahasa yang memungkinkan alokasi dinamis. Java mempunyai mekanisme exception-handling yang ampuh. Exception-handling menyediakan cara untuk memisahkan antara bagian penanganan kesalahan dengan bagian kode normal sehingga menuntun ke struktur kode program yang lebih bersih dan menjadikan aplikasi lebih tegar. Ketika kesalahan yang serius ditemukan, program Java menciptakan exception. Exception dapat ditangkap dan dikelola program tanpa resiko membuat sistem menjadi turun. Program Java mendukung native method yaitu fungsi ditulis di bahasa lain, biasanya C/C++. Dukungan native method memungkinkan pemrogram menulis fungsi yang dapat dieksekusi lebih cepat dibanding fungsi ekivalen di java. Native method secara dinamis akan di-link ke program java, yaitu diasosiasikan dengan program saat berjalan. Selain itu keuntungan menggunakan bahasa pemrograman Java antara lain memori pada Java secara otomatis dilengkapi garbage collector yang berfungsi mendealokasi memori yang tidak diperlukan. Tidak ada lagi upaya yang dilakukan pemrogram untuk melakukan dispose(). Kita tidak lagi dibebani urusan korupsi memori. Java menerapkan array sebenarnya, menghilangkan keperluan aritmatika pointer yang berbahaya dan mudah menjadi salah. Menghilangkan pewarisan jamak (multiple inheritance) diganti fasilitas antarmuka. Dan mudah dijalankan diberbagai platform. Grafical User Interface (GUI) adalah salah satu kemampuan Java dalam mendukung dan manajemen antarmuka berbasis grafis. Tampilan grafis yang akan ditampilkan terhubung dengan program serta tempat penyimpanan data. Elemen dasar di Java untuk penciptan tampilan berbasis grafis adalah dua paket yaitu AWT dan Swing. Abstract Windowing Toolkit (AWT), atau disebut juga “Another Windowing Toolkit”, adalah pustaka windowing bertujuan umum dan multiplatform serta menyediakan sejumlah kelas untuk membuat GUI di Java. Dengan AWT, dapat membuat window, menggambar, manipulasi gambar, dan komponen seperti Button, Scrollbar, Checkbox, TextField, dan menu pull-down. Penggunaan komponen AWT ditandai dengan adanya instruksi : import java.awt.*; Swing merupakan perbaikan kelemahan di AWT. Banyak kelas swing menyediakan komponen alternatif terhadap AWT. Contohnya kelas JButton swing menyediakan fungsionalitas lebih banyak dibanding kelas Button. Selain itu komponen swing umumnya diawali dengan huruf “J”, misalnya JButton, JTextField, JFrame, JLabel, JTextArea, JPanel, dan sebagainya. Teknologi swing menggunakan dan memperluas gagasan-gagasan AWT. Sementara, penggunaan komponen Swing ditandai dengan adanya instruksi : import javax.swing.*; Beberapa perbedaan AWT dan Swing, AWT merupakan komponen heavyweight (kelas berat) sedangkan Swing lightweight (kelas ringan). Swing memiliki lebih banyak komponen. Fasilitas Swing Look and Feel : Metal, Windows, Motif. Komponen Swing berdasar model-view, yaitu suatu cara pengembangan komponen dengan pemisahan penyimpanan dan penanganan data dari representasi visual data. Bahasa pemrograman Java merupakan salah satu bahasa pemrograman yang umum digunakan untuk mengembangkan aplikasi basis data yang dibuat menggunakan MySQL.

Pengertian Java dan JDK

Pengertian Java dan JDK

Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsysytems pada pertengahan tahun 1990. Menurut definisi Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada computer standalone ataupun pada lingkungan jaringan. Kita lebih menyukai Java sebagai sebuah teknologi disbanding hanya sebuah bahasa pemrograman, karena Java lebih lengkap karena Java lebih lengkap dibanding sebuah bahasa pemrograman konvensional. Teknologi Java memiliki tiga komponen penting, yaitu: · Programming-language specification · Application-programming interface · Virtual-machine specification JDK (Java Development Kit) Java Development Kit (JDK) adalah Sun Microsystems produk ditujukan untuk pengembang Java. Sejak diperkenalkannya Java, telah jauh SDK Java yang paling banyak digunakan. Pada tanggal 17 November 2006, Sun mengumumkan bahwa akan dirilis di bawah GNU General Public License (GPL), sehingga membuat perangkat lunak bebas. Hal ini terjadi sebagian besar pada tanggal 8 Mei 2007 [3]; Sun kontribusi kode sumber untuk JDKOpen. JRL (Java Research License) JRL (JAVA RESEARCH LICENSE) ini dibuat khusus untuk universitas dan peneliti yang ingin menggunakan teknologi Java [tm] sebagai subyek pembelajaran dan penelitian. Ia ditulis untuk menyederhanakan dan bersantai persyaratan bagian yang ada "penelitian" dari SCSL saat ini. JRL adalah lisensi yang diciptakan khusus untuk universitas dan peneliti yang ingin menggunakan teknologi Java sebagai subyek pembelajaran dan penelitian. itu ditulis untuk menyederhanakan dan bersantai persyaratan bagian yang ada "penelitian" dari SCSL saat ini. NetBeans NetBeans mengacu pada kedua kerangka platform untuk aplikasi desktop Java, dan sebuah lingkungan pengembangan terpadu (IDE) untuk pengembangan dengan Java, JavaScript, PHP, Python, Ruby, Groovy, C, C + +, Scala, Clojure, dan lain-lain. NetBeans IDE ditulis dalam Java dan berjalan di mana-mana di mana JVM yang diinstal, termasuk Windows, Mac OS, Linux, dan Solaris. Sebuah JDK diperlukan untuk pengembangan fungsionalitas Jawa, tetapi tidak diperlukan untuk pembangunan di bahasa pemrograman lain. Platform NetBeans memungkinkan aplikasi untuk dikembangkan dari satu set komponen perangkat lunak moduler yang disebut modul. Aplikasi berbasis platform NetBeans (termasuk IDE NetBeans) dapat diperpanjang oleh pengembang pihak ketiga.

Konversi Bilangan dengan C++

Setelah beberapa hari kemarin saya sharing tentang Konversi Bilangan Desimal ke Biner  menggunakan perulangan do while  hanya mengkonversi dari bilangan desimal ke biner, kali ini kita akan bahas tentang konversi bilangan dari bilangan Desimal ke bilangan hexadesimal, oktal, dan juga biner.
prinsipnya sebenarnya untuk konversi kepada biner sama saja dengan program sebelumnya hanya saja untuk progam ini kita tambahkan hex untuk konversi ke hexadesimal dan oct untuk konversi ke oktal.
mari kita lihat progam selengkapnya.


  1. #include<iostream.h>
  2. int main()
  3. {
  4.         long desimal, pembagi=1073741824, bit;
  5.         cout<<"Nilai Desimal : ";
  6.         cin>>desimal;

  7.                 cout<<"Hexadesimal = "<<hex<<desimal<<endl;
  8.                 cout<<"Oktal       = "<<oct<<desimal<<endl;
  9.                 cout<<"Biner       = ";
  10.         while(pembagi>desimal) pembagi/=2;
  11.         do{
  12.                 bit=desimal/pembagi;
  13.                 cout<<bit;
  14.                 desimal=desimal%pembagi;
  15.                 pembagi/=2;
  16.         }
  17.         while(pembagi>=1);
  18.         cout<<"\n";

  19.         return 0;    
  20. }
dari program diatas dapat kita lihat misalnya kita akan mengkonversi dari desimal dengan nilai 15 .
maka hasil outputnya akan seperti berikut ini.
Konversi bilangan 

Senin, 27 April 2015

MODEL USER DALAM DESAIN



Tujuan: Menerangkan beberapa model yang dapat digunakan selama proses desain interface

Dalam berbagai disiplin ilmu, model sering digunakan dalam proses desain. Model dapat bersifat:
·       Evaluative (mengevaluasi desain yang ada)
·       Generative (mempunyai kontribusi pada proses desain)
Pada prakteknya, model yang sering digunakan adalah yang bersifat generative

MODEL KOGNITIF

Presentasi model kognitif dibagi dalam kategori:
·       Representasi hirarki tugas (task) user dan struktur goal formulasi goal dan tugas
·       Model linguistik dan gramatik
Grammar dari translasi artikulasi dan bagaimana pemahamannya oleh user
·       Model tingkat device dan fisik (artikulasi pada tingkat motorik manusia)
    artikulasi tingkat motorik manusia dan bukan tingkat pemahaman manusia

 

Hirarki Tugas dan Goal


Banyak model menggunakan model pemrosesan mental dimana user mencapai goal dengan menemukan sub-goal dengan cara divide-and-conquer.

Model yang akan dibahas:
·    GOMS(Goals, Operators, Methods and Selections)
·    CCT (Cognitive Complexity Theory)
Contoh: Membuat laporan penjualan Buku IMK

Procedure report
        Gather data
                Find book names
                        Do keywords search of name database
                                <<futher sub-goals>>
                        sift through names & abstracts by hand
                                <<futher sub-goals>>
                search sales database
                        <<futher sub-goals>>
        layout tables and histograms
                <<futher sub-goals>>
        Write description
                <<futher sub-goals>>

Beberapa isu penting :
·       Dimana kita berhenti (dlm mendekomposisi tugas)  
·       Dimana kita memulai (analisa pada hirarki goal tertentu)  
·       Apa yang harus dilakukan, ketika ada beberapa solusi  
·       Apa yang harus dilakukan terhadap error yang terjadi  

GOMS


·       Goal; goal apa yang ingin dicapai oleh user
·       Operator; level terendah analisa, tindakan dasar yang harus dilakukan user dalam menggunakan sistem
·       Methods; Ada beberapa cara yang dilakukan dimana memisahkan kedalam beberapa subgoals
Contoh: pada window manager, perintah CLOSE dapat dilakukan dengan menggunakan popup menu atau hotkey
·       Selection; Pilihan terhadap metode yang ada

Analisa GOMS umumnya terdiri dari single high-level goal, kemudian didekomposisi menjadi deretan unit task, selanjutnya dapat didekomposisi lagi sampai pada level operator dasar
Dimana dalam membuat dekomposisi tugas digunakan hierarchical task analysis.
Analisa struktur goal GOMS dapat digunakan untuk mengukur kinerja. Kedalaman tumpukan struktur goal dapat digunakan untuk mengestimasi kebutuhan memori jangka-pendek.

Cognitive Complexity Theory (CCT)


·       CCT (Kieras dan Polson) dimulai dengan premis dasar dekomposisi goal dari GOMS dan menyempurnakan model untuk menghasilkan kekuatan yang lebih terprediksi.

·       Deskripsi goal user berdasarkan hirarki goal mirip-GOMS, tetapi diekspresikan terutama menggunakan production rules yang merupakan urutan rules:

 

        If kondisi then aksi


Dimana kondisi adalah pernyataan tentang isi dari memori kerja. Aksi dapat terdiri satu atau lebih aksi elementary.

 Contoh:
Tugas editing menggunakan editor ‘vi’ UNIX.
Tugasnya mengoreksi spasi antar kata.



Production rules CCT:

          (SELECT-INSERT-SPACE
          IF (AND (TEST-GOAL perform unit task)
                         ( TEST-TEXT task is insert space)
                         (NOT (TEST-GOAL insert space))
                         (NOT (TEST-NOTE executing insert space)))
          THEN (  (ADD-GOAL insert space)       
                         (ADD-NOTE executing insert space)
                         (LOOK-TEXT task is at %LINE %COL)))

          (INSERT-SPACE-DONE
          IF (AND (TEST-GOAL perform unit task)
                         (TEST-NOTE executing insert space)
                         (NOT (TEST-GOAL insert space)))
          THEN (  (DELETE-NOTE executing insert space)
                         (DELETE-GOAL perform unit task)
                         (UNBIND %LINE %COL))

          (INSERT SPACE-1
          IF (AND (TEST-GOAL insert space)
                          (NOT (TEST-GOAL move cursor))
                         (NOT (TEST-CURSOR %LINE %COL)))
          THEN (  (ADD-GOAL move cursor to %LINE %COL)))

          (INSERT SPACE-2
          IF (AND (TEST-GOAL insert space)
                          (TEST-CURSOR %LINE %COL))
          THEN (  (DO-KEYSTROKE ‘I’)
                         (DO-KEYSTROKE  SPACE)
                         (DO-KEYSTROKE  ESC)
                         (DELETE-GOAL insert space)))

Untuk mengetahui cara kerja rules, anggap user baru saja melihat ketikan yang salah dan isi dari memori kerja adalah :     (GOAL perform unit task)
          (TEXT task is insert space)
          (TEXT task is at 5 23)
          (CURSOR 8 7)

Isi memori kerja setelah rule SELECT-INSERT-SPACE di fire :
        (GOAL perform unit task)
          (TEXT task is insert space)
          (TEXT task is at 5 23)
          (NOTE executing insert space)
          (GOAL insert space)
          (LINE 5)
          (COL 23)
          (CURSOR 8 7)

·       Rule dalam CCT dapat digunakan untuk menerangkan fenomena error, tetapi tidak dapat memprediksi
Contoh: rule untuk menginsert space tidak mengecek modus editor yang digunakan
·       Semakin banyak production rules dalam CCT semakin sulit suatu interface untuk dipelajari

Problem CCT:
·       Semakin detail deskripsinya, size deskripsi dapat menjadi sangat besar
·       Pemilihan notasi yang digunakan
Contoh: pada deskripsi sebelumnya (NOTE executing insert space) hanya digunakan untuk membuat rule INSERT-SPACE-DONE di fire pada waktu yang tepat. Disini tidak jelas sama sekali signifikansi kognitifnya
·       CCT adalah engineering tool dengan pengukuran singkat learnability dan difficulty digabung dengan dekripsi detail dari user behaviour.






MODEL LINGUISTIK

Interaksi user dengan komputer dapat dipandang dari segi language, beberapa formalisasi model menggunakan konsep ini. Grammar BNF paling sering digunakan untuk melakukan dialog.

Backus-Naur Form (BNF)
·       Memandang dialog pada level sintaksis, mengabaikan semantik dari bahasa tersebut.

Contoh: Fungsi menggambar garis pada sistem grafik

draw-line          ::=    select-line + choose-points
                                                         + last-point
select-line        ::=    position-mouse + CLICK-MOUSE
choose-points  ::=    choose-one
                                      | choose-one + choose-points
choose-one     ::=    position-mouse + CLICK-MOUSE
last-point         ::=    position-mouse
+ DOUBLE-CLICK-MOUSE
        position-mouse::=    empty | MOVE-MOUSE
                                        + position-mouse
       
·       Non-terminals (huruf kecil) adalah abstraksi level tinggi dimana dapat terdiri dari non-terminal lainnya dan terminal dalam format:
name       ::=    expression
·       Terminals (huruf besar), merepresentasikan level terendah dari user behaviour
·       Operator ‘+’ adalah sequence, ‘|’ adalah choice

·       Deskripsi BNF dapat dianalisa dengan mengukur jumlah rules dan operatornya
·       Pengukuran kompleksitas untuk bahasa secara keseluruhan, BNF dapat digunakan untuk menentukan berapa banyak tindakan dasar yang dibutuhkan dalam tugas tertentu, dan mendapatkan estimasi kasar kesulitan (difficulty) dari tugas


Task-Action Grammar (TAG)

·       BNF mengabaikan kelebihan konsistensi dalam struktur language dan dalam menggunakan nama perintah

Contoh:
3 UNIX command:
        copy        ::=    ‘cp’ + filename + filename
                                |       ‘cp’ + filename + directory
        move               ::=    ‘mv’ + filename + filename
                                |       ‘mv’ + filename + directory
        link                   ::=    ‘ln’ + filename + filename
                                |       ‘ln’ + filename + directory

BNF tidak dapat membedakan konsistensi dan inkonsistensi command (misal: ln mengambil argumen direktori lebih dahulu). Dengan TAG dapat diatasi dengan mengubah deskripsinya :

File-op [Op] :=  command-op[Op]+ filename + filename
                              |  command-op[Op] + filename + directory
        command-op[Op=copy]   := ‘cp’
        command-op[Op=move]  := ‘mv’
        command-op[Op=link]     := ‘ln’

·       TAG mengatasi masalah ini dengan menyertakan parametrized grammar rules untuk konsistensi dan pengetahuan umum user (seperti atas lawan dari bawah)

Contoh: Dua command line interface untuk menggerakkan robot di atas lantai
Command interface 1
movement [Direction]
        :=     command[Direction] + distance + RETURN
command[Direction=forward]           :=     ‘go 395’
command[Direction=backward]       :=     ‘go 013’
command[Direction=left]                  :=     ‘go 712’
command[Direction=right]               :=     ‘go 956’

Command interface 2
movement [Direction]
        :=     command[Direction] + distance + RETURN
command[Direction=forward]           :=     ‘FORWARD’
command[Direction=backward]       :=     ‘BACKWARD’
command[Direction=left]                  :=     ‘LEFT’
command[Direction=right]               :=     ‘RIGHT’

Interface kedua lebih komunikatif. TAG menambahkan form khusus known-item yang digunakan untuk menginformasi-kan ke user bahwa inputnya sudah diketahui secara umum. Interface kedua dapat ditulis ulang sebagai berikut:

Command interface 2
movement [Direction]
        :=     command[Direction] + distance + RETURN
command[Direction] := known-item[Type = word, Direction]
command[Direction=forward]           :=     ‘FORWARD’
command[Direction=backward]       :=     ‘BACKWARD’
command[Direction=left]                  :=     ‘LEFT’
command[Direction=right]               :=     ‘RIGHT’

MODEL FISIK DAN DEVICE


Keystroke Level Model (KLM)

·       Tugas dapat didekomposisi menjadi dua fase:
·       Akuisisi tugas, ketika user membangun representasi mental dari tugas
·       Execution tugas menggunakan fasilitas sistem
·       KLM hanya memberikan prediksi untuk kegiatan pada tahap berikutnya
·       KLM merupakan bentuk model GOMS tingkat terendah
·       Model mendekomposisi fase eksekusi menjadi operator motor-fisik, operator mental dan operator respons
·       K keystroking
·       B menekan tombol mouse
·       P pointing, menggerakkan mouse (atau sejenis) ke target
·       H Homing, perpindahan tangan antar mouse dan keyboard
·       D menggambar garis dengan mouse
·       M persiapan mental untuk tindakan fisik
·       R respon sistem, dapat diabaikan jika user tidak perlu menunggu untuk itu

Contoh : Mengedit karakter tunggal yang salah
1.   memindahkan tangan ke mouse H[mouse]
2.   Meletakkan cursor setelah karakter yang salah PB[LEFT]
3.   Kembali ke keyboard H[keyboard]
4.   Hapus kerakter MK[DELETE]
5.   Ketik koreksi K[char]
6.   Mereposisi ke insertion point H[mouse]MPB[LEFT]

Waktu yang dibutuhkan:
        Texecute     = TK + TB + TP + TH + TD + TM + TR 
                        =  2tK + 2tB + tP + 3tH + 0 + tM + 0 

 

Three-State Model

Ada berbagai macam device penunjuk yang digunakan selain mouse. Device biasanya dapat dinyatakan equivalen secara logika (dilihat dari level aplikasi), tetapi dilihat dari karakteristik motor-sensor fisiknya berbeda. Oleh karena itu three-state model dibuat untuk mewakili device tersebut




ARSITEKTUR KOGNITIF

Asumsi arsitektural yang mendasari permodelan kognitif

Problem Space Model

Dalam ilmu komputer, problem biasanya dijabarkan sebagai pencarian ke setiap state yang memungkinkan dari beberapa state awal ke state goal, keseluruhan state ini berikut transisinya biasa juga disebut state space. Proses pencarian solusi biasanya disebut Problem space.
Setelah problem diidentifikasi dan sampai pada solusi (algoritma), programmer kemudian merepresentasikan problem dan algoritma kedalam bahasa pmrograman yang dapat dieksekusi pada mesin untuk mencapai state yang diinginkan

Interactive cognitive sub-systems (ICS)
ICS membentu sebuah model dari persepsi kognitif dan aksi. ICS memandang user sebagai mesin pemroses informasi. Penekanannya dalam menentukan kemudahan melaksanakan prosedur tindakan tertentu dengan membuatnya lebih mudah dilaksanakan didalam user itu sendiri.
        ICS menggunakan dua tradisi psikologi yang berbeda didalam satu arsitektur kognitif. Pertama pendekatan arsitektural dan general-purpose information processing, kedua, karakteristik pendekatan komputasional dan representasional.
        Arsitektur ICS dibangun dengan mengkoordinasikan sembilan sub-system yan glebih kecil: lima sub-system periferal yang berkontak langsung secara fisik dan empat adalah sentral, yang menyangkut pemrosesan mental