BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data - Analisis Perbandingan Kinerja Algoritma Fixed Length Binary Encoding (Flbe) Dengan Algoritma Sequitur Dalam Kompresi File Teks

BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data Kompresi data adalah proses mengubah sebuah aliran data input menjadi aliran data

  baru yang memiliki ukuran lebih kecil. Aliran yang dimaksud adalah berupa file ataupun buffer dalam memori. Kebutuhan terhadap kompresi data dipengaruhi oleh dua alasan, yaitu kecenderungan manusia untuk mengumpulkan data dan kebutuhan terhadap proses transfer data yang cepat. Karena itu metode-metode untuk mengkompresi data semakin berkembang. (Salomon, 2004)

  Terdapat banyak metode untuk kompresi data. Metode-metode tersebut lahir dari ide yang berbeda-beda, cocok untuk berbagai tipe data, dan menghasilkan output yang berbeda-beda. Namun, prinsip dasar yang menjadi dasar tiap metode adalah sama, yaitu mengkompresi data dengan menghilangkan redundancy dari data asli. (Salomon, 2004)

  Lossy dan Lossless Compression adalah pengelompokan metode kompresi

  berdasarkan keutuhan data. Lossy Compression menghilangkan beberapa data untuk memperoleh kompresi yang lebih baik, seperti Linear Predictive Coding, A-Law dan lain-lain. Ketika proses

  Algorithm, Mu-Law Algorithm, Fractal Compression, dekompresi dilakukan, maka output yang dihasilkan tidak sama dengan data aslinya.

  Metode kompresi ini lebih efektif untuk mengkompresi data gambar, video, atau audio. Sedangkan Lossless Compression tidak menghilangkan data sama sekali, sehingga cocok untuk mengkompresi data berupa teks. Yang termasuk Lossless Compression adalah Burrows-Wheeler, DEFLATE, LZW, FLBE, VLBE, Huffman,

  PPM, Shanon-Fano, Sequitur, dan lain-lain. (Salomon, 2004)

  2.2. Fixed Length Binary Encoding (FLBE)

  Secara matematis kode disebut juga pemetaan. Sebuah kode memetakan symbol tunggal maupun string dari symbol menjadi sebuah codeword (bitstring). Proses ini disebut juga encoding dan proses sebaliknya disebut decoding. (Salomon, 2007)

  Kode dapat mengandung fixed maupun variable length, dan dapat bersifat statis maupun dinamis. Kode statis merupakan kode yang tidak dapat berubah-ubah, seperti ASCII dan Unicode. Sementara kode dinamis bervariasi dari waktu ke waktu, semakin banyak data yang dibaca dan diproses, maka semakin banyak pula probabilitas yang didapatkan dari sebuah symbol. Algoritma Huffman merupakan contoh dari kode tersebut. (Salomon, 2007)

  Algoritma FLBE dikenal juga sebagai kode-kode blok. Kemudahan dalam mengubah simbol yang asli ke dalam bentuk fixed-length code menjadikan algoritma ini mudah untuk diimplementasikan ke dalam software. Kemudahan tersebut berbanding lurus dengan proses mengubah kembali fixed-length code menjadi simbol aslinya. (Salomon, 2007)

  FLBE akan mengambil karakter yang terdapat dalam string yang ingin

  dikompresi, kemudian menghitung frekuensi (jumlah kemunculan karakter pada

  

string ). FLBE mengubah bit karakter menjadi fixed-length code sehingga

  menghasilkan String Bit yang baru. String Bit inilah yang merupakan hasil kompresi dari algoritma FLBE.

  2.3. Sequitur

  Algoritma Sequitur merupakan algoritma yang berdasarkan pada konsep tata bahasa bebas konteks (context-free grammar). Pada algoritma ini dikenal simbol nonterminal dan simbol terminal. Kedua jenis simbol tersebut merupakan unsur dari production

  

rules (aturan-aturan yang digunakan untuk membangun sebuah kalimat). Sebuah

  simbol nonterminal diletakkan di sebelah kiri dan sebuah string simbol terminal dan

  

nonterminal di sebelah kanan. Simbol nonterminal di sebelah kiri menjadi nama dari

  string yang di sebelah kanan. (Salomon & Motta, 2010)

  Algoritma Sequitur membangun tata bahasanya dengan menggunakan 2 prinsip, yaitu :

  1. Digram Uniqueness, tidak ada pasangan simbol yang berdekatan yang muncul lebih dari satu.

  2. Semua aturan harus digunakan lebih dari satu kali dan aturan yang hanya digunakan sekali harus diabaikan atau ditiadakan.

  Kedua aturan ini dapat dilihat pada gambar 2.2, di mana terdapat 3 contoh string yang dikompresi menggunakan metode Sequitur. Input S sebelah kiri dari gambar 2.2 bagian (a) sudah merupakan sebuah tata bahasa yang mengandung frase bc yang berulang sehingga frase bc dijadikan sebagai production rule. Frase bc kemudian diubah menjadi simbol nonterminal A. Perubahan tersebut menghasilkan dua aturan

  

grammar , di mana aturan pertama merupakan input yang redundancy-nya dihilangkan

dan aturan kedua merupakan simbol A yang menggantikan digram bc.

  Pada gambar 2.2 bagian (b) input S sebelah kiri mengandung redundancy abcdbc yang kemudian diubah ke dalam simbol nonterminal A. Simbol nonterminal A mengandung redundancy bc yang juga diubah ke dalam simbol nonterminal B.

Gambar 2.2 bagian (c) menunjukkan bagaimana prinsip kedua dari algoritma Sequitur.

  Karena simbol nonterminal B yang mengandung simbol aA hanya muncul satu kali, maka simbol tersebuh diabaikan. Demikian pula dengan simbol C yang mengandung BdA yang juga hanya muncul sekali. Sehingga mengubah simbol abcdbc menjadi simbol nonterminal A adalah lebih optimal.

  

Gambar 2.2: tiga urutan contoh input dan grammar (Salomon, 2004)

2.4. Parameter Analisis Kompresi

  Pada suatu teknik yang digunakan dalam proses kompresi data terdapat beberapa faktor atau variabel yang biasa digunakan untuk menganalisa kualitas dari suatu teknik kompresi data tersebut, yaitu :

  1. Ratio of Compression (R ) (Salomon & Motta, 2010)

  C Ratio of Compression (R ) adalah nilai perbandingan antara ukuran bit data

  C

  sebelum dikompresi dengan ukuran bit data yang telah dikompresi. Secara matematis dapat dituliskan sebagai berikut:

  =

  2. Compression Ratio (C ) (Salomon & Motta, 2010)

  R Compression Ratio (C ) adalah persentase perbandingan antara data yang

  R

  sudah dikompresi dengan data yang belum dikompresi. Secara matematis dapat dituliskan sebagai berikut:

  = × %

  3. Space Savings (S )

  S Space Savings (S ) adalah persentase selisih antara data yang belum dikompresi S dengan besar data yang dikompresi.

  = −

  4. Waktu kompresi dan dekompresi Waktu kompresi dan dekompresi adalah waktu yang dibutuhkan untuk melakukan proses kompresi dan dekompresi. Semakin kecil waktu yang diperoleh maka semakin efisien metode yang digunakan dalam proses kompresi dan dekompresi itu.

2.5. File Text Teks adalah kumpulan dari karakter – karakter atau string yang menjadi satu kesatuan.

  Teks yang memuat banyak karakter didalamnya selalu menimbulkan masalah pada media penyimpanan dan kecepatan waktu pada saat transmisi data. File teks merupakan file yang berisi informasi-informasi dalam bentuk teks. Data yang berasal dari dokumen pengolah kata, angka yang digunakan dalam perhitungan, nama dan alamat dalam basis data merupakan contoh masukan data Dteks yang terdiri dari karakter, angka dan tanda baca. (Pramilo, 2008)

  Format file teks yang akan digunakan dalam penelitian ini adalah format data teks (*.txt) dan format data dokumen (*.doc).

  1. Format data teks Format data teks merupakan format teks yang digunakan untuk menyimpan huruf, angka, karakter, kontrol (tabulasi, pindah baris, dan sebagainya) atau simbol-simbol lain yang biasa digunakan dalam tulisan seperti titik, koma, tanda petik, dan sebagainya. Satu huruf, angka, karakter, kontrol atau simbol pada arsip teks memakan tempat satu byte. Berbeda dengan jenis teks terformat yang satu huruf saja dapat memakan tempat beberapa byte untuk menyimpan format dari huruf tersebut seperti font, ukuran, tebal atau tidak dan sebagainya. Kelebihan dari format data teks ini teks. Saat ini perangkat lunak yang paling banyak digunakan untuk memanipulasi format data ini adalah Notepad. (Pramilo, 2008)

  2. Format data dokumen Doc merupakan ekstensi arsip dokumen perangkat lunak Microsoft Word yang paling banyak digunakan dalam penulisan laporan, makalah dan sebagainya. Doc merupakan jenis teks terformat yang tidak hanya dapat mengatur tampilan teks seperti styles (font, ukuran huruf dan sebagainya), namun juga dapat menyisipkan gambar.

  Kekurangan format teks dokumen ini terletak pada ukuran datanya yang besar. (Pramilo, 2008) 2.6.

   Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah sebuah “bahasa” yang telah menjadi

  standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. (Yasin, 2012) Semua jenis aplikasi piranti lunak dapat dimodelkan menggunakan UML.

  Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka UML lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi procedural dalam VB atau C. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch

  

OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique),

  dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). (Yasin, 2012)

  UML masih terus dikembangkan hingga saat ini. UML 2.5 merupakan versi terbaru yang dikeluarkan pada bulan Oktober 2012. Dalam penelitian ini penulis akan menggunakan 4 jenis UML, diantaranya: 1.

   Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari

  sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana. Use case memiliki unsur aktor, sistem, use case,

  association , generalization. Aktor merupakan sebuah entitas manusia atau

  mesing yang berinteraksi dengan sistem untuk melakukan pekerjaan- pekerjaan tertentu.(Yasin, 2012)

  2. Activity Diagram Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang

  sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Berbeda dengan use

  case , activity menggambarkan proses yang berjalan. Unsur yang terdapat

  pada activity adalah initial node (lingkaran hitam), aktivitas (segiempat dengan sudut membulat), decision (belah ketupat), fork dan join (titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal), activity

  

final (lingkaran hitam di dalam lingkaran kosong). (Yasin, 2012)

3. Sequence Diagram Sequence diagram menggambarkan interaksi antarobjek di dalam dan di

  sekitar sistem berupa message yang digambarkan terhadap waktu.

  Sequence diagram terdiri dari dimensi vertikal (waktu) dan dimensi

  horizontal (objek-objek yang terkait). Sequence diagram digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Unsur yang terdapat dalam sequence adalah aktor, lifeline vertikal,

  message , specification execution. (Yasin, 2012)

  4. Class Diagram Class diagram adalah sebuah spesifikasi yang jika diinstansiasi akan

  menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/property) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain- lain. Dalam Class diagram terdapat tiga area pokok, yaitu Nama (dan

  stereotype ), Atribut, dan Metoda (Yasin, 2012)

Dokumen yang terkait

BAB II PENGELOLAAN KASUS A. Konsep Dasar Keperawatan Dengan Masalah Kebutuhan Nutrisi 1. Konsep Dasar 1.1. Nutrisi 1.1.1. Definisi nutrisi - Asuhan Keperawatan pada An. R dengan Prioritas Masalah Gangguan Nutrisi Kurang dari Kebutuhan Tubuh di Perumahan V

0 0 56

Analisis Perbedaan Abnormal Return dan Trading Volume Activity (TVA) Saham Sebelum dan Sesudah Stock Split (Studi Kasus pada Perusahaan Go Public di BEI yang Melakukan Stock Split Tahun 2009-2013)

0 0 34

BAB II TINJAUAN PUSTAKA 2.1 Uraian Teoritis 2.1.1 Pasar Modal - Analisis Perbedaan Abnormal Return dan Trading Volume Activity (TVA) Saham Sebelum dan Sesudah Stock Split (Studi Kasus pada Perusahaan Go Public di BEI yang Melakukan Stock Split Tahun 2009-

0 0 20

BAB I PENDAHULUAN 1.1 Latar Belakang - Analisis Perbedaan Abnormal Return dan Trading Volume Activity (TVA) Saham Sebelum dan Sesudah Stock Split (Studi Kasus pada Perusahaan Go Public di BEI yang Melakukan Stock Split Tahun 2009-2013)

0 1 10

Analisis Perbedaan Abnormal Return dan Trading Volume Activity (TVA) Saham Sebelum dan Sesudah Stock Split (Studi Kasus pada Perusahaan Go Public di BEI yang Melakukan Stock Split Tahun 2009-2013)

0 0 11

Lampiran 1 Data Variabel Penelitian (Earning Per Share) dalam Rupiah No Kode Perusahaan Tahun 2010 2011 2012

0 0 19

BAB II TINJAUAN PUSTAKA 2.1 Tinjauan Teoritis 2.1.1 Pasar Modal - Analisis Pengaruh EPS, PER dan M/B terhadap Return Saham pada Perusahaan Properti dan Real Estate yang Terdaftar di Bursa Efek Indonesia

0 0 25

Analisis Pengaruh EPS, PER dan M/B terhadap Return Saham pada Perusahaan Properti dan Real Estate yang Terdaftar di Bursa Efek Indonesia

0 0 12

BAB II TINJAUAN PUSTAKA 2.1 Landasan Teori 2.1.1 Pasar Modal - Pengaruh Umur Perusahaan, Persentase Penawaran Saham dan Ukuran Perusahaan Terhadap Tingkat Underpricing saat Penawaran Umum Perdana (Studi Kasus Perusahaan Yang Terdaftar di BEI Tahun 2010-20

0 0 18

Analisis Perbandingan Kinerja Algoritma Fixed Length Binary Encoding (Flbe) Dengan Algoritma Sequitur Dalam Kompresi File Teks

0 1 28