BAB 2 TINJAUAN PUSTAKA

dokumen-dokumen yang mirip
BAB 2 TINJAUAN PUSTAKA

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

Unified Modelling Language UML

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

UNIFIED MODELING LANGUAGE

BAB 2 TINJAUAN PUSTAKA

PRAKTIKUM REKAYASA PERANGKAT LUNAK MODUL KE - 2 PENGENALAN UML dengan RATIONAL ROSE OLEH: ANISA ISTIQOMAH (KELAS 5 B)

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA

1. PENDAHULUAN 1.1. Latar Belakang Masalah

BAB II DASAR TEORI. 2.1 Pendahuluan

Gambar Use Case Diagram

BAB 1 PENDAHULUAN Latar Belakang

BAB II LANDASAN TEORI

Bagian 7 ANALISIS DESAIN PADA PEMROGRAMAN BERORIENTASI OBJECT DENGAN UML

BAB 2 LANDASAN TEORI

Perancangan Sistem Informasi Penjualan dan Inventori pada PT. Oriental Chitra International

BAB I PENDAHULUAN. Dalam bidang teknologi informasi, komunikasi data sangat sering

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB III ANALISIS DAN PERANCANGAN

BAB III OBJEK DAN METODE PENELITIAN. peneliti untuk di pelajari dan kemudian ditarik kesimpulannya. tertentu dan kemudian dapat ditarik kesimpulan.

Oleh : RAHMADY LIYANTANTO

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

SKRIPSI KOMPRESI DATA TEKS MENGGUNAKAN ALGORITMA PPM (PREDICTION BY PARTIAL MATCHING)

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

MEMAHAMI PENGGUNAAN UML

BAB III METODOLOGI PENELITIAN

BAB I PENDAHULUAN I-1

BAB 2 TINJAUAN PUSTAKA

IMPLEMENTASI KOMPRESI DATA TEXT MENGGUNAKAN HUFFMAN CODING

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

MULTIMEDIA system. Roni Andarsyah, ST., M.Kom Lecture Series

PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SHANNON-FANO PADA PROSES KOMPRESI BERBAGAI TIPE FILE. Irwan Munandar


STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

BAB II LANDASAN TEORI

KOMPRESI FILE MENGGUNAKAN ALGORITMA HUFFMAN KANONIK

BAB II LANDASAN TEORI

Yuli Purwati, M.Kom USE CASE DIAGRAM

1. SIMULA di perkenalkan pertama kali pada tahun.. a d b e c. 1970

BAB II LANDASAN TEORI

BAB III ANALISA DAN DESAIN SISTEM. Analisa masalah yang didapat dari penelitian ini adalah membuat data

PERBANDINGAN KINERJA ALGORITMA FIXED LENGTH BINARY ENCODING (FLBE) DENGAN VARIABLE LENGTH BINARY ENCODING (VLBE) DALAM KOMPRESI TEXT FILE SKRIPSI

Notasi Unified Modeling Language (UML) Versi 2.0

CLASS DIAGRAM. Jerri Agus W ( ) Gendra Budiarti ( )

BAB II TINJAUAN PUSTAKA. untuk berfungsi sebagai suatu kesatuan dalam usaha mencapai suatu tujuan yang

Tugas Mandiri Analisis dan Perancangan Sistem II ACTIVITY & SWIMLANE DIAGRAM

BAB II TINJAUAN PUSTAKA

LEMBARAN SOAL ULANGAN KENAIKAN KELAS Tahun 2014/ Komunikasi Paket Keahlian

KOMPRESI TEKS MENGGUNAKAN ALGORITMA DAN POHON HUFFMAN. Nama : Irfan Hanif NIM :

DAFTAR SIMBOL 1. CLASS DIAGRAM. Nama Komponen Class

BAB III ANALISIS DAN PERANCANGAN

PERANCANGAN SISTEM PENGAMANAN DAN KOMPRESI DATA TEKS DENGAN FIBONACCI ENCODING DAN ALGORITMA SHANNON-FANO SERTA ALGORITMA DEFLATE SKRIPSI

BAB 2 TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Unified Modelling Language (UML)

BAB I PENDAHULUAN. oleh Allah swt di dalam Al Qur annya pada Surah At-Tin Ayat 4, yaitu: bentuk yang sebaik-baiknya. (QS. At-Tin:4).

BAB II LANDASAN TEORI

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

Algoritma Huffman dan Kompresi Data

SOAL PRA UTS PSBO. 1.SIMULA di perkenalkan pertama kali pada tahun.. a d b e c. 1970


Bab 3. Metode dan Perancangan Sistem

Kompresi. Definisi Kompresi

BAB 2 LANDASAN TEORI

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA SHANNON- FANO UNTUK KOMPRESI FILE TEXT

BAB III METODE KOMPRESI HUFFMAN DAN DYNAMIC MARKOV COMPRESSION. Kompresi ialah proses pengubahan sekumpulan data menjadi suatu bentuk kode

DAFTAR SIMBOL. Tabel Notasi Use Case Diagram

TEKNIK KOMPRESI LOSSLESS TEXT

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

BAB 2 LANDASAN TEORI

SEJARAH UML DAN JENISNYA

1. SIMULA di perkenalkan pertama kali pada tahun.. a d b e c Hal penting dalampengembangan berorientasi objek

Bab 3 Metode dan Perancangan Sistem

Penggunaan Pohon Huffman Sebagai Sarana Kompresi Lossless Data

BAB 2 LANDASAN TEORI

KOMPRESI FILE.TXT DENGAN ALGORITMA HUFFMAN PADA FILE DENGAN MENGGUNAKAN PENGKODEAN BASE-64 SKRIPSI. Oleh : LINGGA ADI FIRMANTO ( )

BAB II TINJAUAN PUSTAKA

BAB III ANALISA DAN DESAIN SISTEM

BAB II TINJAUAN PUSTAKA

BAB IV ANALISA DAN PERANCANGAN SISTEM Analisis Sistem yang Sedang Berjalan. Untuk merancang sebuah aplikasi mobile pelajaran Kimia dasar untuk

BAB II TINJAUAN PUSTAKA. memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

Transkripsi:

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 Algorithm, Mu-Law Algorithm, Fractal Compression, dan lain-lain. Ketika proses 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)

6 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 nonterminaldi sebelah kanan. Simbol nonterminal di sebelah kiri menjadi nama dari string yang di sebelah kanan. (Salomon & Motta, 2010)

7 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.

8 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 C ) (Salomon & Motta, 2010) Ratio of Compression (R C ) adalah nilai perbandingan antara ukuran bit data sebelum dikompresi dengan ukuran bit data yang telah dikompresi. Secara matematis dapat dituliskan sebagai berikut: R C = ukuran bit data sebelum dikompresi ukuran bit data setelah dikompresi 2. Compression Ratio (C R ) (Salomon & Motta, 2010) Compression Ratio (C R ) adalah persentase perbandingan antara data yang sudah dikompresi dengan data yang belum dikompresi. Secara matematis dapat dituliskan sebagai berikut: C R = ukuran bit data setelah dikompresi ukuran bit data sebelum dikompresi 100%

9 3. Space Savings (S S ) Space Savings (S S ) adalah persentase selisih antara data yang belum dikompresi dengan besar data yang dikompresi. S S = 1 C R 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 adalah ukuran datanya yang kecil karena tiadanya fitur untuk memformat tampilan

10 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)

11 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 pekerjaanpekerjaan 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)

12 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 lainlain. Dalam Class diagram terdapat tiga area pokok, yaitu Nama (dan stereotype), Atribut, dan Metoda (Yasin, 2012)