Selasa, 16 Mei 2023

Human Computer Interaction _ 8020210070_ Hengky Irwanda,

A.Pengujian Kegunaan Pengujian kegunaan adalah cara terbaik untuk memahami bagaimana pengguna nyata mengalami situs web atau aplikasi Anda. Tidak seperti wawancara atau grup fokus yang mencoba membuat pengguna melaporkan sendiri perilaku atau preferensi mereka sendiri secara akurat, tes pengguna yang dirancang dengan baik mengukur kinerja aktual pada tugas-tugas kritis misi. Jika pengguna tidak dapat mengetahui cara menyelesaikan pembelian, tidak ada jumlah "tetapi saya sangat menyukai situs webnya!" komentar akan menebusnya. Mulai Untuk melakukan uji kegunaan, mulailah dengan mengidentifikasi audiens target. Target audiens akan terdiri dari satu atau lebih kelompok pengguna. Misalnya, satu situs web mungkin memiliki konten untuk konsumen dan area login terpisah untuk administrator situs. Kemungkinan kedua grup pengguna ini melakukan tugas yang berbeda sebagai bagian dari penggunaan normal situs web mereka. Setiap kelompok pengguna harus diberi tugas untuk dilakukan selama pengujian yang mencerminkan pola penggunaan mereka yang berbeda. Membuat Tugas Uji Kegunaan Biasanya, peserta akan melakukan satu set 5 sampai 10 tugas dalam sesi 90 menit. Tugas harus mewakili sasaran pengguna yang paling umum (mis. memulihkan sandi yang hilang) dan/atau sasaran konversi terpenting dari perspektif situs web atau pemilik aplikasi (mis. melakukan pembelian). Penting juga untuk menetapkan kriteria keberhasilan yang sangat jelas untuk setiap tugas dan mendapatkan dukungan pemangku kepentingan atas kriteria keberhasilan tersebut. Contoh kriteria keberhasilan yang jelas adalah: “Peserta harus memuat URL www.examplewebsite.com/purchase-success/ di browser mereka, dan melaporkan bahwa mereka yakin telah berhasil menyelesaikan pembelian.” Penting juga untuk mengklarifikasi di mana peserta harus memulai tugas (misalnya di beranda situs web), dan bagaimana penyelesaian tugas dan titik awal dapat memengaruhi kemampuan peneliti untuk mengimbangi urutan tugas. Melakukan Uji Kegunaan Saat melakukan pengujian pengguna, peneliti membaca tugas peserta satu per satu, seperti "Cari tahu cara menghubungi dukungan teknis," dan memungkinkan peserta menyelesaikan tugas tanpa panduan apa pun. Untuk mencegah bias, peneliti mengikuti “naskah” yang sama saat menjelaskan tugas kepada setiap peserta. Peneliti juga dapat meminta peserta untuk berbicara keras saat dia mengerjakan tugas untuk lebih memahami model mental peserta untuk tugas tersebut dan pengambilan keputusannya secara real time. Ketika peserta telah menyelesaikan tugas, peneliti menetapkan titik awal untuk tugas berikutnya dan melanjutkan tes. Idealnya, urutan tugas diimbangi dari peserta ke peserta. Analisis Uji Kegunaan Perangkat lunak perekam pengujian kegunaan seperti TechSmith's Morae (khusus PC) atau Silverback (khusus Mac) dapat digunakan untuk merekam layar komputer dan suara peserta serta ekspresi wajah selama pengujian. Perangkat lunak ini juga dapat memfasilitasi pelacakan perilaku pengguna, termasuk klik mouse, penekanan tombol, dan jendela aktif atau terbuka. Ketika semua peserta telah menyelesaikan studi, peneliti akan menyusun data untuk menentukan tingkat keparahan dari setiap masalah kegunaan yang dihadapi dan memberikan rekomendasi yang diprioritaskan untuk tim pengembangan untuk memenuhi persyaratan kegunaan. Misalnya, dengan menganalisis ekspresi wajah peserta, jumlah klik mouse yang dilakukan, dan jalur navigasi yang digunakan untuk menyelesaikan tugas, teknisi pengalaman pengguna dapat mengidentifikasi bagian tugas yang paling membuat frustrasi dan menyarankan cara untuk meningkatkan antarmuka agar mendukung dengan lebih baik. pengguna. Pengujian kegunaan harus dilakukan pada berbagai waktu selama proses desain iteratif untuk memastikan bahwa semua persyaratan kegunaan telah dipenuhi dalam produk akhir. B. Dasar Evaluasi Kegunaan Evaluasi Kegunaan berfokus pada seberapa baik pengguna dapat belajar dan menggunakan produk untuk mencapai tujuan mereka. Ini juga mengacu pada seberapa puas pengguna dengan proses itu. Untuk mengumpulkan informasi ini, para praktisi menggunakan berbagai metode yang mengumpulkan umpan balik dari pengguna tentang situs yang ada atau rencana yang terkait dengan situs baru. Apa itu Kegunaan? Kegunaan mengacu pada kualitas pengalaman pengguna saat berinteraksi dengan produk atau sistem, termasuk situs web, perangkat lunak, perangkat, atau aplikasi. Kegunaan adalah tentang efektivitas, efisiensi, dan kepuasan pengguna secara keseluruhan. Penting untuk disadari bahwa kegunaan bukanlah properti satu dimensi tunggal dari suatu produk, sistem, atau antarmuka pengguna. 'Kegunaan' adalah kombinasi dari faktor-faktor termasuk: Desain intuitif: pemahaman arsitektur dan navigasi situs yang hampir tanpa usaha Kemudahan belajar: seberapa cepat pengguna yang belum pernah melihat antarmuka pengguna sebelumnya dapat menyelesaikan tugas-tugas dasar Efisiensi penggunaan: Seberapa cepat pengguna berpengalaman dapat menyelesaikan tugas Memorability: setelah mengunjungi situs, jika pengguna dapat mengingat cukup untuk menggunakannya secara efektif dalam kunjungan berikutnya Frekuensi dan keparahan kesalahan: seberapa sering pengguna membuat kesalahan saat menggunakan sistem, seberapa serius kesalahan tersebut, dan bagaimana pengguna pulih dari kesalahan Kepuasan subyektif: Jika pengguna suka menggunakan sistem Apa Metode Evaluasi dan Kapan Saya Harus Mengimplementasikannya? Kunci untuk mengembangkan situs yang sangat bermanfaat adalah menggunakan desain yang berpusat pada pengguna. Ungkapan, "tes lebih awal dan sering", sangat tepat untuk pengujian kegunaan. Sebagai bagian dari UCD, Anda dapat dan harus menguji sedini mungkin dalam prosesnya dan beragam metode yang tersedia memungkinkan Anda membantu pengembangan konten, arsitektur informasi, desain visual, desain interaksi, dan kepuasan pengguna secara umum. Peluang untuk pengujian meliputi: Pengujian kegunaan dasar di situs yang ada Grup fokus, survei, atau wawancara untuk menetapkan tujuan pengguna Pengujian Sort Kartu untuk membantu pengembangan IA Pengujian wireframe untuk mengevaluasi navigasi Pengujian klik pertama untuk memastikan pengguna Anda berada di jalur yang benar Pengujian kegunaan untuk mengukur interaksi pengguna end-to-end dan Survei kepuasan untuk melihat bagaimana tarif situs di dunia nyata. Salah satu atau kombinasi dari pengujian ini akan secara radikal meningkatkan kegunaan situs, sistem, atau aplikasi Anda. Bekerja dengan Data dari Pengujian Evaluasi kegunaan dapat menangkap dua jenis data: data kualitatif dan data kuantitatif. Data kuantitatif mencatat apa yang sebenarnya terjadi. Data kualitatif menggambarkan apa yang dipikirkan atau dikatakan partisipan. Setelah Anda mengumpulkan data, gunakan untuk: Evaluasi kegunaan situs web Anda Merekomendasikan perbaikan Laksanakan rekomendasi Tes ulang situs untuk mengukur efektivitas perubahan Anda. C.Pengujian Kegunaan Gerilya: Cara Memperkenalkannya di Proyek UX Anda Berikutnya
Dalam hal riset pengguna, terkadang Anda harus berinvestasi lebih banyak untuk mendapatkan lebih banyak. Di lain waktu, Anda dapat menghindari biaya. Ambil contoh statistik Google ini: tahukah Anda bahwa 85% masalah kegunaan inti dapat ditentukan dengan mengamati hanya lima orang yang menggunakan aplikasi Anda? Saat bekerja dengan anggaran UX terbatas dan garis waktu singkat, pengujian kegunaan gerilya adalah cara yang murah dan cepat untuk mengidentifikasi tren pengguna dan mengamati perilaku pengguna untuk meningkatkan antarmuka pengguna Anda. Faktanya, telah terbukti bahwa pengujian kegunaan gaya gerilya sederhana dapat meningkatkan tingkat konversi, meningkatkan kepuasan dan retensi pelanggan, serta mengurangi pemeliharaan dan risiko proyek. Jadi jika Anda sedang mencari cara untuk meneliti secara cerdas dan cepat, inilah saatnya untuk mencoba pendekatan gerilya. Artikel ini akan membawa Anda melalui semua dasar-dasarnya, plus membiarkan Anda mengetahui beberapa rahasia industri. Mari kita mulai. Apa itu Pengujian Kegunaan Gerilya? Seperti teknik kegunaan lainnya, pengujian kegunaan gerilya adalah cara untuk mengevaluasi seberapa efektif sebuah antarmuka dengan menguji desain visual, fungsionalitas, dan pesan umumnya pada audiens yang dituju dan menangkap tanggapan mereka. Apa yang membuat pengujian kegunaan gerilya unik adalah bahwa peserta tidak direkrut terlebih dahulu. Sebaliknya, anggota masyarakat didekati oleh mereka yang melakukan penelitian selama penyadapan langsung di kafe, perpustakaan, dan mal, atau di lingkungan alam lainnya. Bisa dibilang ini membuat pengujian kegunaan gerilya menjadi cara yang cepat, murah, dan tidak merepotkan untuk mengumpulkan umpan balik dari pengguna target. Proses Pengujian Kegunaan Gerilya Studi kegunaan gerilya disusun di sekitar tujuan penelitian kritis yang ditentukan untuk bagian penelitian pengguna dari proyek UX. Namun demikian, mereka biasanya cukup fleksibel sehingga dapat disesuaikan dengan evolusi penelitian pengguna. Sesi belajar umumnya singkat, seringkali berlangsung antara 10-15 menit menurut spesialis UX Nick Babich. Gerilya biasanya melibatkan lebih sedikit peserta daripada jenis studi lainnya (antara 6 dan 12, menurut Gavin Harris dari Box UK), memberikan cukup waktu untuk penilaian menyeluruh terhadap perilaku setiap peserta. Pengujian kegunaan gerilya adalah perawatan yang relatif rendah. Pada dasarnya, peserta tes diberikan serangkaian tugas untuk diselesaikan, dan tim peneliti akan mencatat setiap masalah yang terjadi selama tes. Anda tidak memerlukan banyak peralatan untuk memulai – cukup komputer untuk menjalankan tes, moderator, dan seseorang untuk mengamati dan mencatat. Anda juga dapat merekam tanggapan peserta menggunakan perekam layar untuk menghemat sumber daya dan waktu – tetapi sebaiknya ada orang lain di sana untuk mengamati reaksi dan bahasa tubuh peserta di setiap bagian tes. Anda harus menguji prototipe yang dibuat dengan alat, seperti Justinmind, di mana Anda dapat membuat pengujian dan penting atau interaktif sesuka Anda. Hasil Pengujian Kegunaan Gerilya Pengiriman pengujian kegunaan gerilya biasanya bersifat kualitatif daripada kuantitatif, karena Anda akan menilai peserta secara langsung. Penelitian kualitatif cenderung bertanya ‘mengapa’ daripada ‘berapa banyak’ atau ‘berapa banyak’. Tujuan dari jenis pengujian ini adalah untuk menginformasikan keputusan desain untuk proyek yang sedang berlangsung dan mengidentifikasi masalah kegunaan, daripada menilai kegunaan antarmuka yang ada. Temuan dan wawasan didasarkan pada interpretasi tim peneliti terhadap tanggapan peserta. Berikut adalah beberapa jenis kiriman yang dapat Anda harapkan setelah putaran pengujian kegunaan gerilya, seperti yang disarankan oleh Gavin Harris: Dokumen rencana pengujian yang menguraikan kerangka waktu pengujian yang diusulkan dan tujuan utama penelitian. Video yang menggabungkan layar dan rekaman peserta. Laporan ringkasan yang mencakup temuan utama dan langkah selanjutnya. Presentasi yang mencakup temuan-temuan utama dan langkah-langkah berikut. Haruskah Anda Melakukan Pengujian Kegunaan Gerilya? Ya. Pengujian kegunaan gerilya harus dilakukan saat proyek Anda memerlukan pengujian cepat dan murah, seperti saat Anda perlu memvalidasi asumsi desain di awal siklus hidup proyek, atau dalam proyek dengan anggaran rendah. Riset pengguna ad hoc, seperti jenis yang dapat Anda capai melalui studi kegunaan gerilya, berarti menghindari perekrutan peserta 'sesuai spesifikasi' yang mungkin harus Anda jangkau (atau sebaliknya) atau membayar waktu mereka. Elizabeth Chesters di What Users Do mengatakan bahwa jenis pengujian ini akan membawa Anda ke hadapan siapa pun yang mengatakan ya, dan dengan demikian, merupakan cara yang tepat untuk menetapkan garis dasar desain yang cepat dan mengukur peningkatan. Namun, perlu diingat bahwa pengujian pengguna ad-hoc akan memberikan hasil yang kurang akurat, karena Anda belum tentu menguji basis pengguna target Anda. Bahkan, Anda mungkin akan menerima campuran pengguna yang baru mengenal produk atau pasar Anda serta pengguna yang sudah ada. Dengan cara ini, pengujian kegunaan gerilya paling baik dibatasi pada penelitian pengguna yang tidak memerlukan pengetahuan lanjutan tentang perangkat atau fitur tertentu. Bagaimana Memulai Dengan Gerilya U D.Pengujian Kegunaan Seni Gerilya Artikel ini awalnya diterbitkan pada 2 Juli 2013. Direvisi pada 25 Juli 2017 untuk memasukkan rekomendasi yang diperbarui. Pengujian kegunaan gerilya adalah teknik yang ampuh. Desainer Martin Belam menggambarkannya sebagai "seni menerkam orang-orang yang sendirian di kafe dan ruang publik, [lalu] dengan cepat memfilmkan mereka saat mereka menggunakan situs web selama beberapa menit." Mari lewati bagian menerkam dan alih-alih fokus pada seluk-beluknya, termasuk cara mendapatkan dan berbagi umpan balik dengan tim kami. Baru-baru ini saya mengerjakan proyek quickstart di mana tim saya diminta untuk membangun situs web yang responsif dalam waktu singkat. Kami diberi sedikit waktu untuk membuat kode (apalagi melakukan penelitian) untuk upaya tersebut, namun dengan menggunakan pengujian kegunaan gerilya sepanjang jalan kami mengumpulkan umpan balik tentang posisi merek. Akhirnya, kami menyelaraskan desain kami dengan harapan pelanggan dan tujuan bisnis. Sekali seminggu selama proyek berlangsung, kami menguji berbagai jenis prototipe untuk menghidupkan ide bisnis. Misalnya, saat pertengahan pengembangan, kami membuat sketsa versi seluler situs pada kartu indeks dan melakukan penilaian cepat. Ini mengungkapkan masalah navigasi (yang memandu kami untuk memikirkan kembali poin kunci dalam perjalanan pelanggan) dan bahkan akhirnya membentuk sedikit materi media merek. Terlebih lagi, pengujian kegunaan gerilya membuka mata pemangku kepentingan kami sehingga mereka menantang asumsi bawaan mereka sendiri tentang "pengguna".
dia intinya? Pengujian kegunaan gerilya menampilkan dirinya sebagai teknik yang mudah dilakukan untuk menyempurnakan pengalaman pengguna. Itu membantu kami memvalidasi (dan membatalkan) asumsi kritis dengan biaya murah dan dengan kecepatan tinggi. Menghancurkannya Sulit untuk melihat keajaiban yang diberikan oleh pengujian kegunaan gerilya dan tidak diinginkan dalam aksi, bukan? Berikut adalah beberapa pertanyaan dasar untuk dipertimbangkan sebelum memulai: Apa yang akan kita uji? Di mana kita akan menguji? Dengan siapa kita akan menguji? dan tentu saja, Bagaimana kita akan menguji? Apa yang akan kita uji? Salah satu bagian terbaik dari jenis pengujian ini adalah dapat dilakukan dengan hampir semua hal, mulai dari konsep yang digambar di bagian belakang serbet hingga prototipe yang berfungsi penuh. Steve Krug merekomendasikan pengujian hal-hal lebih awal dari yang kita pikir seharusnya dan saya setuju – keluar dari gedung secepat mungkin. Uji seperti apa produk itu untuk membentuk seperti apa produk itu seharusnya. Bahkan sketsa UI yang didefinisikan secara longgar dapat menjadi cara yang bagus untuk mengevaluasi produk masa depan. Faktanya, penelitian terbaru menunjukkan bahwa prototipe dengan fidelitas rendah bisa lebih berharga terkait interaksi pengguna tingkat tinggi dan rendah. Di mana kita menguji? Tempat kami melakukan pengujian memengaruhi cara kami melakukan dan mendokumentasikan pekerjaan kami. Misalnya, jika kami menguji aplikasi seluler baru untuk rantai ritel, kami mungkin pergi ke toko itu sendiri dan berjalan di lorong; jika kami sedang mengerjakan perangkat lunak perkantoran "umum", kami mungkin mengujinya dengan rekan kerja di bagian kantor yang berbeda; dll. Intinya adalah: biarkan konteks yang mendorong pekerjaan. Dengan siapa kita menguji? Saat mendesain untuk pasar massal konsumen, cukup mudah untuk bertanya kepada orang asing yang tampak ramah jika mereka punya waktu luang beberapa menit. Ruang publik dan pusat perbelanjaan menghadirkan beberapa tempat terbaik untuk melakukan ini karena banyaknya lalu lintas pejalan kaki yang mereka terima (serta sifat lingkungan yang santai). Namun, dengan kumpulan pengguna yang lebih spesifik, akan berguna untuk menargetkan subjek berdasarkan konteks (lihat di atas) dan demografi. Saat ini Anda dapat merekrut orang untuk pengujian kegunaan gerilya jarak jauh dengan memanfaatkan forum publik seperti Reddit, Quora, atau Grup LinkedIn, antara lain. Cobalah mengintai di forum untuk menemukan orang yang tepat atau menulis postingan sederhana yang menguraikan niat Anda dan insentif terkait.
Bagaimana kita menguji? Pengujian cukup mudah: mintalah peserta berbicara keras saat mereka melakukan tugas. Gunakan protokol berpikir keras untuk menguji pemahaman produk secara keseluruhan daripada penyelesaian tugas dasar. Kuncinya adalah melihat pelanggan mengutak-atik produk dan secara diam-diam mengevaluasi kegunaannya. Seperti yang dijelaskan Sarah Harrison, “Mengamati pengguna itu seperti flossing–orang tahu mereka seharusnya melakukannya setiap hari, tetapi sebenarnya tidak. Jadi lakukan saja. Itu bukan masalah besar." Mulailah selalu dengan pertanyaan terbuka dan tidak mengarah seperti: Apa pendapatmu tentang ini? Apa yang akan Anda lakukan di sini? Bagaimana Anda akan melakukannya? Dengan menjawab pertanyaan-pertanyaan semacam ini, peserta menceritakan sebuah kisah lepas di mana mereka menjelaskan bagaimana mereka memandang suatu produk. Sepanjang jalan, kami dapat menghasilkan ide tentang cara meningkatkan berbagai hal di iterasi berikutnya. Mempekerjakan teknik Pengujian kegunaan gerilya sangat banyak tentang beradaptasi dengan situasi. Yang mengatakan, berikut adalah beberapa petunjuk bermanfaat yang saya temukan secara konsisten bekerja dalam konteks internasional yang berbeda: Hati-hati bias konfirmasi. Bias konfirmasi, juga dikenal sebagai bias sisi saya, adalah kecenderungan untuk mencari dan menyukai informasi yang menegaskan keyakinan yang ada. Meskipun kedai kopi dan forum online adalah tempat yang bagus untuk menemukan peserta dengan cepat, menjalankan tes di lokasi yang paling nyaman bisa menjadi cara bagi Anda untuk mengumpulkan informasi secara selektif. Ini terutama penting ketika ini adalah skenario yang bermuatan emosional, seperti pengujian desain. Memahami bias dapat membantu desainer mengelola subjektivitas dan memperhitungkan konteks. Jelaskan apa yang terjadi. Desainer harus jujur tentang siapa kami, mengapa kami menguji, dan umpan balik seperti apa yang ingin kami terima. Seringkali, yang terbaik adalah melakukannya dengan formulir rilis, sehingga orang-orang sepenuhnya menyadari implikasi dari partisipasi mereka – seperti apakah itu hanya akan digunakan secara internal versus dibagikan secara global di konferensi. Bentuk rilis semacam ini, meski membosankan untuk dibawa-bawa, membantu membangun kepercayaan. Bersikaplah etis. Tentu saja, bersikap jujur tidak berarti kita harus transparan sepenuhnya. Kadang ada gunanya melewatkan informasi tertentu, seperti jika kami mengerjakan produk yang mereka uji. Alternatifnya, kita mungkin mengatakan kebohongan putih tentang tujuan penelitian. Pastikan untuk selalu mengatakan yang sebenarnya di akhir setiap sesi: kepercayaan sangat penting untuk kolaborasi yang berhasil. Jadikan kasual. Ringankan ujian dengan menawarkan secangkir kopi dan/atau insentif sebagai imbalan atas waktu orang tersebut. Berdiri dalam antrean atau memesan dengan subjek tes adalah kesempatan bagus untuk mengajukan pertanyaan tentang gaya hidup mereka dan mendapatkan gambaran yang lebih baik tentang bagaimana tes akan berlangsung. Jika jauh, Anda dapat menawarkan kartu hadiah Amazon kecil – juga kesempatan bagus untuk bertanya tentang pengalaman membeli. Jadilah partisipatif. Hancurkan hambatan dengan melibatkan orang-orang: minta mereka untuk menggambar – di serbet atau selembar kertas notebook, misalnya – apa yang mungkin ingin mereka lihat di layar ketiga atau keempat dari aliran UI. Ini tidak harus menjadi antarmuka pengguna yang lengkap, hanya konsep kasar tentang apa yang ada di kepala mereka. Anda tidak pernah tahu apa yang akan Anda pelajari dengan menumbuhkan imajinasi. Jangan memimpin peserta. Saat Anda merasakan kebingungan, tanyakan kepada orang-orang apa yang ada di kepala mereka. Buka mereka dengan mendorong, mengatakan “Saya tidak tahu. Bagaimana menurutmu?". Orang-orang dalam situasi pengujian seringkali merasa seolah-olah mereka sedang diuji (berlawanan dengan produk itu sendiri), dan karena itu dapat mulai meminta maaf atau menutup diri. Jauhkan mata Anda kupas. Penting untuk merangkum pemikiran yang lewat untuk analisis nanti. Pengamatan etnografi adalah salah satu cara yang baik untuk menangkap apa yang Anda pikirkan selama tes. Namun, jangan terlalu terpaku pada catatan formal, sebagian besar coretan Anda akan berfungsi dengan baik. Ini tentang memicu ingatan, bukan memamerkannya di konferensi akademik. Tangkap umpan baliknya. Bagian penting dari setiap proses pengujian adalah menangkap apa yang telah kita pelajari. Meskipun cara kami melakukannya jelas merupakan pilihan pribadi, ada beberapa alat pilihan yang tersedia: aplikasi seperti Silverback atau UX Recorder mengumpulkan aktivitas layar bersama dengan reaksi wajah subjek uji. Peneliti lain membangun rig seluler mereka sendiri. Bagian penting untuk diingat di sini adalah menggunakan alat yang sesuai dengan kebutuhan berbagi Anda di masa mendatang. Jadilah polisi waktu. Ingat, ini bukan lab kegunaan dengan pengguna berbayar. Perhatikan berapa banyak waktu yang Anda habiskan dengan subjek tes dan selalu ingatkan mereka bahwa mereka dapat pergi kapan saja selama tes. Hal terakhir yang Anda inginkan adalah pengguna pemarah yang mengabaikan umpan balik Anda. Berbagi umpan balik Melakukan tes hanya setengah dari pertempuran, tentu saja. Untuk memberikan hasil yang menarik dan relevan dari tes kegunaan gerilya, desainer perlu memutuskan secara strategis bagaimana kami akan berbagi temuan kami dengan kolega kami. Saat menganalisis dan menyiapkan umpan balik yang ditangkap, selalu pertimbangkan audiens Anda. Umpan balik terbaik adalah jenis yang memahami pemangku kepentingan dan memulai percakapan penting di antara mereka. Misalnya, pengembang yang perlu mengevaluasi referensi : http://www.usabilityfirst.com/usability-methods/usability-testing/ https://www.usability.gov/what-and-why/usability-evaluation.html https://usabilitygeek.com/guerrilla-usability-testing-how-to/ http://www.uxbooth.com/articles/the-art-of-guerrilla-usability-testing/

Kamis, 27 Oktober 2022

tugas 3 _hengky irwanda_8020210070

RAM Explained - Random Access Memory


dalam video ini kita akan berbicara tentang salah satu bagian terpenting dari komputer dan kita akan berbicara tentang memori utama atau penyimpanan sementara, dan ini disebut RAM. RAM adalah singkatan dari Random Access Memory. RAM disimpan di motherboard dalam modul yang disebut DIMM. DIMM adalah singkatan dari Dual Inline Memory Module. DIMM adalah modul inline ganda karena memiliki dua baris pin yang terpisah, satu di setiap sisinya. Modul memori DIMM memiliki 168, 184, 240, atau 288 pin. Dan kemudian DIMM dipasang pada motherboard di slot memori. Motherboard dapat memiliki berbagai slot memori. Motherboard rata-rata akan memiliki antara 2 dan 4 di antaranya. Agar data atau program dapat berjalan di komputer. Ini harus dimuat ke dalam RAM terlebih dahulu. Jadi data atau program pertama-tama disimpan di hard drive, kemudian dari hard drive, dimuat ke RAM. Dan setelah dimuat ke RAM, CPU sekarang dapat mengakses data atau menjalankan program. Sekarang sering kali jika memori terlalu rendah mungkin tidak dapat menyimpan semua data yang dibutuhkan CPU. Dan ketika ini terjadi, maka beberapa data lain harus disimpan di hard drive yang lebih lambat untuk mengimbangi rendahnya memori. Jadi, alih-alih data berpindah dari RAM ke CPU, ia harus melakukan pekerjaan ekstra dengan kembali ke hard drive. Dan ketika ini terjadi, itu memperlambat komputer. Jadi untuk mengatasi masalah ini, yang perlu Anda lakukan adalah meningkatkan jumlah RAM di komputer dan dengan meningkatkan memori, lebih banyak data dapat dimuat ke dalam RAM yang lebih cepat tanpa perlu terus-menerus mengakses hard drive yang lebih lambat. Dan hasilnya adalah komputer berkinerja lebih cepat. Jadi inilah mengapa komputer dengan RAM lebih banyak bekerja lebih cepat daripada komputer dengan RAM lebih sedikit. RAM membutuhkan daya listrik yang konstan untuk menyimpan data. Dan jika power dimatikan, maka data akan terhapus. RAM juga hadir dalam berbagai jenis seperti RAM dinamis atau DRAM. DRAM adalah memori yang berisi kapasitor. Kapasitor seperti ember kecil yang menyimpan listrik, dan kapasitor inilah yang menyimpan sedikit informasi seperti 1 atau 0. Karena itulah cara komputer membaca data, yaitu 1 atau 0. Dan karena DRAM memiliki kapasitor, mereka memiliki disegarkan dengan listrik terus-menerus karena kapasitor tidak menahan muatan untuk waktu yang lama, terus-menerus bocor. Dan penyegaran ini adalah tempat kami mendapatkan nama 'dinamis'. Kapasitor harus sering di-refresh secara dinamis, jika tidak mereka akan melupakan informasi yang mereka pegang. Jenis memori lain disebut SDRAM yang merupakan singkatan dari DRAM sinkron. Dan jenis memori inilah yang digunakan saat ini dalam RAM DIMM. SDRAM juga memiliki kapasitor seperti DRAM, tetapi perbedaan antara SDRAM dan DRAM pada dasarnya adalah kecepatan. Teknologi DRAM yang lebih lama beroperasi secara Asynchronous dengan jam sistem, yang pada dasarnya berarti bahwa ia berjalan lebih lambat daripada jam sistem. Karena sinyalnya tidak terkoordinasi dengannya tetapi SDRAM berjalan selaras dengan jam sistem. Itulah mengapa lebih cepat dari DRAM. Semua sinyal terikat ke jam sistem untuk pengaturan waktu yang lebih terkontrol. Jadi seperti yang dinyatakan sebelumnya RAM disimpan pada motherboard dalam modul yang disebut DIMM dan DIMM ini memiliki ukuran memori yang berbeda. Saat ini mereka berkisar dari 128 megabyte hingga 32 gigabyte per DIMM. SDRAM juga dinilai pada kecepatan yang berbeda. Tetapi sebelum kita berbicara tentang kecepatan RAM, kita perlu mendefinisikan beberapa hal terlebih dahulu. Sekarang istilah jalur data 64 atau 32 bit, mengacu pada jumlah bit data yang ditransfer pada satu waktu atau dalam satu siklus clock. Semakin banyak bit yang ditransfer dalam satu siklus clock, maka semakin cepat kecepatan komputer. Sekarang DIMM memiliki jalur data 64 bit. Yang berarti mereka dapat mentransfer 64 bit data dalam satu waktu. Sekarang sebelum DIMM ada modul RAM yang lebih lama yang disebut SIMM. Dan SIMM memiliki jalur data 32 bit. Artinya mereka dapat mentransfer data 32 bit dalam satu waktu. Jadi itulah mengapa DIMM lebih cepat daripada SIMM, karena DIMM dapat mentransfer dua kali jumlah data per siklus jam, karena DIMM mentransfer 64 bit data pada satu waktu. dibandingkan dengan SIMM yang mentransfer 32 bit data sekaligus. Sekarang satu bit, atau satu bit data, adalah bentuk data terkecil yang dibaca komputer. Karena dalam dunia komputasi, komputer hanya memahami 1s dan 0s yang diwakili oleh satu bit data. Sekarang ada juga istilah byte. Dan 8 bit sama dengan 1 byte. Jadi jika DIMM memori dinilai memiliki jalur data 64-bit, itu berarti ia memiliki jalur data atau bus selebar 8 byte. Karena 64 dibagi 8 = 8 SDRAM dinilai pada kecepatan yang berbeda. Misalnya sebatang SDRAM lama di akhir 1990-an bisa diberi label PC-100. 100 sama dengan kecepatan maksimum operasinya, yaitu 100 MHz dan Karena SDRAM hanya hadir dalam modul 64-bit, seperti yang telah kita bahas sebelumnya, ia memiliki bus selebar 8 byte, karena 64 dibagi 8 = 8 Jadi untuk mengetahuinya Total bandwidth PC-100, kalikan 100 MHz x 8 byte yang sama dengan 800 megabyte per detik. Jadi total Bandwidth PC-100 sama dengan 800 megabyte per detik. Jadi dengan kata lain RAM PC-100 dapat mentransfer data dengan kecepatan maksimal 800 megabyte per detik. Jadi modul SDRAM berlabel PC-133, kalikan 133 dengan 8 yang = 1066. Jadi total bandwidth untuk PC-133 sama dengan 1066 megabyte per detik. Sekarang secara teknis 133 x 8 sebenarnya sama dengan 1064 Tapi 1066 akurat karena kecepatan clock sebenarnya adalah 133.3333 x 8, yang dibulatkan ke 1066 Jenis memori lain disebut RDRAM, yang dikembangkan oleh Rambus inc. Dan mereka mengembangkan RIMM yang merupakan singkatan dari Rambus inline memory module. RIMM memiliki 184 pin dan terlihat mirip dengan DIMM. Dengan pengecualian bahwa takik bawah terletak di tengah modul. Pada tahun 1999 RIMM merupakan terobosan dalam kecepatan memori, tetapi dengan cepat tertinggal karena kemajuan teknologi di DIMM. Ketika RDRAM memulai debutnya pada tahun 1999 itu berjalan pada 800 MHz yang jauh lebih cepat dari SDRAM yang berjalan pada 133 MHz pada waktu itu Tetapi meskipun itu jauh lebih cepat dari SDRAM, RDRAM hanya memiliki bus dengan lebar 2 byte, dibandingkan dengan SDRAM, yang memiliki bus dengan lebar 8 byte Jadi jika Anda mengalikan kecepatan RDRAM, yaitu 800 MHz x lebar bus, yang sebelumnya 2 byte, Anda akan mendapatkan total bandwidth 1.600 megabyte per detik Saat teknologi meningkat dan kecepatan prosesor dan bus menjadi lebih cepat teknologi RAM baru dikembangkan untuk mengimbangi kecepatan komputer yang lebih cepat. Teknologi yang lebih baru ini disebut DDR, yang merupakan singkatan dari double data rate, dan pada dasarnya itulah yang dilakukan DDR, ia mengirimkan dua kali lipat jumlah data di setiap siklus clock Dibandingkan dengan non DDR. Non DDR, atau RAM data rate tunggal. Menggunakan hanya tepi naik dari sinyal clock untuk mentransfer data Tetapi DDR menggunakan tepi naik dan turun dari sinyal clock untuk mengirim data. Yang memberi DDR kemampuan untuk mengirim dua kali jumlah data Jadi berikut adalah ilustrasi lain yang membandingkan perbedaan antara DDR dan non DDR Jadi meskipun jam sistem berdenyut dengan kecepatan yang sama untuk kedua modul RAM, modul RAM DDR dapat mengirim dua kali lipat jumlah data, karena memanfaatkan sisi naik dan turun dari sinyal clock. Jadi meskipun kita mempercepat clock dan membuatnya lebih cepat, RAM DDR masih akan mengirim dua kali lipat jumlah data dibandingkan dengan RAM non DDR. DDR ss juga diberi label berbeda dari RAM non DDR. RAM DDR dapat mencakup kecepatan clock dan total bandwidth dalam namanya. Jadi, alih-alih hanya menyertakan kecepatan clock dalam namanya, seperti PC-133, di mana 133 sama dengan kecepatan clock. DDR juga mencakup total bandwidth. Jadi misalnya DIMM DDR berlabel DDR-333 PC-2700 333 adalah kecepatan clock, dan 2700 adalah bandwidth total sebenarnya. jadi 333 MHz x 8 byte = 2700 megabyte per detik, di mana kami mendapatkan nama PC-2700 Sebuah teknologi baru yang telah berhasil DDR adalah DDR2 DDR2 lebih cepat daripada DDR karena memungkinkan kecepatan bus yang lebih tinggi dan efektif mengirim dua kali lipat jumlah datanya dibandingkan DDR dan juga menggunakan daya yang lebih kecil dari DDR A DDR2 DIMM memiliki 240 pin dibandingkan DDR yang memiliki 184 pin. DDR2 diberi label seperti DDR. Tetapi dengan perbedaan kecil misalnya DDR2 DIMM dapat diberi label DDR2-800 PC2-6400 dan perbedaannya adalah '2' tepat setelah DDR dan '2' tepat setelah PC. Jadi ini adalah bagaimana Anda dapat mengidentifikasi memori DDR2 Dengan menggunakan labelnya dan tepat setelah DDR2 adalah DDR3 DDR3 dua kali lebih cepat dari DDR2 dan juga menggunakan daya lebih kecil dari DDR2 dan seperti DDR2 DDR3 juga memiliki 240 pin, tetapi takik di DIMM berada di tempat yang berbeda. Jadi Anda tidak bisa meletakkan DIMM DDR3 di slot RAM yang dibuat untuk DDR2 padahal motherboard dibuat untuk mendukung jenis memori tertentu sehingga Anda tidak bisa mencampurkan DDR 1, 2, 3, atau 4 pada motherboard yang sama Contoh dari DDR3 akan menjadi DDR3-1600 PC3-12800 Dan generasi keempat DDR SDRAM adalah DDR4 DDR4 DIMM memiliki 288 pin, dan seperti pendahulunya, ia juga menggunakan daya yang lebih sedikit daripada generasi sebelumnya DDR DDR4 juga menawarkan jangkauan kecepatan yang lebih tinggi daripada DDR3 seperti DDR4-4266 PC4-34100 yang memiliki bandwidth maksimum yang luar biasa 34.100 megabyte per detik Sekarang terkadang ada keadaan di mana kerusakan data memori tidak dapat ditolerir misalnya di server server yang dimaksudkan untuk aktif dan berjalan setiap saat dan beberapa server tidak bisa offline karena alasan apa pun. Seperti server yang mengontrol data keuangan, data medis darurat, atau data pemerintah. Server ini tidak dapat turun karena alasan apa pun dan itulah mengapa beberapa modul RAM memiliki ECC yang merupakan singkatan dari kode koreksi kesalahan dan yang dilakukan ECC adalah mendeteksi apakah data diproses dengan benar oleh modul memori dan membuat koreksi jika perlu. Anda dapat mengetahui apakah modul RAM memiliki ECC dengan menghitung jumlah chip memori pada modul tersebut. Dalam DIMM Non-ECC standar , ia akan memiliki delapan chip memori Tetapi dalam modul memori ECC akan memiliki sembilan chip memori. Sekarang sebagian besar modul RAM saat ini adalah non-ECC dan ini karena kemajuan teknologi yang telah meminimalkan kesalahan memori dan Memiliki membuat RAM non ECC lebih stabil. Tetapi seperti yang dinyatakan sebelumnya, memori ECC sebagian besar digunakan di server karena server harus aktif dan berjalan setiap saat dan menggunakan memori ECC hanyalah tindakan pencegahan ekstra untuk menjaga dari kesalahan memori apa pun.


https://youtu.be/D-AdqniwiKg

https://drive.google.com/file/d/1aNhBnSlzMiQKnNSSnywUHL7B2EccJEL_/view?usp=drivesdk

Selasa, 18 Oktober 2022

Tugas 2 Sistem - Hengky Irwanda - 8020210070

>1.Batch System




Batch system adalah dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya maasih blum dilengkapi oleh sebuah sistem operasi. But, dalan beberapa fungsi sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini. Contohnya adalah FMS ( Fortarn Monitoring System ) dan IBSYS.


contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berkaitan.ada 2 cara dalam Batch System yaitu :



1. MultiprogrammingMultiprogramming adalah kegiatan menjalankan beberapa program pada memori pada satu waktu. Untuk meningkatkan keseluruhan kemampuan dari sistem komputer, para developer memperkenalkan konsep multiprogramming. Dengan multiprogramming, beberapa tugas disimpan dalam memori dalam satu waktu; CPU digunakan secara bergantian sehingga menambah utilisasi CPU dan mengurangi total waktu yang dibutuhkan untuk menyelesaikan tugas-tugas tersebut.
Melayani banyak program yang tidak ada hubungannya satu sama lain dan dijalankan sekaligus dalam satu komputer yang sama. Pelaksanaan instruksi yang diterapkan adalah:- program dimuat ke dalam memori,- program dijalankan sampai mengakses perangkat I/O,- berpindah (switch) ke pekerjaan lain,- langkah tersebut berulang terus menerus,- untuk proses perpindahan (switching), dilaksanakan oleh software.


Contoh nya adalah menjalankan browser bersamaan dengan media player atau programm pengolah gambar seperti photoshop.Yang di maksud dengan multi programming di sini adalah CPU menjalankan beberapa program sekaligus 


 2. MultiprocessingMultiprocessing adalah istilah teknologi informasi dalam bahasa Inggris yang merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.Multiprocessing juga kadang merujuk kepada kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah sistem secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu, meski istilah multiprogramming lebih sesuai untuk konsep ini. Multiprocessing sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali.

Contoh nya adalah pada zaman sekarang banyak processor yang sudah berteknologi dual core sampai quad core.  ini bertujuan untuk hemat waktuMaksudnya adalah core dalam processor menjalankan tugas nya masing2

SUMBER :
http://be-buddy.blogspot.com/2012/09/definisi-multiprogramming.html
http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html


>2. Critical Section


Critical Section adalah bagian dari suatu proses yang akan melakukan akses dan manipulasi data.
Ketika sebuah proses sedang dijalankan dalam critical section nya, tidak ada proses lain yang boleh dijalankan dalam critical section tersebut, karena akan menyebabkan keadaan mutually exclusive.
Mutually exclusive yakni keadaan terjadinya akses resources yang sama di saat yang bersamaan. Mutually exclusive memerlukan kondisi tertentu agar dapat terpenuhi.
Critical section biasanya digunakan saat program multithreading, dimana program tersebut terdiri dari banyak thread, akan mengubah nilai dari variabel. Dalam hal ini critical section diperlukan untuk melindungi variabel dari concurrent access (pengaksesan program di saat yang bersamaan) yang dapat membuat nilai dari variabel tersebut menjadi tidak konsisten.
Seperti yang telah kita ketahui bahwa proses dapat bekerja sendiri (independent process) dan juga dapat bekerja bersama proses-proses yang lain (cooperating process). Pada umumnya ketika proses saling bekerjasama (cooperating process) maka proses-proses tersebut akan saling berbagi data. Pada saat proses-proses berbagi data, ada kemungkinan bahwa data yang dibagi secara bersama itu akan menjadi tidak konsisten dikarenakan
adanya kemungkinan proses-proses tersebut melakukan akses secara bersamaan yang menyebabkan data tersebut berubah, hal ini dikenal dengan istilah Race Condition.
Oleh karena itu, dibutuhkan solusi yang tepat untuk menghindari munculnya Race Condition. Solusi tersebut harus memenuhi ketiga syarat berikut:
  1. Mutual Exclusion
  2. Progress
  3. Bounded Waiting
Ada dua jenis solusi untuk memecahkan masalah critical section, yaitu : 
  1. Solusi Perangkat Lunak. Solusi ini menggunakan algoritma-algoritma untuk mengatasi masalah critical section.
  2. Solusi Perangkat Keras. Solusi ini tergantung pada beberapa instruksi mesin tertentu, misalnya dengan me-non-aktifkan interupsi, mengunci suatu variabel tertentu atau menggunakan instruksi level mesin seperti tes dan set.



Berikut ini algoritma-algoritma yang digunakan untuk mengatasi masalah critical section:
1.Algoritma I
Algoritma I memberikan giliran kepada setiap proses untuk memproses critical section-nya secara bergantian.
Asumsi yang digunakan disini setiap proses secara bergantian memasuki critical section-nya.
Statement while(turn != 4) akan memeriksa apakah pada saat itu proses 4 mendapatkan turn, jika tidak maka proses 4 akan busy waiting(lihat kembali bahwa printah while diakhiri dengan “;”). Jika ternyata pada saat itu merupakan giliran proses 4 maka proses 4 akan mengerjakan critical section-nya. Sampai sini jelas terlihat bahwa mutex terpenuhi! Proses yang tidak mendapatkan turn tidak akan dapat mengerjakan critical section-nya dan turn hanya akan diberikan pada satu proses saja.
Setelah proses 4 selesai mengerjakan critical section maka turn diberikan pada proses lainnya (turn= j, j merupakan proses selanjutnya yang dapat mengerjakan critical section). Setelah turn-nya diberikan kepada proses lain, proses 4 akan mengerjakan remainder section.   Disini jelas terlihat bahwa syarat bounded waiting jelas terpenuhi. Ingat asumsi yang digunakan dalam algoritma ini adalah setiap proses secar bergantian memasuki critical section-nya, jika pada saat itu proses 4 ternyata belum mau mengerjakan critical section-nya maka proses ke-j tidak akan mendapatkan kesempatan untuk mengerjakan critical section walau saat itu sebenarnya proses ke-j akan memasuki critical section. Artinya syarat progress tidak terpenuhi pada algoritma ini.
2.Algoritma II
Masalah yang terjadi pada algoritma 1 ialah ketika di entry section terdapat sebuah proses yang ingin masuk ke critical section, sementara di critical section sendiri tidak ada proses yang sedang berjalan, tetapi proses yang ada di entry section tadi tidak bisa masuk ke critical section. Hal ini terjadi karena giliran untuk memasuki critical section adalah giliran proses yg lain sementara proses tersebut masih berada di remainder section. Untuk mengatasi masalah ini maka dapat diatasi dengan merubah variabel trun pada algoritma pertama dengan array
Boolean flag [2];
Elemen array diinisialisasi false. Jika flag[i] true, nilai tersebut menandakan bahwa Pi ready untuk memasuki critical section. Pada algoritma ini. hal pertama yang dilakukan ialah mengeset proses Pi dengan nilai True, ini menandakan bahwa Pi ready untuk masuk ke critical section. kemudian, Pi memeriksa apakah Pj
tidak ready untuk memasukui critical section. Jika Pj ready, maka Pi menunggu sampai Pj keluar dari critical section (flag[j] bernilai false). Ketika keluar dari critcal section, Pi harus merubah nilai flag[i] menjadi false agar prores lain dapat memasuki critical section.
Contoh:
Pada algoritma ini, kriteria Mutual-exclusion terpenuhi, tetapi  tidak memenuhi kriteria
progress. Ilustrasinya seperti di bawah ini.
T0 : Po set flag [0] = true
T1 : Po set flag [1] = true
Dari ilustrasi diatas terlihat bahwa algoritma ini memungkinkan terjadinya nilai true untuk kedua proses, akibatnya tidak ada proses yang akan berhasil memasuki critical section.
Jadi untuk algoritma 2 masih terdapat kelemahan, seperti yang terjadi di atas.
3.Algoritma  III
Idenya berasal dari algoritma 1 dan 2. Algoritma 3 mengatasi kelemahan pada algoritma 1 dan 2 sehingga progres yang diperlukan untuk mengatasi critical section terpenuhi.
Algoritma III ditemukan oleh G.L. Petterson pada tahun 1981 dan dikenal juga sebagai Algoritma Petterson. Petterson menemukan cara yang sederhana untuk mengatur proses agar memenuhi mutual exclusion. Algoritma ini adalah solusi untuk memecahkan masalah critical section pada dua proses. Ide dari algoritma ini adalah menggabungkan variabel yang di- sharing pada Algoritma I dan Algoritma II, yaitu variabel turn dan variabel flag. Sama seperti pada Algoritma I dan II, variabel turn menunjukkan giliran proses mana yang diperbolehkan memasuki critical section dan variabel flag menunjukkan apakah suatu proses membutuhkan akses ke critical section atau tidak.
Awalnya flag untuk kedua proses diinisialisai bernilai false, yang artinya kedua proses tersebut tidak membutuhkan akses ke critical section. Kemudian jika suatu proses ingin memasuki critical section, ia akan mengubah flag-nya menjadi true (memberikan tanda bahwa ia butuh critical section) lalu proses tersebut memberikan turn kepada lawannya. Jika lawannya tidak menginginkan critical section (flag-nya false), maka proses tersebut dapat menggunakan critical section, dan setelah selesai menggunakan critical section ia akan mengubah flag-nya menjadi false. Tetapi apabila proses lawannya juga menginginkan critical section maka proses lawan-lah yang dapat memasuki critical section, dan proses tersebut harus menunggu sampai proses lawan menyelesaikan critical section dan mengubah flag-nya menjadi false.
Misalkan ketika P0 membutuhkan critical section, maka P0 akan mengubah flag[0] = true, lalu P0 mengubah turn1. Jika P1 mempunyai flag[1] = false, (berapapun nilai turn) maka P0 yang dapat mengakses critical section. Namun apabila P1 juga membutuhkan critical section, karena flag[1] = true dan turn= 1, maka P1 yang dapat memasuki critical section dan P0 harus menunggu sampai P1 menyelesaikan critical section dan mengubah flag[1] = false, setelah itu barulah P0 dapat mengakses critical section.
Bagaimana bila kedua proses membutuhkan critical section secara bersamaan? Proses mana yang dapat mengakses critical section terlebih dahulu? Apabila kedua proses (P0 dan P1) datang bersamaan, kedua proses akan menset masing-masing flag menjadi true (flag[0] = true dan flag[1] = true), dalam kondisi ini P0 dapat mengubah turn = 1 dan P1 juga dapat mengubah turn = 0. Proses yang dapat mengakses critical section terlebih dahulu adalah proses yang terlebih dahulu mengubah turn menjadi turn lawannya. Misalkan P0 terlebih dahulu mengubah turn= 1, lalu P1 akan mengubah turn= 0, karena turn yang terakhir adalah 0 maka P0-lah yang dapat mengakses critical section terlebih dahulu dan P1 harus menunggu.
Algoritma III memenuhi ketiga syarat yang dibutuhkan. Syarat progress dan bounded waiting yang tidak dipenuhi pada Algoritma I dan II dapat dipenuhi oleh algoritma ini karena ketika ada proses yang ingin mengakses critical section dan tidak ada yang menggunakan critical section maka dapat dipastikan ada proses yang bisa menggunakan critical section, dan proses tidak perlu menunggu selamanya untuk dapat masuk ke critical section.
4.Algoritma Tukang Roti
Algoritma ini didasarkan pada algoritma penjadwalan yang biasanya digunakan oleh tukang roti, dimana urutan pelayanan ditentukan dalam situasi yang sangat sibuk. Algoritma ini dapat digunakan untuk memecahkan masalah critical section untuk n buah proses, yang diilustrasikan dengan n buah pelanggan. Ketika memasuki toko, setiap pelanggan menerima
sebuah nomor. Sayangnya, algoritma tukang roti ini tidak dapat menjamin bahwa dua proses (dua pelanggan) tidak akan menerima nomor yang sama. Dalam kasus di mana dua proses menerima nomor yang sama, maka proses dengan nomor ID terkecil yang akan dilayani dahulu. Jadi, jika Pi dan Pj menerima nomor yang sama dan i < j, maka Pi dilayani dahulu. Karena setiap nama proses adalah unik dan berurut, maka algoritma ini dapat digunakan untuk memecahkan masalah critical section untuk n buah proses.
Struktur data umum algoritma ini adalah
boolean choosing[n];
int number [n];
Awalnya, struktur data ini diinisialisasi masing-masing ke false dan 0, dan menggunakan notasi berikut:
– (a, b) < (c, d) jika a < c atau jika a= c dan b < d
– max(a0, …, an-1) adalah sebuah bilangan k, sedemikian sehingga k >= ai untuk setiap i= 0, …, n – 1
SUMBER :
>3.Process Control Block
Hasil gambar untuk pengertian process control block
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori.


Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif, termasuk ini:
  • Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
  • Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
  • Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasardan batas register. tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yangdigunakan oleh sistem operasi (ch 9).
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
  • Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.proses ini.
  • CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register,
Element-elemen PCB antara lain:
Identifikasi Proses yaitu Identifier numerik yang meliputi
  1. Identifier proses
  2. Identifier proses yang menciptakan
  3. Identifier pemakai
Informasi Status Pemroses yang meliputi
  • Register-register yang terlihat pemakai yaitu Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses
  • Register-register kendali dan status yaitu Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l.:
  1. Program counter
  2. PSW, dsb.
  • Pointer stack yaitu Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack
Informasi Kendali Proses meliputi
  • Informasi penjadwalan dan status yaitu Informasi-informasi yang dipakai untuk menjalankan fungsi penjadwalan a.l :
  1. Status proses. Mendefinisikan status proses (running,ready,block, dsb)
  2. Prioritas. Menjelaskan prioritas proses
  3. Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb.
  4. Kejadian (Event). Identitas kejadian yang ditunggu proses
  • Penstrukturan data yaitu Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
  • Komunikasi antar proses yaitu Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB
  • Kewenangan proses yaitu Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan
  • Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses
  • Kepemilikan dan utilisasi sumber daya yaitu Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :
  1. Berkas yang dibuka
  2. Pemakaian pemroses
  3. Pemakaian sumberdaya lainnya
Informasi yang terdapat pada setiap proses meliputi :
  1. Status Proses = New, ready, running, waiting  dan terminated.
  2. Program Counter = Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.
  3. CPU Registers = Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan.  Register-register tersebut terdiri-atas:  accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar 3-3 menunjukkan  switching proses dari satu proses ke proses berikutnya.
  4. Informasi Penjadwalan CPU = Informasi tersebut berisi  prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
  5. Informasi Manajemen Memori = Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
  6. Informasi Accounting = Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll
  7. Informasi Status I/O = Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.
SUMBER : 

>4. Distributed Processing

Distributed Processing adalah kemampuan menjalankan semua proses pengolahan data secara bersama antara komputer yang berfungsi sebagai pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat.

CONTOH : 
Contoh dari Distributed Data Processing System adalah: ATM, komputer yang dirancang untuk tugas-tugas melaksanakan proyek, analisis finansial, penjadwalan waktu dan akuntansi. Contoh lainnya, pengolahan data pada server yahoo yang tersebar hampir di seluruh dunia secara distribusi, setiap wilayah mempunyai server masing-masing. Seperti di indonesia mempunyai server tersendiri sehingga pengolahan data tidak di pusat melainkan di wilayah masing-masing, dll.


SUMBER:

>5. Handheld
Hasil gambar untuk pengertian handheldHandheld computer adalah komputer yang cukup kecil sehingga dapat digenggam. Komputer genggam ini dapat bekerja dengan fungsi yang hampir sama dengan komputer biasa. Meskipun sangat mudah untuk dibawa, komputer genggam tidak dapat menggantikan komputer biasa (PC) karena hanya memiliki keyboard dan layar yang kecil. Beberapa produsen mencoba untuk memecahkan masalah keyboard yang terlalu kecil. Keyboard tersebut diganti dengan electronic pen. Bagaimanapun,electronic pen ini masih bergantung pada teknologi pengenalan tulisan tangan yang masih dalam tahap pengembangan.

Kelebihan dari komputer genggam ini adalah pengguna dapat menyimpan serta mengatur data dengan lebih efisien dan akurat. Biasanya komputer genggam dilengkapi dengan teknologi Bluetooth. Bluetooth memang tepat untuk mencetak secara nirkabel, menghubungkan antara komputer genggam dengan mobile printer. Tidak hanya dengan printer tetapi komputer genggam juga dapat dihubungkan dengan alat-alat lain melalui koneksi Bluetooth.

Komputer genggam dapat meningkatkan produktivitas pengguna dan memudahkan mereka untuk bekerja lebih efisien. Komputer genggam yang paling banyak digunakan adalah komputer yang khusus dirancang untuk menyediakan fungsi PIM (Personal Information Manager), seperti kalender, agenda, dan buku alamat.

Contoh system handheld adalah Android, Symbian.

A. Perkembangan System Handheld

Sekitar tahun 1990-an dikembangkan sistem yang lebih kecil dari mikrokompuer yang disebut dengan sistem handheld dalam bentuk personal digital assistants (PDA). Pada beberapa sistem terdapat telepon selular. Sistem ini mempunyai memory yang terbatas, prosessor dengan kecepatan rendah dan display screen yang kecil

B. Sejarah Perkembangan System Handheld

Sistem operasi Handheld juga memiliki sejarah dalam perkembangannya, adapun sejarah perkembangan system operasi Handheld adalah:
a.    1993 Ponsel pintar yang pertama, IBM Simon, memiliki fitur layar sentuh, email, dan fitur PDA dirilis.
b. Palm Pilot 1000 personal digital assistant(PDA) diperkenalkan pertama kali dengan sistem operasi Palm OS.
c.    1996 PC handled pertama dengan sistem Windows CE diperkenalkan.
d.  2000 Symbian menjadi sistem operasi genggam modern pertama pada ponsel pintar dengan munculnya Ericsson R380.
e.    2001 The Kyocera 6035 menjadi ponsel pintar pertama yang menggunakan Palm OS.
f.     2002 Microsoft Windows CE versi Pocket PC untuk ponsel pintar diperkenalkan.
g.    2002 BlackBerry merilis ponsel pintar pertamanya.
h.    2007 Apple iPhone dengan iOS pertama kali diperkenalkan.
i.     2008 OHA merilis Android 1.0 dengan HTC Dream (T-Mobile G1) sebagai ponsel Android yang pertama.
j.      2009 Palm memperkenalkan webOS melalui Palm Pre.
k.    2009 Samsung memperkenalkan Bada OS melalui Samsung S8500.
l.      2010 Windows Phone OS dirilis.

C. Perkembangan Sytem Handheld (PDA)

Personal Digital Assistants disingkat PDA adalah sebuah alat elektronik yang berbasis komputer dan berbentuk kecil serta dapat dibawa kemana-mana. PDA banyak digunakan sebagai pengorganisir pribadi pada awalnya, tetapi karena perkembangannya, kemudian bertambah banyak fungsi kegunaannya, seperti kalkulator, penunjuk jam dan waktu, permainan komputer, pengakses internet, penerima dan pengirim surat elektronik (e-mail), penerima radio, perekam video, dan pencatat memo. Selain dari itu dengan PDA (komputer saku) ini, kita dapat menggunakan buku alamat dan menyimpan alamat, membaca buku-e, menggunakan GPS dan masih banyak lagi fungsi yang lain. Bahkan versi PDA yang lebih canggih dapat digunakan sebagai telepon genggam, akses internet, intranet, atau extranet lewat Wi-Fi atau Jaringan Wireless. Salah satu ciri khas PDA yang paling utama adalah fasilitas layar sentuh.

Bertahun-tahun dunia PDA membeku. Lalu Palm Inc. meluncurkan PDA pertamanya di tahun 1996. Peluncuran inilah yang kemudian mengubah nasib PDA dan sekaligus mendongkrak popularitas PDA di jagad elektronik.

Alat genggam yang disinergikan dengan operating system (OS) Palm ini menuai sukses luar biasa. Kemudahan sinkronisasi dengan PC dan pendekatan pengoperasian berbasis ikon membuat banyak pengguna merasakan kegunaan alat yang satu ini, lebih daripada sekedar sebuah piranti genggam biasa.

Dalam jangka waktu enam tahun, pertumbuhan PDA sendiri boleh dikatakan luar biasa, meskipun tentu saja tak secepat perangkat komputer pada umumnya. Selama kurun waktu tersebut, PDA terus tumbuh, baik dari sisi teknologi maupun bisnis. contoh sistem operasi yang digunakan. Palm OS saat ini masih merupakan pemain yang paling dominan. Merek-merek yang menggunakan OS ini antara lain adalah Palm sendiri, Sony, IBM dan Handspring.

Berikutnya adalah WindowsCE atau sekarang disebut PocketPC. Operating system khusus untuk PDA atau PocketPC ini dibuat oleh Microsoft, karena itu tampilan pada versi PocketPC 2002 hampir mnyerupai tampilan pada Windows XP. Sebagai catatan popularitas PocketPC kini terdongkrak cukup kuat seiring dengan komitmen Microsoft yang besar terhadap perkembangan sistem operasi ini. Merek yang menggunakan OS ini antara lain HP, Compaq, Casio, dan Siemen.

D. Fungsi PDA
Pertama dan terutama fungsi dari sebuah piranti genggam semacam PDA adalah untuk mengelola informasi atau data. Lebih spesifik lagi karena namanya juga Personal Digital Assistant, maka data yang dikelolanya pun bersifat personal. Diantaranya alamat, nomor telepon, alamat e-mail, jadwal kegiatan dan daftar kegiatan yang harus kita kerjakan. Baru setelah fungsi itu PDA dikembangkan sehingga lebih memainkan peran sebagai subnotebook. tentu saja fungsi yang selama ini diperankan oleh organizer juga termasuk didalamnya, seperti jam, kalkulator dan kalender.

Saat ini, handheld keluaran terbaru sudah mampu berperan sebagai alat memainkan musik, pemutar musik MP3 (MP3 player), membaca buku elektronik (eBook Reader) bahkan memainkan video streaming. Dengan kemampuan grafis yang tidak lagi hitam putih, handheld ini sudah melebihi tanggung jawabnya sebagai Asisten Pribadi sesuai dengan namanya, namun walau begitu jangan sekali-kali menyamakan kemampuan PDA dengan notebook apalagi PC desktop.


E. Sistem Kerja PDA

Sebagai komputer genggam, PDA memiliki processor dan sistem operasi layaknya komputer biasa. Sistem operasi ini merupakan peranti lunak utama pada PDA. Cara kerjanya sama seperti sitem operasi pada komputer seperti Windows XP atau Mac OS, tetapi didesain khusus untuk PDA. Terdapat dua kesamaan sistem operasi pada PDA yaitu Palm dan Pocket PC (Windows Mobile). Keduanya bekerja dengan program piranti lunak yang berbeda, jadi walaupun berisikan banyak dokumen seperti gambar, musik dan lainnya yang bisa dipakai namun tidak pada pemrogaman. Pada penyimpanan data tanpa kartu memori, data disimpan dalam RAM dengan ukuran puluhan MegaByte, sedangkan sumber energinya berasal dari baterai (dulunya A3) isi ulang. Selain itu, bisa juga menggunakan adaptor yang disambungkan ke stop kontak AC.

F. Kegunaan PDA

a.    Telekomunikasi
b.    Informasi
c.    Pendidikan
d.    Olahraga

G. Fitur yang terdapat dalam PDA    
  • Layar sentuh
  • GPS
  • PCPocket
  • Koneksi Nirkabel
  • Agenda
  • Memory
  • LAN
  • Surel
  • HiburanKamera
  • Sinkronisasi
SUMBER : 

 >6.  Threads
Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter,register set, dan stack. Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu satuan
waktu.
Banyak sistem operasi modern telah memiliki konsep yang dikembangkan agar memungkinkan sebuah proses untuk memiliki eksekusi multi-threads, agar dapat secara terus menerus mengetik dan menjalankan pemeriksaan ejaan didalam proses yang sama, maka sistem operasi tersebut memungkinkan proses untuk menjalankan lebih dari satu tugas pada satu waktu.
thread
Contohnya sebuah web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi sebagai penerima data dari network.

SUMBER : 
https://vivimargaretha494.wordpress.com/2015/10/01/thread-pada-sistem-operasi-2/


Human Computer Interaction _ 8020210070_ Hengky Irwanda,

A.Pengujian Kegunaan Pengujian kegunaan adalah cara terbaik untuk memahami bagaimana pengguna nyata mengalami situs web atau aplikasi Anda...