• Tidak ada hasil yang ditemukan

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2016

PADA FILE .DOC

SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

Oleh : DESY H HUSNI

141421106

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

UNIVERSITAS SUMATERA UTARA MEDAN

PERSETUJUAN

Judul : IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE PADA FILE .DOC

Kategori : SKRIPSI

Nama : DESY H HUSNI

Nomor Induk Mahasiswa : 141421106

Program Studi : EKSTENSI S1 ILMU KOMPUTER Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Juni 2016 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

M. Andri Budiman, S.T., M.Comp.Sc., M.E.M Dr. Syahril Efendi, S.Si, M.IT NIP. 197510082008011011 NIP. 196711101996021001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001

PERNYATAAN

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE

PADA FILE .DOC

SKRIPSI

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

Medan, Juni 2016

Desy H Husni 1414121106

PENGHARGAAN

Alhamdulillah segala puji dan syukur atas nikmat yang luas kepada Allah Yang Maha Esa dan Maha Kuasa sehingga 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 kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada:

1. Bapak Prof. DR. Runtung Sitepu, SH, MHum 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 Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

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

5. Ibu Dian Rachmawati, S.Si, M.Kom selaku Koordinator Ekstensi Ilmu Komputer Universitas Sumatera Utara.

6. Bapak Dr. Syahril Efendi, S.Si., M.IT selaku Dosen Pembimbing I yang telah memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.

7. M. Andri Budiman, S.T., M.Comp.Sc., M.E.M selaku Dosen Pembimbing II yang telah memberikan arahan, waktu, tenaga, pikiran, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.

8. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam penyempurnaan laporan skripsi serta mendukung penuh dalam penyusunan skiripsi

9. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

10. Seluruh dosen dan pegawai di Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

11. Teristimewa kedua orang tua penulis yang tercinta, ibunda Safliati, SST, M.Kes dan ayahanda Husni, SE yang tidak henti-hentinya memberikan doa, motivasi, serta masukan yang menjadikan semangat untuk penulis.

12. Abang, Kakak dan adik-adik tersayang Iswandi, SH, MH, Nurul Hikmah, AmdKeb, Octa Sya Husni dan Al Faredz Husni yang selalu mendoakan serta memberikan semangat kepada penulis dalam menyelesaikan skripsi ini.

13. Teman–teman mahasiswa S1 Ekstensi Ilmu Komputer stambuk 2014 yang selalu memberi dukungan.

14. Sahabat seperjuangan saya, Dea Yulianda Pratiwi, Ogiana, Nadra Katika Lingga, Yulni Witriza yang selalu memberikan semangat untuk cepat lulus dan menjadi teman diskusi dalam penyelesaian skripsi ini.

15. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.

Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu, kepada pembaca agar kiranya memberikan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini, sehingga dapat bermanfaat bagi kita semuanya.

Medan, Juni 2016

ABSTRAK

Kompresi data adalah proses yang mengkonversi sebuah masukan berupa aliran data (data asli) menjadi suatu aliran data lain (data yang sudah dikompresi) yang memiliki ukuran lebih kecil. Punctured Elias Codes dan Ternary Comma Code adalah jenis kompresi lossless yang digunakan dalam penelitian ini. Parameter yang digunakan untuk mengukur kinerja metode ini yaitu Ratio of Compression (RC), Compression Ratio (CR), Space Savings (SS) dan Time Process (jumlah waktu yang dibutuhkan selama proses kompresi dan dekompresi berlangsung). Kompresi file dilakukan dengan membaca string pada file dan mengkodekannya menggunakan kode Punctured Elias Codes dan Ternary Comma Code. File hasil kompresi akan berekstensi *.pec dan *.tcc yang berisi string bit hasil kompresi yang selanjutnya akan bisa didekompresi. Output dari dekompresi akan berekstensi *.doc sesuai file aslinya sebelum dikompresi. Sampel pengujian yang digunakan adalah string bit yang terdiri dari satu jenis karakter (Homogen) dan string bit yang terdiri dari beberapa jenis karakter (Heterogen) yang tersimpan dalam file yang berekstensi *.doc. Pada sampel pengujian string homogen, dilihat dari perhitungan RC, CR dan SS algoritma Punctured Elias Codes dan Ternary Comma Code hampir sama baiknya, namun waktu kompresi dan dekompresi yang dihasilkan algoritma Ternary Comma Code lebih besar dibandingkan dengan algoritma Punctured Elias Codes. Pada sampel pengujian string heterogen, dilihat dari perhitungan RC, CR, SS, waktu kompresi dan dekompresi yang dihasilkan algoritma Punctured Elias Codes dan Ternary Comma Code hampir sama baiknya.

Kata Kunci : Kompresi, Kompresi File, Algoritma Punctured Elias Codes dan Ternary Comma Code.

IMPLEMENTATION AND ANALYSIS OF COMPRESSION ALGORITHMS PUNCTURED ELIAS CODES AND TERNARY COMMA CODE

IN .DOC FILE

ABSTRACT

Data compression is the process that converts an input of the flow of a data stream (original data) into a flow of other data (data was compressed) which has the smaller size. Punctured Elias Codes and Ternary Comma Code is the kind of compress used in this research while the paramater use to measure the process of Ratio of Compression (RC), Compression Ratio (CR), Space Savings (SS), Time Process (amount of time used during the compress process). In addition, compress for file is with reading or analizing the string of the file and the code is used code Punctured Elias Codes and Ternary Comma Code. The result of compress file will extension *.pec and *.tcc bit string that contains the results of compression that would be decompression. The output of the corresponding *.doc with extension will decompress the original file before it is compressed. The sample of the research used is string bit which are divided into one type of character (Homogen) and others are several types of characters (Heterogen) that is saved into an file with extension *.doc. on the sample testing of homogeny string, as seen from the calculation of RC, CR and SS Punctured Elias Codes and Ternary Comma Code algorithms almost as good, but compression time and decompression time generated Ternary Comma Code greater than Punctured Elias Codes. On the sample testing of heterogen string, seen from the calculation of RC, CR, SS, compression time and decompression time produced Punctured Elias Codes and Ternary Comma Code algorithms almost as good.

Keywords : Compression, Compression File, Punctured Elias Codes and Ternary Comma Code Algorithms.

DAFTAR ISI Halaman Persetujuan ii Pernyataaan iii Penghargaan iv Abstrak vi Abstract vii

Daftar Isi viii

Daftar Tabel x Daftar Gambar xi BAB 1 PENDAHULUAN 1 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 6

2.1 Kompresi 6

2.2.1 Teknik Kompresi Data 7

2.2.2 Parameter Analisis Kinerja Algoritma Kompresi 9

2.3 Dekompresi 10

2.4 Algoritma Punctured Elias Codes 11

2.5 Algoritma Ternary Comma Code 12

2.6 File Teks 13

2.7 Bahasa Pemrograman C# 14

2.8 UML (Unifed Modelling Language) 16

BAB 3 ANALISIS DAN PERANCANGAN SISTEM 20

3.1 Analisis Sistem 20

3.1.1 Analisis Masalah 20

3.1.2 Analisis Kebutuhan 22

3.1.3 Analisis Proses 23

3.1.3.1 Analisis Proses Kompresi Pada Algoritma Punctured Elias Codes

3.1.2.2 Analisis Proses Kompresi Pada Algoritma

Ternary Comma Code 26

3.1.3.3 Analisis Proses Dekompresi Pada Algoritma

Punctured Elias Codes dan Ternary Comma Code 29

3.2 Pemodelan Sistem 31

3.2.1 Use Case Diagram 31

3.2.2 Activity Diagram 33

3.2.3 Sequence Diagram 35

3.2.4 Class Diagram 35

3.3 Perancangan Sistem 38

3.3.1 Perancangan Alur Proses Sistem Secara Umum 38 3.3.2 Perancangan Alur Proses Kompresi Dan Dekompresi 41 3.3.2.1 Perancangan Alur Proses Kompresi 41 3.3.2.2 Perancangan Alur Proses Dekompresi Algoritma Punctured Elias Codes dan Ternary Comma Code 44 3.3.2.3 Perancangan Sistem Antarmuka 45

BAB 4 Implementasi dan Pengujian Sistem 53

4.1 Implementasi Sistem 53

4.1.1 Form Home 53

4.1.2 Form Compression 54

4.1.3 Form Decompression 55

4.1.4 Form About Application 56

4.1.5 Form Profile 57

4.2 Pengujian Sistem 58

4.2.1 Pengujian Proses Kompresi 58

4.2.2 Pengujian Proses Dekompresi 62

4.3 Hasil Pengujian 68

BAB 5 KESIMPULAN DAN SARAN 71

5.1 Kesimpulan 71

5.2 Saran 72

DAFTAR PUSTAKA LAMPIRAN

DAFTAR TABEL

Halaman

Tabel 2.1 Punctured Elias Codes 12

Tabel 2.2 Ternary Comma Code 13

Tabel 3.1 Sebab Dan Akibat 21

Tabel 3.2 Punctured Elias Codes 24

Tabel 3.3 String Yang Belum Dikompresi 24

Tabel 3.4 String Yang Telah Diurutkan Secara Descending Dan Table Sorted Dan Telah Dikompresi Dengan Kode Punctured (P1) 25

Tabel 3.5 Ternary Comma Code 26

Tabel 3.6 String Yang Belum Dikompresi 27

Tabel 3.7 String Yang Telah Diurutkan Secara Descending Dan Table Sorted Dan Telah Dikompresi Dengan Kode Ternary Comma

Code 28

Tabel 3.8 Tabel Hasil Bit String Setelah Dikompresi

Menggunakan Kode Punctured Elias Codes (P1) 30 Tabel 3.9 Dokumentasi Naratif Use Case Kompresi 32 Tabel 3.10 Dokumentasi Naratif Use Case Dekompresi 33 Tabel 4.1 Hasil Pengujian 1 String Homogen Dengan

Punctured Elias Codes 68

Tabel 4.2 Hasil Pengujian 2 String Homogen Dengan

Ternary Comma Code 68

Tabel 4.3 Hasil Pengujian 3 String Heterogen Dengan

Punctured Elias Codes 69

Tabel 4.4 Hasil Pengujian 4 String Heterogen Dengan

DAFTAR GAMBAR

Halaman

Gambar 2.1 Kompresi dan Rekontruksi 8

Gambar 2.2 Kompresi Lossless 9

Gambar 2.3 Kompresi Lossy 9

Gambar 2.4 Kompresi dan Dekompresi 11

Gambar 3.1 Diagram Ishikawa 22

Gambar 3.2 Daigram Use Case 31

Gambar 3.3 Diagram Activity 34

Gambar 3.4 Diagram Sequence Kompresi 35

Gambar 3.5 Diagram Sequence Dekompresi 35

Gambar 3.6 Diagram Class 38

Gambar 3.7 Flowchart Punctured Elias Codes Secara Umum Pada Sistem 39 Gambar 3.8 Flowchart Ternary Comma Code Secara Umum Pada Sistem 40 Gambar 3.9 Flowchart Proses Kompresi Dengan Algoritma

Punctured Elias Codes 42

Gambar 3.10 Flowchart Proses Kompresi Dengan Algoritma

Ternary Comma Code 43

Gambar 3.11 Flowchart Dekompresi Algoritma PEC dan TCC Secara

Universal 44

Gambar 3.12 Form Home 45

Gambar 3.13 Menu Item Compression, Decompression dan Exit 46 Gambar 3.14 Menu Item About Apliccation dan Profile 47

Gambar 3.15 Form Compression 48

Gambar 3.16 Form Decompression 49

Gambar 3.17 Form About Application 51

Gambar 3.18 Form Halaman Profile 52

Gambar 4.1 Gambar Form Home 54

Gambar 4.2 Gambar Form Compression 55

Gambar 4.3 Gambar Form Decompression 56

Gambar 4.4 Gambar Form About Application 57

Gambar 4.5 Gambar Form Profile 58

Gambar 4.6 Gambar Pemilihan Algoritma Kompresi 59

Gambar 4.7 Gambar Open File Dialog 60

Gambar 4.8 Gambar Save File Dialog 60

Gambar 4.9 Gambar Path Pada Masing-Masing Teks Box 61

Gambar 4.10 Gambar Hasil Proses Kompresi 62

Gambar 4.11 Gambar File Hasil Proses Kompresi (*.pec) 62 Gambar 4.12 Gambar Pemilihan Algoritma Dekompresi 63

Gambar 4.13 Gambar Open File Dialog 64

Gambar 4.14 Gambar Setelah File Berhasil Dipilih 64 Gambar 4.15 Gambar Ketikan atau Copy-Paste String Asli 65

Gambar 4.16 Gambar Save File Dialog 66 Gambar 4.17 Gambar Path Pada Masing-Masing Teks Box 66

Gambar 4.18 Gambar Hasil Proses Kompresi 67

Gambar 4.19 Gambar Ukuran File Asli Sebelum Dikompresi 67 Gambar 4.20 Gambar Ukuran File Asli Setelah Dikompresi 67 Gambar 4.21 Gambar Ukuran File Setelah Didekompresi 68 Gambar 4.22 Grafik Kedua Algoritma Menggunakan String Homogen

Dengan Ukuran File 30 kb 69 Gambar 4.14 Grafik Kedua Algoritma Menggunakan String Heterogen

Dokumen terkait