Sabtu, 04 Mei 2013

Penanganan Kesalahan Dan Help Dokumentasi


PENANGANAN KESALAHAN DAN HELP DOKUMENTASI

Tinjauan:
User mempunyai perbedaan kebutuhan
User support seharusnya:
-Tersedia tetapi tidak mencolok
-Akurat dan kuat
-Konsisten dan fleksibel
Jenis-jenis user support:
-Command Based Methods
-Context-Sensitive Help
-Tutorial Help
-On-line Documentation
-Intelligent Help
Merancang user support harus memperhatikan:
-Presentasi
-Implementasi

Tipe-tipe Kesalahan (Errors):

• Kesalahan Persepsi
• Kesalahan Kognitif
• Kesalahan Motor (Gerak)
Tipe-tipe Slip:

• Kesalahan Capture
• Kesalahan Deskripsi
• Kesalahan Data Driven
• Pengaktifan Asosiatif
• Hilangnya Pengaktifan
• Kesalahan Mode
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.

JENIS-JENIS DARI DOKUMENTASI/HELP

-Tidak pernah suatu penggantian untuk desain tidak baik, tetapi penting.
-Sistem sederhana . user memanggil dan menggunakannya, berikan nama.
-Hampir sebagian sistem dengan banyak fitur membutuhkan help/bantuan.

Jenis-jenis Bantuan:
-Tutorial
-Review/Referensi yang cepat
-Manual Referensi (Penjelasan lengkap)
-Bantuan untuk context-sensitive (spesifikasi tugas)


Ada sebagian pendapat menyatakan bahwa sistem 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) ke dalam sistem.

Empat Jenis Bantuan Yang Dibutuhkan User:

• Quick Reference
Digunakan sebagai pengingat untuk user dari suatu yang detail yang
secara dasar sangat familiar dan biasa digunakan.

• Task-Spesifik Help
Digunakan untuk membantu user menghadapi masalah atau tidak
pasti mengambil tindakan dalam memecahkan masalah yang khusus.

• Full Explanation
Suatu alat bantu atau perintah yang dapat membantu memahami
secara lengkap.

• Tutorial

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

Kebutuhan Dari User Support:

• Availability
User dapat menggunakan bantuan pada setiap waktu selama
berinteraksi dengan sistem.

• Accuracy dan Compieteness
Bantuan ini seharusnya menyiapkan keakuratan dan kelangkapan
sistem bantuan.

• Consistency
User membutuhkan jenis-jenis yang berbeda dari bantuan untuk
digunakan pada kegunaan yang berbeda. Hal ini dapat secara tidak
langsung menyebabkan sistem bantuan tidak dapat bekerja. Sistem
bantuan harus konsisten terhadap semua sistem yang ada dan juga
pada sistem itu sendiri.

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

• Flexibility
Sistem bantuan yang fleksibel akan membuat setiap user dapat
berinteraksi dalam mencari sesuatu yang dibutuhkannya.

• Unobtrusiveness
Sistem ini seharusnya tidak mencegah user dalam melanjutkan
pekerjaannya.

Pendekatan-pendekatan User Support:

• Commad Assistance
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.

• Commad Prompt
Menyediakan bantuan ketika user menemukan kesalahan yang
sering terjadi dalam bentuk prompt perbaikan.

• Context-Sensitive Help
Berbentuk menu based system yang menyediakan bantuan pada
menu option.
Contoh: editor help command dan machintos ballon help.
• 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.
• On-line Documentation
Membuat efektif dengan membuat dokumentasi tersedia di komputer.

• Intelligent Help System
Dioperasikan untuk memonitoring aktifitas user dan
mengkonstruksikan model sesuai dengan user. Model ini termasuk
pengalaman, preferences, kesalahan user atau kombinasi dari
semuanya.

Knolwledge Representation: User Modelling

• Quantification
Model yang sederhana dari user modelling yang menggunakan
jumlah tingkatan dari keahlian yang akan merespon kearah yang
berbeda.

• 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.

• 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 aktifitas suatu
sistem. Pendekatan yang sama digunakan pada error bases model
dimana sistem menyimpan rekaman kesalahan dan perilaku
sebenarnya dari user serta membandingkannya.

Knowledge Representation: Domain dan 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 mencocokkan
dengan urutan tepat. Jika urutan command user tidak cocok, maka
dibutuhkan bantuan. Pendekatan ini digunakan pada sistem PRIAM.
Knowledge Representation: Modelling Advisory Strategy

Sistem ini kadang disebut dengan intelligent help yang membuat
modelling advisory atau strategi tutorial. Pada sistem ini tidak hanya
membolehkan memilih nasehat yang cocok untuk user, tetapi juga
menggunakan metode yang cocok.

Teknik Untuk Knowledge Representation

Terdapat empat grup utama dari teknik yang digunakan dalam
knowledge representation untuk intelligent help system:

1. Rule Based Techniques
Pengetahuan digunakan untuk mengetahui sekumpulan aturan dan
kenyataan. Teknik ini digunakan untuk domain yang relatif besar dan
dapat mewakili kegiatan yang menampilkan pengetahuan.

2. Frame Based Techniques
Digunakan untuk mewakili situasi yang umum terjadi. Frame
merupakan suatu struktur yang berisi slot yang diberi label yang
memiliki ciri yang berhubungan.

3. Network Based Techniques
Mewakili pengetahuan tentang user dan sistem yang merupakan
hubungan antara kenyataan, contoh yang paling umum adalah
semantic network. Network merupakan suatu hirarki dan child dapat
berhubungan dengan parent-nya.

4. Examples Based Techniques
Mewakili pengetahuan yang secara implisit dengan struktur
keputusan dari suatu klasifikasi sistem.

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 expert tidak tersedia. Masalah lain
adalah menginterpretasikan informasi yang cocok.


Masalah lain:

-Inisiatif
Haruskan user mempertahankan pengawasan yang lengkap
terhadap sistem, haruskah sistem langsung berinteraksi atau
haruskah penggabungan dialog didukung?

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

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

Merancang User Support System

Terdapat banyak cara untuk merancangnya dan semua itu diserahkan
pada perancang untuk memilih cara yang terbaik akan tetapi hal yang
perlu diperhatikan adalah:

-Perancangan seharusnya tidak seperti “add-on” pada sistem. Secara
ideal seharusnya merupakan bagian integral dalam sistem.

-Perancangan harus memperhatikan isi dari bantuan dan konteks
sebelum teknologi tersedia.

Masalah Presentasi

-How is help request?
Pilihan pertama bagi perancang untuk membuat bagaimana 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.

-How is help displayed?
Bagaimana bantuan dapat dilihat oleh user. Dalam system window
mungkin ditampilkan dalam window yang baru. Dalam sistem lain
mungkin dalam layar yang penuh atau bagian dari layar. Alternatif
lain dapat berbentuk pop-up box atau tingkat command line.

-Effective presentation of help
Tidak menjadi masalah teknologi apa yang digunakan untuk
membuat akan tetapi yang perlu diperhatikan akan menjadi suatu
prinsip, yaitu keefektifan.

Masalah Implementasi

-Para perancang harus membuat keputusan untuk implementasi
berupa secara fisik maupun pilihan yang tersedia untuk user.
Keputusan ini sudah termasuk dalam pernyataan command operating
system, apakah berbentuk meta-command atau aplikasi. Hambatan
fisik berupa screen space, kapasitas memori dan kecepatan.

-Masalah lain adalah bagaimana struktur data bantuan: apakah
berbentuk single file, hierarchy file atau database.




Dialog


                       
                                             DIALOG DESAIN


Dialog dalam arti umum adalah percakapan antara dua kelompok atau lebih. Sedangkan dialog dalam konteks perencanaan user interface adalah struktur dari percakapan antara user dan sistem komputer.
Bahasa Komputer dapat dibagi atas tiga tingkatan:
1. Leksikal
-   Merupakan tingkatan yang paling rendah.
-   Yaitu bentuk icon pada layar.
-   Pada bahasa manusia, ekuivalen dengan bunyi dan ejaan suatu
   
kata.
2. Sintaksis
-   Yaitu urutan dan struktur dari input dan output.
-   Pada bahasa manusia, ekuivalen dengan grammar suatu kalimat.
3. Semantik
-   Yaitu arti dari percakapan yang berkaitan dengan pengaruhnya
   
pada struktur data internal komputer dan/atau dunia eksternal.
-   Pada bahasa manusia, ekuivalen dengan arti yang berasal dari
   
partisipan dalam percakapan.
Dalam  user  interface,  istilah  dialog  hampir  mirip  dengan  tingkat sintaksis, tetapi juga meliputi sifat-sifat leksikal.


 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 kata-
    katanya / 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 sistem
    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
-   Notasi Diagramatik paling sering digunakan dalam desain dialog.
-   Kelebihan:  memungkinkan  desainer  untuk  melihat  secara  sekilas
    struktur dialog.
-   Kekurangan: sulit untuk menjelaskan struktur dialog yang lebih luas
   
dan kompleks.


 Contoh Notasi Diagramatik:
-   State Transition Networks (STN)
-   Hierarchical STN
-   Harel’s State Charts
-   Traditional Flow Diagrams (Flow Charts)
-   JSD Diagrams

State Transition Network (STN)

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

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.

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.

  
Flowchart
-   Flowchart digunakan untuk mendeskripsikan dialog yang sederhana.
-   Flowchart mudah dimengerti dan simple.

Jackson Diagram
JSD (Jackson Structured Design) diagram digunakan untuk berbagai aspek dari analisis tugas dan notasi dialog.

Link to Programming Language
-   Sequence dalam notasi dialog dapat langsung ditransformasikan ke
    bahasa pemrograman dalam bentuk sequence dan selection.
-   Modulary dalam desain dialog.

JENIS-JENIS DIALOG

1.  Command Language

·  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.
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.