Implementasi dan Analisis Algoritma Kompresi Punctured Elias Codes dan Ternary Comma Code Pada File .Doc
IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI
PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE
PADA FILE .DOC
SKRIPSI
DESY H HUSNI
141421106
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI
PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE
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
2016
Universitas Sumatera Utara
ii
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
NIP. 197510082008011011
Dr. Syahril Efendi, S.Si, M.IT
NIP. 196711101996021001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001
Universitas Sumatera Utara
iii
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
Universitas Sumatera Utara
iv
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.
Universitas Sumatera Utara
v
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
Desy H Husni
Universitas Sumatera Utara
vi
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.
Universitas Sumatera Utara
vii
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.
Universitas Sumatera Utara
viii
DAFTAR ISI
Halaman
Persetujuan
Pernyataaan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
ii
iii
iv
vi
vii
viii
x
xi
BAB 1 PENDAHULUAN
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metodologi Penelitian
1.7 Sistematika Penulisan
1
1
2
2
3
3
3
4
BAB 2 TINJAUAN PUSTAKA
2.1 Kompresi
2.2.1 Teknik Kompresi Data
2.2.2 Parameter Analisis Kinerja Algoritma Kompresi
2.3 Dekompresi
2.4 Algoritma Punctured Elias Codes
2.5 Algoritma Ternary Comma Code
2.6 File Teks
2.7 Bahasa Pemrograman C#
2.8 UML (Unifed Modelling Language)
6
6
7
9
10
11
12
13
14
16
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
3.1.1 Analisis Masalah
3.1.2 Analisis Kebutuhan
3.1.3 Analisis Proses
3.1.3.1 Analisis Proses Kompresi Pada Algoritma
Punctured Elias Codes
20
20
20
22
23
23
Universitas Sumatera Utara
ix
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
4.1 Implementasi Sistem
4.1.1 Form Home
4.1.2 Form Compression
4.1.3 Form Decompression
4.1.4 Form About Application
4.1.5 Form Profile
4.2 Pengujian Sistem
4.2.1 Pengujian Proses Kompresi
4.2.2 Pengujian Proses Dekompresi
4.3 Hasil Pengujian
53
53
53
54
55
56
57
58
58
62
68
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan
5.2 Saran
71
71
72
DAFTAR PUSTAKA
LAMPIRAN
Universitas Sumatera Utara
x
DAFTAR TABEL
Halaman
Punctured Elias Codes
Ternary Comma Code
Sebab Dan Akibat
Punctured Elias Codes
String Yang Belum Dikompresi
String Yang Telah Diurutkan Secara Descending Dan Table
Sorted Dan Telah Dikompresi Dengan Kode Punctured (P1)
Tabel 3.5
Ternary Comma Code
Tabel 3.6
String Yang Belum Dikompresi
Tabel 3.7
String Yang Telah Diurutkan Secara Descending Dan Table
Sorted Dan Telah Dikompresi Dengan Kode Ternary Comma
Code
Tabel 3.8
Tabel Hasil Bit String Setelah Dikompresi
Menggunakan Kode Punctured Elias Codes (P1)
Tabel 3.9
Dokumentasi Naratif Use Case Kompresi
Tabel 3.10 Dokumentasi Naratif Use Case Dekompresi
Tabel 4.1
Hasil Pengujian 1 String Homogen Dengan
Punctured Elias Codes
Tabel 4.2
Hasil Pengujian 2 String Homogen Dengan
Ternary Comma Code
Tabel 4.3
Hasil Pengujian 3 String Heterogen Dengan
Punctured Elias Codes
Tabel 4.4
Hasil Pengujian 4 String Heterogen Dengan
Ternary Comma Code
Tabel 2.1
Tabel 2.2
Tabel 3.1
Tabel 3.2
Tabel 3.3
Tabel 3.4
12
13
21
24
24
25
26
27
28
30
32
33
68
68
69
70
Universitas Sumatera Utara
xi
DAFTAR GAMBAR
Halaman
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
2.1
2.2
2.3
2.4
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
Gambar 3.10
Gambar 3.11
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
3.12
3.13
3.14
3.15
3.16
3.17
3.18
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
Kompresi dan Rekontruksi
Kompresi Lossless
Kompresi Lossy
Kompresi dan Dekompresi
Diagram Ishikawa
Daigram Use Case
Diagram Activity
Diagram Sequence Kompresi
Diagram Sequence Dekompresi
Diagram Class
Flowchart Punctured Elias Codes Secara Umum Pada Sistem
Flowchart Ternary Comma Code Secara Umum Pada Sistem
Flowchart Proses Kompresi Dengan Algoritma
Punctured Elias Codes
Flowchart Proses Kompresi Dengan Algoritma
Ternary Comma Code
Flowchart Dekompresi Algoritma PEC dan TCC Secara
Universal
Form Home
Menu Item Compression, Decompression dan Exit
Menu Item About Apliccation dan Profile
Form Compression
Form Decompression
Form About Application
Form Halaman Profile
Gambar Form Home
Gambar Form Compression
Gambar Form Decompression
Gambar Form About Application
Gambar Form Profile
Gambar Pemilihan Algoritma Kompresi
Gambar Open File Dialog
Gambar Save File Dialog
Gambar Path Pada Masing-Masing Teks Box
Gambar Hasil Proses Kompresi
Gambar File Hasil Proses Kompresi (*.pec)
Gambar Pemilihan Algoritma Dekompresi
Gambar Open File Dialog
Gambar Setelah File Berhasil Dipilih
Gambar Ketikan atau Copy-Paste String Asli
8
9
9
11
22
31
34
35
35
38
39
40
42
43
44
45
46
47
48
49
51
52
54
55
56
57
58
59
60
60
61
62
62
63
64
64
65
Universitas Sumatera Utara
xii
Gambar Save File Dialog
Gambar Path Pada Masing-Masing Teks Box
Gambar Hasil Proses Kompresi
Gambar Ukuran File Asli Sebelum Dikompresi
Gambar Ukuran File Asli Setelah Dikompresi
Gambar Ukuran File Setelah Didekompresi
Grafik Kedua Algoritma Menggunakan String Homogen
Dengan Ukuran File 30 kb
Gambar 4.14 Grafik Kedua Algoritma Menggunakan String Heterogen
Dengan Ukuran File 32 kb
Gambar 4.16
Gambar 4.17
Gambar 4.18
Gambar 4.19
Gambar 4.20
Gambar 4.21
Gambar 4.22
66
66
67
67
67
68
69
70
Universitas Sumatera Utara
PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE
PADA FILE .DOC
SKRIPSI
DESY H HUSNI
141421106
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI
PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE
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
2016
Universitas Sumatera Utara
ii
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
NIP. 197510082008011011
Dr. Syahril Efendi, S.Si, M.IT
NIP. 196711101996021001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991031001
Universitas Sumatera Utara
iii
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
Universitas Sumatera Utara
iv
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.
Universitas Sumatera Utara
v
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
Desy H Husni
Universitas Sumatera Utara
vi
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.
Universitas Sumatera Utara
vii
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.
Universitas Sumatera Utara
viii
DAFTAR ISI
Halaman
Persetujuan
Pernyataaan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
ii
iii
iv
vi
vii
viii
x
xi
BAB 1 PENDAHULUAN
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metodologi Penelitian
1.7 Sistematika Penulisan
1
1
2
2
3
3
3
4
BAB 2 TINJAUAN PUSTAKA
2.1 Kompresi
2.2.1 Teknik Kompresi Data
2.2.2 Parameter Analisis Kinerja Algoritma Kompresi
2.3 Dekompresi
2.4 Algoritma Punctured Elias Codes
2.5 Algoritma Ternary Comma Code
2.6 File Teks
2.7 Bahasa Pemrograman C#
2.8 UML (Unifed Modelling Language)
6
6
7
9
10
11
12
13
14
16
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
3.1.1 Analisis Masalah
3.1.2 Analisis Kebutuhan
3.1.3 Analisis Proses
3.1.3.1 Analisis Proses Kompresi Pada Algoritma
Punctured Elias Codes
20
20
20
22
23
23
Universitas Sumatera Utara
ix
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
4.1 Implementasi Sistem
4.1.1 Form Home
4.1.2 Form Compression
4.1.3 Form Decompression
4.1.4 Form About Application
4.1.5 Form Profile
4.2 Pengujian Sistem
4.2.1 Pengujian Proses Kompresi
4.2.2 Pengujian Proses Dekompresi
4.3 Hasil Pengujian
53
53
53
54
55
56
57
58
58
62
68
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan
5.2 Saran
71
71
72
DAFTAR PUSTAKA
LAMPIRAN
Universitas Sumatera Utara
x
DAFTAR TABEL
Halaman
Punctured Elias Codes
Ternary Comma Code
Sebab Dan Akibat
Punctured Elias Codes
String Yang Belum Dikompresi
String Yang Telah Diurutkan Secara Descending Dan Table
Sorted Dan Telah Dikompresi Dengan Kode Punctured (P1)
Tabel 3.5
Ternary Comma Code
Tabel 3.6
String Yang Belum Dikompresi
Tabel 3.7
String Yang Telah Diurutkan Secara Descending Dan Table
Sorted Dan Telah Dikompresi Dengan Kode Ternary Comma
Code
Tabel 3.8
Tabel Hasil Bit String Setelah Dikompresi
Menggunakan Kode Punctured Elias Codes (P1)
Tabel 3.9
Dokumentasi Naratif Use Case Kompresi
Tabel 3.10 Dokumentasi Naratif Use Case Dekompresi
Tabel 4.1
Hasil Pengujian 1 String Homogen Dengan
Punctured Elias Codes
Tabel 4.2
Hasil Pengujian 2 String Homogen Dengan
Ternary Comma Code
Tabel 4.3
Hasil Pengujian 3 String Heterogen Dengan
Punctured Elias Codes
Tabel 4.4
Hasil Pengujian 4 String Heterogen Dengan
Ternary Comma Code
Tabel 2.1
Tabel 2.2
Tabel 3.1
Tabel 3.2
Tabel 3.3
Tabel 3.4
12
13
21
24
24
25
26
27
28
30
32
33
68
68
69
70
Universitas Sumatera Utara
xi
DAFTAR GAMBAR
Halaman
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
2.1
2.2
2.3
2.4
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
Gambar 3.10
Gambar 3.11
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
3.12
3.13
3.14
3.15
3.16
3.17
3.18
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
Kompresi dan Rekontruksi
Kompresi Lossless
Kompresi Lossy
Kompresi dan Dekompresi
Diagram Ishikawa
Daigram Use Case
Diagram Activity
Diagram Sequence Kompresi
Diagram Sequence Dekompresi
Diagram Class
Flowchart Punctured Elias Codes Secara Umum Pada Sistem
Flowchart Ternary Comma Code Secara Umum Pada Sistem
Flowchart Proses Kompresi Dengan Algoritma
Punctured Elias Codes
Flowchart Proses Kompresi Dengan Algoritma
Ternary Comma Code
Flowchart Dekompresi Algoritma PEC dan TCC Secara
Universal
Form Home
Menu Item Compression, Decompression dan Exit
Menu Item About Apliccation dan Profile
Form Compression
Form Decompression
Form About Application
Form Halaman Profile
Gambar Form Home
Gambar Form Compression
Gambar Form Decompression
Gambar Form About Application
Gambar Form Profile
Gambar Pemilihan Algoritma Kompresi
Gambar Open File Dialog
Gambar Save File Dialog
Gambar Path Pada Masing-Masing Teks Box
Gambar Hasil Proses Kompresi
Gambar File Hasil Proses Kompresi (*.pec)
Gambar Pemilihan Algoritma Dekompresi
Gambar Open File Dialog
Gambar Setelah File Berhasil Dipilih
Gambar Ketikan atau Copy-Paste String Asli
8
9
9
11
22
31
34
35
35
38
39
40
42
43
44
45
46
47
48
49
51
52
54
55
56
57
58
59
60
60
61
62
62
63
64
64
65
Universitas Sumatera Utara
xii
Gambar Save File Dialog
Gambar Path Pada Masing-Masing Teks Box
Gambar Hasil Proses Kompresi
Gambar Ukuran File Asli Sebelum Dikompresi
Gambar Ukuran File Asli Setelah Dikompresi
Gambar Ukuran File Setelah Didekompresi
Grafik Kedua Algoritma Menggunakan String Homogen
Dengan Ukuran File 30 kb
Gambar 4.14 Grafik Kedua Algoritma Menggunakan String Heterogen
Dengan Ukuran File 32 kb
Gambar 4.16
Gambar 4.17
Gambar 4.18
Gambar 4.19
Gambar 4.20
Gambar 4.21
Gambar 4.22
66
66
67
67
67
68
69
70
Universitas Sumatera Utara