Senin, 29 Juni 2015

Minggu ke 9

Penanganan Kesalahan Dan Help Dokumentasi
·         Penanganan Kesalahan
            Hampir tidak ada system yang berjalan sempurna sebelum melewati berbagai rentetan kesalahan (error). Semakin besar system yang dibuat, semakin banyak kesalahan yang dapat timbul.
Tujuan software user interface yaitu:
1.      Meminimalkan kesalahan user
-          Interaksi melalui menu lebih dapat menghindarkan user dari kesalahan dari pada menggunakan perintah baris.

Gambar Sistem menu mencegah kesalahan

-          Compaq pernah mempertimbangkan untuk mengubah “Press Any Key” menjadi ‘Press Enter Key” dikarenakan banyak telpon yang menanyakan letak tombol “Any” di keyboard.

-          Cara mengurangi kesalahan user, misalnya: seleksi user yang tepat, pelatihan yang memadai, desain peralatan, prosedur dan lingkungan.

2.      Menyediakan kemudahan recovery dari kesalahan.


Ø  Jenis-jenis kesalahan dan slip

1.      Tipe-tipe Kesalahan (Errors)
• Kesalahan Persepsi
-          Gagal menangkap informasi
-          Gagal menangkap perhatian pengguna
• Kesalahan Kognitif
-          Ketidak adaan bantuan
-          Inkonsisten
-          Ketidak adaan status informasi
-          Kemampuan yang kurang

• Kesalahan Motor (Gerak)

-          Lemahnya kondisi mata dan tangan
-          Tekanan kecepatan
-          Memerlukan kemampuan yang tinggi tapi pada koordinasi tanagan dan mata
-          Memerlukan jenis kealihan lain

2.      Tipe-tipe Slip
• Kesalahan Capture adalah Kesalahan karena terlalu sering atau kebiasaan.
• Kesalahan Deskripsi adalah
Kesalahan dalam melakukan aksi pada objek yang salah.
• Kesalahan Data Driven adalah
Kesalaha karena pengaruh data dari area edit
• Pengaktifan Asosiatif adalah
Kesalahan karena pengaruh data yang ada dipikirkan pada saat ini.
• Hilangnya Pengaktifan adalah
Kesalahan karena lupa apa yang harus dilakukan.
• Kesalahan Mode adalah
Kesalahan akibat lupa pada mode yang sedang dilakukan
Ø  Panduan Pencegahan Kesalahan

- Menghapus mode-mode atau menyediakan petunjuk yang terlihat untuk mode-mode tersebut.
- Gunakan teknik koding yang baik (warna, gaya).
- Memaksimalkan pengenalan, mengurangi hafalan.
- Merancang urutan gerak atau perintah yang tidak sama.
- Mengurangi kebutuhan untuk mengetik.
- Uji dan memantau kesalahan-kesalahan dan memperbaikinya.
- Memungkinkan pertimbangan ulang aksi-aksi yang dilakukan oleh user, misalnya memindahkan file dari recycle bin.


Ø  Panduan Recovery Kesalahan

- Menyediakan tipe-tipe tanggapan yang sesuai.
- Query: bertanya pada user apa yang sudah dilakukan, kemudian melegalkan tindakan yang salah.
- Menyediakan fungsi “undo” dan pembatalan dari proses yang sedang berjalan.
- Meminta konfirmasi untuk perintah yang drastis dan bersifat merusak.
- Menyediakan pengecekan yang beralasan pada masukan data.
- Mengembalikan kursor ke area kesalahan, memungkinkan untuk melakukan perbaikan.
- Menyediakan beberapa kecerdasan buatan.
- Menyediakan akses cepat kepada bantuan untuk konteks-sensitif.

·         Help Dan Dokumentasi
Ada sebagian pendapat menyatakan bahwa system yang interaktif  dijalankan tanpa membutuhkan bantuan atau training. Hal ini mungkin ideal akan tetapi jauh dari kenyataan. Pendekatan yang lebih membantu adalah dengan mengasumsikan bahwa user akan membutuhkan bantuan pada suatu waktu dan merancang bantuan (help) ini ke dalam system.
Ø  Jenis-jenis Help dan dokumentasi dibagi menjadi 2 yaitu:
1.      Paper based (tercetak)
Keunggulan menggunakan peper based yaitu:
-          Pengguna dapat mengerjakanya diluar masa pengerjaan tugas.
-          Pengguna dapat menulis catatan tertentu yang diperolah waktu menjalankan system

Kelemahan:
-          Lumayan sulit mendeskripsikan sesuatu yang bergerak
-          Sulit mensesuaikan antara yang di baca dengan kenyataan sebenarnya didalam sistem
-          Pengguna akan kesulitan membaca saat menjalankan sistem karena kurang praktis.                                      
2.      Computer based
Jenis Computer based yaitu :
1.      Command assistance
Mungkin pendekatan yang umum untuk user support adalah menyediakan bantuan pada level command, user yang membutuhkan bantuan pada command yang khusus dan ditampilkan pada layar bantuan atau pada manual page yang menjelaskan tentang command tersebut. Contoh pada UNIX man help dan DOS help command.

2.      Command prompts
Menyediakan bantuan ketika user menemukan kesalahan yang sering terjadi dalam bentuk prompt perbaikan

3.      Context-sensitive help
Berbentuk menu based system yang menyediakan bantuan pada menu option. Contoh spy editor help command dan Macintosh ballon help.
4.      On-line tutorial
Mengijinkan user bekerja melalui aplikasi dasar dengan lingkungan percobaan. User dapat melihat kemajuan sesuai dengan kecepatan dan dapat mengulangi bagian dari tutorial yang dia inginkan. Kebanyakan on-line tutorial tidak mempunyai intelligent karena tidak mempunyai pengetahuan tentang user dan pengalaman user sebelumnya.

5.      On-line documentation
Membuat efektif dengan membuat dokumentasi tersedia di komputer.

6.      Intelligent help system
Dioperasikan untuk memonitoring aktivitas user dan mengkonstruksikan model sesuai dengan user. Model ini termasuk pengalaman, preferences, kesalahan user atau kombinasi dari semuanya.

Ø  Ada empat jenis alat bantu yang dibutuhkan user :
1.      Quick reference
Digunakan sebagai pengingat untuk user dari suatu yang detail yang secara dasar sangat familiar dan biasa digunakan.

2.      Task-specific help
Membantu user menghadapi masalah atau tidak pasti mengambil tindakan dalam memecahkan masalah yang khusus

3.      Full explanation
Suatu alat bantu atau perintah yang dapat membantu memahami secara lengkap.

4.      Tutorial
Khusus untuk user baru yang menyediakan perintah secara step by step.

Ø  Kebutuhan dari user support
1.      Availability
User dapat menggunakan bantuan pada setiap waktu selama berinteraksi dengan system

2.      Accuracy dan completeness
Bantuan ini seharusnya menyediakan kekakuratan dan kelengkapan system bantuan.

3.      Consistency
Seperti diketahui bahwa user membutuhkan jenis-jenis yang berbeda dari bantuan untuk digunakan pada kegunaan yang berbeda. Hal ini dapat secara tidak langsung menyebabkan system bantuan tidak dapat bekerja. Sistem bantuan menyediakan harus konsisten terhadap semua system yang ada dan juga pada system itu sendiri.

4.      Robustness
Sistem bantuan ini biasanya digunakan oleh orang yang sedang dalam kesulitan karena system mempunyai perilaku yang tidak dia harapkan atau mempunyai kesalahan. Hal ini sangat penting dimana system bantuan seharusnya kuat baik dalam hal menangani kesalahan dan perilaku yang tidak diharapkan.

5.      Flexibility
System bantuan yang fleksibel akan membuat setiap user dapat beinteraksi dalam mencari sesuatu yang sesuai dibutuhkannya
.
6.      Unobtrusiveness
System ini seharusnya tidak mencegah user dalam melanjutkan pekerjaannya.

Ø  Knowledge representation : user modelling
1.      Quantification
Model yang sederhana dari user modelling yang menggunakan jumlah tingkatan dari keahlian yang akan merespon ke arah yang berbeda.
Contoh
Move from Level 1 to Level 2
If
            The system has been used more than twice (0.25)
Commands x and y have been used effectively (0.20)
            Help has not been accessed this session (0.25)
            The system has been used in the last 5 days
2.      Stereotypes
Berbasiskan pada karakteristik user dan kemungkinan sederhana seperti membuat perbedaan antara user baru dan user yang ahli. Atau yang lebih kompleks seperti membuat stereotype yang berbasiskan pada lebih dari satu informasi.

3.      Overlay models
Merupakan model yang ideal yang membandingkan perilaku user. Hasilnya ditampilkan dalam dua model atau perbedaan. Keuntungan dari model ini dapat melihat secara pasti bagian dari aktivitas suatu system. Pendekatan yang sama digunakan pada error based model dimana system menyimpan rekaman kesalahan  dan perilaku sebenarnya dari user serta membandingkannya

Ø  Knowledge representation : domain and task modelling
Pendekatan yang umum dari masalah ini adalah untuk mewakili tugas user dari urutan perintah yang tersedia untuk mengeksekusinya. Sebagaimana pada tugas user, command digunakan untuk membandingkan urutan tugas yang telah disimpan dan mencocokan dengan urutan tepat. Jika urutan command user tidak cocok maka dibutuhkan bantuan. Pendekatan ini digunakan pada system PRIAM.

Ø  Knowledge representation : modelling advisory strategy
Sistem ini kadang disebut dengan intelligent help yang membuat modelling advisory atau strategi tutorial. Pada system ini tidak hanya membolehkan memilih nasehat yang cocok untuk user tetapi juga menggunakan metode yang cocok.

Ø  Teknik untuk knowledge representation
Terdapat empat group utama dari teknik yang digunakan dalam knowledge representation untuk intelligent help system :
1.      Rule based techniques
Pengetahuan digunakan untuk mewakili sekumpulan aturan dan kenyataan. Teknik ini digunakan untuk domain yang relatif besar dan dapat mewakili kegiatan yang menampilkan pengetahun.
Contoh:
IF
            Command is EDIT file1
AND
            Last command is COMPILE file1
THEN
            Task is DEBUG
            action is describe automatic debugger
2.      Frame based technique
Digunakan untuk mewakili situasi yang umum terjadi. Frame merupakan suatu struktur yang berisi slot yang diberi label yang mewakili cirri yang berhubungan.
Contoh :
            User
                        Expertise level : novice
                        Command : EDIT file1
                        Last command : COMPILE FILE1
                        Errors this session : 6
                        Action : describe automatic debugger
3.      Network based techniques
Mewakili pengetahuan tentang user dan system yang merupakan hubungan antara kenyataan. Contoh yang paling umum adalah semantic network. Network merupakan suatu hirarki dan child dapat berhubungan dengan parent-nya
Contoh compile yang dapat diperluas dengan semantic network :
            CC is an instance of COMPILE
            COMPILE is a command
            COMPILE is related to DEBUG
            COMPILE is related to EDIT
Automatic debugger facilitates DEBUG
4.      Example based technique
Mewakili pengetahuan yang secara implicit  dengan struktur keputusan dari suatu klasifikasi system.
Contoh :
            EDIT file1
            COMPILE file1

Ø  Masalah dengan knowledge representation dan modelling
Pengetahuan mewakili suatu issue pusat dalam intelligent help system tetapi tidak tanpa masalah itu sendiri. Pengetahuan kadang sulit didapatkan, terutama jika ada domain yang expert tidak tersedia. Masalah lain adalah mengintepretasikan informasi yang cocok.
1.   Inisiatif
-          Haruskah user mempertahankan pengawasan yang lengkap terhadap system,
-          Haruskah system langsung berinteraksi atau
-          Haruskan penggabungan dialog didukung ?

2.   Effect
Para perancang seharusnya memperhatikan efek dari modelling dan adaptasi

3.   Scope
Para perancang perlu memperhatikan scope dari bantuan dimana digunakan pada level aplikasi atau system yang luas.

Ø  Isu presentasi dalam help dan dokumentasi yaitu:
1.  Masalah presentasiHow is help requested ?
Pilihan pertama bagi perancang untuk membuat bagaiman bantuan dapat diakses oleh user. Terdapat beberapa pilihan. Bantuan ini dapat berupa command, button fungsi yang dapat memilih on atau off atau aplikasi yang terpisah.
2.   How is help displayed?
Bagaimana bantuan akan dapat dilihat oleh user. Dalam system window mungkin ditampilkan dalam window yang baru. Dalam system lain mungkin dalam layar yang penuh atau bagian dari layar. Alternatif lain dapat berbentuk pop-up box atau tingkat command line
3.   Effective presentation of help
Tidak menjadi masalah teknologi apa yang digunakan untuk membuatnya akan tetapi yang perlu diperhatikan dan menjadi suatu prinsip yakni keefektifan.
Ø  Merancang Help dan dokumentasi
Terdapat banyak cara untuk merancangnya dan semua itu diserahkan pada perancang untuk memilih cara yang terbaik akan tetapi hal yang perlu diperhatikan adalah :
1.      Perancangannya seharusnya tidak seperti “add-on” pada system. Secara ideal seharusnya merupakan bagian integral dalam sistem
2.      Perancang harus memperhatikan isi dari bantuan dan konteks sebelum teknologi tersedia

Gambar Help dan Dokumentasi

Sumber:  
-          Buku Interaksi Manusia dan Komputer Penerbit GUNADARMA
-          Surbekti, Irfan: Santosa, Insap ; Interaksi Manusia dan Komputer, edisi Jurusan Teknik Informatika-ITS, 2006
-          Sudarmawan; Ariyus, Dony; Interaksi Manusia dan Komputer, Andi Offset Yogyakarta, 2007


Minggu ke 8

Desain Dialog
Dialog dapat dinotasikan dalam bentuk diagram maupun dalam bentuk tekstual. Dialog terkait dengan semantik atau apa yang dikerjakan oleh sistem dan presentasi atau bagaimana sitem ditampilkan.
Pengertian dialog adalah sebagai berikut :
1.      Umum
Dialog adalah proses komunikasi antara dua atau lebih agen. Dalam dialog, makna harus dipertimbangkan agar memenuhi kaidah semantis dan pragmatis.

2.      IMK
Dialog adalah pertukaran instruksi dan informasi yang mengambil tempat antara user dan sistem computer.
Notasi dialog pada IMK terdiri dari :
1.      Diagramatik
Dengan menggunakan teknik State Transtition Network (jaringan transisi kondisi dan status), flowchart (diagram alir) dan diagram JSD (Jackson Structured Design).

2.      Tekstual
Dengan menggunakan teknik Formal Grammar (tata bahasa formal), Production Rules (aturan produksi) dan CSP.
Pada dasarnya gaya interaksi dan dialog menggunakan menggunakan sistem tanya jawab. Sistem memerlukan input dari user  dan sistem akan menjawabapa kebutuhan  dari user. Agar user mengerti cara berkomunikasi maka user perlu memahami bahasa komputer.
Bahasa komputer mempunyai tingkatan sebagai berikut :
1.      Leksikal
Merupakan tingkat yang paling rendah, misalnya bentuk ikon pada layar atau tombol ditekan. Pada bahasa manusia ekuivalen dengan bunyi atau ejaan suatu kata.

2.      Sintaktik
Urutan dan struktur input output. Pada bahasa manusia ekuivalen dengan tatabahasa dari suatu kalimat.

3.      Semantik
Makna dari percakapan yang berhubungan dengan pengaruhnya pada struktur data internal komputer. Kondisi internal berasal dari dialog user dan sistem.
Prinsip yang digunakan dalam desain dialog adalah membagi sistem menjadi beberapa bagian yang disebut dengan modul, misalnya pembagian modul dalam sebuah sistem pemesanan buku di perpustakaan seperti gambar berikut :


Ada empat alasan utama penggunaan deskripsi pemisahan dialog, yaitu :
1.      Mudah dianalisis
2.      Pemisahan elemen interface dari semantik
3.      Dapat dilakukan sebelum program ditulis dan memberi dampak pada desain program
4.      Kadang menggunakan prototipe tool
Kondisi merupakan sesuatu pada saat sekarang yang berhubungan dengan masa lalu dan mempengaruhi masa yang akan datang.


Ada dua masalah pada kondisi, yaitu :
1.      Terlalu sedikit kondisi
Ada beberapa elemen yang hilang dari spesifikasi sehingga perlu diwaspadai, misal dialog pada tingkat spekulasi

2.      Terlalu banyak state (keadaan)
Bila state terlalu kompleks mungkin akan terjadi redudansi dan ekstensibilitas

Dialog Manusia – Komputer:
  • Berbeda dengan dialog antar manusia pada umumnya, dialog dengan komputer biasanya terstruktur dan terbatas.
  • Beberapa ciri-ciri dari dialog terstruktur yang nantinya ditemukan dalam dialog komputer:
- Menyebutkan beberapa hal tertentu secara berurutan.
- Beberapa bagian dari dialog dilakukan secara bersamaan.
- Dialog berikutnya tergantung pada respon dari partisipan.
- Dialog terstruktur biasanya tidak langsung menuju pada arti katakatanya/semantik tapi pada level sintaksis.

Proses Perancangan Dialog
Advice:
1. Rangkaian dialog menggambarkan struktur tugas.
2. Beberapa rangkaian dialog tambahan digunakan untuk user support, misalnya: help system, tutorial sub-sistem.
3. Rangkaian dialog diurutkan sesuai dengan struktur tugas.
  • Prinsip yang digunakan dalam desain dialog adalah membagi system menjadi beberapa bagian yang disebut module.
  • Biasanya user access bukan merupakan bagian dari task desription, tapi harus dimasukan dalam sistem yang baru.
  • Empat hal utama dalam desain yang harus diperhatikan dalam GUI metaphor:
- Pemilihan dan representasi dari conceptual metaphor.
- Representasi dari obyek interaktif dalam metaphor.
- Perancangan manipulasi untuk mengimplementasikan user action.
- Desain micro-metaphor untuk control action dan representasi dari commands.
Dalam mendesain dialog, diperlukan deskripsi yang terpisah dari program secara keseluruhan.

Mengapa perlu digunakan notasi deskripsi dialog yang terpisah?
- Agar mudah di analisa.
- Pemisahan elemen-elemen interface dari logika program (semantik).
- Apabila notasi dialog ditulis sebelum program dibuat, maka notasi tersebut bisa membantu desainer untuk menganalisa struktur yang diajukan.

Notasi Diagramatik
Merupakan bentuk yang sering digunakan dalam notasi dialog. Kelebihannya adalah memungkinkan desainer untuk melihat secara sekilas struktur dialog. Kelemahannya adalah sulit untuk menjelaskan struktur dialog yang lebih luas dan kompleks.

Contoh Notasi Diagramatik:
1.      State Transition Network (STN)
STN atau kondisi transisi jaringan digunakan sejak tahun 1940-an. Metode ini menggunakan circle atau state  yang dihubungkan satu dengan yang lain dengan anak panah yang menandakan suatu aksi atau kejadian.

Komponen STN:
- Lingkaran
Menggambarkan “state” dari sistem.

- Tanda Panah
Yang terdapat antara state disebut juga transisi. Tanda panah ini diberi label yang menjelaskan tentang tindakan user yang menyebabkan transisi dan respon dari sistem.
STN dapat menggambarkan beberapa pilihan dialog:
- Urutan tindakan dan respon dari sistem
- Pilihan bagi user
- Iterasi
Contoh :


2.      Hierarchical State Transition Networks
Struktur Hierarchical STN mirip dengan STN, namun memiliki tambahan berupa gabungan state. Penggunaan hirarki STN ini, seperti menggabungkan beberapa STN ke dalam satu diagram besar, sehingga model ini dapat digabungkan untuk sistem-sistem yang besar. STN Hirarki dapat digunakan untuk mendeskripsikan suatu sistem yang lengkap.

3.      Harel’s State Charts
Dapat digolongkan sebagai kelompok STN. Dibangun untuk menspesifikasikan secara visual sistem reaktif yang kompleks dan mampu mengakomodasi masalah seperti concurrency dan escape.


Gambar di atas merupakan diagram kondisi dari panel kendali televisi yang terdiri dari lima tombol ON, OFF, MUTE, SEL dan RESET. Televisi tersebut hanya berada pada kondisi ON atau standby. Misal kita mulai dengan posisi standby, menekan tombol ON atau RESET akan menyebabkan TV menyala dan tombol OFF akan menyebabkan TV kembali ke posisi standby.

Pada saat TV menyala, user dapat mengendalikan suara dengan tombol MUTE yang mengatur suara menjadi ON atau OFF dan saluran TV (channel) dengan tombol SEL untuk memilih salah satu dari empat saluran yang ada. Garis putus-putus dan AND menyatakan bahwa kedua subdialog dapat dijalankan bersama-sama dalam urutan bebas. Subdialog SOUND mempunyai lingkaran kecil hitam dengan garis lengkung yang menunjukkan kondisi awal dan nilai default yaitu ON.
Subdialog CHANNEL mempunyai tanda H (history) yang mengindikasikan akan mengingat posisi channel terakhir yang diaktifkan user dan pada saat TV dihidupkan akan dimulai pada channel 1. RESET akan mengembalikan kondisi ke default awal dan tombol OFF berfungsi sebagai escape.

4.      Flowchart
Diagram alir sangat baik untuk menjelaskan dialog yang sederhana dan menggunakan berbagai jenis kotak untuk merepresentasikan berbagai jenis aktivitas yang berbeda, namun lebih merefleksikan sudut pandang pemrogram dibanding user.

Pada umumnya flowchart sangat akrab dengan pemrograman dan digunakan untuk dialog tetapi tidak untuk algoritma internal, misalnya untuk suatu proses penghapusan entitas dalam database dapat dibuat flowchart sebagai berikut :


Perbedaan utama antara menggunakan flowchart untuk perancangan dialog dengan pemrograman adalah tingkat detail pada sisi program.

5.   Jackson Diagram
Digunakan untuk berbagai aspek dari analisis tugas dan notasi dialog, misal :

Diagram JSD di atas terbagi menjadi tiga bagian yaitu LOGIN, TRANSACTION dan LOGOUT. Urutan pengoperasiannya berjalan dari kiri ke kanan. Tanda asterik (*) merepresentasikan iterasi atau pengulangan. Tanda (o) merepresentasikan pilihan atau opsional.

Dialog Style

Ragam Dialog (DIalogue Style) adalah cara yang digunakan untuk mengorganisasikan berbagai tehnik dialog.
Beberapa sifat penting yang perlu dimiliki oleh setiap ragam dialog adalah:

1.   Inisiatif
Inisiatif merupakan sifat dasar dari sembarang dialog, karena inisiatif akan menentukan keseluruhan ragam komunikasi sehingga dapat ditentukan tipe-tipe pengguna yang dituju oleh sistem yang dibangun. Dua jenis inisiatif yang paling sering digunakan adalah inisiatif oleh komputer dan inisiatif oleh pengguna. Dalam inisiatif oleh komputer, pengguna memberikan tanggapan atas prompt yang diberikan oleh komputer untuk memasukkan perintah atau parameter perintah, biasanya berupa serangkaian pilihan yang harus dipilih (pilihan menu), atau sejumlah kotak yang dapat diisi dengan suatu nilai parameter (seperti pengisian borang), atau suatu pertanyaan yang jawabannya harus dinyatakan dengan cara tertentu, misalnya dengan ya/tidak atau dengan bahasa alamiah. Karakteristik utamanya adalah bahwa dialog itu terdiri atas sekumpulan pilihan yang telah didefinisikan sebelumnya. Sebaliknya, inisiatif oleh pengguna mempunyai sifat keterbukaan yang lebih luas: pengguna diharapkan memahami sekumpulan perintah yang harus ditulis menurut aturan (sintaks) tertentu.

2.   Keluwesan
Sistem yang luwes atau fleksibel adalah sistem yang mempunyai kemampuan untuk mencapai suatu tujuan lewat sejumlah cara yang berbeda. Karakteristik penting dalam mencapai keluwesan suatu sistem adalah bahwa sistem harus dapat menyesuaikan diri dengan keinginan pengguna dan bukan pengguna harus menyesuaikan diri dengan kerangka sistem yang telah ditetapkan oleh perancang sistem. Keluwesan juga dapat dilihat dari adanya kesempatan bagi pengguna untuk melakukan customizing dan memperluas antarmuka dari sebuah sistem untuk memenuhi kebutuhan pribadinya.

3.   Kompleksitas
Seorang perancang sistem tidak perlu membuat atau menggunakan antarmuka lebih dari apa yang diperlukan, karena tidak ada keuntungan yang dapat diperoleh, malahan akan menjadikan implementasinya menjadi lebih sukar.

4.   Kekuatan
Kekuatan didefinisikan sebagai jumlah kerja yang dapat dilakukan oleh sistem untuk setiap perintah yang diberikan oleh pengguna.

5.   Beban Informasi
Agar penyampaian informasi itu dapat berdaya guna dan berhasil guna, beban informasi yang terkandung didalam suatu ragam dialog seharusnya disesuaikan dengan tingkat pengguna. Jika beban itu terlalu tinggi, pengguna akan merasa sangat terbebani yang akan berakibat negatif dalam hal kemampuan pengolahan kognitif dan tingkah laku pengguna akan merasa bahwa sistemnya seolah-olah menyembunyikan kinerja penggunanya sendiri.

6.   Konsistensi
Konsistensi harus diterapkan pada perancangan antarmuka pengguna. Contoh pada format pemasukan data dan format tampilan data.

7.   Umpan Balik
Pada program komputer yang tidak ramah, pengguna sering harus menunggu proses yang yang sedang berjalan, sementara pengguna tidak mengetahui status proses saat itu, apakah sedang melakukan komputasi, sedang mencetak hasil, atau bahkan komputernya macet (hang) karena suatu sebab. Program yang baik akan selalu memberikan umpan balik kepada pengguna atas apa yang dikerjakan saat itu.

8.   Observabilitas
Sistem dikatakan mempunyai sifat observabilitas apabila sistem itu berfungsi secara benar dan nampak sederhana bagi pengguna meskipun sesungguhnya pengolahan secara internalnya sangat rumit.

9.   Kontrolabilitas
Kontrolabilitas merupakan kebalikan dari observabilitas, dan hal ini berimplikasi bahwa sistem selalu berada dibawah kontrol pengguna. Agar hal ini tidak tercapai, antarmukanya harus mempunyai sarana yang memungkinkan pengguna untuk dapat melakukan kendali.

10.  Efisiensi
Efisiensi dalam sistem komputer yang melibatkan unjuk kerja manusia dan komputer secara bersama-sama adalah hasil yang diperoleh dari kerjasama antara manusia dan komputer. Sehingga, meskipun efisiensi dalam aspek rekayasa perangkat lunak sistem menjadi sangat penting jika mereka berpengaruh pada waktu tanggap atau laju penampilan sistem, seringkali perancang lebih memilih untuk memanfaatkan hasil teknologi baru untuk meminimalkan ongkos pengembangan sistem. Sebaliknya, tidak dapat dipungkiri bahwa biaya personal dari seorang ahli akan semakin meningkat dari waktu ke waktu.

11.  Keseimbangan
Strategi yang diambil dalam perancangan sistem manusia komputer haruslah dapat membagi-bagi pekerjaan antara manusia dan komputer seoptimal mungkin. Manusia dapat menangani persoalan yang berurusan dengan perubahan lingkungan, pengetahuan yang tidak pasti dan tidak lengkap, sementara komputer lebih cocok untuk pekerjaan yang bersifat perulangan dan rutin, penyimpanan dan pencarian kembali data secara handal dan memberikan hasil komputasi yang sangat akurat dalam hal pengolahan numerik dan logika. Tabel berikut menunjukkan kecakapan relatif manusia dan computer.

1.      Command Language
Bahasa Perintah dan Bahasa Alami
  • Merupakan paradigma user interface yang pertama kali.
  • Contoh: MS-DOS shell, UNIX shell, dBase.
  • Keuntungan:
- Lebih cepat.
- Dapat melakukan kegiatan meskipun di luar batas.
- Perulangan
- Implementasi yang mudah dan hemat.
  • Tujuan:
- Konsistensi.
- Penamaan dan pemberian singkatan yang baik.
- Melakukan tugas perancangan dapat membantu meminimalkan kekurangan.

2. WIMP (Window, Icon, Menu, Pointer)
Berfokus pada Menus, Buttons, Forms, Icons. WIMP sangat umum digunakan pada kebanyakan sistem, sehingga banyak orang yang menganggap bahwa GUI adalah WIMP. Padahal, masih ada bentuk lain GUI selain WIMP, salah satunya adalah ZUI (Zoomable User Interface atau Zooming User Interface). ZUI merupakan inovasi GUI yang dimulai pada suatu proyek bernama Pad++ yang dirintis oleh Ken Perlin, Jim Hollan, dan Ben Bederson di New York University. Namun, ZUI mungkin saja sudah mati jika tidak ada Jef Raskin (alm) dengan proyeknya, Archy. Pada konsep ZUI, tidak ada window. Yang terdapat pada layar adalah sebuah permukaan 2 dimensi yang tak terbatas, dengan objek-objek seperti dokumen, gambar dan sebagainya terletak di atas permukaan tersebut. Pengguna dapat menggeser-geser permukaan ini (atas-bawah maupun kiri-kanan) dan memperbesar (zoom in) pada suatu objek untuk melihat atau meng-edit objek tersebut atau memperkecil (zoom out) untuk berpindah ke objek lain.

3. Direct Manipulation
  • Definisi:
- Kesinambungan tampilan dari objek-objek dan aksi-aksi yang dilakukan.
- Cepat, dapat dikembalikan, peningkatan aksi dimana efeknya dapat segera terlihat.
- Penggantian dari sintaks command language dengan manipulasi langsung pada objek.

  • Keuntungan:
- Mudah dipelajari dan diingat, khususnya untuk pemula.
- WYSIWYG
- Fleksibel
- Menyediakan konteks dan tampilan yang cepat dari feedback, sehingga user dapat mengetahui apakah tujuan telah tercapai.
- Membatasai beberapa jenis kesalahan yang dapat terjadi.

  • Kekurangan:
- Penggunaan seluruh ruang pada layar.
- Harus mempelajari arti dari komponen-komponen yang tampak pada layar.
- Tampilan visual mungkin dapat disalah artikan.
- Penggunaan mouse dapat lebih lambat daripada pengetikan.
- Tidak ada penjelasan otomatis.
- Tidak bagus pada: pengulangan, penyimpanan history, tugas tertentu (seperti merubah semua huruf cetak miring menjadi cetak tebal), variabel.

4. PDA dan Pen
- Menjadi lebih umum dan penggunaan yang lebih luas.
- Tampilan yang lebih kecil (160x160 atau 320x240).
- Tombol-tombol yang lebih sedikit, interaksi melalui “pen” (atau stylus).
- Peningkatan _ wireless, warna, memory yang lebih besar, CPU dan OS yang lebih baik.
- Palmtop vs Handheld.

5. Speech dan Natural Language
Speech (Suara)
Adalah getaran pada suara menimbulkan bunyi “ahh”. Mulut, tenggorokan, bibir membentuk bunyi.

  • Input speech:
- Pengenalan speaker.
- Pengenalan suara.
- Pemahaman bahasa natural.

  • Natural Language:
- Memberi arti pada kata-kata.
- Input dapat berupa suara atau dari keyboard.

  • Keuntungan:
- Mudah dipelajari dan diingat.
- Lebih kuat.
- Cepat, efisien (tidak selalu).
- Layar yang kecil.

  • Kekurangan:
- Belum dapat bekerja dengan baik.
- Mengasumsikan pengetahuan dari permasalahan.
- Membutuhkan keahlian pengetikan. Peningkatan tidak terlihat.
- Implementasi membutuhkan biaya yang mahal.

User Interface Software

Alat Bantu User Interface:
  • Aplikasi apa yang biasa digunakan oleh programmer untuk membuat program.
  • Kombinasi dari objek-objek interface dan perilaku manajemen.
  • Sekarang sudah object-oriented.
  • Pustaka dari komponen-komponen perangkat lunak dan routines yang digunakan oleh programmer:
- Xwindows : Xtoolkit & Motif
- Macintosh : Mac Toolbox, MacApp
- Windows : Windows Developer’s Toolkit
- Java : Swing

Bagaimana cara kerja toolkit?
  • Apa yang sebenarnya disediakan olehnya?
  • Bagaimana mengaturnya?
- User mengadakan aksi, berinteraksi dengan interface.
- Aksi-aksi tersebut harus disampaikan kepada aplikasi dalam cara-cara yang penuh arti.
- Aplikasi melakukan aksi yang sesuai, mungkin memperbaharui tampilan.

Model Seeheim
Model Percakapan

Model Objek
  • UI adalah kumpulan objek yang saling berinteraksi.
  • User secara langsung memanipulasi objek-objek tersebut.
  • Objek-objek bertanggung jawab untuk mentransmisikan aksi-aksi user ke aplikasi dengan cara yang berguna.

OBJECT-ORIENTED SYSTEMS
  • Pemrograman GUI Java dikerjakan dengan AWT dan Swing.
  • Lebih banyak model terdistribusi.
  • Aksi utama disini adalah mengirimkan event ke objek-objek sebagai pesan.
  • Pendelegasian yang penting _ dapat membuat beberapa objek tertentu bertanggung jawab untuk menangani event.

GUI Builder Tools (Alat Pembuat GUI)
  • Mengapa membangun interface grafis dengan perintah-perintah tekstual?
  • Mengapa tidak menunjukkan apa yang Anda suka?
  • Visual builder tools: Visual Basic, Visual C++, Borland Delphi, Symantec Café.

Metode-metode Tool
  • Area kerja (interface yang sedang dibangun).
  • Pindahkan dan letakkan interaktor ke dalam area kerja.
  • Spesifikasi lokasi, warna, tampilan, dsb.
  • Biasanya menyediakan mode Build/Pengujian.


Sumber:
-          Buku Interaksi Manusia dan Komputer Penerbit GUNADARMA
-          Surbekti, Irfan: Santosa, Insap ; Interaksi Manusia dan Komputer, edisi Jurusan Teknik Informatika-ITS, 2006
-          Sudarmawan; Ariyus, Dony; Interaksi Manusia dan Komputer, Andi Offset Yogyakarta, 2007