• Tidak ada hasil yang ditemukan

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.3. Perancangan Sistem Secara Umum

Tahap perancangan sistem merupakan tahap di mana sistem akan dirancang atau didesain sesuai dengan hasil analisis sistem.

3.3.1. Bagan Alir Sistem (Flowchart)

Gambar 3.11.Gambar flowchart secara umum menggunakan algoritma Inverted Elias Gamma

Gambar 3.12. Gambar Flowchart Sistem Secara Umum Menggunaka Algoritma Capocelli

Gambar 3.13. Gambar Flowchart Sistem Secara Umum Pada Aplikasi yang Akan Dirancang

3.3.2. Perancangan Antar Muka Sistem

Perancangan antarmuka sistem merupakan pembuatan GUI (Graphic User Interface) pada sistem guna untuk memberikan kemudahan kepada user dalam menggunakan sistem tersebut.

1. Form Untuk Halaman Utama

Gambar 3.14. Gambar Form Home

Keterangan :

1. Judul dari aplikasi yang telah di rancang.

2. Merupakan MenuStrip1 sebagai menu untuk form utama.

3. Merupakan MenuStrip2 sebagai menu untuk form proses kompresi. 4. Merupakan MenuStrip3 sebagai menu untuk form proses dekompresi 5. Merupakan MenuStrip4 sebagai menu untuk form informasi dari penulis. 6. Merupakan Panel1 untuk tampilan di form Home.

7. Merupakan Label1 untuk menampilkan informasi ataupun tampilan tulisan lainnya.

2. Form Untuk Halaman Compression

Gambar 3.15. Gambar Form Compression

Keterangan:

1. Judul dari aplikasi yang telah di rancang.

2. Merupakan MenuStrip1 sebagai menu untuk form utama.

3. Merupakan MenuStrip2 sebagai menu untuk form proses kompresi. 4. Merupakan MenuStrip3 sebagai menu untuk form proses dekompresi 5. Merupakan MenuStrip4 sebagai menu untuk form informasi dari penulis. 6. Merupakan Panel1 untuk menu pilih file.

7. Merupakan TextBox1 untuk menampilkan alamat file yang dipilih untuk dikompresi.

8. Merupakan TextBox2 untuk menampilkan direktori yang dituju untuk menyimpan file hasil kompresi.

9. Merupakan Button1 untuk proses pilih file yang akan dikompresi. 10. Merupakan Button2 untuk proses simpan file yang telah dikompresi. 11. Merupakan Button3 untuk proses kompresi.

12. Merupakan Button4 untuk proses hapus tampilan sebelumnya.

13. Merupakan Panel2 untuk kumpulan hasil algoritma Inverted Elias Gamma. 14. Merupakan Label1 untuk tulisan kompresi Inverted Elias Gamma.

15. Merupakan Panel3 untuk hasil dari RC,CR,SS,Waktu dari algoritma Inverted Elias Gamma.

16. Merupakan Label2 untuk tulisan algoritma Capocelli.

17. Merupakan Panel4 untuk kumpulan hasil algoritma Capocelli,

18. Merupakan Panel5 untuk hasil dari RC,CR,SS,Waktu dari algoritma Capocelli.

3. Form Untuk Halaman Decompression

Keterangan :

1. Judul dari aplikasi yang telah di rancang.

2. Merupakan MenuStrip1 sebagai menu untuk form utama.

3. Merupakan MenuStrip2 sebagai menu untuk form proses kompresi. 4. Merupakan MenuStrip3 sebagai menu untuk form proses dekompresi 5. Merupakan MenuStrip4 sebagai menu untuk form informasi dari penulis. 6. Merupakan Panel1 untuk menu pilih file.

7. Merupakan TextBox1 untuk menampilkan alamat file yang dipilih untuk didekompresi.

8. Merupakan TextBox2 untuk menampilkan direktori yang dituju untuk menyimpan file hasil dekompresi.

9. Merupakan Button1 untuk proses pilih file yang akan didekompresi. 10. Merupakan Button2 untuk proses simpan file yang telah didekompresi. 11. Merupakan Button3 untuk proses dekompresi.

12. Merupakan Button4 untuk proses hapus tampilan sebelumnya. 13. Merupakan Label1 untuk tampilan tulisan “Hasil”.

14. Merupakan Panel2 untuk hasil perhitungan waktu dekompresi. 15. Merupakan Label2 untuk tampilan tulisan “Waktu Dekompresi”.

4. Form Untuk Halaman About Me

Gambar 3.17. Gambar Form Halaman About Me

Keterangan :

1. Judul dari aplikasi yang telah di rancang.

2. Merupakan MenuStrip1 sebagai menu untuk form utama.

3. Merupakan MenuStrip2 sebagai menu untuk form proses kompresi. 4. Merupakan MenuStrip3 sebagai menu untuk form proses dekompresi 5. Merupakan MenuStrip4 sebagai menu untuk form informasi dari penulis. 6. Merupakan Panel1 untuk tampilan informasi.

7. Merupakan Label1 untuk Judul skripsi penulis.

8. Merupakan Label2 untuk sambungan judul skripsi penulis. 9. Merupakan Label3 untuk sambungan judul skripsi penulis.

10. Merupakan Label4 untuk tampilan nama penulis. 11. Merupakan Label5 untuk tampilan nim penulis skripsi. 12. Merupakan PictureBox1 untuk tampilan lambang usu. 13. Merupakan Label6 untuk tampilan program studi. 14. Merupakan Label7 untuk tampilan fakultas. 15. Merupakan Label8 untuk tampilan Universitas.

16. Merupakan Label9 untuk tampilan kota keberadaan penulis. 17. Merupakan Label10 untuk tampilan tahun skripsi.

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1. Implementasi Sistem

Sistem yang telah dirancang terdiri dari 5 form dalam bahasa C# dan 1 menu keluar, di antaranya yaitu Form Home untuk, Form Compress, Form Decompress, Form Help, Form About.

4.1.1. Form Home

Form Home pada aplikasi dapat dilihat pada gambar 4.1.

4.1.2. Form Compression

Form compression dapat dilihat pada gambar 4.2.

Gambar 4.2. Gambar Tampilan Form Compression

4.1.3. Form Decompression

Form decompression dapat dilihat pada gambar 4.3.

4.2. Pengujian Sistem

4.2.1.Pengujian Proses Kompresi

Gambar 4.4. Gambar Tampilan Open Dialog File

Tahap selanjutnya adalah melakukan kompresi dengan menekan tombol Compress. Hasil parameter dari proses kompresi akan muncul seperti pada gambar 4.10.

Gambar 4.6. Gambar Tampilan Hasil Parameter Pada Proses Kompresi Pada Menit Pertama

Gambar 4.7. Gambar Tampilan Hasil Parameter Pada Proses Kompresi Pada Menit Berikutnya

4.2.2.Pengujian Proses Dekompresi

Gambar 4.8. Gambar Tampilan Proses Decompression

4.3. Hasil Pengujian

Pengujian file dari proses kompresi dan dekompresi string dengan dua jenis string yaitu string yang terdiri dari karakter yang sama “AAAAA”dan string yang terdiri dari berbagai macam karakter “ABABAAB”. Pengujian dilakukan terhadap 5 file dengan string “AAAA” berekstensi *.txt dan 5 file dengan string “ABABAB” yang berekstensi *.doc yang ukuran filenya berbeda. yang ukuran filenya berbeda. Kemudian terhadap 5 file dengan string “AAAAA” yang berekstensi *.txt dengan ukuran file berbeda dan 5 file dengan string “ABABAB” yang berekstensi *.doc yang ukuran filenya juga berbeda.

Tabel 4.1. Pengujian String “AAAAAA” (*.txt) Dengan Inverted Elias Gamma

No. Uk. File *.txt (kb) Compress bits Cr Ss (%) Uncompress bit 1. 1kb 64 3,25 69,2307692307692 208 2. 2kb 2184 0,09523809523 -950 208 3. 4kb 5064 0,04107424960 -2334,615384615 208

Tabel 4.2. Pengujian String “AAAAAA” (*.txt) Dengan Capocelli

No. Uk. File *.doc (kb) Compress bits Cr Ss (%) Uncompress bits 1. 1kb 168 1,76190476190476 43,2432432432432432 296 2. 2kb 8264 1,98160696999032 49,5359062042013 16376 3. 4kb 17168 1,94734398561976 48,648001914336 33432

Tabel 4.3. Pengujian String “ABABAB” (*.txt) Dengan Inverted Elias Gamma

No. Uk. File *.doc (kb) Compress bits Cr Ss (%) Uncompress bits 1. 13kb 840 0,27619047619047 -262,068965517241 232 2. 14kb 63592 0,00364825764247 -27310,3448275862 232 3. 15kb 130152 0,0017825311942 -5600 232

Tabel 4.4. Pengujian String “ABABAB” (*.doc) Dengan Capocelli

No. Uk. File *.doc (kb) Compress bits Cr Ss (%) Uncompress bits 1. 13kb 1016 1,32283464566929 24,4047619047619 1344 2. 14kb 13288 1,35744202676474 26,332028,982541 106304 3. 15kb 157704 1,34246436361792 25,5101269649335 211712

Dari Tabel 4.1, Tabel 4.2, Tabel 4.3, Tabel 4.4, dapat dibuat grafik perbandingan hasil pengujian string berdasarkan variable Rc, Cr, Ss, waktu kompresi, dan waktu dekompresi seperti pada gambar 4.21, gambar 4.22, gambar 4.23, gambar 4.24, dan gambar 4.25.

Gambar 4.10. Grafik Hasil Parameter Homogen dan Heterogen *.txt Inverted Elias Gamma Capocelli Uncompress bits 0 194,734,398,561,976 Ss 208 33432 Cr -2,334,615,384,615 48,648,001,914,336 Compress bits 5064 17168 -5E+13 0 5E+13 1E+14 1.5E+14 2E+14 2.5E+14 Uncompress bits Ss Cr Compress bits

Gambar 4. 11. Grafik Hasil Parameter Homogen dan Heterogen *.doc Inverted Elias Gamma Capocelli Compress bits 130152 157704 Uncompress bits 0 134,246,436,361,792 Cr -5600 255,101,269,649,335 Ss 232 211712 -5E+13 0 5E+13 1E+14 1.5E+14 2E+14 2.5E+14 3E+14 Compress bits Uncompress bits Cr Ss

BAB 5

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Kesimpulan yang dapat diambil dari penelitian ini adalah:

1. Aplikasi yang dirancang telah mampu melakukan kompresi dan dekompresi string dengan menggunakan algoritma Inverted Elias Gamma dan Capocelli. 2. Berdasarkan pengujian yang dilakukan dengan menggunakan String yang tidak

mengandung perulangan frase, diperoleh kesimpulan yang menunjukkan bahwa algoritma Inverted Elias Gamma lebih unggul dibandingkan algoritma Capocelli dalam melakukan proses kompresi.

3. Dalam proses dekompresi, algoritma Capocelli membutuhkan real running time yang lebih sedikit dibandingkan algoritma Invertde Elias Gamma.

5.2. Saran

Saran yang dapat diberikan Penulis untuk pengembangan dan perbaikan sistem lebih lanjut adalah:

1. Aplikasi yang di rancang diharapkan dapat mengkompresi jenis file teks lainnya seperti *.rtf dan *.pdf

2. Aplikasi yang dirancang diharapkan dapat mendeteksi apakah file tersebut mengandung frase yang berulang atau tidak.

3. Agar dapat mengkompresi komponen lain yang terdapat pada file document seperti gambar, grafik, tabel, dan lainnya.

BAB 2

TINJAUAN PUSTAKA

Pada bab ini penulis memaparkan teori-teori ilmiah yang didapat dari metode pencarian fakta yang digunakan untuk mendukung penulisan skripsi ini dan sebagai dasar pengembangan sistem sehingga dapat diimplementasikan dengan baik dan benar.

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

Sering terjadi mispersepsi mengenai data dan informasi, padahal data dan informasi adalah dua hal yang berbeda. Pada data terkandung suatu informasi. Namun tidak semua bagian data terkait dengan informasi tersebut atau pada suatu data terdapat bagian-bagian data yang berulang untuk mewakili informasi yang sama. Bagian data yang tidak terkait atau bagian data yang berulang tersebut disebut dengan data yang berlebihan (redudancy data). Tujuan daripada kompresi data tidak lain adalah untuk mengurangi data berlebihan tersebut sehingga ukuran data menjadi lebih kecil dan lebih ringan dalam proses transmisi (Putra, 2010). Di dalam penelitian ini, file yang akan diteliti berfokus pada jenis file teks, dengan ekstensi txt dan doc. File teks (flat file) adalah salah satu jenis file komputer yang tersusun dalam suatu urutan baris data teks biasanya diwakili oleh 8 bit kode ASCII (Solihin, 2013).

2.1.1.Teknik Kompresi Data

Berdasarkan kemungkinan data yang telah dikompresi dapat dikembalikan ke data sebelum dikompresi atau data aslinya, teknik kompresi data dikelompokkan menjadi dua bagian yaitu kompresi data lossless dan kompresi data Lossy (Pu, 2006) :

1. Kompresi Data Losless

Kompresi data lossless adalah teknik kompresi data dimana data yang telah dikompresi dapat dikembalikan ke data aslinya dengan tidak mengurangi informasi yang ada pada data tersebut. Dalam teknik kompresi ini, pada saat proses kompresi dihasilkan sebuah data yang berbeda dengan data aslinya. Karena setiap bit yang terdapat pada data di-encode sehingga dihasilkan bit yang baru yang lebih pendek. Data tersebut dikembalikan ke data aslinya (data sebelum dikompresi) pada saat proses dekompresi. Teknik kompresi lossless digunakan pada data yang tergolong penting sehingga tidak boleh ada banyak atau sebagian informasi yang hilang. Seperti misalnya pada file teks, jika terdapat sedikit saja perubahan pada data itu maka akan sangat mudah kelihatan.

Gambar 2.1. Kompresi Lossless (Pu, 2006)

Contoh aplikasi lossles compression yaitu WINRAR dan WINZIP. Contoh format file lossles compression: *.zip, *.rar, document file (*.doc, *.xls, *.ppt), file executable (*.exe)

2. Kompresi Data Lossy

Kompresi data Lossy adalah teknik kompresi data dimana data mengalami sedikit atau banyak kehilangan pada saat proses kompresi.Sama seperti data aslinya hanya saja ada perubahan kerapatan ataupun resolusi pada data tersebut. Oleh karena itu sangat kecil kemungkinan dan bahkan tidak akan pernah bisa data yang telah dikompresi dengan teknik kompresi Lossy dapat dikembalikan seperti data sebelum dikompresi atau data aslinya. Perubahan yang terjadi pada data pada saat proses kompresi tidaklah terlalu kelihatan. Teknik kompresi ini biasanya digunakan pada data berupa gambar, suara dan video. Karena pada data tersebutlah kehilangan akan informasi yang detail itu mungkin tidak dapat dirasakan oleh sistem kerja indera penglihatan dan pendengaran manusia. Contoh algoritma kompresi Lossy adalah Fractal Compression, Wavelet Compression, Wyner-Ziv Coding (WZC), dan lain-lain.

Gambar 2.2. Ilustrasi Kompresi Lossy(Sayood, 2006)

Contoh aplikasi lossy compression : aplikasi pengkompres suara (mp3 compressor),ambar (adobe photoshop, paint), video (xilisoft). Contoh format file lossy compression yaitu MP3, JPEG, MPEG

2.1.2.Pengukuran Kinerja Kompresi Data

Pada suatu teknik yang digunakan dalam proses kompresi data terdapat beberapafaktor atau variabel yang biasa digunakan untuk mengukur kualitas dari suatu teknikkompresi data tersebut, yaitu (Salomon & Motta, 2010):

1. Ratio of Compression (Rc)

Ratio of Compression (Rc) adalah perbandingan antara ukuran data sebelum dikompresi dengan ukuran data setelah dikompresi.

=

2. Compression Ratio (Cr)

Compression Ratio (Cr) adalah persentasi besar data yang telah dikompresi yang didapat dari hasil perbandingan antara ukuran data setelah dikompresi dengan ukuran data sebelum dikompresi.

= 100 %

3. Space Savings (SS)

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

= 100 % −

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.2. Text File

Text file (disebut juga dengan flat file) adalah salah satu jenis file komputer yang tersusun dalam suatu urutan baris data teks biasanya diwakili oleh 8 bit kodeAmerican Standard Code for Information Interchange (ASCII) dan Extended Binary Coded

Decimal Interchange Code (EBCDIC) merupakan cikal bakal dari set karakter lainnya. ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal. ASCII digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII memiliki komposisi bilangan biner sebanyak 8 bit, dimulai dari 00000000 hingga 11111111. Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan desimal. Format file teks yang akan digunakan dalam penelitian ini adalah :

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 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.3. Algoritma Inverted Elias Gamma

Inverted Elias Gamma adalah kebalikan dari Elias Gamma Code. Elias Gamma Code adalah salah satu kode yang universal yang dipelopori oleh Peter Elias yang digunakan untuk encode dan decode bilangan bulat positif n bahkan dalam kasus di mana integer terbesar yang tidak diketahui sebelumnya (Salomon, 2007). Juga, kode ini tumbuh perlahan-lahan, untuk itu baik untuk mengompresi data integer dimana jumlah bilangan bulat kecil lebih besar maka bilangan bulat besar.Adapun aturan untuk kode nomor dengan menggunakan kodeEliasGammaadalah sebagai berikut (Salomon, 2007) :

1. Menulis dalam biner.

2. Kurangi 1 dari jumlah bit yang ditulis dalam langkah 1 dan tambahkan bahwa banyak angka nol.

Ada cara yang setara dengan lengkah di atas (Salomon, 2007):

1. Pisahkan integer ke dalam kekuasaan tertinggi 2 mengandung (2N) dan N digit biner yang tersisah dari integer.

2. Encode N di unary, yaitu sebagai N nol diikuti oleh satu-satu

3. Menambahkan N digit biner yang tersisa untuk representasi ini N.

Tabel 2.1 Tabel Kode Elias Gamma (Salomon, 2007) 1 = 20 + 0 = 1 10 = 23 + 2 = 0001010 2 = 21 + 0 = 010 11 = 23 + 3 = 0001011 3 = 21 + 0 = 011 12 = 23 + 4 = 0001010 4 = 22 + 0 = 00100 13 = 23 + 5 = 0001101 5 = 22 + 1 = 00101 14 = 23 + 6 = 0001010 6 = 22 + 2 = 00110 15 = 23 + 7 = 0001111 7 = 22 + 3 = 00111 16 = 24 + 0 = 00001000 8 = 23 + 0 = 0001000 17 = 24 + 1 = 00001001 9 = 23 + 1 = 0001001 18 = 24 + 2 = 00001010

Tabel 2.2 Tabel KodeInverted Elias Gamma (Salomon, 2007) 1 = 20 + 0 = 0 10 = 23 + 2 = 1110101 2 = 21 + 0 = 101 11 = 23 + 3 = 1110100 3 = 21 + 0 = 100 12 = 23 + 4 = 1110101 4 = 22 + 0 = 11011 13 = 23 + 5 = 1110010 5 = 22 + 1 = 11010 14 = 23 + 6 = 1110101 6 = 22 + 2 = 11001 15 = 23 + 7 = 1110000 7 = 22 + 3 = 11000 16 = 24 + 0 = 11110111 8 = 23 + 0 = 1110111 17 = 24 + 1 = 11110110 9 = 23 + 1 = 1110110 18 = 24 + 2 = 11110101

Berikut adalah langkah-langkah untuk memecahkan kode bilangan bulat berdasarkan algoritma Elias Gamma Kode (Salomon, 2007):

1. Bacalah bit string sampai Anda mencapai pertama 1. Panggil 1 sebagai p dan menyebut jumlah ini nol dengan n.

2. Lanjutkan membaca setelah p dari n.

3. Ganti kode dengan karakter menurut tabel Elias Gamma Code.

2.4. Algoritma Capocelli

Algoritma Capocelli ini diusulkan oleh Renato Capocelli adalah awalan, lengkap, universal, dan juga synchronizable Ini bukan kode Fibonacci umum, tetapi terkait dengan kode C1 dan C2 dari Apostolico dan Fraenkel (Salomon, 2007). Kode tergantung pada parameter r dan dilambangkan dengan S (r + 1, 01R). Setelah r telah dipilih, dua bagian codeword dibangun dengan 01R akhiran dan awalan yang adalah string biner yang tidak mengandung akhiran. Dengan demikian jika r = 2, akhiran adalah 011 dan prefiks adalah semua string biner, dimulai dengan string kosong, yang tidak mengandung 011. Beberapa contoh dari S (3, 011) dan sangat mudah untuk melihat bagaimana awalan adalah string kosong, 0, 1, 00, 01, dan sebagainya, tetapi mereka termasuk tidak ada string dengan 011. The codeword dari N = 9 adalah 010 | 011, tapi codeword dari N = 10 memiliki awalan 100 dan tidak 011, sehingga 100 |

011. Secara umum codeword x. . . x0101y. . . y | 011 akan diikuti oleh x. . . x1000y. . . y | 011 bukan oleh x. . . x0110y. . . y | 011. codeword tersebut memiliki baik bentuk 0β | 011 (di mana β tidak berisi dua berturut-turut 1) atau bentuk 1γ | 011 (di mana γ tidak mengandung 011).

Misalnya, hanya 12 dari 16 prefiks 4-bit dapat digunakan oleh kode ini, karena empat prefiks 0011, 0110, 0111, dan 1011 mengandung pola 011. Secara umum, jumlah codeword panjang N + 3 di S (3, 011) adalah FN + 3 - 1. Untuk N = 4 (codeword dari 4-bit awalan dan 3-bit akhiran), jumlah codeword adalah F4 + 3 -1 = F7 - 1 = 12 (Salomon, 2007).

Tabel 2.3. Kode S ( 3 , 011 ) untuk Integer N dan Strings BS (Salomon, 2007).

2.5. Visual Basic .NET

Visual Basic .NET adalah sebuah alat untuk mengembangkan dan membangun aplikasi yang bergerak di atas sistem .NET Framework, dengan menggunakan bahasa

n S(3,011) BS 0 011 0 1 0011 1 2 1011 00 3 00011 01 4 01011 10 5 10011 11 6 11011 000 7 000011 001 8 001011 010 9 010011 011 10 100011 100 11 101011 101 12 110011 110 13 111011 111

BASIC. Dengan menggunakan alat ini, para programmer dapat membangun aplikasi Windows Forms, Aplikasi web berbasis ASP.NET, dan juga aplikasi command-line. Alat ini dapat diperoleh secara terpisah dari beberapa produk lainnya (seperti Microsoft Visual C++, Visual C#, atau Visual J#), atau juga dapat diperoleh secara terpadu dalam Microsoft Visual Studio .NET. Bahasa Visual Basic .NET sendiri menganut paradigma bahasa pemrograman berorientasi objek yang dapat dilihat sebagai evolusi dari Microsoft Visual Basic versi sebelumnya yang diimplementasikan di atas .NET Framework. Peluncurannya mengundang kontroversi, mengingat banyak sekali perubahan yang dilakukan oleh Microsoft, dan versi baru ini tidak kompatibel dengan versi terdahulu (Leong, 2006).

VB.NET adalah salah satu bahasa pemrograman Komputer Tingkat Tinggi. Bahasa Pemrograman adalah perintah-perintah yang dimengerti oleh computer untuk melakukan tugas-tugas tertentu bahasa pemrograman VB.NET dikembangkan oleh Microsoft , Merupakan Salah Satu bahasa Pemrograman Yang Object Oriented Program(OOP) atau Pemrograman yang berorientasi pada Object. Kata “Visual” menunjukkan cara yang digunakan untuk membuat Graphical User Interface (GUI). Dengan Cara ini, kita tidak perlu lagi menuliskan instruksi pemrograman dalam kode-kode baris hanya untuk membuat sebuah Desaign Form/Aplikasi. Tetapi dengan sangat mudah yakni kita cukup melakukan Drag and drop object-object yang akan kita gunakan. VB.Net dapat kita jadikan alat bantu untuk membuat berbagai macam program computer (Leong, 2006).

2.6. Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah sebuah “bahasa” yang telah menjadistandar 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 syntaxmendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady BoochOOD (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 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 usecase, 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), activit 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 dimensihorizontal (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 besertahubungan 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).

BAB 1

PENDAHULUAN

1.1.Latar Belakang

Kompresi data (pemampatan data) merupakan suatu teknik untuk memperkecil jumlah ukuran data (hasil kompresi) dari data aslinya. Pemampatan data umumnya diterapkan

Dokumen terkait