2.4. Alat Bantu Perancangan Perangkat Lunak
Alat bantu yang digunakan dalam perancangan perangkat lunak ini adalah sebagai berikut.
Flowcharting adalah suatu teknik untuk menyusun rencana program yang telah diperkenalkan dan telah dipergunakan oleh kalangan pemrogram komputer sebelum
algoritma menjadi populer. Flowchart adalah untaian simbol gambar chart yang menunjukkan aliran flow dari proses terhadap data Suarga, 2012.
Ada dua kategori simbol flowchart menurut Dr. Suarga 2012, yaitu program flowchart dan sistem flowchart, yakni:
1. Program flowchart, yaitu simbol-simbol flowchart yang digunakan untuk
menggambarkan logik dari pemrosesan terhadap data. Adapun simbol-simbol Program flowchart seperti pada Tabel 2.1 berikut.
Tabel 2.1. Simbol Program Flowchart No
Simbol Keterangan
1 Terminator, mulai atau selesai.
2 Proses, menyatakan proses terhadap data.
3 InputOutput, menerima atau menampilkan output
.
Universitas Sumatera Utara
4 SeleksiPilihan, memilih aliran berdasarkan syarat.
5 Predefined-Data, definisi awal dari variabel atau
data.
6 Predefined-Process,
lambang fungsi atau sub- program.
7 Connector, penghubung.
2. Sistem Flowchart, merupakan simbol-simbol peralatan sistem komputer yang
digunakan untuk menyatakan proses pengolahan data.
Tabel 2.2. Simbol Sistem Flowchart No
Simbol Keterangan
1 Manual input, Keyboard
2 File Storage
3 Display, Monitor
Universitas Sumatera Utara
4 Merge
5 Extract
6 Sorting
2.5. Algoritma
Beberapa definisi algoritma Suarga, 2012, adalah sebagai berikut. 1. Teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat
dengan jumlah kata terbatas tetapi tersusun secara logis dan sistematis. 2. Suatu prosedur yang jelas untuk menyelesaikan suatu persoalan dengan
menggunakan langkah-langkah tertentu dan terbatas jumlahnya. 3. Susunan langkah yang pasti, yang bila diikuti maka akan mentransformasi data
input menjadi output yang berupa informasi.
Berikut adalah penjelasan algoritma yang digunakan pada penelitian kompresi file, yaitu.
2.5.1. Algoritma Huffman Algoritma Huffman adalah salah satu algoritma kompresi tertua yang disusun oleh
David Huffman pada tahun 1952. Algoritma tersebut digunakan untuk membuat kompresi jenis lossless compression, yaitu pemampatan data dimana tidak satu byte
Universitas Sumatera Utara
pun hilang sehingga data tersebut utuh dan disimpan sesuai dengan aslinya. Pada dasarnya, algoritma Huffman ini bekerja seperti mesin sandi morse, dia membentuk
suatu kode dari suatu karakter. Sehingga karakter tersebut memiliki rangkaian bit yang lebih pendek dibandingkan sebelumnya Rajagukguk, 2014.
Pada awalnya David Huffman hanya meng-encoding karakter dengan hanya menggunakan pohon biner biasa, namun setelah itu David Huffman menemukan
bahwa penggunaan algoritma greedy dapat membentuk kode prefiks yang optimal. Penggunaan algoritma greedy pada algoritma Huffman adalah pada saat pemilihan dua
pohon dengan frekuensi terkecil dalam membuat pohon Huffman. Algoritma greedy ini digunakan pada pembentukan pohon Huffman agar meminimumkan total cost yang
dibutuhkan. Cost yang digunakan untuk menggabungkan dua buah pohon pada akar setara dengan jumlah frekuensi dua buah pohon yang digabungkan, oleh karena itu
total cost pembentukan pohon Huffman adalah jumlah total seluruh penggabungan. penggabungan dua buah pohon dilakukan setiap langkah dan algoritma Huffman
selalu memilih dua buah pohon yang mempunyai frekuensi terkecil untuk meminimumkan total cost Wardoyo, Irwan et al, 2003.
Adapun tahapan dari algoritma Huffman adalah yang pertama membuat sebuah pohon berupa simpul daun dan anak-anaknya yang memiliki probabilitas dari
seringnya munculnya karakter. Proses kedua adalah proses encoding, dari pohon tersebut, tiap karakternya akan memiliki identitas berupa bilangan biner untuk
disimpan pada memori. Proses pembentukan dari karakter menjadi biner inilah yang disebut dengan proses encoding. Untuk lebih jelasnya bagaimana encoding itu akan
diperjelas ketika pohon telah dibuat. Proses ketiga yaitu proses decoding adalah proses kebalikan dari encoding, yaitu mengembalikan dari angaka-angka biner yang pendek
diubah lagi menjadi karakter yang panjang lagi dan tanpa ada kehilangan data dari data asli.
Universitas Sumatera Utara
2.5.2. Algoritma RLE Run Length Encoding Teknik run length ini bekerja berdasarkan sederetan karakter yang berurutan. Run
Length Encoding adalah suatu algoritma kompresi data yang bersifat lossless. Algoritma ini mungkin merupakan algoritma yang mudah untuk dipahami dan
diterapkan untuk kompresi. Metode kompresi ini sangat sederhana, yaitu hanya memindahkan pengulangan byte yang sama berturut-turut secara terus-menerus
Rahandi, 2009.
2.6. Rasio Kompresi