Rabu, September 24, 2008

interaksi manusia dan komputer

A. DEFINISI
Interaksi manusia dan komputer adalah sebuah hubungan antara manusia dan komputer yang mempunyai karakteristik tertentu untuk mencapai suatu tujuan tertentu dengan menjalankan sebuah sistem yang bertopengkan sebuah antarmuka (interface).

Bidang ilmu interaksi manusia dan komputer adalah ilmu yang mempelajari tentang bagaimana mendesain, mengevaluasi, dan mengimplementasikan sistem komputer yang interaktif sehingga dapat digunakan oleh manusia dengan mudah.

Interaksi menjadi maksimal apabila kedua belah pihak mampu memberikan stimulan dan respon (aksi & reaksi) yang saling mendukung, jika salah satu tidak bisa, maka interaksi akan mengalami hambatan atau bahkan menuju pembiasan tujuan.

Tanpa disadari kita (manusia/user) telah berinteraksi atau berdialog dengan sebuah benda (layar monitor), yaitu dalam bentuk menekan tombol berupa tombol angka dan huruf yang ada pada keyboard atau melakukan satu sentuhan kecil pada mouse. Yang kemudian hasil inputan ini akan berubah bentuk menjadi informasi atau data yang seperti diharapkan manusia dengan tertampilnya informasi baru tersebut pada layar monitor atau bahkan mesin pencetak (printer). Manusia jarang sekali menyadari proses interaksi dengan komputer. Manusia baru menyadari proses interaksi tersebut saat menemukan masalah dan tidak menemukan solusi pemecahannya. Biasanya manusia menyalahkan antarmuka yang kurang inovatif, kurang menarik, kurang komunikatif.


B. PRINSIP UTAMA MENDESAIN ANTARMUKA (INTERFACE)
Tujuan utama disusunnya berbagai cara interaksi manusia & komputer : untuk mempermudah manusia dalam mengoperasikan komputer dan mendapatkan berbagai umpan balik yang ia perlukan selama ia bekerja pada sebuah sistem komputer.
Berikut ini beberapa hal yang menjadi prinsip utama mendesain antarmuka yang baik dengan memperhatikan karakteristik manusia & komputer :

1. User compatibility

Antarmuka merupakan topeng dari sebuah sistem atau sebuah pintu gerbang masuk ke sistem dengan diwujudkan ke dalam sebuah aplikasi software. Oleh karena itu sebuah software seolah-olah mengenal usernya, mengenal karakteristik usernya, dari sifat sampai kebiasaan manusia secara umum. Desainer harus mencari dan mengumpulkan berbagai karakteristik serta sifat dari user karena antarmuka harus disesuaikan dengan user yang jumlahnya bisa jadi lebih dari 1 dan mempunyai karakter yang berbeda. Hal tersebut harus terpikirkan oleh desainer dan tidak dianjurkan merancang antarmuka dengan didasarkan pada dirinya sendiri

2. Product compatibility

Sebuah aplikasi yang bertopengkan antarmuka harus sesuai dengan sistem aslinya. Seringkali sebuah aplikasi menghasilkan hasil yang berbeda dengan sistem manual atau sistem yang ada. Hal tersebut sangat tidak diharapkan dari perusahaan karena dengan adanya aplikasi software diharapkan dapat menjaga produk yang dihasilkan dan dihasilkan produk yang jauh lebih baik. Contoh : aplikasi sistem melalui antarmuka diharapkan menghasilkan report/laporan serta informasi yang detail dan akurat dibandingkan dengan sistem manual.


3. Task compatibility

Sebuah aplikasi yang bertopengkan antarmuka harus mampu membantu para user dalam menyelesaikan tugasnya. Semua pekerjaan serta tugas-tugas user harus diadopsi di dalam aplikasi tersebut melalui antarmuka. Sebisa mungkin user tidak dihadapkan dengan kondisi memilih dan berpikir, tapi user dihadapkan dengan pilihan yang mudah dan proses berpikir dari tugas-tugas user dipindahkan dalam aplikasi melalui antarmuka. Contoh : User hanya klik setup, tekan tombol next, next, next, finish, ok untuk menginstal suatu sotfware.

4. Work flow compatibility

Sebuah aplikasi sistem sudah pasti mengapdopsi sistem manualnya dan didalamnya tentunya terdapat urutan kerja dalam menyelesaikan pekerjaan. Dalam sebuah aplikasi, software engineer harus memikirkan berbagai runutan-rununtan pekerjaan yang ada pada sebuah sistem. Jangan sampai user mengalami kesulitan dalam menyelesaikan pekerjaannya karena user mengalami kebingungan ketika urutan pekerjaan yang ada pada sistem manual tidak ditemukan pada software yang dihadapinya. Selain itu user jangan dibingungkan dengan pilihan-pilihan menu yang terlalu banyak dan semestinya menu-menu merupakan urutan dari runutan pekerjaan. Sehingga dengan workflow compatibility dapat membantu seorang user dalam mempercepat pekerjaannya.

5. Consistency

Sebuah sistem harus sesuai dengan sistem nyata serta sesuai dengan produk yang dihasilkan. Banyak perusahaan dalam menjalankan sistemnya menggunakan aplikasi sistem yang berbeda di setiap divisi dalam perusahaan tersebut. Ada pula yang menggunakan aplikasi yang sama di divisi yang berbeda. Oleh karena itu software engineer harus memperhatikan hal-hal yang bersifat konsisten pada saat merancang aplikasi khususnya antarmuka, contoh : penerapan warna, struktur menu, font, format desain yang seragam pada antarmuka di berbagai bagian, sehingga user tidak mengalami kesulitan pada saat berpindah posisi pekerjaan atau berpindah lokasi dalam menyelesaikan pekerjaan. Hal itu didasarkan pada karakteristik manusia yang mempunyai pemikiran yang menggunakan analogi serta kemampuan manusia dalam hal memprediksi. Contoh : keseragaman tampilan toolbar pada Word, Excell, PowerPoint, Access hampir sama.

6. Familiarity

Sifat manusia mudah mengingat dengan hal-hal yang sudah sering dilihatnya atau didapatkannya. Secara singkat disebut dengan familiar. Antarmuka sebisa mungkin didesain sesuai dengan antarmuka pada umumnya, dari segi tata letak, model, dsb. Hal ini dapat membantu user cepat berinteraksi dengan sisem melalui antarmuka yang familiar bagi user.

7. Simplicity

Kesederhanaan perlu diperhatikan pada saat membangun antarmuka. Tidak selamanya antarmuka yang memiliki menu banyak adalah antarmuka yang baik. Kesederhanaan disini lebih berarti sebagai hal yang ringkas dan tidak terlalu berbelit. User akan merasa jengah dan bosan jika pernyataan, pertanyaan dan menu bahkan informasi yang dihasilkan terlalu panjang dan berbelit. User lebih menyukai hal-hal yang bersifat sederhana tetapi mempunyai kekuatan/bobot.



8. Direct manipulation

User berharap aplikasi yang dihadapinya mempunyai media atau tools yang dapat digunakan untuk melakukan perubahan pada antarmuka tersebut. User ingin sekali aplikasi yang dihadapannya bisa disesuaikan dengan kebutuhan, sifat dan karakteristik user tersebut. Selain itu, sifat dari user yang suka merubah atau mempunyai rasa bosan. Contoh : tampilan warna sesuai keinginan (misal pink) pada window bisa dirubah melalui desktop properties, tampilan skin winamp bisa dirubah, dll.

9. Control

Prinsip control ini berkenaan dengan sifat user yang mempunyai tingkat konsentrasi yang berubah-ubah. Hal itu akan sangat mengganggu proses berjalannya sistem. Kejadian salah ketik atau salah entry merupakan hal yang biasa bagi seorang user. Akan tetapi hal itu akan dapat mengganggu sistem dan akan berakibat sangat fatal karena salah memasukkan data 1 digit/1 karakter saja informasi yang dihasilkan sangat dimungkinkan salah. Oleh karena itu software engineer haruslan merancang suatu kondisi yang mampu mengatasi dan menanggulangi hal-hal seperti itu. Contoh : “illegal command”, “can’t recognize input” sebagai portal jika terjadi kesalahan.

10. WYSIWYG

WYSIWYG adalah what you see is what you get yaitu apa yang didapat adalah apa yang dilihatnya. Contoh : apa yang tercetak di printer merupakan informasi yang terkumpul dari data-data yang terlihat di layar monitor pada saat mencari data. Hal ini juga perlu menjadi perhatian software engineer pada saat membangun antarmuka. Informasi yang dicari/diinginkan harus sesuai dengan usaha dari user pada saat mencari data dan juga harus sesuai dengan data yang ada pada aplikasi sistem (software). Jika sistem mempunyai informasi yang lebih dari yang diinginkan user, hendaknya dibuat pilihan (optional) sesuai dengan keinginan user. Bisa jadi yang berlebihan itu justru tidak diinginkan user. Yang mendasar disini adalah harus sesuai dengan kemauan dan pilihan dari user.

11. Flexibility

Fleksibel merupakan bentuk dari dari solusi pada saat menyelesaikan masalah. Software engineer dapat membuat berbagai solusi penyelesaian untuk satu masalah. Sebagai contoh adanya menu, hotkey, atau model dialog yang lainnya.

12. Responsiveness

Setelah memberikan inputan atau memasukkan data ke aplikasi system melalui antarmuka, sebaiknya sistem langsung memberi tanggapan/respon dari hasil data yang diinputkan. Selain teknologi komputer semakin maju sesuai dengan tuntutan kebutuhan manusia, software yang dibangun pun harus mempunyai reaksi tanggap yang cepat. Hal ini didasari pada sifat manusia yang semakin dinamis / tidak mau menunggu.

13. Invisible Technology

Secara umum, user mempunyai keingintahuan sebuah kecanggihan dari aplikasi yang digunakannya. Untuk itu aplikasi yang dibuat hendaknya mempunyai kelebihan yang tersembunyi. Bisa saja kelebihan itu berhubungan dengan sistem yang melingkupinya atau bisa saja kecanggihan atau kelebihan itu tidak ada hubungannya. Contoh : sebuah aplikasi mempunyai voice recognize sebagai media inputan, pengolah kata yang dilengkapi dengan language translator.

14. Robustness

Interaksi manusia dan komputer yang baik dapat berupa frase-frase menu atau error handling yang sopan. Kata yang digunakan harus dalam kondisi bersahabat sehingga nuansa user friendly akan dapat dirasakan oleh user selama menggunakan sistem.

15. Protection

Suasana nyaman perlu diciptakan oleh software engineer di antarmuka yang dibangunnya. Nyaman disini adalah suasana dimana user akan betah dan tidak menemui suasana kacau ketika user salah memasukkan data atau salah eksekusi. Seorang user akan tetap merasa nyaman ketika dia melakukan kesalahan, misal ketika user melakukan deleting atau menghapus files tanpa sengaja tidaklah menjadi kekacauan yang berarti karena misal ada recovery tools seperti undo, recycle bin, dll atau “are you sure....” Proteksi disini lebih menjaga kenyamanan user ketika menggunakan aplikasi sistem khususnya data-data berupa file.

16. Ease Of Learning And Ease Of Use

Kemudahan dalam mengoperasikan software hanya dengan memandangi atau belajar beberapa jam saja. Kemudahan dalam memahami icon, menu-menu, alur data software, dsb. Sesudah mempelajari, user dengan mudah dan cepat menggunakan software tersebut. Jika sudah memahami tentunya akan membantu proses menjalankan sistem dengan cepat dan baik.

Secara garis besar, pengembangan antarmuka perlu memperhatikan beberapa hal sebagai berikut :

1. Pengetahuan tentang mekanisme fungsi manusia sebagai pengguna komputer. Tentunya yang ada hubungannya dengan psikologi kognitif, tingkat perseptual, serta kemampuan motorik pengguna.

2. Berbagai informasi yang berhubungan berbagai informasi yang berhubungan dengan karakteristik dialog yang cukup lebar, seperti ragam dialog, struktur, isi tekstual dan grafis, waktu tanggap, dan kecepatan tampilan.

3. Penggunaan prototipe yang didasarkan pada spesifikasi dialog formal yang disusun secara bersama antara calon pengguna (user) dan perancang sistem, serta peranti bantu yang dapat digunakan untuk mempercepat proses pembuatan prototipe.

4. Teknik evaluasi yang digunakan untuk mengevaluasi hasil proses prototipe yang telah dilakukan, yaitu secara analitis berdasarkan pada analisis atas transaksi dialog, secara empiris menggunakan uji coba pada sejumlah kasus, umpan balik pengguna yang dapat dikerjakan dengan tanya jawab maupun kuesioner dan beberapa analisis yang dikerjakan oleh ahli antarmuka.

Kesulitan yang timbul dalam pengembangan fasilitas antarmuka dari sebuah perangkat lunak antara lain adalah :
• Antarmuka harus menangani beberapa piranti kontrol seperti adanya keyboard dan mouse maupun periperal lainnya, yang semuanya mempunyai aliran data yang berbeda-beda dan mempunyai karakteristik yang berbeda pula.
• Waktu yang dibutuhkan pada saat pengiriman data. Bagaimana meyakinkan bahwa tidak terjadi keterlambatan antara tindakan dari pengguna dan respon/tanggapan dari sistem.

Untuk mempercepat proses perancangan dan pengembangan antarmuka, beberapa piranti bantu pengembang sistem antarmuka sering dimanfaatkan, seperti adanya perkembangan teknologi komputer Apple yang berfokus pada desain grafis, perkembangan teknologi pemrograman seperti Visual C/C++, Visual Basic, Delphi, Visual Foxpro, dll.
Dengan perkembangan itu kita dapat mendesain antarmuka yang luwes dan enak dipandang, bahkan cukup nyaman untuk digunakan dalam membuat topeng sebuah sistem.

C. MODEL ATAU JENIS INTERAKSI
Ada beberapa model atau jenis interaksi,antara lain :

1. Command line interface (perintah baris tunggal)
contoh : unix, linux, dos

2. Menu (menu datar dan menu tarik)
contoh : hampir semua software menggunakan menu

3. Natural language (bahasa alami)
contoh : bahasa pemrograman terstruktur (belum objek)

4. Question/answer and query dialogue
contoh : mysql, dbase interaktif, dll

5. Form-fills and spreadsheets
contoh : excel, lotus, dll

6. WIMP (Windows Icon Menu Pointer atau Windows Icon Mouse Pulldown)
contoh : button, dialogue boxes, pallettes, dll

Senin, September 01, 2008

local area network

Local Area Network (LAN) adalah suatu network yang terbatas dalam jarak (local). Bilamana jarak yang harus dijangkau kurang dari sekitar 1000 meter untuk komunikasi dalam network maka digunakan bentuk LAN. Network ini banyak digunakan dalam satu perusahaan yang menghubungkan antara departemen-departemen lain dalam 1 gedung. LAN berbeda dengan external network. LAN dapat menggunakan kabel untuk transmisi datanya. Biasanya LAN berbentuk star network atau bus network.

Transmisi data dalam LAN punya kecepatan yang berbeda-beda dan dapat dikategorikan sebagai berikut :
A. HIGH SPEED NETWORK
B. MEDIUM SPEED NETWORK
C. LOW SPEED PC NETWORK

A. High Speed Network mempunyai kapasitas transmisi data lebih besar dari 20MBps yang biasanya diterapkan untuk mainframe computer yang besar.
Contoh :
-Loosely Coupled Network (Control Data Corporation)
-Hyperchannel (Network System Corporation)

B. Medium Speed Network mempunyai kapasitas transmisi data sekitar 1MBps – 20MBps yang biasanya diterapkan untuk minicomputer.
Contoh :
-Ethernet dikembangkan oleh Xerox dan mempunyai kecepatan 1MBps yang memakai coaxial cable dan dapat menghubungkan system computer Xerox dengan mesin copy Xerox dan dengan alat-alat yang lain.
-ARC Net oleh Datapoint Corporation
-Wangnet oleh Wang Laboratories
-Local Net oleh Systex
-Cable Net oleh Amdax

C. Low Speed PC Network mempunyai kapasitas transmisi lebih kecil dari 1MBps, biasanya diterapkan untuk personal computer.
Contoh :
-Omninet oleh Corvus Systems yang dapat menghubungkan computer IBM PC, Apple, Radio Shack, DEC, Texas Intrument untuk bersama-sama menggunakan harddisk dan peripheral device lainnya. Bentuk networknya adalah bus network
-Constellation oleh Corvus System, fungsinya sama seperti Omninet tapi berbentuk star network
-Cluster One dari Netcar System khusus untuk computer Apple yang berbentuk bus network
-Apple Talk oleh Apple Corporation untuk hubungan antara computer Apple Macintosh dengan IBM PC dan peripheral lainnya seperti misalnya laser print

Didalam LAN, computer pusat disebut dengan network server yang dapat dihubungkan dengan beberapa terminal yang membentuk suatu network. Computer client dapat dihubungkan dengan computer pusat dengan menggunakan kabel yang biasa disebut dengan coaxial cable. Karena network server dihubungkan dengan beberapa terminal, maka terminal harus berhubungan dulu dengan network server. Untuk dapat berhubungan dengan computer pusat , biasanya user akan ditanyakan password. Kalau password tersebut dikenal oleh computer pusat maka pemakai tadi dapat mengakses data computer pusat namun jika tidak maka sebaliknya.