BAB I PENDAHULUAN 1.1 Latar Belakang Dalam bidang teknologi informasi, komunikasi data sangat sering dilakukan. Komunikasi data ini berhubungan erat dengan pengiriman data menggunakan sistem transmisi elektronik dari satu terminal komputer ke terminal komputer yang lain. Besarnya ukuran data terkadang menjadi kendala dalam proses pengiriman data ini. Data dengan ukuran besar akan memakan waktu transfer yang lebih lama dibandingkan dengan data yang memiliki ukuran lebih kecil, terkadang ada resiko tidak dapat tertampung pada media penyimpanan dan tidak tersampaikannya, sehingga akan memperkecil kapasitas kosong dalam memori media penyimpanan. Oleh karena itu, manusia selalu berusaha untuk menemukan suatu cara alterntif untuk menangani permasalahan tersebut, salah satunya dengan cara kompresi (Winanti, 2006). Salah satu kegunaan kompresi adalah untuk memperkecil kapasitas kosong dalam memori media penyimpanan, agar kita tidak terlalu boros menggunakan media penyimpanan tersebut. Kompresi data berarti suatu teknik untuk memampatkan data agar diperoleh data dengan ukuran yang lebih kecil daripada ukuran aslinya sehingga lebih efisien dalam menyimpannya serta mempersingkat waktu pertukaran data tersebut. Dengan kata lain, kompresi data sebenarnya adalah proses meminimalkan ukuran data atau berkas dengan mengurangi data yang berulang, karena umumnya pada sebuah data sering terjadi pengulangan. Data yang telah dikompres agar bisa 1
digunakan kembali harus dikembalikan lagi seperti semula. Proses pengembalian sebuah data yang terkompresi menjadi seperti data aslinya disebut dengan dekompresi (Echagz, 2008). Pada kompresi data, terdapat dua tipe macam kompresi, yaitu lossless compression dan lossy compression. Pada lossless compression, semua informasi yang ada pada data akan kembali menjadi seperti aslinya dan tidak ada informasi yang hilang. Teknik ini biasanya digunakan untuk dokumen-dokumen, file executable, dan lainnya. Karena, kehilangan sebuah informasi merupakan hal yang fatal bagi file-file tersebut. Sedangkan pada lossy compression, tidak semua informasi yang ada akan kembali seperti semula. Hanya informasi-informasi inti yang dikembalikan. Hal ini terjadi, karena pada lossy compression informasi informasi yang tidak berguna akan dihilangkan.walaupun ada informasi yang hilang, namun hal ini tidak terlalu disadari oleh pengguna. Teknik ini biasanya digunakan pada file video, gambar, suara yang mana file-file tersebut biasanya berukuran besar (Echagz, 2008). Dengan adanya kompresi diharapkan dapat menghemat biaya serta waktu yang dikeluarkan guna menambah fasilitas media penyimpanan data pada komputer serta mempercepat proses transfer data. Banyak teknik algoritma yang dapat digunakan untuk melakukan kompresi file, sebagai contoh adalah algoritma Huffman, algoritma LZW (Lempel-Ziv-Welch), algoritma DMC (Dinamic Markov Compression), Block-Shorting Lossless, Run-Length, Shannon-Fano, Arithmetic, PPM (Prediction by Partial Matching), Burrows-Wheeler Block Sorting, dan Half Byte, dan lain-lain (Inti, 2006). 2
Beberapa software kompresi yang banyak digunakan para pengguna komputer dewasa ini diantaranya adalah WinZip (menghasilkan format.zip) dan WinRAR (menghasilkan format.rar). selain itu, telah banyak penelitian yang dilakukan mengenai kompresi file dengan berbagai macam algoritma, misalnya Aplikasi Pohon Dalam Teknik Kompresi Data Dengan Algoritma Huffman dan Algoritma Huffman Kanonik (Atmavidya, Arif Nanda, 2007), Kompresi Teks dengan menggunakan Algoritma Huffman (Wardoyo, 2005), Penggunaan Hidden Markov Model untuk Kompresi Kalimat (Wibisono, 2008). Maka berdasarkan latar belakang yang telah dikemukakan di atas, judul yang diambil dalam skripsi ini adalah Rancang Bangun Aplikasi Kompresi File Menggunakan Metode LZW Berbasis Java. 1.2 Rumusan Masalah Dari latar belakang di atas dapat dirumuskan suatu masalah antara lain: a. Bagaimana membuat struktur data dari metode lzw untuk malakukan kompresi file? b. Bagaimana merancang aplikasi kompresi file dengan menggunakan metode lzw berbasis java? c. Bagaimana membangun aplikasi kompresi file dengan menggunakan metode lzw berbasis java? 1.3 Batasan Masalah Batasan masalah dalam penelitian ini yaitu : a. kompresi dilakukan pada file teks dan citra yang mempunyai besar kapasitas 3
berbeda. b. Data yang digunakan dalam penelitian ini adalah 50 file yaitu masing-masing sepuluh file teks yang mempunyai tipe *.txt, *.html, *.rtf, dan *.doc dan file citra yang mempunyai tipe *.bmp. 1.4 Tujuan Penelitian Tujuan dari penelitian ini yaitu : a. Membuat struktur data dari metode lzw untuk melakukan kompresi file. b. Merancang aplikasi kompresi file dengan menggunakan metode lzw berbasis java. c. Membangun aplikasi kompresi file dengan menggunakan metode lzw berbasis java. 1.5 Manfaat Penelitian Menyediakan aplikasi yang dapat digunakan untuk melakukan kompresi file sehingga menghemat media penyimpanan dan komunikasi data. Hasil data terkompresi tersebut dapat dikembalikan seperti file aslinya dengan proses dekompresi sehingga dapat digunakan sesuai dengan kebutuhan. 1.6 Metologi Penelitian a. Studi Literatur Studi literatur dilakukan dengan mencari dan memahami bahan-bahan pustaka terkait dengan aplikasi kompresi. b. Analisis Data 4
Analisis data dilakukan dengan melakukan pencarian jurnal-jurnal, serta informasi tentang suatu hal atau masalah yang berhubungan dengan kompresi file dengan menerapkan metode lzw berbasis java. c. Perancangan Program Dari hasil analisis yang dilakukan selanjutnya dibuat rancangan untuk membangun aplikasi. Rancangan ini meliputi interface, proses serta alur program. d. Pembuatan Program Pembuatan program dilakukan dengan mengaplikasikan rancangan yang telah dibuat sebelumnya dengan tool yang ada. e. Uji Coba dan Evaluasi Setelah aplikasi selesai dibuat selanjutnya dilakukan uji coba untuk mengetahui kinerja sistem serta kemungkinan terjadinya kesalahan untuk selanjutnya bisa diperbaiki. f. Penyusunan Laporan Setelah semua tahapan di atas selesai, hal terakhir yang dilakukan adalah penyusunan laporan sebagai dokumentasi serta selanjutnya bisa dijadikan acuan untuk melakukan pengembangan. 1.7 Sistematika Penulisan Skripsi Bab I, Pendahuluan Pada Bab I pendahuluan berisi latar belakang, yaitu menjelaskan tentang judul yang diambil dalam skripsi, rumusan masalah yaitu masalah yang diambil dari latar belakang, batasan masalah dibuat untuk membatasi masalah-masalah yang akan dibuat dalam skripsi, tujuan penelitian yaitu tujuan dari pembuatan 5
skripsi, manfaat penelitian yaitu manfaat daari dibuatnya skripsi, metodologi penelitian menjelaskan tentang pencarian data, analisis data, perancangan program, pembuatan program sampai penyusunan laporan, dan sistematika penulisan skripsi. Bab II, Landasan Teori Landasan teori berisi penyimpanan data yaitu definisi dari penyimpanan data, data yaitu pengertian dari data, kode ASCII, kompresi data yaitu pengertian dan definisi tentang kompresi, perangkat lunak untuk kompresi data, java, uml, dan flowchart. Bab III, Analisis dan Perancangan Sistem Analisis dan perancangan sistem berisi analisis sistem yaitu analisa dari sistem yang dibuat dan perancangan aplikasi yaitu rancangan-rancangan yang dibuat seperti flowchart, pseudo code, dan perancangan interface. Bab IV, Hasil dan Pembahasan Hasil dan pembahasan berisi implementasi uji coba yaitu menjalankan program dengan sampel uji coba terhadap beberapa file dan evaluasi hasil yaitu penjelasan hasil uji coba. Bab V, Kesimpulan dan Saran Kesimpulan merupakan pernyataan singkat dan tepat yang dijabarkan dari hasil penelitian. Sedangkan saran dibuat berdasarkan pengalaman dan pertimbangan penulis serta anjuran dan rekomendasi untuk peneliti selanjutnya. 6