Jumat, 01 Juni 2012

DESAIN DIALOG

Tugas softkill IMK
Anggota :       1. Dedy Armanto (21110753)
                        2. Dewi Aningsih (21110896)
                        3. Dimas Bangkit Wirkayantama (22110027)
                        4. Huda Anggit Prastowo (23110330)
                        5. Havizal Akram (29110937)
                        6. Leonardo (23110999)
                        7. Raymon Willy Butarbutar (28110164)
                        8. Fadilah Harokah Mukawama (22110481)
 
1.    Desain dialog
Dalam mendesain sebuah dialog, diperlukan deskripsi yang terpisah dari program secara keseluruhan. Ada beberapa alasan yang mendasari hal tersebut, antara lain :
a.    Agar lebih mudah dianalisa
b.    Pemisahan elemen-elemen interface dari logika program (semantik)
c.    Apabila notasi dialog ditulis sebelum program dibuat, maka notasi tersebut dapat membantu desainer untuk menganalisis struktur dialog yang diajukan, bahkan desainer juga dapat menggunakan prototyping tool untuk menguji dialog.
d.    Notasi dialog dapat digunakan sebagai salah satu cara bagi anggota tim perancangan untuk mendiskusikan rancangan dialog dan pada akhirnya diberikan kepada programmer aplikasi.
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 padastruktur
    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.

2.   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.
2.1 command language
         Bahasa Perintah dan Bahasa Alami
Tujuan Dasar Bahasa
§   Presisi.
§   Kekompakan.
§   Kemudahan dalam penulisan dan pembacaan.
§   Mudah dipelajari.
§   Sederhana, mengurangi kesalahan.
§   Mudah diingat.
 
Tujuan Tingkat Lebih Tinggi
§  Hubungan yang dekat antara realitas dan notasi
§ Kemudahan dalam melaksanakan manipulasi yang relevan dengan tugas
§  Kompatibilitas dengan notasi yang telah ada.
§ Fleksibilitas untuk mengakomodasi pemakai pemula dan ahli.
§  Ekspresif, mendukung kreativitas.
§  Daya tarik visual.
§  Kendala-kendala Penggunaan Bahas
§  Kapasitas manusia mengingat notasi.
§  Kecocokan antara ingatan dan media penampil.
§  Kemudahan berbicara (mengucapkan).
§  Bahasa Komputer
 
Bahasa komputer yang efektif harus tidak hanya merepresentasikan tugas pemakai dan memenuhi kebutuhan manusia untuk berkomunikasi, tetapi juga harus selaras dengan mekanisme perekaman, manipulasi, dan penampilannya di komputer.
Beberapa Contoh Bahasa Komputer
 
Bahasa pemrograman:
1. Pemakaian noninteraktif: Fortran, COBOL, ALGOL, PL/I, Pascal.
2. Inkremental: BASIC, LISP, APL, PROLOG.
3. Kompilasi dan eksekusi cepat: C.
4. Pemrograman tim, sharing, reusability: ADA, C++.
5. Jaringan, cross-platform: Java.
6. Scripting World Wide Web: PHP, JavaScript, VBScript.
Alamat World Wide Web .
 
1. Bahasa database query : SQL .
2. Bahasa perintah command line : perintah Unix , MS-DOS .
3. Strategi Organisasi Perintah
4. Simple command set
5. Command plus arguments
6. Command plus options and arguments
7. Hierarchical command structure.
 
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.2  WIMP
GUI ( Graphics User Interface ) merupakan sebuah konsep yang memungkinkan interaksi antara komputer dan pengguna secara grafis. Seperti yang terdapat dalam sistem operasi pada umumnya (Windows, Linux dengan X Window, Mac), GUI yang biasa digunakan berbentuk WIMP (Windows, Icons, Menus, Pointer), di mana terdapat window atau jendela untuk setiap program yang berjalan, icon yang melambangkan file, menu pada program, dan adanya sebuah pointer mouse yang digunakan untuk navigasi. Apabila dokumen yang dibuka pada sebuah window memiliki ukuran lebih besar daripada window tersebut, maka hanya sebagian dari dokumen yang tampak, disertai adanya scrollbar untuk menggeser tampilan ke bagian lain dari dokumen.
 
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.
 
2.3  Direct Manipulation (DM)
       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.
 
2.4 PDA & 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.
     
2.5 Speech & bahasa manual
    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. 
 
3.    User Interface Software
§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:
 
o   Xwindows : Xtoolkit & Motif
o   Macintosh : Mac Toolbox, MacApp
o   Windows : Windows Developer’s Toolkit
o   Java  : Swing
 
           Bagaimana cara kerja toolkit?
§Apa yang sebenarnya disediakan olehnya?
§Bagaimana mengaturnya?
 
oUser mengadakan aksi, berinteraksi dengan interface.
oAksi-aksi tersebut harus disampaikan kepada aplikasi dalam  cara-cara yang penuh arti.
oAplikasi 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.
 

Tidak ada komentar:

Posting Komentar