Dokumen tersebut membahas pentingnya mendesain antarmuka pengguna yang mudah digunakan dengan mempertimbangkan karakteristik pengguna nyata dan memfasilitasi penyelesaian tugas. Beberapa prinsip kunci yang disebutkan adalah memodelkan dunia nyata, penggunaan kontrol yang jelas, dan mengurangi kebutuhan pengetahuan pengguna. Dokumen ini juga menekankan pentingnya membuat aplikasi inklusif dan dapat diak
1. Pengembangan sebuah software tidak akan pernah lepas
dari pembuatan antamuka aplikasinya. Tidak akan
berguna, secanggih apapun algoritmenya, sehebat
apapun idenya, kalau tidak bisa digunakan oleh
pengguna. Untuk memudahkan penggunaan aplikasi dan
agar tujuan pengembangan system dapat tercapai, perlu
dilakukan pengembangan antarmuka yang terstruktur
dan sesuai dengan kaidahnya. Salah satu komponen
penting dalam pengembangan antarmuka adalah
Usability. Usability sendiri adalah ukuran kebergunaan
suatu aplikasi. Berdasarkan Windows User Experience
Guidelines, pengembangan antarmuka WPF akan usable
dengan mempertimbangkan beberapa hal berikut:
2. Memodelkan dunia nyata. Pengembangan WPF dapat
melibatkan berbagai interaksi serta visual effect yang
dapat menghasilkan antarmuka aplikasi yang terlihat
natural dan sama seperti apa yang ada di dunia
nyata. Misialnya, sebuah aplikasi kalkulator haruslah
bekerja sebagaimana kalkulator yang ada di dunia
nyata. Atau aplikasi absensi kantor, haruslah dapat
memodelkan proses absensi di sebuah perusahaan.
KessKesesuaian dengan dunia nyata membuat
pengguna dengan mudah mengetahui apa yang harus
ia lakukan dalam mengerjakan sebuah task. Hal ini
membuat pengguna dapat mempersingkat masa
mempelajari cara menggunakan aplikasi dan
berkonsentrasi ke goal yang akan dicapai dengan
aplikasi WPF yang kita bangun.
3. Penggunaan kontrol yang jelas. Sebuah aplikasi
WPF sebaiknya mengurangi penggunaan tulisan
pada kontrolnya. Misalnya pada button, daripada
membuat tulisan deskriptif tentang fungsi
buttonnya, lebih baik membuat button dengan
bentuk yang dapat menjelaskan dirinya sendiri.
Misalnya button “home” yang berbentuk rumah
serta button exit yang berbentuk “x”. Selain
itu, penjelasan mengenai sebuah control dapat
dijelaskan oleh control lain seperti tooltip.
4. Menggunakan konsep “natural mapping”.
Konsep ini merupakan pemetaan yang jelas
antara apa yang ingin pengguna lakukan
dengan bagaimana cara melakukan hal
tersebut. Oleh karena itu sebuah cutom
control haruslah memiliki behavior yang sama
dengan control standar. Misalnya, sebuah
button akan mengkonfirmasi suatu fungsi
jika diklik, bukan ketika didrag. Hal ini harus
diperhatikan saat mengkostumisasi sebuah
control di WPF.
5. Mengurangi kebutuhan pengetahuan pengguna.
Untuk
menghasilkan
aplikasi
WPF
yang
usable,
sebuah
task
haruslah
dapat
mempermudah pekerjaan pengguna. Misalkan
sebuah aplikasi perhitungan fisika diharapkan
dapat
membantu
pengguna
menghitung
kecepatan sebuah mobil tanpa pengguna perlu
menghafal rumus. Contoh lainnya adalah sebuah
textbox untuk memasukkan angka yang akan
secara otomatis mengubah angka decimal
dengan koma (,) menjadi bentuk decimal dengan
titik (.).
6. Memberikan feedback. Aplikasi WPF haruslah
responsive dan memberikan feedback kepada
pengguna.
Feedback
dapat
berupa
peringatan, progress bar, throber, atau
bentuk lain yang mengindikasikan aplikasi
sedang memproses sesuatu. Tidak adanya
feedback akan membuat pengguna bingung
apakah aplikasi ini sedang memproses
requestnya atau justru sedang hang.
7. Membuat setiap objek mudah diakses. Sebuah
objek akan mudah diakses jika objek tersebut
mudah dilihat, rapi dan teratur. Misalnya, sebuah
antarmuka yang berantakan akan menjadi sulit
dioperasikan oleh pengguna. Beberapa textbox
misalnya, ketika pengguna mengetik di satu
textbox kemudian akan pindah ke textbox lain
dengan menggunakan tombol “tab”, harus
dipastikan bahwa focus control akan menuju ke
textbox
yang
berada
tepat
dibawahnya.
Penggunaan mnemonic juga dapat menjadi
alternative
untuk
memudahkan
pengguna
mengakses sebuah control.
8. MenCocokan Antara Aplikasi Anda dan Dunia
Nyata
Selalu menggunakan kata-kata, frasa, dan
konsep yang akrab bagi pengguna daripada
istilah dari sistem yang mendasarinya. Gunakan
istilah yang berhubungan dengan pengguna
pengetahuan tentang tugas mendukung aplikasi
Anda. Sebagai contoh, dalam kedokteran, kertas
folder yang berisi semua informasi tentang
pasien tertentu disebut "tabel." Oleh karena
itu, aplikasi medis akan merujuk pada catatan
pasien yang berisi informasi yang sama sebagai
kertas grafik sebagai "grafik pasien" daripada
sebagai "catatan database pasien."
9. Bila
menggunakan
metafora, bagaimanapun, adalah penting untuk
tidak
mengambil
metafora
terlalu
harfiah, maupun untuk memperluas metafora di
luar
penggunaan
yang
wajar.
Sebagai
contoh, kapasitas folder file tidak boleh terbatas
pada kapasitas folder file fisik, yang barangkali
hanya dapat berisi beberapa dokumen sebelum
menjadi berat. Di sisi lain, sebuah keranjang
sampah tidak boleh digunakan untuk apapun
selain
tempat
sampah.
Tidak
boleh
digunakan, misalnya, untuk mengeluarkan
removable disk seperti disket atau CD.
10. Tujuan dari aplikasi perangkat lunak apapun
adalah untuk memungkinkan beberapa
kelompok orang untuk dapat menyelesaikan
rangkaian tugas-tugas tertentu. Jadi, hal
pertama yang didirikan ketika merancang
aplikasi Anda adalah:
siapa penggunanya
apa saja yang di izinkan untuk mereka
lakukan
11. Sebagai contoh, Anda mungkin akan merancang
sebuah aplikasi yang akan memungkinkan
insinyur (perangkat lunak, listrik, atau mekanik)
untuk membuat diagram. Anda mungkin
merancang
sebuah
aplikasi
yang
akan
memungkinkan administrator sistem untuk
mengkonfigurasi dan memonitor web server.
Anda mungkin merancang sebuah aplikasi yang
akan membantu siswa sekolah dasar untuk
belajar
matematika.
12. Jangan
Batasi
Pengguna
basis
anda.
Jika Anda merancang aplikasi untuk digunakan
oleh para insinyur, atau oleh anak-anak, atau
oleh administrator sistem, pastikan untuk
menciptakan aplikasi yang dapat digunakan oleh
semua insinyur, anak-anak, atau administrator
sistem, termasuk mereka yang cacat atau mereka
yang are mampu mengenali dari bahasa yang
berbeda dari Anda. Sadar akan isu-isu
aksesibilitas dan internasionalisasi dan lokalisasi
masalah, banyak di antaranya ditujukan oleh
panduan dalam dokumen ini.
13. Aksesibilitas
Aksesibilitas berarti memungkinkan orangorang
cacat
dan
semacamnya
untuk
berpartisipasi dalam kegiatan hidup: dalam
kasus ini, secara khusus untuk menggunakan
perangkat lunak Anda.
14. Pengguna Buta warna mungkin tidak dapat
menggunakan aplikasi Anda jika Anda hanya
bergantung pada kode warna untuk membedakan
jenis informasi yang berbeda
Pengguna dengan gangguan pendengaran mungkin
tidak dapat menggunakan aplikasi Anda jika Anda
mengandalkan suara untuk menunjukkan informasi
penting.
Pengguna dengan gerakan terbatas mungkin tidak
dapat menggunakan aplikasi Anda jika Anda tidak
memberikan persamaan untuk perintah keyboard