Wednesday, August 20, 2014

EXERCISE Chapter 8

EXERCISE
8.1 Lengkapi alat gambar STN pada Gambar 8.1 dan 8.3 dengan menulis deskripsi dialog untuk teks dan cat submenu . Untuk submenu teks berasumsi bahwa ada tiga pilihan : berpusat , kiri dan kanan dibenarkan . Teks yang dimasukkan dengan mengklik di lokasi di permukaan gambar dan kemudian mengetik . Anda awalnya dapat mengasumsikan bahwa mengetik baris teks dapat dianggap sebagai tindakan pengguna tunggal . Tetapi kemudian mencoba mengenai masing-masing karakter yang diketik sebagai tindakan. Cat submenu memiliki dua pilihan : pensil untuk menggambar freehand dan panci cat untuk mengisi banjir . Yang pertama dilakukan dengan menahan tombol mouse ke bawah sementara menggerakkan mouse akan menarik garis . Cat pot diaktifkan hanya dengan mengklik mouse ke area yang dia mengisi .

jawaban
Stns ini untuk menu utama dan subsistem grafis dalam teks . Kita hanya perlu melakukan submenu teks dan submenu cat . Untuk setiap struktur keseluruhan mirip dengan submenu grafis , yaitu pengguna memilih pilihan, ' cabang ' STN dan kemudian ada deskripsi dialog masing-masing pilihan itu
Untuk mempertimbangkan setiap surat yang diketik, kita cukup menambahkan loop diakhiri oleh pengguna mengetik tombol enter
Akhirnya, kita lakukan cat submenu
Perhatikan bahwa tindakan mendasar untuk gambar pensil yang menekan dan melepaskan tombol mouse, daripada mengklik. Ingat perilaku yang lebih kompleks menonton ketika kita dianggap tekan tombol dan release secara terpisah. Hal ini juga layak berpikir tentang perilaku yang diharapkan dari paket pada pilihan lain saat mouse ditekan. Misalnya, ketika menggambar garis, yang posisinya terdaftar, satu ketika tombol turun, atau satu ketika dilepaskan? Mencobanya pada paket gambar yang berbeda. Ada masalah yang sama dengan pilihan menu dan tombol layar. Skenario yang dijelaskan dalam Bagian 9.4.5 adalah contoh di mana yang penting adalah lokasi di mana tombol mouse dilepaskan. Lihatlah GUI yang berbeda dan sifat interaksi rinci. Anda mungkin akan terkejut dengan perbedaan!

8.2 Ulangi latihan di atas menggunakan notasi yang berbeda, tata bahasa, aturan produksi, JSD atau CSP. Anda akan perlu menentukan seluruh sistem dari menu utama dengan pilihan submenu individu seperti menggambar lingkaran. Perhatikan masalah yang Anda miliki dengan setiap notasi.
jawaban
Di bawah ini adalah deskripsi parsial di BNF dan aturan produksi. Sebagai latihan kelas, notasi yang berbeda dapat dialokasikan untuk berbagai kelompok mahasiswa dan jawaban dibandingkan. Deskripsi BNF The BNF deskripsi cukup mudah (jika sedikit membosankan). Kami memberikan deskripsi untuk menu utama, bagian dari submenu grafis dan teks submenu. Gambar garis yang sudah dijelaskan dalam Bagian 6.8.1 seperti definisi posisi-mouse.
Perhatikan gaya yang berbeda mungkin. Dalam submenu grafis , pemilihan opsi dan pilihan aksi masing-masing dikemas menjadi subdialog bernama ( menarik -line dan menggambar lingkaran ) . Namun, dalam submenu teks deskripsi tingkat atas dari masing-masing pilihan disertakan dalam definisi teks - submenu . Dengan semua notasi , ada tingkat yang sama luas pilihan gaya . Sesuai nama subdialogs dapat membuat seluruh dialog jauh lebih mudah untuk dibaca , namun , di sisi lain , terlalu banyak tingkatan abstraksi dapat membingungkan .

Juga perhatikan bahwa deskripsi BNF tidak membedakan antara memilih pilihan menu atau memilih titik pada permukaan gambar . Keduanya digambarkan sebagai posisi - tikus diikuti oleh KLIK - MOUSE . Pada tingkat gerakan pengguna dan penekanan tombol , ini sangat akurat , tetapi kehilangan perbedaan jelas dirasakan . Ini mungkin saat yang tepat untuk melihat notasi UAN [ 107 ] , yang tidak membedakan ini .
Aturan produksi
Sebagai alat gambar sebagian besar berurutan , kita akan mengharapkan untuk menemukan deskripsi aturan produksi agak rumit . Masalah utama adalah melacak seberapa dalam Anda berada di tumpukan menu, submenu dan pilihan . Watch out untuk solusi di mana opsi - tingkat yang lebih tinggi masih aktif , ketika dialog - tingkat yang lebih rendah beroperasi . Misalnya, deskripsi tingkat atas mungkin membaca
:
Ini bisa menunjukkan perilaku yang aneh. Bayangkan bahwa pengguna di tengah-tengah menggambar garis (menggunakan deskripsi pertama dalam Bagian 6.8.1). Kemudian setelah memilih titik pertama (di mana titik sistem acara 'istirahat-line' aktif), pengguna akan kembali ke menu tingkat atas dan memilih 'teks'. Pada titik ini menu pop-up teks akan muncul, dan pengguna dapat mulai memasukkan penjelasan teks pada area gambar.
Pengguna memilih meninggalkan dibenarkan dan pergi ke permukaan gambar dan klik pada suatu titik. Namun, pada saat ini ada dua aturan yang dapat api.
Padahal hal ini tentunya yang pertama ini yang mengharapkan pengguna, yang kedua ini dimungkinkan karena 'sisa-line}' event masih aktif. Juga melihat kembali ke definisi dalam Bagian 8.4.2, kita melihat bahwa karet banding masih akan berada di selama proses seleksi menu teks keseluruhan.
Ada berbagai perbaikan untuk ini. Salah satu cara adalah dengan menggunakan 'membersihkan' aturan seperti yang digunakan dalam CCT dalam Bagian 6.7.2. Sebagai contoh, kita akan mengubah deskripsi tingkat atas sehingga tidak selalu aktif.
Pilihan submenu kemudian diubah untuk memperbarui acara kegiatan tersebut (tindakan semantik telah dihilangkan untuk kejelasan): Sekarang ini memastikan bahwa pengguna selesai dialog tingkat rendah sebelum memilih pilihan baru pada tingkat atas.
8.3 Mengembangkan diagram JSD pada Gambar 8.14, memperluas berbagai node sampai Anda mendapatkan operasi dasar seperti 'prompt "login"' atau 'jenis pengguna dalam password'. Memperluas 'karyawan delete' simpul menggunakan gaya dialog seperti yang dijelaskan pada Gambar 8.13, dan gunakan imajinasi Anda untuk sisanya.
jawaban
Ini adalah latihan yang cukup sederhana, dan beberapa node diperluas di sini. Dalam Gambar Ex8.3.1, yang subdialog login diperluas, tetapi mengasumsikan bahwa jenis pengguna password yang benar selama proses login. Untuk mengubahnya untuk mengakomodasi password yang salah akan inordinately kompleks karena dua alasan. Pertama, diagram JSD tidak membedakan antara pengguna pilihan (apakah akan menambah atau menghapus catatan) dan pilihan sistem.
Hal ini terbukti baik dalam perubahan dan menghapus subdialogs.
Dalam masing-masing memperbarui sebenarnya file tersebut dimasukkan ke dalam kotak 'opsional' sebagai pengguna mungkin telah menjawab 'N' (tidak ada) ketika diminta untuk mengkonfirmasi pembaruan. Kedua, membuat dialog tergantung pada password akan berarti bahwa seluruh dialog akan duduk di bawah sebuah 'pilihan' kotak dengan kotak yang lain untuk membatalkan. Hal ini dapat diterima di delete dan perubahan subdialogs, tetapi jika ini diterapkan ke urutan login, dialog yang dihasilkan akan menjadi merosot dan menyembunyikan struktur hirarkis normal. Ini masalah apakah atau tidak untuk memasukkan kasus luar biasa dan perilaku kesalahan sangat kompleks. Pada tahap awal desain itu adalah kasus normal yang satu ingin untuk mempertimbangkan. Kemudian orang mungkin memperbaiki deskripsi dialog, atau alternatif membubuhi keterangan deskripsi normal.

8.4 Dalam contoh jam digital ( Desain Focus , P311 ) , apa yang akan menjadi negara yang berbahaya ? Kaitkan isu leksikal tombol untuk jam digital ke negara-negara ini berbahaya dan memberikan beberapa saran desain . Apakah jam digital Anda sendiri memenuhi kriteria ini ?
jawaban

Waktu dan mode pengaturan alarm adalah negara yang berbahaya , karena kita tidak ingin mengubah baik sengaja . Saran desain akan mencakup beberapa jenis penjaga yang membuatnya sulit untuk mendapatkan sengaja ke mode pengaturan waktu , atau sebaliknya, sekali dalam mode , untuk membuat tombol yang memajukan waktu yang sulit untuk tekan .

Jam tangan dalam Desain Focus penjaga negara ini dengan mengharuskan tombol ' A' harus ditekan selama dua detik sebelum perubahan modus . Mungkin mudah untuk menekan tombol menonton sengaja , tetapi sangat sulit untuk terus ke bawah . Solusi ini tidak akan tentu saja bekerja untuk keyboard , di mana sangat mudah untuk terus tombol bawah sengaja . Jam tangan lain menjaga mode ini dengan insetting tombol perubahan modus atau tombol yang diperlukan untuk benar-benar mengubah waktu . Kita harus menekan tombol ini dengan alat yang tajam , seperti pensil - tidak slip mudah untuk membuat . Beberapa jam digital menjaga modus dengan membuat Anda tahan tombol ke bawah terus menerus saat Anda mengubah waktu . Menjaga mode jauh lebih baik untuk menjaga tombol perubahan , sebagai yang terakhir membuatnya sangat sulit untuk mengubah waktu ketika Anda ingin melakukannya .

Bahkan , mengubah waktu sering menjadi masalah bagi berbaliknya watch dan jam dialog . Biasanya ada tombol untuk memajukan waktu satu jam atau satu menit , tapi tidak satu untuk menempatkan waktu kembali . Jadi , jika Anda menekan tombol menit muka terlalu sering , Anda harus menekan itu 59 kali lebih untuk membalikkan kesalahan !

No comments:

Post a Comment