Dosen : Dr. Hendra Jaya, S.Pd., M.T
Mata Kuliah : Software Engineering
Dalam bukunya tentang desain antarmuka, Theo Mandel [MAN97] menanamkan tiga "aturan emas":
1. Tempatkan pengguna yang terkendali. 2. Kurangi beban memori pengguna. 3. Buatlah antarmuka konsisten.
Aturan emas ini benar-benar menjadi dasar bagi seperangkat prinsip desain antarmuka pengguna yang memandu aktivitas perancangan perangkat lunak yang penting ini.
15.1.1 Tempatkan User di Control
Tempatkan Pengguna dalam Kontrol Selama sesi pengumpulan kebutuhan untuk sistem informasi baru yang utama, pengguna kunci ditanya tentang atribut antarmuka grafis yang berorientasi jendela. "Yang saya benar-benar inginkan," kata pengguna dengan sungguh-sungguh, "adalah sistem yang membacakan pikiran saya. Ia tahu apa yang ingin saya lakukan sebelum saya perlu melakukannya dan membuatnya sangat mudah bagi saya untuk menyelesaikannya. Hanya itu saja. "Reaksi pertama saya adalah menggelengkan kepala dan tersenyum, tapi saya berhenti sejenak. Sama sekali tidak ada yang salah dengan permintaan pengguna. Dia menginginkan sebuah sistemYang bereaksi terhadap kebutuhannya dan membantunya menyelesaikan sesuatu. Dia ingin mengendalikan komputer, tidak membiarkan komputer mengendalikannya. Sebagian besar kendala dan batasan antarmuka yang dikenakan oleh perancang dimaksudkan untuk mempermudah mode interaksi. Tapi untuk siapa? Dalam banyak kasus, perancang mungkin memperkenalkan batasan dan keterbatasan untuk menyederhanakan penerapan antarmuka. Hasilnya bisa jadi sebuah antarmuka yang mudah dibangun, namun membuat frustrasi. Mandel [MAN97] mendefinisikan sejumlah prinsip desain yang memungkinkan pengguna mempertahankan kontrol:
Tentukan mode interaksi dengan cara yang tidak memaksa pengguna melakukan tindakan yang tidak perlu atau tidak diinginkan. Modus interaksi adalah keadaan antar muka saat ini. Misalnya, jika pemeriksaan ejaan dipilih di menu pengolah kata, perangkat lunak akan berpindah ke mode pemeriksaan ejaan. Tidak ada alasan untuk memaksa pengguna tetap berada dalam mode pemeriksa ejaan jika pengguna ingin membuat teks kecil yang diedit di sepanjang jalan. Pengguna harus bisa masuk dan keluar dari mode dengan sedikit atau tanpa usaha. Sediakan interaksi yang fleksibel. Karena pengguna yang berbeda memiliki preferensi interaksi yang berbeda, pilihan harus disediakan. Misalnya, perangkat lunak memungkinkan pengguna berinteraksi melalui perintah keyboard, gerakan mouse, pen digitizer, atau perintah pengenalan suara. Tapi setiap tindakan tidak sesuai dengan setiap mekanisme interaksi. Pertimbangkan, misalnya, kesulitan menggunakan perintah keyboard (atau input suara) untuk menggambar bentuk kompleks. Izinkan interaksi pengguna menjadi terganggu dan tidak dapat diperbaiki. Bahkan saat terlibat dalam urutan tindakan, pengguna harus bisa mengganggu urutan untuk melakukan sesuatu yang lain (tanpa kehilangan pekerjaan yang telah dilakukan). Pengguna juga harus bisa "membatalkan" tindakan apapun. Merampingkan interaksi seiring tingkat keahlian maju dan memungkinkan interaksi disesuaikan. Pengguna sering menemukan bahwa mereka melakukan urutan interaksi yang sama berulang kali. Sebaiknya desain mekanisme "makro" yang memungkinkan pengguna tingkat lanjut menyesuaikan antarmuka untuk memfasilitasi interaksi. Sembunyikan bagian dalam teknis dari pengguna biasa. Antarmuka pengguna harus memindahkan pengguna ke dalam dunia maya aplikasi. Pengguna tidak boleh sadar akan sistem operasi, fungsi manajemen mesin, atau teknologi komputasi misterius lainnya. Intinya, antarmuka seharusnya tidak mengharuskan pengguna berinteraksi pada tingkat yang "di dalam" mesin (mis., Pengguna tidak boleh diminta untuk mengetikkan perintah sistem operasi dari dalam perangkat lunak aplikasi). Rancang untuk interaksi langsung dengan objek yang tampil di layar. Pengguna merasa memiliki rasa kontrol saat mampu memanipulasi objek yang diperlukan untuk melakukan suatu tugas dengan cara yang mirip dengan apa yang akan terjadi jika objek itu benda fisik. Misalnya, antarmuka aplikasi yang memungkinkan pengguna untuk "meregangkan" objek (skala dalam ukuran) adalah implementasi manipulasi langsung
15.1.2 Kurangi Beban Memori Pengguna Semakin banyak pengguna yang harus diingat, rawan error akan menjadi interaksi dengan sistem. Karena alasan inilah, antarmuka pengguna yang dirancang dengan baik tidak membatasi memori pengguna. Bila memungkinkan, sistem harus "mengingat" informasi terkait dan membantu pengguna dengan skenario interaksi yang membantu mengingat. Mandel [MAN97] mendefinisikan prinsip-prinsip desain yang memungkinkan sebuah antarmuka mengurangi beban memori pengguna:
Kurangi permintaan memori jangka pendek. Ketika pengguna terlibat dalam tugas yang kompleks, permintaan akan memori jangka pendek bisa sangat signifikan. Antarmuka harus dirancang untuk mengurangi kebutuhan mengingat tindakan dan hasil sebelumnya. Hal ini dapat dicapai dengan memberikan isyarat visual yang memungkinkan pengguna mengenali tindakan sebelumnya, daripada harus mengingatnya kembali. Tetapkan default yang berarti. Set awal default harus masuk akal bagi pengguna rata-rata, namun pengguna harus dapat menentukan preferensi individu. Namun, pilihan "setel ulang" harus tersedia, sehingga memungkinkan rede fi nisi nilai default asli. Definisikan cara pintas yang intuitif. Ketika mnemonik digunakan untuk mencapai fungsi sistem (misalnya, alt-P untuk memanggil fungsi cetak), mnemonik harus dikaitkan dengan tindakan dengan cara yang mudah diingat (misalnya, huruf pertama dari tugas yang akan dipanggil) . Tata letak visual antarmuka harus didasarkan pada metafora dunia nyata. Misalnya, sistem pembayaran tagihan harus menggunakan buku cek dan memeriksa rujukan metafora untuk membimbing pengguna melalui proses pembayaran tagihan. Hal ini memungkinkan pengguna untuk mengandalkan isyarat visual yang dipahami dengan baik, daripada menghafal urutan interaksi misterius. Mengungkapkan informasi secara progresif. Antarmuka harus diatur secara hierarkis. Artinya, informasi tentang suatu tugas, suatu objek, atau beberapa perilaku harus dipresentasikan terlebih dahulu pada tingkat abstraksi yang tinggi. Detail lebih lanjut harus disajikan setelah pengguna menunjukkan minat dengan memilih mouse. Contohnya, umum untuk banyak aplikasi pengolah kata, adalah fungsi yang menggarisbawahi. Fungsi itu sendiri adalah salah satu dari sejumlah fungsi di bawah menu text style. Namun, setiap kemampuan yang digarisbawahi tidak terdaftar. Pengguna harus memilih garis bawah, lalu semua opsi yang digarisbawahi (misalnya, garis bawah tunggal, garis bawaan ganda, garis bawah garis putus-putus) disajikan.
15.1.3 Membuat Antarmuka Konsisten Antarmuka harus hadir dan memperoleh informasi secara konsisten. Ini menyiratkan bahwa (1) semua informasi visual diatur menurut standar desain yang dipelihara sepanjang semua tampilan layar, (2) mekanisme input dibatasi pada perangkat terbatas yang digunakan secara konsisten di seluruhAplikasi, dan (3) mekanisme untuk menavigasi dari tugas ke tugas didefinisikan secara konsisten dan dilaksanakan. Mandel [MAN97] mendefinisikan seperangkat prinsip desain yang membantu membuat antarmuka konsisten: Biarkan pengguna memasukkan tugas saat ini ke dalam konteks yang berarti. Banyak antarmuka menerapkan kompleks lapisan interaksi dengan puluhan gambar layar. Penting untuk memberikan indikator (mis., Judul jendela, ikon grafis, pengkodean warna yang konsisten) yang memungkinkan pengguna mengetahui konteks pekerjaan yang sedang dikerjakan. Selain itu, pengguna harus dapat menentukan dari mana asalnya dan alternatif apa yang ada untuk transisi ke tugas baru. Pertahankan konsistensi di seluruh keluarga aplikasi. Satu set aplikasi (atau produk) semua harus menerapkan peraturan desain yang sama sehingga konsistensi dipertahankan untuk semua interaksi. Jika model interaktif masa lalu telah menciptakan harapan pengguna, jangan membuat perubahan kecuali ada alasan kuat untuk melakukannya. Setelah urutan interaktif tertentu telah menjadi standar de facto (misalnya, penggunaan alt-S untuk menyimpan file), pengguna mengharapkan ini di setiap aplikasi yang dia hadapi. Perubahan (mis., Menggunakan alt-S untuk memanggil penskalaan) akan menyebabkan kebingungan. Prinsip desain antarmuka yang dibahas dalam bagian ini dan bagian terdahulu memberikan panduan dasar untuk insinyur perangkat lunak. Pada bagian selanjutnya, kami memeriksa proses perancangan antarmuka itu sendiri.
15.2 USER INTERFACE DESIGN
Proses keseluruhan untuk merancang antarmuka pengguna dimulai dengan pembuatan model fungsi sistem yang berbeda (seperti yang dirasakan dari luar). Tugas manusia dan komputer yang dibutuhkan untuk mencapai fungsi sistem kemudian digambarkan; Masalah desain yang berlaku untuk semua desain antarmuka dipertimbangkan; Alat digunakan untuk prototipe dan akhirnya menerapkan model desain; Dan hasilnya dievaluasi untuk kualitas.
15.2.1 Model Desain Antarmuka Empat model yang berbeda ikut berperan saat antarmuka pengguna dirancang. Insinyur perangkat lunak menciptakan model perancangan, insinyur manusia (atau insinyur perangkat lunak) menetapkan model pengguna, pengguna akhir mengembangkan citra mental yang sering disebut model pengguna atau persepsi sistem, dan pelaksana sistem menciptakan Citra sistem [RUB88]. Sayangnya, masing-masing model ini mungkin berbeda secara signifikan. Peran perancang antarmuka adalah untuk mendamaikan perbedaan ini dan mendapatkan representasi antarmuka yang konsisten. Model desain keseluruhan sistem mencakup representasi data, arsitektur, antarmuka, dan prosedural dari perangkat lunak. Spesifikasi persyaratan mungkin.
Menetapkan batasan tertentu yang membantu untuk menentukan pengguna sistem, namun desain antarmuka seringkali hanya bersifat insidental terhadap model perancangan.1 Model pengguna menetapkan profil pengguna akhir dari sistem. Untuk membangun antarmuka pengguna yang efektif, "semua desain harus dimulai dengan pemahaman pengguna yang dimaksud, termasuk profil usia, jenis kelamin, kemampuan fisik, pendidikan, latar belakang budaya atau etnis, motivasi, sasaran dan kepribadian mereka" [SHN90]. Selain itu, pengguna bisa dikategorikan sebagai
• Novice. Tidak ada pengetahuan sintaksis dari sistem dan pengetahuan semantik kecil dari aplikasi atau penggunaan komputer pada umumnya. • Pengguna yang terpelajar dan terputus-putus. Pengetahuan semantik yang masuk akal dari aplikasi namun relatif rendah mengingat informasi sintaksis yang diperlukan untuk menggunakan antarmuka. • Pengguna yang berpengetahuan dan sering. Pengetahuan semantik dan sintaksis yang baik yang sering mengarah pada "sindrom pengguna kekuatan"; Artinya, individu yang mencari cara pintas dan cara interaksi yang disingkat.
Persepsi sistem (model pengguna) adalah citra sistem yang dibawa pengguna akhir di kepala mereka. Misalnya, jika pengguna pengolah kata tertentu diminta untuk menggambarkan operasinya, persepsi sistem akan membimbing responsnya. Keakuratan deskripsi akan bergantung pada profil pengguna (mis., Pemula akan memberikan tanggapan yang samar) dan keseluruhan keakraban dengan perangkat lunak di domain aplikasi. Seorang pengguna yang memahami pengolah kata sepenuhnya namun telah bekerja dengan pengolah kata tertentu hanya sekali mungkin benar-benar dapat memberikan deskripsi fungsinya yang lebih lengkap daripada pemula yang telah menghabiskan waktu berminggu-minggu untuk mencoba mempelajari sistem. Citra sistem menggabungkan manifestasi luar sistem berbasis komputer (tampilan dan nuansa antarmuka), ditambah dengan semua informasi pendukung (buku, manual, rekaman video, file bantuan) yang menggambarkan sintaks dan semantik sistem. Bila citra sistem dan persepsi sistem bertepatan, pengguna umumnya merasa nyaman dengan perangkat lunak dan menggunakannya secara efektif. Untuk mencapai "penyatuan" model ini, model perancangan harus dikembangkan untuk mengakomodasi informasi yang terdapat dalam model pengguna, dan citra sistem harus secara akurat menggambarkan informasi sintaksis dan semantik tentang antarmuka. Model yang dijelaskan di bagian ini adalah "abstraksi dari apa yang pengguna lakukan atau anggap dia lakukan atau apa yang orang lain pikir seharusnya dilakukannya saat dia
15.3 ANALISIS TUGAS DAN PEMODELAN
Pada Bab 13, kita membahas elaborasi bertahap (juga disebut dekomposisi fungsional atau penyempurnaan bertahap) sebagai mekanisme untuk memperbaiki tugas pemrosesan yang diperlukan agar perangkat lunak dapat mencapai beberapa fungsi yang diinginkan. Kemudian dalam buku ini, kami mempertimbangkan analisis berorientasi objek sebagai pendekatan pemodelan untuk sistem berbasis komputer. Analisis tugas untuk desain antarmuka menggunakan pendekatan elaborasi atau pendekatan berorientasi objek namun menerapkan pendekatan ini pada aktivitas manusia. Analisis tugas dapat diterapkan dalam dua cara. Seperti yang telah kita catat, sistem berbasis komputer interaktif sering digunakan untuk menggantikan aktivitas manual atau semi manual. Untuk memahami tugas yang harus dilakukan untuk mencapai tujuan aktivitas, seorang insinyur manusia4 harus memahami tugas yang sedang dilakukan manusia saat melakukan (saat menggunakan pendekatan manual) dan kemudian memetakannya ke dalam rangkaian tugas serupa (namun tidak harus sama). Yang diimplementasikan dalam konteks user interface. Sebagai alternatif, insinyur manusia dapat mempelajari spesifikasi yang ada untuk solusi berbasis komputer dan mendapatkan satu set tugas pengguna yang akan mengakomodasi model pengguna, model perancangan, dan persepsi sistem. Terlepas dari pendekatan keseluruhan terhadap analisis tugas, insinyur manusia harus terlebih dahulu mendefinisikan dan mengklasifikasikan tugas. Kami telah mencatat bahwa satu pendekatan adalah elaborasi bertahap. Misalnya, anggaplah bahwa perusahaan perangkat lunak kecil ingin membangun sistem perancangan bantuan komputer secara eksplisit untuk desainer interior. Dengan mengamati seorang desainer interior di tempat kerja, insinyur tersebut memperhatikan bahwa desain interior terdiri dari sejumlah aktivitas utama: tata letak furnitur, pemilihan kain dan material, pemilihan penutup dinding dan jendela, presentasi (untuk pelanggan), biaya, dan belanja. Masing-masing tugas utama ini dapat diuraikan menjadi subtugas. Misalnya, tata letak furnitur dapat diatur ke dalam tugas berikut: (1) menggambar rencana tingkat berdasarkan dimensi ruangan; (2) menempatkan jendela dan pintu pada lokasi yang tepat; (3) menggunakan template furnitur untuk menggambar furnitur berskala menguraikan rencana flora; (4) memindahkan furnitur untuk mendapatkan penempatan terbaik; (5) label semua perabot; (6) menggambar dimensi untuk menunjukkan lokasi; (7) menggambar pandangan perspektif untuk pelanggan. Pendekatan serupa dapat digunakan untuk setiap tugas utama lainnya. Subtek 1-7 masing-masing dapat diperbaiki lebih lanjut. Subtask 1-6 akan dilakukan dengan memanipulasi informasi dan melakukan tindakan dalam antarmuka pengguna. Di sisi lain, subtask 7 dapat dilakukan secara otomatis dalam perangkat lunak dan akan menghasilkan sedikit interaksi pengguna langsung. Model perancangan antarmuka harus mengakomodasi masing-masing tugas ini dengan cara yang sesuai dengan model pengguna (profil seorang desainer interior "khas") dan persepsi sistem (apa yang diharapkan oleh perancang interior dari sistem otomatis). Pendekatan alternatif untuk analisis tugas mengambil sudut pandang berorientasi objek. Insinyur manusia mengamati objek fisik yang digunakan oleh perancang interior dan tindakan yang diterapkan pada masing-masing objek. Misalnya, template furnitur akan menjadi objek dalam pendekatan analisis tugas ini. Perancang interior akan memilih template yang sesuai, memindahkannya ke posisi di denah lantai, menelusuri garis besar furnitur dan sebagainya. Model perancangan antarmuka tidak akan memberikan implementasi literal untuk setiap tindakan ini, namun akan menentukan tugas pengguna yang menyelesaikan hasil akhir (menggambar furnitur pada denah lantai).
15.4 KEGIATAN DESAIN INTERFACE
Setelah analisis tugas selesai, semua tugas (atau objek dan tindakan) yang diminta oleh pengguna akhir telah diidentifikasi secara rinci dan aktivitas perancangan antarmuka dimulai. Langkah-langkah perancangan antarmuka pertama [NOR86] dapat dilakukan dengan menggunakan pendekatan berikut: 1. Tetapkan tujuan5 dan niat untuk setiap tugas. 2. Peta setiap tujuan dan niat untuk urutan tindakan tertentu. 3. Tentukan urutan tindakan tugas dan subtugas, yang juga disebut skenario pengguna, karena akan dieksekusi pada tingkat antarmuka. 4. Tunjukkan keadaan sistem; Seperti apa tampilan antarmuka pada saat skenario pengguna dilakukan? 5. Mekanisme kontrol yang jelas; Yaitu, objek dan tindakan yang tersedia bagi pengguna untuk mengubah status sistem. 6. Tunjukkan bagaimana mekanisme kontrol mempengaruhi keadaan sistem. 7. Tunjukkan bagaimana pengguna menginterpretasikan keadaan sistem dari informasi yang diberikan melalui antarmuka.
Selalu mengikuti peraturan emas yang dibahas di Bagian 15.1, perancang antarmuka juga harus mempertimbangkan bagaimana antarmuka akan diterapkan, lingkungan (misalnya, teknologi display, sistem operasi, alat pengembangan) yang akan digunakan, dan elemen aplikasi lainnya yang " Duduk di belakang "antarmuka.
15.4.1 Menguraikan Objek dan Tindakan Antarmuka Langkah penting dalam desain antarmuka adalah definisi objek antarmuka dan tindakan yang diterapkan padanya. Untuk mencapai hal ini, skenario pengguna diuraikan dengan cara yang sama seperti memproses narasi yang diuraikan pada Bab 12. Artinya, deskripsi skenario pengguna ditulis. Kata benda (benda) dan kata kerja (tindakan) diisolasi untuk membuat daftar objek dan tindakan. Begitu objek dan tindakan telah didefinisikan dan diuraikan secara iteratif, mereka dikategorikan berdasarkan jenisnya. Objek sasaran, sumber, dan aplikasi diidentifikasikan. Objek sumber (mis., Ikon laporan) diseret dan jatuh ke objek target (mis., Ikon printer). Implikasi dari tindakan ini adalah membuat laporan hard copy. Objek aplikasi mewakili data spesifik aplikasi yang tidak dimanipulasi secara langsung sebagai bagian dari interaksi layar. Misalnya, milis digunakan untuk menyimpan nama untuk surat. Daftar itu sendiri mungkin disortir, digabungkan, atau dibersihkan (tindakan berbasis menu) namun tidak diseret dan dijatuhkan melalui interaksi pengguna.
15.4.2 Masalah Desain Karena perancangan antarmuka pengguna berkembang, empat masalah desain umum hampir selalu muncul:
waktu respons sistem, fasilitas bantuan pengguna, penanganan kesalahan, dan pelabelan perintah. Sayangnya, banyak perancang tidak membahas masalah ini sampai proses desain yang agak terlambat (kadang-kadang pertanyaan pertama tentang masalah tidak terjadi sampai prototipe operasional tersedia). Perulangan yang tidak perlu, penundaan proyek, dan frustrasi pelanggan sering terjadi. Jauh lebih baik untuk menetapkan masing-masing sebagai masalah desain yang harus dipertimbangkan pada awal perancangan perangkat lunak, bila ada perubahan yang mudah dan biaya rendah. Waktu tanggap sistem merupakan keluhan utama bagi banyak aplikasi interaktif. Secara umum, waktu respons sistem diukur dari titik di mana pengguna melakukan beberapa tindakan kontrol (misalnya, menekan tombol kembali atau mengeklik mouse) sampai perangkat lunak merespons dengan keluaran atau tindakan yang diinginkan. Waktu tanggap sistem memiliki dua karakteristik penting: panjang dan variabilitas. Jika panjang respon sistem terlalu panjang, frustrasi pengguna dan stres adalah hasil yang tak terelakkan. Namun, waktu respon yang sangat singkat juga bisa merugikan jika pengguna sedang mondar-mandir oleh antarmuka. Respon yang cepat dapat memaksa pengguna untuk terburu-buru dan karena itu membuat kesalahan. Variabilitas mengacu pada penyimpangan dari waktu respon rata-rata, dan dalam banyak hal, karakteristik waktu respon yang paling penting. Variabilitas rendah memungkinkan pengguna untuk membentuk ritme interaksi, meski waktu responnya relatif lama. Misalnya, respons 1 detik terhadap perintah lebih disukai daripada respons yang bervariasi dari 0,1 sampai 2,5 detik. Pengguna selalu diimbangi, selalu bertanya-tanya apakah ada sesuatu yang "berbeda" telah terjadi di balik layar. Hampir setiap pengguna sistem berbasis komputer interaktif membutuhkan bantuan saat ini. Dalam beberapa kasus, sebuah pertanyaan sederhana yang ditujukan kepada rekan yang berpengetahuan bisa melakukan triknya. Di lain, penelitian terperinci dalam rangkaian manual pengguna multivolume mungkin merupakan satu-satunya pilihan. Namun, dalam banyak kasus, perangkat lunak modern menyediakan fasilitas bantuan on-line yang memungkinkan pengguna menjawab pertanyaan atau menyelesaikan masalah tanpa harus meninggalkan antarmuka. Dua jenis fasilitas bantuan yang berbeda ditemukan: terpadu dan add-on [RUB88]. Fasilitas bantuan terpadu dirancang ke dalam perangkat lunak sejak awal. Seringkali konteksnya sensitif, memungkinkan pengguna untuk memilih dari topik yang relevan dengan tindakan yang sedang dilakukan. Jelas, ini mengurangi waktu yang dibutuhkan pengguna untuk mendapatkan bantuan dan meningkatkan "keramahan" antarmuka. Fasilitas bantuan add-on ditambahkan ke perangkat lunak setelah sistem dibangun. Dalam banyak hal, ini benar-benar manual pengguna on-line dengan kemampuan kueri terbatas. Pengguna mungkin harus mencari melalui daftar ratusan topik untuk menemukan panduan yang tepat, sering membuat banyak kesalahan dan menerima banyak informasi yang tidak relevan.
ConversionConversion EmoticonEmoticon