SEJARAH

Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.

Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.

Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemeritaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.

Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.

VERSI

Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

· java.lang: Peruntukan kelas elemen-elemen dasar.

· java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.

· java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.

· java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.

· java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)

· java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

KELEBIHAN

· Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.

· OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis oebjek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.

· Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.

· Bergaya C++, memiliki sintaks seperti bahasa pemrograman [C++] sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.

· Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

KEKURANGAN

· Tulis sekali, perbaiki di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.

· Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena koe jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.

· Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

Identifikasi Keyboard

Keyboard merupakan alat input standar yang sangat esensial pada sebuah PC. Tahukah Anda kapan keyboard atau papan ketik pertama kali ditemukan? Jawabannya adalah pada tahun 1864 yang kemudian dipatenkan oleh Christopher Latham Sholes pada 1868.

Keyboard yang kita kenal sekarang ini memiliki nama resmi Qwerty yang di ambil dari enam huruf pertama pada "home row". Home row sendiri merupakan istilah untuk deretan alfabet kedua (posisinya di tengah) keyboard. Dideretan inilah seharusnya user atau juru ketik menempatkan jari-jarinya jika sedang tidak mengetik.

Lalu, kenapa tombol-tombol alfabet pada keyboard ditempatkan secara acak? Alasannya adalah untuk memperlambat pengetikan. Kenapa? Pada awalnya mesin ketik dibuat senyaman mungkin untuk penggunanya, tetapi akibatnya, para pengguna malah dapat mengetik dengan kecepatan tinggi. Hal ini membuat pengait- pengait karakter pada mesin ketik menjadi sering tersangkut.

Setelah beberapa bulan mencari cara untuk mengatasi sering menyangkutnya pengait tersebut, Sholes mengacak posisi alfabet pada mesin ketik seperti sekarang ini. Dan setelah teknologi mesin ketik berkembang ke mesin ketik elektrik sampai ke komputer, urutan alfabet yang acak tersebut tetap digunakan.

Untuk komputer, keyboard pertama kali digunakan pada tahun 1964. Sebuah perangkat yangdibuat oleh MIT, Bell Laboratories, dan General Electric yang disebut Mulitics berhasil menggabungkan video display terminal (monitor CRT saat ini-Red) dengan mesin ketik elektrik. Layout Qwerty temuan Christopher Latham Sholes tetap digunakan, meski pada keyboard saat ini, sejumlah function keys sudah diimplementasikan.

Identifikasi Monitor

Monitor atau yang juga disebut sebagai “computer display” merupakan komponen output yang digunakan untuk menampilkan teks atau gambar ke layar sehingga dapat dinikmati oleh pemakai.

a. Sejarah Monitor

Pada generasi awal komputer, belum menggunakan monitor khusus seperti sekarang ini. Komputer waktu itu terhubung dengan TV keluarga sebagai layar penampil dari pengolahan data yang dilakukannya. Yang cukup menjadi masalah adlaah bahwa resolusi monitor TV saat itu hanya mampu menampilkan 40 karakter secara horisontal pada layar.

Monitor khusus untuk komputer dikeluarkan oleh IBM PC, yang pada awalnya memiliki resolusi 80 X 25 dengan kemampuan warna “green monochrome”. Monitor ini sudah mampu menampilkan hasil yang lebih terang, jelas dan lebih stabil.

Pada generasi berikutnya muncul mono graphics (MGA/MDA) yang memiliki 720x350. Selanjutnya di awal tahun 1980-an muncul jenis monitor CGA dengan range resolusi dari 160x200 sampai 640x200 dan kemampuan warna antara 2 sampai 16 warna.

Monitor EGA muncul dengan resolusi yang lebih bagus yaitu 640x350. Monitor jenis ini cukup stabil sampai berikutnya munculnya generasi komputer Windows.

Semua jenis monitor ini menggunakan digital video - TTL signals dengan discrete number yang spesifik untuk mengatur warna dan intensitas cahaya. Antara video adapter dan monitor memiliki 2, 4, 16, atau 64 warna tergantung standard grafik yang dimiliki.

Selanjutnya dengan diperkenalkannya standard monitor VGA, tampilan grafis dari sebuah Personal Computer menjadi nyata. VGA dan generasi-generasi yang berhasil sesudahnya seperti PGA, XGA, atau SVGA merupakan standard analog video dengan sinyal R (Red), G (Green) dan B (Blue) dengan continuous voltage dan continuous range pada pewarnaan. Secara prinsip analog monitor memungkinkan penggunaan full color dengan intensitas yang tinggi.

Generasi monitor terbaru adalah teknologi LCD yang tidak lagi menggunakan tabung elektron CRT tetapi menggunakan sejenis kristal liquid yang dapat berpendar. Teknologi ini menghasilkan monitor yang dikenal dengan nama Flat Panel Display dengan layar berbentuk pipih, dan kemampuan resolusi yang tinggi.

b. Berbagai Jenis Monitor

Dengan perkembangannya yang sangat pesat, saat ini terdapat tiga jenis teknologi monitor. Ketiga golongan teknologi tersebut adalah CRT (Cathode Ray Tube), Liquid Crystal Display (LCD) dan Plasma gas.

1) Cathode Ray Tube

Pada monitor CRT, layar penampil yang digunakan berupa tabung sinar katoda. Teknologi ini memunculkan tampilan pada monitor dengan cara memancarkan sinar elektron ke suatu titik di layar. Sinar tersebut akan diperkuat untuk menampilkan sisi terang dan diperlemah untuk sisi gelap.

Teknologi CRT merupakan teknologi termurah dibanding dengan kedua teknologi yang lain. Meski demikian resolusi yang dihasilkan sudah cukup baik untuk berbagai keperluan. Hanya saja energi listrik yang dibutuhkan cukup besar dan memiliki radiasi elektromagnetik yang cukup kuat.

2) Liquid Crystal Display

Monitor LCD tidak lagi menggunakan tabung elektron tetapi menggunakan sejenis kristal liquid yang dapat berpendar. Teknologi ini menghasilkan monitor yang dikenal dengan nama Flat Panel Display dengan layar berbentuk pipih, dan kemampuan resolusi yang lebih tinggi dibandingkan dengan CRT. Karena bentuknya yang pipih, maka monitor jenis flat tersebut menggunakan energi yang kecil dan banyak digunakan pada komputer-komputer portabel.

Kelebihan yang lain dari monitor LCD adalah adanya brightness ratio yang telah menyentuh angka 350 : 1. Brigtness ratio merupakan perbandingan antara tampilan yang paling gelap dengan tampilan yang paling terang.

Liquid Crystal Display menggunakan kristal liquid yang dapat berpendar. Kristal cair merupakan molekul organik kental yang mengalir seperti cairan, tetapi memiliki struktur spasial seperti kristal. (ditemukan pakar Botani Austria – Rjeinitzer) tahun 1888. Dengan menyorotkan sinar melalui kristal cair, intensitas sinar yang keluar dapat dikendalikan secara elektrik sehingga dapat membentuk panel-panel datar.

Lapisan-lapisan dalam sebuah LCD:

· Polaroid belakang

· Elektroda belakang

· Plat kaca belakang

· Kristal Cair

· Plat kaca depan

· Elektroda depan

· Polaroid depan

Elektroda dalam lapisan tersebut berfungsi untuk menciptakan medan listrik pada kristal cair, sedangkan polaroid digunakan untuk menciptakan suatu polarisasi.

Dari sisi harga, monitor LCD memang jauh lebih mahal jika dibandingkan dengan monitor CRT. Dan beberapa kelemahan yang masih dimilikinya seperti kurang mampu digunakan untuk bekerja dalam berbagai resolusi, seperti misalnya monitor dengan resolusi 1024 X 768 akan terkesan agak buram jika dipekerjakan pada resolusi 640 X 420. Tatapi akhir-akhir ini kelemahan tersbut sudah mulai di atasi dengan teknik anti aliasing.

3) Plasma Gas

Monitor jenis ini menggabungkan teknologi CRT dengan LCD. Dengan teknologi yang dihasilkan, mampu membuat layar dengan ketipisan menyerupai LCD dan sudut pandang yang dapat selebar CRT.

Plasma gas juga menggunakan fosfor seperti halnya pada teknologi CRT, tetapi layar pada plasma gas dapat perpendar tanpa adanya bantuan cahaya di belakang layar. Hal itu akan membuat energi yang diserap tidak sebesar monitor CRT. Kontras warna yang dihasilkan pun lebih baik dari LCD. Teknologi plasma gas ini sering bisa kita jumpai pada saat pertunjukan-pertunjukan musik atau pertandingan-pertandingan olahraga yang spektakuler. Di sana terdapat layar monitor raksasa yang dipasang pada sudut-sudut arena tertentu. Itulah monitor yang menggunakan teknologi plasma gas.

Identifikasi Virus dan Penanganannya

Tidak ada yang bisa menjamin perilaku dari setiap orang yang terkoneksi ke Internet, terdapat banyak perilaku di internet dari yang berhati baik sampai yang berhati buruk, dari yang mencari informasi umum sampai mencari informasi kartu kredit orang lain. Karena sifatnya yang publik atau umum maka muncul masalah baru yaitu masalah keamanan data dan informasi di Internet terutama informasi-informasi yang bersifat krusial dan konfiden.

Pada saat sebuah perusahaan telah atau akan mengintegrasikan jaringannya secara terpusat dengan menggunakan komunikasi data via jaringan private atau sewa seperti Leased Channel, VSAT , VPN atau bahkan menggunakan jaringan publik (Internet), Maka ada suatu permasalahan lain yang sangat krusial yaitu ”Keamanan atau Security”. Karena tidak ada yang sistem yang aman didunia ini selagi masih dibuat oleh tangan manusia, karena kita hanya membuat meningkatkan dari yang tidak aman menjadi aman dan biasanya keamanan akan didapat setelah lubang / vurnability system diketahui oleh penyusup. Ancaman masalah keamanan ini banyak sekali ditemui oleh pengguna seperti Virus, Trojan, Worm, DoS, hacker, sniffing, defaced, Buffer Overflow, dan sebagainya dengan apapun istilah underground yang banyak sekali saat ini, yang pasti akan menyusahkan kita pada saat ancaman-ancaman ini ”menyerang”. Metode serangan saat ini sangat beragam, dari yang sederhana yang dilakukan para pemula atau script kiddies sampai dengan serangan dengan menggunakan metode terbaru. Karena akan semakin kompleksnya administrasi dari jaringan skala luas (WAN) maka diperlukan suatu mekanisme keamanan dan metode untuk dapat mengoptimalkan sumber daya jaringan tersebut, semakin besar suatu jaringan maka makin rentan terhadap serangan dan semakin banyak vurnability yang terbuka.

Ada banyak metode yang dilakukan untuk masuk ke sistem lain walaupun sistem telah di kita lakukan update/patching secara continue, karena ada banyak lubang yang dapat dimanfaatkan, biasanya penyerang melakukannya dengan menggunakan beberapa metode yang akan dijelaskan selanjutnya. Belum lagi saat ini banyak sekali tools-tools yang dapat dengan mudah digunakan yang didownload dari Internet dan banyaknya websites yang menyediakan tools untuk melakukan hacking. Dengan berbekal tools tadi seseorang yang biasa dapat mengancam infrastruktur jaringan kita, ancaman dapat beruba hanya sekedar introgasi sistem kita (footprinting atau analisa awal) atau analisa port yang digunakan sampai dengan mencoba-coba celah vurnerability network kita. Ada banyak anggapan yang salah dengan statetement “kami sudah memiliki firewall yang banyak dan terbaru”, “kami mempunyai team yang tangguh dan hebat dalam bidang security”, “kami mempunyai dana IT yang unlimitted” atau ”kami tidak ada musuh dan data yang kami onlinekan tidak mengandung informasi penting”. Inilah beberapa faktor yang memicu terjadinya kebocoran dari sistem pertahanan yang kita bangun, belum lagi tidak adanya rules atau policy tentang sistem keamanan di perusahaan atau institusi kita, untuk memberikan gambaran tentang framework membangun policy sistem keamanan dapat merujuk ke tulisan penulis yang lain.

Pendahuluan

Selalu lebih mudah untuk menampilkan suatu tugas jika Anda mempunyai suatu aturan yang jelas. Sebagai contoh jika Anda seorang pembuat roti, dan Anda menginginkan roti yang diproduksi mempunyai citra rasa dan kualitas yang sama baiknya pada hari ini dengan kemarin, maka Anda harus mengikuti prosedur atau aturan yang sama setiap harinya.

Sayangnya rancangan IMK tidak seperti itu. Di sini setiap tugas mempunyai desain yang unik karena tidak aka nada nilai dalam perancangan system computer yang sama secara berulang, maka bukan hal yang tidak mungkin untuk menyediakan suatu set aturan yang dapat diterapkan secara fleksibel pada setiap tugas. Perancangan yang terbaik yang Anda miliki adalah satu set prinsip atau petunjuk yang harus diinterprestasikan oleh perancang kedalam konteks tugas yang sedang dikerjakan. Catat penekanan pada konteks. Artinya beberapa petunjuk mungkin mengaplikasikan hanya pada beberapa bentuk dari tugas perancangan (contoh perancangan GUI) sedangkan yang lain mungkin hanya mengaplikasikan pada bentuk yang berbeda dari tugas (contoh perancangan sebuah hubungan pengendalian perintah). Maka dari konteks itu, atau lingkungan, adalah sangat penting ketika mencari garis petunjuk aplikasi interpretasi.

Karena garis petunjuk atau prinsip-prinsip, membutuhkan interprestasi, mungkin untuk perancangan yang berbeda atau untuk mengimplementasikan dalam cara yang berbeda. Kenyataan hal ini mungkin untuk seorang perancang individu dapat mengimplementasikan secara berbeda pada acara-acara yang berberbeda, karena di sana ada yang lain, hal-hal di luar yang mempengaruhi tugas-tugas itu (contoh seorang perancang aplikasi mencoba untuk memproduksi versi-versi PC dan Macintosh). Selanjutnya akan ditetapkan oleh ciri-ciri tersebut dari system operasi, maka selalu diterapkan secara jelas, berbeda dalam dua versi.

Di dalam kenyataannya, agak biasa untuk organisasi-organisasi besar akan mendikte aturan-aturan gaya, didefinisikan dalam petunjuk-petunjuk gaya, yang menunjukan bagaimana perancang-perancang harus menginterprestasikan beberapa garis-garis umum ketika mereka sedang bekerja untuk organisasi tersebut. Peraturan-peraturan ini hanya akan menerapkan pada pekerja untuk organisasi itu. Perancang yang sama bekerja untuk organisasi berbeda untuk organisasi berbeda akan harus mengikuti aturan-aturan yang berbeda tetapi dalam setiap kasus mereka akan mencoba mengaplikasikan prinsip-prinsip umum yang sama (garis-garis petunjuk).

Hanya pertimbangkan tugas merancang menu pull-down, garis-garis petunjuk dan beberapa aturan-aturan khusus pada PC atau Macintosh, mengkin seperti berikut garis-garis petunjuk umum:

· Kelompokan bersama perintah-perintah yang berhubungan

· Bedakan antara perintah yang tersedia dan yang tidak

Aturan-aturan (Macintosh dan PC):

· Beri tanda perintah yang tersedia dengan pemberi warna

· Gambar sebuah garis horizontal antara kelompok-kelompok perintah yang berhubungan

Hanya Macintosh:

· Menu drop down akan muncul ketika tombol mouse dipegang

· Seleksi perintah dengan cara mouse digerakan

· Perintah terkunci pada tombol mouse yang lepas

Hanya PC:

· Menu tampak ketika ditunjuk

· Menu tetap ada dilayar ketika nama menu di klik

· Perintah terkunci ketika di klik

Panduan umum dalam merancang antarmuka perangkat lunak, antara lain:

1. Cocok dengan tugas

2. Mudah digunakan

3. Dapat disesuaikan dengan pemakaian tingkat pengguna

4. Mampu menyediakan umpan balik

5. Layar informasi dalam sebuah format, dan satu ruangan, cocok dengan system operator

6. Mengikuti prinsip-prinsip ergonomic

Secara lebih detail, panduan perancanan IMK sebagai berikut:

1. Konsistensi-internal, eksternal, dan dunia nyata

2. Kesesuaian dengan harapan pengguna

3. Fleksibel dan terkontrol

4. Susunan yang benar

5. Umpan balik yang informative dan kesinambungan

6. Pencegahan dan perbaikan kesalahan

7. Dukungan dan dokumentasi pemakai

8. Kejelasan visual secara lojik dan relevan

Konsistensi

1. Konsistensi Internal

Artinya penggunaan yang konsisten pada hal-hal seperti format perintah, symbol, posisi objek, kotak-kota dialog, dan lain-lain, dalam sebuah aplikasi yang diberikan. Aturan-aturan yang harus diaplikasikan secara konsisten pada semua elemen dalam system perangkat lunak (software) khusus manapun.

Contoh: Semua kotak dialog harus mempunyai tombol Cancel dan Ok , pada posisi yang relative sama pada setiap kotak. Hal-hal yang serupa harus diperhatikan kembali secara konsisten (tombol-tombol dan kotak-kotak radio).

2. Konsistensi Eksternal

Yaitu konsisten antara perangkat lunak pada jalur yang diberikan (Macinosh dan PC).

Contoh: penampilan, fungsi, dan posisi menu dalam semua aplikasi. Menggunakan icon yang sama untuk sebuah teks dalam semua aplikasi. Fungsi-fungsi windows (diukur kembali, mengulang, ditutup, dan lain-lain). Sama seperti standar yang sering didikte oleh mesin atau vendor system operasi, maka memberikan sebuah “rasa” yang jelas pada semua software dalam jalur tersebut. Hal ini akan lebih mudah bagi pengguna untuk berpindah dan belajar aplikasi-aplikasi baru, mereka dapat menggunakan lebih banyak “intuisi” daripada harus masuk secara mendalam untuk setiap bagian perangkat lunak.

3. Konsistensi Dunia-Nyata

Contoh: menggunakan icon yang tampak sama untuk membayangkan apa yang terlihat dalam “Dunia Nyata” sebuah contoh popular yaitu penggunaan simbol-simbol seperti icon.

Kesesuaian dengan Harapan Pengguna

Perencanaan seharusnya menganalisa terminology dan metode dari tipe kerja, potensial pengguna dan berusaha untuk menjadikan semuanya ini menjadi desain perangkat lunak. Sebagai contoh, sebagian besar program Word Processor mencoba untuk membuat tampilan ini layaknya seperti keinginan pengguna dalam mencetak dokumen. Dalam program Aldus Pagemaker, perintah “place” digunakan ketika program lain menormalkan perintah “insert”, karena hubungan tradisional inilah yang digunakan oleh orang dalam industri percetakan yakni targetnya adalah program itu. Juga dalam MS-Word fungsi “insert” merupakan daftar menu utama karena dalam Word Processor terdapat jarak yang cukup luas yang bisa disisipkan (page break dan lain sebagainya), sedangkan program lain membuatnya hanya dalam sub-command dengan beberapa daftar lain.

Kontrol dan Fleksibillitas

Desain harusnya dapat memeuhi semua kebutuhan dari pengguna, mulai dari amatir sampai yang professional. Semua ini dapat diterima, sebagai contoh : penyediaan clear icon dan on-line help untuk pengguna baru, dan keyboard shortcut untuk pengguna yang berpengalaman. Interface seharusnya didesain sehingga user yang berpengalaman tidak perlu melewati bagian pendahuluan setiap akan menggunakan program. Seharusnya, pengguna dapat mengontrol rangkaian dari tugas-tugas yang akan ditampilkan. Sebagai contoh, dalam program Word Processor, seorang pengguna boleh memilih first entering dari semua teks dan kembali untuk membawa tugas-tugas formatting seperti pengganti font style, tab stops, dan sebagainya. Kemungkinan lain, pengguna dapat memformat tugas-tugas seperti proses pengetikan. Kebanyakan system yang modern, pengguna dapat menukar aplikasi yang berbeda (contoh dari Word Processor ke grafik dan kembali lagi tanpa ada pengurangan) dengan aplikasi yang digunakan user lain. Jika memungkinkan pengguna seharusya dapat menyesuaikan antarmuka untuk mencocokan gaya kerja mereka sendiri ditingkat mahir.

Susunan Eksplisit dari Antarmuka

Antarmuka seharusnya tetap sederhana dan tidak terlalu kelebihan dengan banyaknya fitur-fitur dan fungsi-fungsi pada setiap saat. Sebagai contoh, “the graying” dari menu perintah mengindikasi bahwa fungsi-fungsi itu tersedia untuk para pengguna setiap saat. Tanya jawab seharusnya didesain untuk memenuhi informasi yang dibutuhkan untuk menyelesaikan tugas tanpa kelebihan memori dan melupakan secepatnya setelah diselesaikan.

Umpan Balik yang Informatif dan Berkesinambungan

Pengguna perlu untuk dapat mengakses apa yang ada didalam system setiap saat dan membutuhkan petunjuk-petunjuk yang diperlukan. Kebanyakan dari interface didesain untuk memberikan petunjuk dalam jumlah yang lebih besar termasuk visual dan auditory sebagaimana system yang dikerjakan. Sebagai contoh, antarmuka Netscape membiarkan pengguna untuk memberikan umpan balik.

Suatu umpan balik dibagi dalam beberapa kategori, yaitu:

· Lexical feedback

Umpan balik ini adalah system yang mengindikasikan “terima pesan, tetapi tidak ada perubahan yang telah dibuat di bawah pengaruh dari system”. Sebagai contoh, daftar nama telah di blok ketika cursor berubah bentuk dari tool yang ada.

· Syntactic feedback

Umpan balik ini adalah umpan balik yang membutuhkan lebih sedikit percakapan dengan pengguna tetapi masih tidak member isyarat dasar perubahan dalam system. Sebagai contoh, informasi mengenai sub-menu tanpa menu utama, atau fakta bahwa menu tidak aktif ketika kotak dialog tidak aktif.

· Semantic feedback

Sinyak system “pesan diterima dan dijalankan”, untuk mengetahui bahwa terdapat beberapa perubahan fundamental yang terstruktur dalam dokumen. Sebagai contoh, ketika Anda memindahkan icon, Anda dapat melihat posisi yang baru. Anda mengubah font style, maka anda dapat melihat gaya huruf yang baru.

Perancangan dan Perbaikan Kesalahan

Setiap user