Powered By Blogger

Kamis, 23 April 2015

SOFTSKILL - Tugas Minggu Ke 5, GUI (Graphical User Interface)


Pendahuluan GUI



Graphical User Interface (GUI) adalah bentuk dialog atau komunikasi antara manusia dan komputer yang berbentuk grafis dan sangat atraktif.
Contoh antarmuka manusia dengan komputer yang berbentuk grafis menggunakan pemrograman visual (Visual Basic,Visual Foxpro,Delphi dan lain-lain). Sistem Operasi Windows merupakan sistem informasi berbasis grafis
Windows menyediakan suatu pustaka yang berisi pustaka yang berisi kumpulan dari ratusan fungsi yang berisi dyang disebut windows API (Application Programming Interface)
Pemrograman grafis pada sistem operasi Windows selalu menggunakan antarmuka yang disebut GDI (Grafis Device Interface)
Dalam pemabahasan GUI akan digunakan bahasa pemgrograman visual basic 6.0. Visual Basic 6.0 merupakan salah satu bahasa pemrograman yang mendukung GUI.

Desain Suatu Program Grafis ditentukan oleh komposisi gambar-gambar yang digunakan meliputiLetak dari obyek gambar ada screen (sistem koordinat),Tata warna yang digunakan (Pewarnaan),ukuran dll.


 Apa Itu GUI ?


Secara sederhana GUI adalah suatu media virtual yang dapat membuat pengguna memberikan perintah tertentu pada komputer tanpa mengetik perintah tersebut, namun menggunakan gambar dan simbol yang tersedia.
Pengguna tidak mengetikan perintah seperti pada komputer dengan shell atau teks. dengan GUI perintah dapat dikonversi menjadi ikon dalam layar monitor yang dapat diklik untuk memulai fungsinya. Sebagai contoh anda tentu paham dengan ikon berbentuk kertas dengan huruf w diatasnya. Itu adalah ikon untuk menunjukan dan menjalankan Ms.Word, sebuah aplikasi yang digunakan untuk mengetik 


GUI berbeda dengan teknologi komputer dimasa lalu. Komputer jaman dahulu tampilan hanya sebatas teks. Keunggulan GUI teknologi GUI ini adalah kita/user dapat menjalankan komputer dan instruksi-instruksi hanya dengan menekan mouse (klik).

Kelebihan dan Kekurangan GUI


Kelebihan GUI :
1. Desain Grafis lebih menarik.
2. GUI memungkinkan user untuk berinteraksi dengan komputer secara lebih         baik.
3. Memudahkan pengguna.
4. Menarik minat pengguna.
5. Resolusi gambar yang tinggi.

Kekurangan GUI :
1. Memakan memory yang sangat besar.
2. Bergantung pada perangkat keras.
3. Membutuhkan banyak tempat pada layar komputer.
4. Tidak fleksibel.

Pengembangan Aplikasi dengan GUI



Data statistik menunjukkan bahwasanya tidak kurang dari 40% aplikasi web dibangun dengan menggunakan bahasa pemrograman PHP. Hal tersebut memperlihatkan dominasi PHP pada dunia pengembangan aplikasi web. Pada kenyataannya, PHP adalah bahasa pemrograman yang sangat handal yang dapat melakukan banyak hal selain mengolah halaman-halaman web.
Mungkin masih banyak di antara kita yang belum mengetahui bahwasanya selain digunakan untuk membangun aplikasi web, PHP dapat pula digunakan untuk membangun aplikasi GUI (Graphical User Interface). Hal tersebut sangatlah wajar mengingat belum populernya penggunaan PHP untuk membangun aplikasi GUI. Pada artikel ini, kita akan membahas mengenai pembangunan aplikasi GUI dengan menggunakan gambArt yang merupakan produk dari proyek open source karya developer Indonesia.

PHP dan Aplikasi GUI
Saat ini kita dapat menemukan beberapa solusi yang dapat digunakan untuk membangun aplikasi GUI dengan menggunakan PHP. Solusi yang ada dan cukup banyak dikenal saat ini adalah: PHP-GTK, WinBinder, dan PHP-QT.
Sayangnya, walaupun solusi untuk pembangunan aplikasi GUI menggunakan PHP sudah tersedia, kita masih “belum” dapat menemukan aplikasi GUI komersial berskala enterprise yang dibangun dengan menggunakan PHP. Mengapa hal ini bisa terjadi? Beberapa penyebab yang mendasari minimnya penggunaan PHP dalam pembangunan aplikasi GUI adalah sebagai berikut :
Belum mature-nya solusi yang ada. Hal ini menyebabkan developer enggan untuk menggunakan PHP untuk membangun aplikasi GUI komersial
Perkembangan dari solusi-solusi tersebut masih kurang cepat
Tingkat kesulitan pembangunan aplikasi GUI menggunakan PHP masih relatif tinggi
Kemampuan yang dimiliki PHP untuk pembangunan aplikasi GUI masih jauh tertinggal jika dibandingkan dengan bahasa pemrograman lain yang sudah lebih dahulu digunakan untuk pembangunan aplikasi GUI, misalnya Java, C# dan C++
Serta berbagai alasan lainnya
Untuk menjawab berbagai masalah tersebut di atas, saat ini tengah dikembangkan sebuah solusi baru untuk membantu pembangunan aplikasi GUI menggunakan PHP. Solusi baru tersebut adalah Klorofil Platform. Klorofil Platform dibangun oleh suatu komunitas yang bernama Klorofil Collaboration Project atau dikenal juga dengan nama Klorofil. Di dalam Klorofil Platform terdapat sebuah GUI framework yang bernama gambArt. GUI framework inilah yang dapat kita gunakan untuk membangun aplikasi GUI menggunakan PHP.
Sebelum kita membahas lebih lanjut mengenai Klorofil Platform, gambArt, dan lain sebagainya, kita akan melihat terlebih dahulu salah satu aplikasi yang dibangun menggunakan gambArt. Gambar kalkulator yang anda lihat adalah dibangun dengan menggunakan PHP dan gambArt.

sumber : 
Buku Interaksi Manusia dan Komputer Universitas Gunadarma
Santosa, P. Insap, et al. "Extensible Tools for Managing Interactive Interface," Human-Computer Interactions Term Project, Computer Science Department University of Colorado at Boulder 1990
http://belajar-komputer-mu.com/pengertian-dan-sejarah-singkat-gui/
Santosa, P. Insap, "Grafika Komputer dan Interaksi Manusia dan Komputer", Penerbit Andi, Yogyakarta 


Rabu, 22 April 2015

SOFTSKILL - Tugas Minggu Ke 4, Interface



Pendahuluan Interface

 

Sebuah program aplikasi pastilah ditunjukan kepada pengguna yang dapat dipastikan bukan merupakan perancang program aplikasi tersebut. Program aplikasi, pada dasarnya dapat di kelompokkan ke dalam dua kategori besar, yakni program aplikasi untuk keperluan khusus dengan pengguna yang khusus pula (special purpose software) dan program aplikasi yang akan digunakan oleh banyak pengguna (general purpose software) yang juga sering dikenal dengan sebutan public software. Karena perbedaan pada calon pengguna, maka perancang program antarmuka harus benar-benar memperhatikan hal ini.

Pada kelompok pertama, yakni pada program aplikasi untuk keperluan khusus, misalnya program aplikasi untuk inventori gudang, pengeloaan data akademis mahasiswa, pelayanan reservasi hotel, dan program-program aplikasi serupa, kelompok calon pengguna yang akan memanfaatkan program aplikasi tersebut dapat dengan mudah diperkirakan, baik dalam hal keahlian pengguna, maupun ragam antarmuka yang akan digunakan. Untuk kelompok ini ada satu pendekatan yang dapat dilakukan, yakni pendekatan yang disebut dengan user-centered design approach. Cara pendekatan ini berbeda dengan user design approach.


Pendekatan secara user centered design adalah perancangan antarmuka yang melibatkan pengguna. Pelibatan pengguna disini tidak diartikan bahwa pengguna harus ikut memikirkan bagaimana implementasinya nanti, tetapi pengguna diajak untuk aktif berpendapat ketika perancang antarmuka sedang menggambar “wajah” antarmuka. Dengan kata lain, perancang dan pengguna duduk bersama-sama untuk merancang wajah antarmuka yang diinginkan pengguna. Pengguna menyampaikan keinginannya, sementara perancang menggambar keinginan pengguna tersebut sambil menjelaskan keuntungan dan kerugian wajah antarmuka yang diingnkan oleh pengguna, serta kerumitan implementasinya. Dengan cara seperti ini, pengguna seolah-olah sudah mempunyai gambaran nyata tentang antarmuka yang nanti akan mereka gunakan.

Pada user design approach,penggguna sendirilah yang merancang wajah antarmuka yang diinginkan. Di satu sisi cara ini akan mempercepat proses pengimplementasian modul antarmukka, tetapi di sisi lain hal itu justru sangat memberatkan pemrogram karena apa yang diinginkan pengguna ada yang tidak bias dikerjakan menggunakan piranti bantu yang ada.
Perancang program aplikasi yang dimasukkan dalam kelompok kedua, atau public software, perlu menganggap bahwa program aplikasai tersebut akan digunakan oleh berbagai pengguna dengan berbagai tingkat kepandaian dan karakeristik yang sangat beragam. Di satu sisi keadaan ini dapat ia gunakan untuk “memaksa” pengguna menggunakan antarmuka yang ia buat, tetapi pada sisi lain “pemaksaan’” itu akan berakibat bahwa program aplikasinya menjadi tidak banyak yang menggunakan. Satu kunci penting dalam pembuatan modul antarmuka umtuk program” aplikasi pada kelompok ini adalah dengan melakukan customization, sehingga pengguna dapat menggunakan program aplikasi dengan wajah antarmukanya yang sesuai dengan selera masing-masing pengguna. Salah satu contoh dari adanya kemampuan yang dimiliki oleh sebuah program aplikaasi untuk dapat disesuaikan dengan karakeristik pengguna adalah pengaturan desktop pada Microsoft Windows 94.

Dengan adanya kemampuan ini, pengguna dapat memilih sendiri warna desktop yang dia inginkan.

Faktor-faktor yang perlu diperhatikan :

1.  Ilusi pada object-objek yang dapat dimanipulasi :

  • gunakan kumpulan object yang ada
  • yakinkan pengguna object
  • gunakan mekanisme yang konsisten untuk memanipulasi object yang akan muncul dilayar

2.  Urutan Visual & Fokus Pengguna

  • Membuat suatu object berkedip (posisi kursor)
  • Menggunakan warna untuk object-2 tertentu (suatu pilihan)
  • Menyajikan suatu animasi yang akan lebih menarik

3.  Struktural Internal

  • Yaitu Reveal Code : suatu tanda khusus yang digunakan untuk menunjukkan adanya perbedaan karakter dari suatu tampilan.
  • Kosakata Grafis yang konsisten dan sesuai
    Penggunaan simbol -simbol atau icon-icon tertentu.
  • Kesesuaian Dengan Media
    Rancangan tampilan sesuaikan dengan kemampuan dari software dan hardware yang ada.
  • Prinsip dan Petunjuk Perancangan

Antarmuka pengguna secara alamiah terbagi menjadi empat komponen:

  • model pengguna
  • bahasa perintah
  • umpan balik, dan
  • penampilan informasi.

  1. Model pengguna merupakan dasar dari tiga komponen yang lain.
    Model pengguna merupakan model konseptual yang diinginkan oleh pengguna dalam memanipulasi informasi dan proses yang diaplikasikan pada informasi tersebut.Setelah pengguna mengetahui dan memahami model yang ia inginkan, dia memerlukan peranti untuk memanipulasi model itu.
  2. Peranti pemanipulasian model ini sering disebut dengan bahasa perintah (command language), yang sekaligus merupakan komponen kedua dari antarmuka pengguna. Idealnya, program komputer kita mempunyai bahasa perintah yang alami, sehingga model pengguna dengan cepat dapat dioperasionalkan.
  3. Komponen ketiga adalah umpan balik. Umpan balik di sini diartikan sebagai kemampuan sebuah program yang membantu pengguna untuk mengoperasian program itu sendiri. Umpan balik dapat berbentuk: pesan-pesan penjelasan, pesan penerimaan perintah, indikasi adanya obyek terpilih, dan penampilan karakter yang diketikkan lewat papan ketik. Beberapa bentuk umpan balik terutama ditujukan kepada pengguna yang belum berpengalaman dalam menjalankan program aplikasi itu. Umpan balik dapat digunakan untuk memberi keyakinan bahwa program telah menerima perintah pengguna dan dapat memahami maksud perintah tersebut.
  4. Komponen keempat adalah tampilan informasi. Komponen ini digunakan untuk menunjukkan status informasi atau program ketika pengguna melakukan suatu tindakan. Pada bagian ini, perancang harus menampilkan pesan-pesan tersebut seefektif mungkin, sehingga mudah dipahami oleh pengguna.
  5. Urutan Perancangan
    Perancangan dialog, seperti halnya perancangan sistem uang lain, harus dikerjakan secara top-down. Proses perancangannya dapat dikerjakan secara stepwise refinement sebagai berikut:
    1. Pemilihan Ragam Dialog
      Pemilihan ragam dialog dipengaruhi oleh karakteristik populasi pengguna (pengguna mula, menengah, atau pengguna ahli), tipe dialog yang diperlukan, dan kendala teknologi yang ada untuk mengimplementasikan ragam dialog tersebut. Ragam dialog yang terpilih dapat berupa sebuah program tunggal, atau sekumpulan ragam dialog yang satu sama lain saling mendukung.
    2. Perancangan Struktur Dialog
      Tahap kedua adalah melakukan analisis tugas dan menentukan model pengguna dari tugas tersebut untuk membentuk struktur dialog yang sesuai. Dalam tahap ini pengguna banyak dilibatkan, sehingga pengguna langsung mendapatkan umpan balik yang berupa diskusi informal maupun prototipe dari dialog yang nantinya akan ia digunakan.
    3. Perancangan Format Pesan
      Pada tahap ini tata letak tampilan dan keterangan tekstual secara terinci harus mendapat perhatian lebih. Selain itu, kebutuhan data masukan yang mengharuskan pengguna untuk memasukkan data ke dalam komputer juga harus dipertimbangkan dari segi efisiensinya. Salah satu contohnya adalah dengan mengurangi pengetikan yang tidak perlu dengan cara mengefektifkan penggunaan tombol.
    4. Perancangan Penanganan Kesalahan
      Bentuk-bentuk penanganan kesalahan yang dapat dilakaukan antara lain adalah:

  •  Validasi pemasukan atau: misalnya jika pengguna harus memasukkan bilangan positif, sementara ia memasukkan data negatif atau nol, maka harus ada mekanisme untuk mengulang pemasukan data tersebut.
  • Proteksi pengguna: program memberi peringatan ketika pengguna melakukan suatu tindakan secara tidak sengaja, misalnya penghapusan berkas.
  • Pemulihan dari kesalahan: tersedianya mekanisme untuk membatalkan tindakan yang baru saja dilakukan.
  • Penampilan pesan salah yang tepat dan sesuai dengan kesalahan yang terjadi pada waktu itu.

  1. Perancangan Struktur Data
    Struktur data yang diperlukan untuk mengimplementasikan dialog berbasis grafis jauh lebih rumit dibandingkan dengan struktur data yang diperlukan pada dialog berbasis tekstual. Meskipun demikian, sesulit atau semudah apapun struktur data yang akan digunakan, struktur data tersebut harus diturunkan dari spesifikasi antarmuka yang telah dibuat. Hal ini perlu ditekankan agar keinginan pengguna dan model sistem yang telah dirancang saling mempunyai kecocokan satu sama lain.
  2. Perancangan Tampilan Berbasis Teks
    Pada perancangan tampilan untuk antarmuka berbasis teks, ada enam faktor yang harus dipertimbangkan agar diperoleh tata letak tampilan yang berkualitas tinggi.

Keenam faktor tersebut dijelaskan sebagai berikut.

  • Urutan Penyajian
    Urutan penyajian harus disesuaikan dengan model pengguna yang telah disusun. Biasanya berdasarkan kesepakatan dengan calon pengguna tentang urutan tampilan yang akan digunakan.
  • Kelonggaran (Spaciousness)
    Penyusunan tata letak yang tidak mengindahkan estetika akan mempersulit pengguna dalam pencarian suatu teks
  • Pengelompokkan
    Data yang berkaitan sebaiknya dikelompokkan
  • Relevansi
    Tampilkan hanya pesan-pesan yang relevan sesuai topic
  • Konsistensi
    Perancang harus konsisten dalam menggunakan ruang tampilan yang tersedia
  •  Kesederhanaan
    Cari cara yang paling mudah untuk menyajikan informasi yang dapat dipahami dengan cepat oleh pengguna

  1. Perancangan Tampilan Berbasis Grafis

Faktor – faktor yang perlu diperhatikan :

  1. Ilusi pada object-2 yang dapat dimanipulasi :

  • gunakan kumpulan object yang ada
  • yakinkan pengguna object
  • gunakan mekanisme yang konsisten untuk memanipulasi object yang akan muncul dilayar

  1. Urutan Visual & Fokus Pengguna

  • Membuat suatu object berkedip (posisi kursor)
  • Menggunakan warna untuk object-2 tertentu (suatu pilihan)
  • Menyajikan suatu animasi yang akan lebih menarik

Tujuan Interface

Tujuan sebuah interface adalah mengkomunikasikan fitur-fitur sistem yang tersedia agar user mengerti dan dapat menggunakan sistem tersebut. Dalam hal ini penggunaan bahasa amat efektif untuk membantu pengertian, karena bahasa merupakan alat tertua (barangkali kedua tertua setelah gesture) yang dipakai orang untuk berkomunikasi sehari-harinya. Praktis, semua pengguna komputer dan Internet (kecuali mungkin anak kecil yang memakai komputer untuk belajar membaca) dapat mengerti tulisan.

Meski pada umumnya panduan interface menyarankan agar ikon tidak diberi tulisan supaya tetap mandiri dari bahasa, namun elemen interface lain seperti teks pada tombol, caption window, atau teks-teks singkat di sebelah kotak input dan tombol pilihan semua menggunakan bahasa. Tanpa bahasa pun kadang ikon bisa tidak jelas maknanya, sebab tidak semua lambang ikon bisa bersifat universal.

Meskipun penting, namun sayangnya kadang penggunaan bahasa, seperti pemilihan istilah, sering sekali dianggap kurang begitu penting. Terlebih dari itu dalam dunia desain situs Web yang serba grafis, bahasa sering menjadi sesuatu yang nomor dua ketimbang elemen-elemen interface lainnya.

Tujuan sebuah interface adalah mengkomunikasikan fitur-fitur sistem yang tersedia agar user mengerti dan dapat menggunakan sistem tersebut. Dalam hal ini penggunaan bahasa amat efektif untuk membantu pengertian, karena bahasa merupakan alat tertua (barangkali kedua tertua setelah gesture) yang dipakai orang untuk berkomunikasi sehari-harinya. Praktis, semua pengguna komputer dan Internet (kecuali mungkin anak kecil yang memakai komputer untuk belajar membaca) dapat mengerti tulisan.


Perbandingan Interface



Interface ada dua jenis, yaitu :
Graphical Interface : Menggunakan unsur-unsur multimedia (seperti gambar, suara, video) untuk berinteraksi dengan pengguna.
Text-Based : Menggunakan syntax/rumus yang sudah ditentukan untuk memberikan perintah.

Direct manipulation – pengoperasian secara langsung : interaksi langsung dengan objek pada layar. Misalnya delete file dengan memasukkannya ke trash. Contoh: Video games. Kelebihan :  Waktu pembelajaran sangat singkat, feedback langsung diberikan pada tiap aksi sehingga kesalahan terdeteksi dan diperbaiki dengan cepat. Kekurangan :  Interface tipe ini rumit dan memerlukan banyak fasilitas pada sistem komputer, cocok untuk penggambaran secara visual untuk satu operasi atau objek.
Menu selection – pilihan berbentuk menu :  Memilih perintah dari daftar yang disediakan. Misalnya saat click kanan dan memilih aksi yang dikehendaki. Kelebihan :   tidak perlu ingat nama perintah. Pengetikan minimal. Kesalahan rendah. Kekurangan : Tidak ada logika AND atau OR. Perlu ada struktur menu jika banyak pilihan. Menu dianggap lambat oleh expert   dibanding command language.
Form fill-in – pengisian form : Mengisi area-area pada form. Contoh : Stock control. Kelebihan : Masukan data yang sederhana. Mudah dipelajari Kekurangan : Memerlukan banyak tempat di layar. Harus menyesuaikan dengan form manual dan kebiasaan.
Command language – perintah tertulis : Menuliskan perintah yang sudah ditentukan pada program. Contoh: operating system. Kelebihan : Perintah diketikan langsung pada system. Misal UNIX, DOS command. Bisa diterapkan pada terminal yang murah.Kombinasi perintah bisa dilakukan. Misal copy file dan rename nama file. Kekurangan : Perintah harus dipelajari dan diingat cara penggunaannya, tidak cocok untuk   biasa. Kesalahan pakai perintah sering terjadi. Perlu ada sistem pemulihan kesalahan.Kemampuan mengetik perlu.
Natural language – perintah dengan bahasa alami : Menggunakan bahasa alami untuk mendapatkan hasil. Contoh: search engine di Internet. Kelebihan: Perintah dalam bentuk bahasa alami, dengan kosa kata yang terbatas (singkat), misalnya kata kunci yang kita tentukan untuk dicari oleh search engine. Ada kebebasan menggunakan kata-kata. Kekurangan: Tidak semua sistem cocok gunakan ini. Jika digunakan maka akan memerlukan banyak pengetikan.
 


Tipe-tipe Interface 



2.1 Komponen Dasar

Komponen-komponen dasar interface grafis antara lain adalah :

Ø  Tombol tekan (dalam gambar adalah kotak dengan label “Simpan”),

Ø  spin box

Ø  list box

Ø  combo box

Ø  tombol radio

Ø  check button

Ø  dan penggeser (sliding bar atau disingkat slider) baik yang tegak maupun datar.

Selain komponen-komponen interfacelainnya adalah :

Ø  Ikon (icon)

Ø  Text box
Ø  Editor box       




2.2 Perangkat Interaktif
Alat Interaktif adalah perangkat-perangkat yang digunakan untuk memberi perintah komputer. Perangkat interaktif contohnya:  Mouse, Trackball, dan Gamepad
2.3 Dialog Control

1. Dialog Berbasis Perintah Tunggal (Command Line Dialogue)

Merupakan ragam dialog yang paling konvensional. Perintah-perintah tunggal yang dapat dioperasikan biasanya tergantung dari sistem komputer yang dipakai dan berada dalam suatu domain yang disebut bahasa perintah (command language). Bahasa perintah harus dirancang sedemikian rupa sehingga mereka mempunyai sifat alamiah, yakni mudah dipelajari dan diingat oleh kebanyakan pengguna. Meskipun bersifat buatan, bahasa buatan ini tetap mempunyai struktur leksikal, sintaksis dan semantik tertentu.

Beberapa contoh sederhana yang bisa kita lihat antara lain adalah perintah-perintah yang dimiliki oleh DOS (Disk Operating System). Terbagi atas perintah dalam (internal command) yang tidak memerlukan suatu berkas .EXE atau .COM tertentu (Contoh: DIR, CLS) dan perintah luar (external command) yang memerlukan suatu berkas .EXE atau .COM tertentu (Contoh: FORMAT, DELTREE).
2.4 Form Isian
            Teknik dialog pengisian borang (form filling dialogue) merupakan suatu penerapan langsung dari aktifitas pengisian borang dalam kehidupan sehari-hari dimana pengguna akan dihadapkan pada suatu bentuk borang yang ada di layar komputer yang mereka gunakan. Perlman membuat perbedaan antara menu dan borang. Menu adalah dialog yang menampilkan sejumlah alternatif pilihan yang pilihan-pilihan itu dapat dipilih pengguna dengan cara tertentu pada setiap daur aktifitas. Borang adalah tampilan dari sejumlah persyaratan (requirement) yang menampilkan sejumlah pilihan dan berbagai nilai parameter yang telah ditentukan dan diintegrasikan kedalam sebuah tampilan pada layar.

Tipe Interaksi

Pemilihan tipe interaksi yang tepat dapat memberikan efek yang baik terhadap dialog antara user dengan komputer. Terdapat beberapa tipe interaksi yang umum digunakan, yaitu :
1. Command Line Interface (CLI)
Merupakan bentuk dialog interaktif yang pertama digunakan dan masih dipakai hingga saat ini. Dengan CLI, user memberikan instruksi secara langsung kepada komputer menggunakan tombol fungsi, karakter tunggal, command dalam bentuk singkat maupun panjang. CLI memungkinkan user mengakses dengan cepat fungsi sistem dan beberapa tools.
2. Menu
Pada menu-driven interface , sekumpulan opsi / pilihan yang tersedia bagi user ditampilkan pada layar dan dapat dipilh dengan menggunakan mouse atau tombol numerik maupun alfabetik. Pilihan pada menu harus merepresentasikan arti dan dikelompokkan berdasarkan suatu kategori agar mudah dikenali dan memudahkan user memilih sesuai dengan tugas yang akan dilaksanakan.
3. Natural language
Mungkin merupakan mekanisme komunikasi yang atraktif. Umumnya, komputer tidak dapat mengerti instruksi yang dituliskan dalam bahasa sehari-hari. Natural language dapat mengerti input tertulis (written input) dan suara (speech input). Namun masih ada kekurangan dalam hal ambiguity (kerancuan) pada aspek sintaks dan semantik.
4. Q/A & query dialogue
Merupakan mekanisme sederhana untuk input pada beberapa aplikasi. User diberikan serangkaian pertanyaan umumnya dalam bentuk jawaban ya/tidak (Y/N), pilihan ganda atau dalam bentuk kode, dan dibimbing tahap demi tahap selama proses interaksi. Interface ini mudah dipelajari namun terbatas fungsinya.
5. Form-fills and spreadsheet
Form-fill utamanya digunakan untuk aplikasi pemasukan (data entry) dan pencarian (data retrieval) data. Bentuk form-fill adalah berupa display yang menyerupai selembar kertas dengan beberapa slot / field untuk diisi. Spreadsheet adalah variasi dari form-fill. Spreadsheet terdiri dari sel yang dapat berisi nilai atau formula.
6. WIMP interface (Windows, Icons, Menu, Pointers)
WIMP merupakan default interface untuk sebagian besar sistem komputer interaktif yang digunakan saat ini terutama pada PC dan desktop workstation.
Window merupakan area layar yang berprilaku seperti terminal independent dan berisi grafik atau teks yang dapat dipindahkan dan idiubah ukurannya. Satu layar dapat terdiri dari lebih 1 window yang memungkinkan lebih dari satu tugas aktif pada saat yang sama. Icon merupakan sebuah gambar kecil yang digunakan untuk merepresentasikan windows yang sedang berada dalam keadaan tertutup (closed). Window dapat diaktifkan / diperbesar dengan meng-klik icon yang bersangkutan, dan sebaliknya jika user tidak menggunakan / mengerjakan tugas pada satu window tertentu maka dia dapat menon-aktifkan window menjadi icon yang disebut sebagai iconifying . Menu adalah tehnik interaksi yang umum digunakan bahkan oleh sistem non-window sekalipun. Menu menampilkan pilihan operasi atau layanan yang diberikan / tersedia oleh sistem. User dapat memperoleh petunjuk mengenai operasi apa saja pada sistem melalui menu. Oleh karena itu penamaan pad amenu haruslah memiliki arti dan informatif. Pointer merupakan komponen yang penting dalam sistem WIMP karena interaksi pada sistem ini memerlukan aktifitas menunjuk (pointing) dan memilih (selecting). User diberikan cursor pada layar yang dapat dikendalikan oleh peralatan input seperti mouse, joystick, ataupun trackball.






sumber : 
 Buku Interaksi Manusia dan Komputer Universitas Gunadarma
Santosa, P. Insap, et al. "Extensible Tools for Managing Interactive Interface," Human-Computer Interactions Term Project, Computer Science Department University of Colorado at Boulder 1990
http://www.academia.edu/4904026/INTERAKSI_MANUSIA_DAN_KOMPUTER_Pengampu_Idhawati_Hestiningsih
Santosa, P. Insap, "Grafika Komputer dan Interaksi Manusia dan Komputer", Penerbit Andi, Yogyakarta