BAB 1
PENDAHULUAN
1.1. Latar Belakang
Saat ini pengiriman informasi secara real-time masih mengalami kendala, diantaranya adalah besarnya jumlah data yang harus dikirim melampaui kecepatan transmisi yang dimiliki oleh perangkat keras. Hal tersebut menjadi masalah, dimana jalur komunikasi di Indonesia, khususnya internet, masih berada di dalam kategori lambat dan sering bermasalah. Dengan demikian, data yang berukuran kecil akan dipilih karena akan lebih cepat dikirim dan lebih hemat tempat. (Erdiansyah, U. 2014)
Oleh karena itu, manusia selalu berusaha untuk menemukan suatu cara alternatif untuk menangani permasalahan tersebut, salah satunya dengan cara kompresi. Dalam ilmu komputer, kompresi data adalah sebuah cara untuk memadatkan data sehingga hanya memerlukan ruangan penyimpanan yang lebih kecil agar lebih efisien dalam menyimpan data atau mempersingkat waktu pertukaran data tersebut. Masalah yang mendasar pada proses kompresi data adalah bagaimana proses memampatkan data tersebut, khususnya data teks agar diperoleh file teks dengan ukuran yang lebih kecil dari ukuran semula.
Dalam bidang ilmu komputer teknik kompresi ini digunakan terhadap data digital yang disebut juga kompresi data. Kompresi terhadap data dilakukan untuk mengurangi ukuran data sehingga mempercepat proses pemindahan data dan mengurangi kapasitas memori yang dibutuhkan, dimana data yang dimaksud bisa berupa file teks, gambar, suara, maupun video. (Sayood, K. 2005) Hal yang harus diperhatikan dalam kompresi data adalah time process (waktu yang berjalan pada saat data dikompresi), ratio (ukuran data setelah dikompresi) dan space savings (presentase selisih ukuran data setelah dikompresi dengan ukuran data sebelum dikompresi).
Ada banyak algoritma yang dikembangkan untuk kompresi data, namun belum ada satupun algoritma yang baik untuk mengkompresi berbagai tipe file karena karakteristik atau struktur file yang berbeda-beda. (Cormen, T. H, et al. 2009) Oleh karena itu dalam penulisan tugas akhir ini penulis ingin mengetahui bagaimana cara
kerja algoritma Ternary Comma Code yang digunakan untuk mengompresi data, sehingga data kompresi yang dihasilkan telah baik.
Untuk mengetahui bagaimana algoritma tersebut telah optimal dan efektif dalam kompresi file teks, maka penulis akan menggunakan analisis kompresi yang diukur dengan rasio kompresi (ratio of compression dan compression ratio), space savings, dan waktu yang dibutuhkan selama proses kompresi dan dekompresi.
Android sudah menjadi platform sistem operasi yang makin popular. Padahal sebenarnya, android termasuk sistem operasi „yunior‟ dibandingkan lainnya yang lebih „senior‟, seperti symbian, iOS, atau sistem operasi blackberry. Android secara sederhana bisa diartikan sebagai sebuah software yang digunakan pada perangkat mobile yang mencakup sistem operasi, middleware, dan aplikasi kunci yang dirilis oleh Google. (EMS, Tim. 2015)
1.2. Rumusan Masalah
Berdasarkan latar belakang masalah, maka rumusan masalah yang akan dibahas dalam tugas akhir ini adalah bagaimana cara kerja algoritma Ternary Comma Code dalam melakukan kompresi file teks dengan parameter rasio, waktu kompresi, waktu dekompresi, dan space savings.
1.3. Batasan Masalah
Adapun batasan masalah dalam tugas akhir ini adalah sebagai berikut : 1. Jenis file yang di kompresi adalah file text yang berekstensi txt.
2. Tidak melakukan kompresi terhadap komponen lain seperti tabel atau gambar yang terdapat di dalam file text maupun dokumen yang akan dikompresi.
3. Parameter yang akan diukur antara lain adalah rasio kompresi Ratio of Compression (RC), Compression Ratio (CR), Space savings (SS) dan waktu atau real time (ms) yang dibutuhkan selama proses kompresi dan dekompresi.
4. Kompleksitas yang akan dibahas ialah kompleksitas algoritma (T(n)) yang dinyatakan dalam big-θ (theta).
5. Kode teks yang digunakan dalam penelitian ini adalah kode ASCII (American Standard Code For Information Interchange) 8 bit.
6. Aplikasi dibuat dengan bahasa pemrograman Java.
1.4. Tujuan Penelitian
Tujuan penelitian ini adalah Mengetahui kinerja kompresi dari algoritma Ternary Comma Code, waktu kompresi, waktu dekompresi, serta space savings nya.
1.5. Manfaat Penelitian
Penelitian ini diharapkan mendapatkan hasil yang bermanfaat bagi user agar dapat menggunakan kinerja algoritma Ternary Comma Code sebagai algoritma yang baik dalam mengkompresi file teks. Serta memperluas kapasitas penyimpanan data yang digunakan dengan mengurangi ukuran data yang akan disimpan.
1.6. Metodologi Penelitian
Penelitian ini menerapkan beberapa metode penelitian sebagai berikut : 1. Studi Literatur
Pada tahap ini dilakukan pengumpulan referensi yang diperlukan dalam penelitian. Hal ini dilakukan untuk memperoleh informasi dan data yang diperlukan untuk penulisan skripsi ini. Referensi yang digunakan dapat berupa buku, jurnal, artikel, makalah baik berupa media cetak maupun media internet mengenai file teks, algoritma Ternary Comma Code dan kompresi serta beberapa referensi lainnya untuk menunjang pencapaian tujuan skripsi.
2. Analisis dan Perancangan Sistem
Masalah akan dianalisis dan di identifikasi kebutuhan yang terkait serta disesuaikan dengan batasan masalah untuk mencapai tujuan. Kemudian perancangan system dilakukan dengan mendesain user interface, Unified modeling language (UML), dan struktur program sistem kompresi file.
3. Implementasi Sistem
Sistem diimplementasikan dengan menggunakan algoritma Ternary Comma Code untuk melakukan kompresi file teks berbasis android.
4. Pengujian Sistem
Pada tahap ini akan dilakukan pengujian terhadap sistem yang telah dibangun.
5. Dokumentasi Sistem
Dalam tahap dokumentasi dilakukan penyusunan laporan dari hasil analisis dan perancangan sistem dalam format penulisan penelitian.
1.7. Sistematika Penulisan
Sistematika dalam penulisan tugas akhir ini disusun menjadi beberapa bab, diantaranya yaitu :
BAB 1 : PENDAHULUAN
Bab ini berisi mengenai latar belakang masalah, rumusan masalah, batasan masalah, tujuan dan manfaat dari penelitian, metode penelitian dan sistematika penulisan.
BAB 2 : TINJAUAN PUSTAKA
Bab ini berisi mengenai teori-teori dasar dan metode yang dilakukan untuk mendukung analisis dan perancangan yang dilakukan.
BAB 3 : ANALISIS DAN PERANCANGAN SISTEM
Bab ini terdiri dari tahap analisis sistem dan desain/model perancangan dari program yang akan dibuat, dalam hal ini termasuk juga algoritma dari program tersebut.
BAB 4 : IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi mengenai implementasi dan pengujian dari program yang sebelumnya telah dirancang dan dianalisis sistemnya.
BAB 5 : KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dan hasil penelitian yang telah selesai dilakukan, juga saran atau rekomendasi guna penelitian lebih lanjut.