• Tidak ada hasil yang ditemukan

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2016

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE

TEXT PADA PLATFORM ANDROID

SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Komputer

SITI SOENDARI UTAMI 141421030

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA MEDAN

PERSETUJUAN

Judul : IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID Kategori : SKRIPSI

Nama : SITI SOENDARI UTAMI

Nomor Induk Mahasiswa: 141421030

Program Studi : EKSTENSI S1 ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Juli 2016

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dian Rachmawati, S.Si, M.Kom Dr. Poltak Sihombing,M.Kom NIP. 198307232009122004 NIP. 196203171991031001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001

PERNYATAAN

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, Juli 2016

Siti Soendari Utami 141421030

PENGHARGAAN

Alhamdulillah. Puji dan syukur atas kehadirat Allah SWT, yang dengan rahmat dan karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

Pada pengerjaan skripsi dengan judul Implementasi Dan Analisis Algoritma Kompresi Ternary Comma Code Dalam Kompresi File Text Pada Platform Android, penulis menyadari bahwa banyak pihak yang turut membantu, baik dari pihak keluarga, sahabat dan orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan banyak terima kasih kepada :

1. Bapak Prof. Dr. Runtung Sitepu S.H, M.Hum selaku Rektor Universitas Sumatera Utara.

2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

3. Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembimbing I dan Ketua Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

4. Ibu Dr. Maya Silvi Lydia B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

5. Ibu Dian Rachmawati, S.Si, M.Kom selaku Dosen Pembimbing II yang telah memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.

6. Bapak Prof. Dr. Muhammad Zarlis, M.Sc selaku Dosen Pembanding I yang telah banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.

7. Bapak Drs. Marihat Situmorang, M.Kom. selaku Dosen Pembanding II yang telah banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.

8. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi Informasi USU, terkhusus kepada Bapak M. Andri Budiman, S.T., M.Comp.Sc., M.E.M. atas masukan dan nasihatnya yang telah banyak membantu penulis dalam menyelesaikan tugas akhir ini.

9. Ayahanda Bambang Soedjono Kasby, Ibunda Endah Priyatni, SE, Ananda Ruri Erina Soeseny dan Muhammad Ikhsan, yang mana telah banyak memberikan kasih sayang, semangat, serta dorongan kepada penulis.

10. Sahabat-sahabat seperjuangan menggapai gelar sarjana, kepada Raja Arif Hidayah Harahap, Dwita Ananda Yulaz, Rahmayani Gultom, Zul Fikar Ali Ginting, Dan seluruh teman-teman kelas Kom C ekstensi 2014. Serta seluruh teman-teman ekstensi stambuk 2014. Kalian luar biasa!!

11. Terkhusus kepada abangda Fitra Meiraldy, SE. Terimakasih banyak atas bantuan dan motivasinya kepada penulis agar dapat segera menyelesaikan tugas akhir ini tepat waktu.

12. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis ucapkan satu demi satu yang telah membantu penyelesaian laporan ini.

Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.

Medan, Juli 2016 Penulis,

ABSTRAK

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. Sehingga data yang berukuran kecil akan dipilih karena akan lebih cepat dikirim dan lebih hemat tempat. Dalam penelitian ini akan merancang sebuah aplikasi komputer berbasis Android yang dapat mengkompresi file text dan menganalisis kinerja algoritma. Agar memudahkan untuk mengirim file text lebih cepat dan hemat tempat. Kompresi file text dilakukan dengan mengkodekan teks menggunakan algoritma Ternary Comma Code, yang kemudian melakukan proses kompresi. Algoritma Ternary Comma Code, bilangan biner (basis 2) adalah didasarkan pada dua bit 0 dan 1. Demikian juga seperti bilangan ternary (basis 3) yang didasarkan pada tiga bilangan (trit) 0, 1 dan 2. Setiap trit dapat dituliskan dalam dua bit, tetapi dua bit dapat memiliki empat nilai. Sehingga, ini memungkinkan untuk bekerja dengan sistem bilangan ternary dimana masing-masing trit di wakili oleh dua bit dan dalam penjumlahan ketiga trit ada simbol ke empat yaitu comma (c). Ketika kita memasukkan (c), ini akan menjadi lebih mudah untuk membuat kode ternary comma untuk bilangan bulat. Hasil akhir dari kompresi adalah file berekstensi *.tcc yang dapat didekompresi. Keluaran dari dekompresi ini adalah sebuah file baru yang terdiri dari file header serta file body yang berisi kode-kode hasil pengkodean dan kompresi file text asli semula yang dapat disimpan dengan ekstensi file *.txt. Rasio pembanding yang digunakan adalah Ratio of Compression (RC), Compression Ratio (CR), Space Savings (SS), waktu proses kompresi dan dekompresi (ms).

IMPLEMENTATION AND ANALYSIS OF TERNARY COMMA

CODE COMPRESSION ALGORITHM IN TEXT FILE ON

ANDROID PLATFORM

ABSTRACT

Now sending information in real-time are still experiencing problems, including the large amount of data that must be sent beyond the speed of transmission which is owned by the hardware. It became a problem, which the communication lines in Indonesia, especially the Internet, is still in the category of slow and often problematic. So the data that is small will have because it will be quickly dispatched and more efficient place. In this research will be to design an Android-based computer application that can compress text files and analyzing the performance of the algorithm. To make it easier to send text files quicker and efficient place. Text file compression is done by using an algorithm to encode text Ternary Comma Code, which then performs the compression process. Ternary Comma Code algorithm, binary (base 2) numbers are based on the two bits 0 and 1. Similarly, ternary (base 3) numbers are based on the three digits (trits) 0, 1, and 2. Each trit can be encoded in two bits, but two bits can have four values. Thus, it makes sense to work with a ternary number system where each trit is represented by two bits and in addition to the three trits there is a fourth symbol, a comma (c). Once we include the (c), it becomes easy to construct the ternary comma code for the integers. The end result of the compression is a file extension * .tcc that can be decompressed. The output of this decompression is a new file that consists of a file header and body files that contain code encoding and compression results of the original text file that can be saved with the original file extension * .txt. Comparative ratios used are Ratio of Compression (RC), Compression Ratio (CR), Space Savings (SS), time compression and decompression process (ms).

DAFTAR ISI Halaman Persetujuan iii Pernyataan iv Penghargaan v Abstrak vii Abstract viii Daftar Isi ix Daftar Tabel xi

Daftar Gambar xii

Daftar Lampiran xiv

BAB 1 PENDAHULUAN 1.1. Latar Belakang 1 1.2. Rumusan Masalah 2 1.3. Batasan Masalah 2 1.4. Tujuan Penelitian 3 1.5. Manfaat Penelitian 3 1.6. Metodologi Penelitian 3 1.7. Sistematika Penulisan 4

BAB 2 TINJAUAN PUSTAKA

2.1Kompresi Data 5

2.2Jenis Kompresi Data 6

2.3Teknik Kompresi 8

2.4Parameter Analisis Kompresi 8

2.5File Text 10

2.5.1 Format Teks 11

2.6Algoritma Ternary Comma Code 12

2.7Kompleksitas Algoritma 13

2.8Platform Android 14

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Sistem 16

3.1.1 Analisis Masalah 16

3.1.2 Analisis Kebutuhan Sistem 17

3.1.3 Analisis Proses 19

3.2Pemodelan Sistem 24

3.2.1 Use Case Diagram 24

3.2.2 Activity Diagram 25

3.2.3 Sequence Diagram 27

3.3Perancangan Sistem 29

3.3.1Perancangan alur proses sistem kompresi, 29 dekompresi dan algoritma

3.3.2 Perancangan Alur Proses Untuk Membangkitkan 32 Kode Ternary Comma Code

3.3.3 Perancangan Antarmuka Sistem 32

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1Implementasi Sistem 39 4.1.1 Tab Home 39 4.1.2 Tab Menu 40 4.1.3 Tab Compress 41 4.1.4 Tab Decompress 42 4.1.5 Tab Help 43 4.1.6 Tab About 46 4.2 Pengujian Sistem 47

4.2.1 Pengujian proses kompresi 47

4.2.2 Pengujian proses dekompresi 50

4.3 Hasil Pengujian 52

4.4 Hasil Perhitungan Kompleksitas Big Theta (ɵ) 60 BAB 5 KESIMPULAN DAN SARAN

DAFTAR TABEL

Tabel 2.1 Algortima Ternary Comma Code dan Panjangnya 13

Tabel 3.1 Character Set 20

Tabel 3.2 String yang belum dikompresi dengan Ternary Comma Code 20 Tabel 3.3 String yang telah dikompresi dengan Ternary Comma Code 23 Tabel 4.1 Hasil Pengujian String Homogen & String Heterogen 53

menggunakan file txt dengan Ternary Comma Code

DAFTAR GAMBAR

Gambar 3.1 Diagram Ishikawa Analisis Masalah 17

Gambar 3.2 Use Case Diagram Sistem 25

Gambar 3.3 Activity Diagram Proses Kompresi 26 Gambar 3.4 Activity Diagram Proses Dekompresi 27 Gambar 3.5 Sequence Diagram Proses Kompresi 28 Gambar 3.6 Sequence Diagram Proses Dekompresi 28 Gambar 3.7 Flowchart Diagram Proses Kompresi 30 Gambar 3.8 Flowchart Diagram Proses Dekompresi 30 Gambar 3.9 Flowchart Diagram Pembentukan Algoritma 31

Ternary Comma Code (TCC)

Gambar 3.10 Form Home pada sistem 33

Gambar 3.11 Form Menu pada sistem 34

Gambar 3.12 Form Compress pada sistem 35

Gambar 3.13 Form Decompress pada sistem 36

Gambar 3.14 Form Help pada sistem 37

Gambar 3.15 Form About pada sistem 38

Gambar 4.1 Tab Home 40

Gambar 4.2 Tab Menu 41

Gambar 4.3 Tab Compress 42

Gambar 4.4 Tab Decompress 43

Gambar 4.5 Tab Help 44

Gambar 4.6 Tab Help Information Compression 45 Gambar 4.7 Tab Help Information Decompression 46

Gambar 4.8 Tab About 47

Gambar 4.14 Grafik Ratio Of Compression Terhadap String Homogen 54 Gambar 4.15 Grafik Compression Ratio Terhadap String Homogen 55 Gambar 4.16 Grafik Space Savings Terhadap String Homogen 55 Gambar 4.17 Grafik Waktu Kompresi Terhadap String Homogen 56 Gambar 4.18 Grafik Waktu dekompresi Terhadap String Homogen 56 Gambar 4.19 Grafik Ratio Of Compression Terhadap String Heterogen 57 Gambar 4.20 Grafik Compression Ratio Terhadap String Heterogen 58 Gambar 4.21 Grafik Space Savings Terhadap String Heterogen 58 Gambar 4.22 Grafik Waktu Kompresi Terhadap String Heterogen 59 Gambar 4.23 Grafik Waktu dekompresi Terhadap String Heterogen 59

DAFTAR LAMPIRAN

Halaman

A Listing Program A-1

Dokumen terkait