TUGAS AKHIR
Diajukan Untuk Memenuhi Sebagai Prasyarat Dalam Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh : Yursa Arliansyah
0734010005
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
JAWA TIMUR
Pembimbing I : Dian P Hapsari, S.Kom, M.Kom. Pembimbing II : Firza Prima Aditiawan, S.Kom. Penyusun : Yursa Arliansyah.
ABSTRAK
Seiring dengan kemajuan tekhnologi, Kebutuhan akan informasi yang akurat dan manajemen data yang baik telah menjadi suatu kebutuhan bagi banyak instansi di berbagai bidang. Begitu pula pada dunia pendidikan yang membutuhkan cara yang cepat dan mudah untuk pengelolahan data murid atau mahasiswa. Dari penjelasan diatas, penulis mendapat suatu ide untuk membuat suatu aplikasi manajemen data Tugas Akhir mahasiswa pada Teknik Informatika UPN Jawa Timur. Ide tersebut terbesit mengingat pada jurusan Teknik Informatika UPN Jawa Timur masih memanfaatkan aplikasi komputer seperti Microsoft Office untuk pengelolalan data Tugas akhir mahasiswa..
untuk mencocokan judul Tugas Akhir mahasiswa sehingga dapat mempermudah dan mendapat keuntungan dari sisi efisiensi waktu.
Puji syukur penyusun panjatkan kehadiran Allah SWT, yang telah melimpahkan rahmat serta berkat-Nya, sehingga pelaksanaan Tugas Akhir yang berjudul “Aplikasi Manajemen dan Pengelolaan Data Tugas Akhir Mahasiswa Teknik Informatika” dapat dilaksanakan dengan lancar, sehingga laporan ini dapat diselesaikan tepat pada waktunya.
Adapun tujuan daripada pembuatan laporan Tugas Akhir ini adalah untuk menambah wawasan, kreatifitas, ilmu pengetahuan mahasiswa dan mempelajari lebih dalam lagi tentang pembuatan aplikasi yang baik dan benar sehingga dapat menghasilkan program yang dapat digunakan dengan mudah dan dalam jangka waktu yang lama. Tak lupa penulis mengucapkan terima kasih kepada dosen pembimbing, Ibu Dian P Hapsari, S.Kom, M.Kom dan Bapak Firza Prima Aditiawan, S.Kom yang telah membimbing penulis dalam melaksanakan Tugas Akhir.
Disadari bahwa dalam menyusun laporan ini masih jauh dari kata sempurna, namun penulis tetap berharap semoga isi dari laporan ini dapat berguna baik untuk penulis dan para pembaca, maka dari itu saran yang membangun sangat penulis harapkan.
Surabaya, Mei 2012
Ucapan terima kasih ini penulis persembahkan sebagai perwujudan rasa syukur atas terselesainya Tugas Akhir ini. Ucapan terima kasih ini penulis tujukan kepada :
1. Allah SWT yang telah memberikan kemudahan dan kelancaran pada waktu pengerjaan Tugas Akhir ini sampai terselesaikan dengan tepat waktu.
2. Kedua orang tua, Bapak dan Ibu tercinta dan adik saya yang selalu memberikan dukungan serta doa untuk saya sehingga Laporan Tugas Akhir ini terselesaikan dengan tepat waktu.
3. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri UPN “Veteran” Jawa Timur.
4. DR.IR Ni Ketut Sari, MT selaku ketua Jurusan Teknik Informatika dan yang menguji saya pada saat seminar.
5. Ibu Dian P Hapsari, S.Kom, M.Kom selaku Dosen Pembimbing I yang sudi meluangkan waktunya disela – sela jadwalnya yang padat dan memberi masukan – masukan serta membimbing penulis dalam menyelesaikan Laporan Tugas Akhir ini.
6. Bapak Firza Prima Aditiawan, S.Kom selaku Dosen Pembimbing II yang telah memberikan masukan judul dan juga banyak memberikan masukan tentang program yang telah saya buat sehingga dapat menjadikan pembelajaran bagi saya dalam membuat sebuah aplikasi yang baik dan benar.
7. Ibu Intan Yunian Purbasari dan Ibu Ketut Sari selaku Dosen Penguji seminar Tugas akhir.
ini.
10.Dien Azizun Nissa pemberi motifasi bagi penulis untuk mengerjakan Tugas Akhir.
Semoga Allah SWT membalas ketulusan dan budi baik mereka yang telah banyak memberikan bantuan, bimbingan ataupun nasihat – nasihat kepada penulis.
Penulis menyadari bahwa Laporan Tugas akhir ini jauh untuk dikatakan sempurna baik isi maupun penyajiannya. Oleh karena itu, penulis mengharapkan saran dan kritik yang bersifat membangun bagi perbaikan Laporan Tugas Akhir di masa yang akan datang. Akhir kata semoga Laporan Tugas Akhir ini dapat memberikan manfaat bagi semua pihak yang berkepentingan.
Surabaya, Mei 2012
Halaman
ABSTRAK ………...……..…….
KATA PENGANTAR ………...……. i
UCAPAN TERIMA KASIH ………...…...……... ii
DAFTAR ISI ………...…….……...…. iv
DAFTAR GAMBAR ………...……….…... viii
DAFTAR TABEL ………...…………..…... x
BAB 1 PENDAHULUAN ………....……... 1
1.1Latar Belakang ………... 1
1.2Rumusan Masalah ………...……….. 4
1.3Batasan Masalah ………...………. 4
1.4Tujuan Penelitian ………...……… 4
1.5Manfaat ……….…...………... 5
1.6Metode Penelitian ……….…………...…... 5
BAB II LANDASAN TEORI ……….… 8
2.1 Algorithma Knuth Morris Prath ……… ………..….. 8
2.2 Finding Frequent Word Sequences and Collecting Cluster Candidate.. 12
2.3 Combining Cluster Candidate ………...…. 13
2.4 Penelitian dan Pembahasan ………...…...….. 15
2.5 Konsep Dasar Sistem ………... 19
2.6 Pengembangan Sistem ... 20
2.7 Visual Basic.Net ... 20
2.8 My SQL ... 28
2.9 Power Designer 11 ... 31
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 46
3.1 Analisa Sistem ... 46
3.2 Pengumpulan Data ... 46
3.3 Analisa Data ... 47
3.4 Analisa Sistem ... 47
3.5 Perancangan Sistem ... 48
3.8 Create Database ………...… 55
3.9 Database Management system ……….. . 56
3.10 Flowchart Aplikasi Management dan Pengelolahan TA ... 59
3.11 Work Flow ... 59
3.12 Perancangan Antar Muka ... 63
3.13 Desain Halaman Utama ... 63
BAB IV IMPLEMENTASI PROGRAM ... 65
4.1 Spesifikasi sistem ... 65
4.2 Perangkat Sistem ... 65
4.2.1 Perangkat Keras (Hardware) yang Digunakan ... 65
4.2.2 Perangkat Lunak (Software) yang Digunakan ... 66
4.3 Implementasi Desain Antarmuka ... 67
4.3.1 Halaman Menu Utama ... 68
4.3.2 Halaman Sub Menu Proposal TA ……….. 69
4.3.5 Halaman Sub Menu Siap Lisan ... 75
4.3.6 Halaman Rekapitulasi Dosen Pembimbing ... 77
4.3.7 Halaman Sub Menu Laporan Proposal TA ... 79
4.3.8 Halaman Sub Menu Laporan Bimbingan TA ... 80
4.3.9 Halaman Sub Menu Laporan Seminar TA ... 81
4.3.10 Sub Menu Laporan Siap Lisan Ta ... 82
4.3.11 Halaman Sub Menu Laporan Rekapitulasi Dosen Pembimbing TA ... 83
4.3.12 Halaman Sub Menu Edit Login ... 84
4.3.13 Halaman Sub Menu Informasi Program ... 85
4.3.14 Code Form Menu Utama ... 86
4.3.15 Code Form Pencarian Data Judul TA dengan Algorithma Knuth Morris Pratt ... 86
4.3.16 Code Simpan Data ... 87
4.3.17 Potongan Code Edit Data ... 88
4.3.18 Potongan Code Hapus Data ……….. 89
BAB V UJI COBA DAN EVALUASI ... 90
5.1 Uji Coba Sistem ……….. 90
5.2 Uji Coba Penginputan Sample Data ... 90
a. Membuka aplikasi dan memilih menu file dan masuk ke sub
menu proposal ... 95
b. Percobaan pencarian dan pencocokan string ... 96
c. Uji Coba Proses Memasukkan Data ... 97
d. Uji Coba Melakukan handling error ... 99
5.5 Uji Coba Edit Data Tugas Akhir Mahasiswa ………... 102
5.6 Uji Coba Hapus Data Tugas Akhir Mahasiswa ……….….. 104
5.7 Uji Coba Cetak Laporan Data Tugas Akhir Mahasiswa ……….….. 106
5.7.1 Proses Menampilkan Data Pada Form Cetak Data ... 106
5.8 Uji Coba Form Edit Login ……….………….……….. 112
5.9 Uji Coba Form Informasi Program ………... 114
BAB VI PENUTUP ... 116
6.1 Kesimpulan ... 116
6.2 Saran ... 117
Halaman
Gambar 2.1 Logika Pencarian Algorithma Knuth Morris Pratt ..…...… 19
Gambar 2.2 Contoh Alur Code ... 26
Gambar 2.3 Form New Conceptual Data Model (CDM) ………...… 33
Gambar 2.4 Membuat New Entity ……….. 34
Gambar 2.5 Pengisian Atribut pada Entity Mahasiswa …... 35
Gambar 2.6 Membuat Relasi ... 36
Gambar 2.7 Form Relationship …... 37
Gambar 2.8 Kebenaran Relasi ditunjukkan report 0 Error, 0 Warning ... 38
Gambar 2.9 Generate Database ……….….… 39
Gambar 3.1 Konteks Diagram ... 49
Gambar 3.2 DFD Level 0 Aplikasi Management dan Pengelolahan data TA ... 50
Gambar 3.3 DFD Level 1 Aplikasi Management dan Pengelolahan data TA ... 51
Gambar 3.4 DFD Level 1 Aplikasi Management dan Pengelolahan data TA ... 52
Gambar 3.5 Conceptual Data Model …... 53
Gambar 3.6 Physical Data Model ……...……… 54
Gambar 3.10 Workflow Management dan Pengelolahan data Proposal TA …………. 61
Gambar 3.11 Workflow Management dan Pengelolahan data Seminar ………. 62
Gambar 3.12 Rancangan Sketsa Layout Halaman Utama ...64
Gambar 4.1 Halaman Menu Utama ... 68
Gambar 4.2 Halaman Sub Menu Proposal TA ... 69
Gambar 4.3 Halaman Sub Menu Bimbingan TA ...71
Gambar 4.4 Halaman Sub Menu Seminar Tugas Akhir ... 73
Gambar 4.5 Halaman sub menu siap lisan ... 75
Gambar 4.6 Halaman rekapitulasi dosen pembimbing ... 77
Gambar 4.7 Halaman sub menu laporan proposal TA ... 79
Gambar 4.8 Halaman sub menu laporan bimbingan TA ... 80
Gambar 4.9 Halaman sub menu laporan seminar TA ... 81
Gambar 4.10 Halaman Sub Menu Laporan Siap Lisan TA ... 82
Gambar 4.11 Halaman sub menu laporan rekapitulasi dosen pembimbing TA ... 83
Gambar 4.12 Halaman Sub Menu Edit Login ... 84
Gambar 4.13 Halaman Sub Menu form Informasi Program ... 85
algorithma KMP ... 86
Gambar 4.16 Potongan code simpan data ……….. 87
Gambar 4.17 Potongan code edit data ... 88
Gambar 4.18 Potongan code hapus data ... 89
Gambar 5.1 Data Tabel Proposal Tugas Akhir ... 92
Gambar 5.2 Data Tabel Bimbingan Tugas Akhir ... 92
Gambar 5.3 Data Tabel Seminar Tugas Akhir ... 93
Gambar 5.4 Data Tabel Siap Lisan ... 93
Gambar 5.5 Data Tabel Rekapitulasi Dosen Pembimbing ... 94
Gambar 5.6 Uji Coba Masuk Sub Menu Form Proposal ... 95
Gambar 5.7 Form Proposal TA mahasiswa ... 96
Gambar 5.8 Uji coba pencarian dan pencocokan string judul... 97
Gambar 5.9 Form Proposal Sebelum Penambahan Data ... 98
Gambar 5.10 Form Proposal setelah Penambahan Data ... 99
Gambar 5.11 Peringatan bahwa teks box judul harus diisi ... 100
Gambar 5.12 Peringatan bahwa teks box harus diisi pada form bimbingan ... 101
Gambar 5.13 Form Proposal Sebelum Proses Edit Data ... 102
Gambar 5.16 Form Proposal Setelah Dilakukan Proses Hapus Data ……….105
Gambar 5.17 Sub Menu Laporan ... 106
Gambar 5.18 Form Laporan Proposal Sebelum pencarian data …...107
Gambar 5.19 Form Laporan Bimbingan Tugas akhir ... 108
Gambar 5.20 Form Laporan Seminar Tugas Akhir Mahasiswa ... 109
Gambar 5.21 Form Siap Lisan ... 110
Gambar 5.22 Form Rekapitulasi Dosen Pembimbing ... 111
Gambar 5.23 Form Edit Login akan sebelum di edit ... 112
Gambar 5.24 Konfirmasi perubahan data username dan password ... 113
Gambar 5.25 Pemberitahuan edit data berhasil ...113
Gambar 5.26 Username dan Password telah berganti ... 113
Gambar 5.27 Informasi Program ... 114
Halaman Tabel 3.1 Keterangan Tabel Proposal ... 56
Tabel 3.2 Keterangan Tabel Bimbingan ……… 57
BAB I
PENDAHULAN
1.1 LATAR BELAKANG
Sebelum teknologi dimanfaatkan dalam manajemen perusahaan, banyak instansi, lembaga dan perusahaan yang melaksanakan transaksi masih bersifat manual untuk pengarsipan maupun input dan output data. Hal ini juga masih terjadi pada jurusan Tehnik Informatika Universitas Pembangunan Nasional untuk melakukan pendaftaran tugas akhir (TA). Dengan mencatat data mahasiswa pada selembar form dan kemudian data tersebut disimpan di dalam rak, dosen juga cukup terganggu kinerjanya apabila ada mahasiswa yang ingin melakukan pendaftaran tugas akhir dan mencari apakah data judul yang diajukan mahasiswa telah digunakan oleh mahasiswa yang lain atau belum. Selain kendala tersebut, cara yang masih manual juga rentan terhadap kehilangan data dan rentan berubahnya pendataan sehinggga mempengaruhi kualitas data dan informasi yang dihasilkan.
Selain untuk melakukan entry data bagi mahasiswa tehnik Informatika yang ingin mengajukan tugas akhir, aplikasi ini juga membantu mahasiswa untuk dapat mengetahui apakah judul yang mereka entry telah ada atau sudah digunakan oleh mahasiswa yang lain sehingga mahasiswa tahu dan dapat mencari referensi judul yang lain untuk diajukan.
Untuk memecahkan masalah ini tentu saja diperlukan sebuah teknologi lainnya untuk mengubah kenyataan itu mendekati harapan yang diinginkan. teknologi ini adalah sebuah teknologi yang dapat mengatur pencarian berdasarkan
keywords yang dimasukkan kemudian dengan teknologi ini pencarian akan menghasilkan relasi antara data yang diinptkan dengan data yang telah tersimpan di dalam database, tiap-tiap relasi divisualisasikan dalam bentuk sebuah nilai. Dimana nilai ini akan menunjukkan seberapa dekat kata yang muncul tersebut dengan
keywords yang dimasukkan, dan diasumsikan bahwa keywords yang dimasukkan mewakili apa yang akan dicari oleh mahasiswa.
Dalam tugas akhir ini penulis hendak menyajikan, menulis, merinci, dan meneliti teknologi ini serta membuatnya agar mampu membantu mahasiswa supaya dapat menggunakan teknologi ini untuk mengetahui data mahasiswa yang kemungkinan memiliki judul yang sama dalam rangka pencapaian harapan yang dimaksud.
Knuth Morris Pratt adalah algoritma pencarian string yang paling efektif saat ini. Algoritma yang ditemukan oleh Bob Boyer dan J. Strother Moore ini telah menjadi standar untuk berbagai literatur pencarian string. Algoritma Knuth Morris Pratt
akan menyimpan informasi pergeseran untuk melakukan pencarian string.
Karakteristik utama dari Algorithma Knuth Morris Pratt adalah algoritma ini melakukan pencocokan string mulai dari kanan (belakang). Dengan karakteristik tersebut, ketidakcocokan saat terjadi perbandingan string akan membuat pergerakan pattern melompat lebih jauh untuk menghindari perbandingan karakter pada string yang diperkirakan gagal. Aplikasi ini di buat dengan menggunakan metode string matching dan AlgorithmaKnuth Morris Pratt, yang di harapkan bisa membantu dalam sistem pencarian data string guna memudahkan mahasiswa untuk melihat apakah judul yang hendak di entry memiliki kesamaan dengan mahasiswa yang lain atau tidak.
1.2 PERUMUSAN MASALAH
Dari latar belakang yang telah dipaparkan sebelumnya maka penulis mencoba untuk membuat sebuah aplikasi manajemen pendaftaran dan pengelolaan tugas akhir (TA). Adapun beberapa permasalahan yang ada sebagai berikut:
a. Bagaimana membuat sebuah aplikasi yang dapat melakukan menejemen data mahasiswa untuk melakukan pendaftaran tugas akhir.
b. Memastikan untuk tidak menginputkan ulang data mahasiswa yang telah masuk ke dalam sistem.
1.3 BATASAN MASALAH
a. Aplikasi dirancang untuk entry data pengajuan tugas akhir mahasiswa Teknik Informatika.
b. Aplikasi dapat mencari data tugas akhir yang sejenis sekaligus berdasarkan judul dengan menggunakan algorithma pencarian Knuth Morris Pratt.
c. Aplikasi dapat mencari data judul yang telah diketikkan oleh mahasiswa tanpa dapat memberikan opsi penulisan judul yang benar apabila terjadi salah pengetikkan atau pengaturan tata bahasa yang kurang tepat.
1.4 TUJUAN
data tugas akhir serta mempermudah dan mempercepat proses pengarsipan data secara terkomputerisasi.
1.5 MANFAAT
Adapun manfaat yang diperoleh dari penyusunan tugas akhir ini adalah :
a. Untuk mempermudah pengarsipan data pendaftaran tugas akhir bagi PIA teknik informatika.
b. Memudahkan PIA untuk melakukan proses penginputan, penghapusan, serta penggantian data apabila terjadi kesalahan dalam memasukkan data tugas akhir mahasiswa informatika.
c. Menjaga validasi dan keamanan data mahasiswa pendaftar tugas akhir. d. Mencegah topik / judul yang serupa diajukan kembali.
e. Pencarian dan pencocokan data tugas akhir mahasiswa yang telah tersimpan pada database dengan data yang akan diinputkan melalui teks box.
f. Memudahkan PIA untuk melakukan pencetakan data tugas akhir mahasiswa. 1.6 METODE PENELITIAN
1. Study Literatur
aplikasi, mengunduh data tugas akhir mahasiswa melalui webside jurusan. merancang pengimplementasian ke dalam program, pencarian sumber-sumber lain sehingga diperoleh gambaran dalam pembentukan suatu aplikasi yang penulis butuhkan.
2. Studi Kasus
Membuat sebuah aplikasi menejemen dan pengolahan data tugas akhir mahasiwa Tehnik Informatika, dimana di dalam aplikasi tersebut terdapat sebuah algoritma yaitu Knuth Morris Pratt yang digunakan untuk pencarian dan pencocokan data tugas akhir agar tidak terjadi kesamaan data judul maupun kasus tugas akhir antar mahasiswa.
3. Analisa Permasalahan Dan Perancangan
permodelan tersebut akan diproses sehingga terbentuk sebuah permodelan fisik
basis data yang akan digunakan.
4. Pengembangan Sistem
Dalam pengerjaan program ini digunakan aplikasi Visual Basic. Net dengan koneksi database menggunakan MySQL. Setelah perancangan bangun dalam bentuk pemodelan data, kemudian pemodelan tersebut diterapkan kedalam sistem. Sistem dibangun berdasarkan informasi data dan inputan yang telah didapatkan sebelumya.
5. Pengujian Sistem dan Evaluasi
Apabila program telah selesai dibuat maka dilakukan pengujian sistem atau program untuk dapat mengetahui bagaimana kinerja dari program kita ketika dijalankan. Dan apabila setelah dijalankan masih belum seperti yang diharapkan, maka dilakukan proses evaluasi untuk dapat mengetahui dan melakukan pembenahan dari program tersebut agar dapat digunakan seperti yang diharapkan.
1.7 SISTEMATIKA PENULISAN
BAB I PENDAHULUAN
Bab ini berisikan tentang latar belakang masalah, perumusan masalah, batasan masalah, tujuan, manfaat dan sistematika penulisan Tugas Akhir ini.
BAB II LANDASAN TEORI
Pada bab ini menjelasan tentang teori – teori pemecahan masalah yang berhubungan dan digunakan untuk mendukung dalam pembuatan Tugas Akhir ini.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini berisi tentang analisa dari sistem yang akan dibuat dan perancangan sistem yang meliputi antara lain : deskripsi umum sistem, kebutuhan sistem, pemodelan sistem berorientasi objek, perancangan proses latar dan perancangan antarmuka
aplikasi.
BAB IV IMPLEMENTASI SISTEM
Bab ini berisi hasil implementasi dari perancangan yang telah dibuat sebelumnya yang meliputi : implementasi form antarmuka aplikasi.
BAB V UJI COBA DAN EVALUASI
BAB VI PENUTUP
BAB II
LANDASAN TEORI
2.1 ALGORITMA KMP (Knuth Morris Pratt)
Algorithma Knuth Morris Pratt adalah salah satu algoritma pencarian
string, dikembangkan secara terpisah oleh Donald E. Knuth pada tahun 1967 dan James H. Morris bersama Vaughan R. Pratt pada tahun 1966, namun keduanya mempublikasikannya secara bersamaan pada tahun 1977.Jika melihat algoritma
brute force lebih mendalam, maka dapat diketahui bahwa dengan mengingat beberapa perbandingan yang dilakukan sebelumnya kita dapat meningkatkan besar pergeseran yang dilakukan. Hal ini akan menghemat perbandingan, yang selanjutnya akan meningkatkan kecepatan pencarian. Algoritma Knuth Morris Pratt, memelihara informasi yang digunakan untuk melakukan jumlah pergeseran. Algoritma menggunakan informasi tersebut untuk membuat pergeseran yang lebih jauh, tidak hanya satu karakter seperti pada algorithma brute force. Dengan algoritma Knuth Morris Pratt ini, waktu pencarian dapat dikurangi secara signifikan. Kompleksitas algoritma Knuth Morris Pratt adalah O(m+n) dimana O(m) adalah kompleksitas informasi data perpindahan, dan O(n) adalah kompleksitas algoritmanya sendiri.
sama dengan b = pattern[j]. Ketika kita menggeser, sangat beralasan bila ada sebuah awalan v dari pattern akan sama dengan sebagian akhiran u dari sebagian teks. Sehingga bisa menggeser pattern agar awalan v tersebut sejajar dengan akhiran dari u.
Dengan kata lain, pencocokkan string akan berjalan secara efisien bila mempunyai tabel yang menentukan berapa panjang seharusnya menggeser seandainya terdeteksi ketidakcocokkan di karakter ke j dari pattern. Tabel itu harus memuat
next[j] yang merupakan posisi karakter pattern[j] setelah digeser, sehingga bisa menggeser pattern sebesar j− next[j] relatif terhadap teks.
Secara sistematis, langkah-langkah yang dilakukan algoritma Knuth Morris Pratt
pada saat mencocokkan string:
1. Algoritma Knuth Morris Pratt mencocokkan pattern pada awal teks.
2. Dari kiri ke kanan, algoritma ini akan mencocokkan karakter per karakter
pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut dipenuhi :
a. Karakter di pattern dan di teks yang dibandingkan tidak cocok (mismatch).
b. Semua karakter di pattern cocok. Kemudian algoritma akan memberitahukan penemuan di posisi ini.
Sumber : Penerapan Algorithma Knuth Morris Pratt dalam String Matching.
2.2 FINDING FREQUENT WORD SEQUENCES AND COLLECTING CLUSTER CANDIDATE
Pada tahapan pertama ini akan dibahas, frequent 2 word didapatkan dengan menggunakan teknik association rule mining dengan minimum support yang sudah ditentukan. Frequent 2-word disimpan di compact document. Setelah itu, compact document disisipkan pada generalized suffix tree untuk mendapatkan informasi berupapanjang word sequence dan ids dokumenyang mengandung word sequence
tersebut.Setelah informasi tersebut didapatkan,
informasi tersebut akan digunakan untuk membentuk cluster candidate.
Cluster candidate direpresentasikan sebagai cci [FSi, Idsi]. FSi merupakan frequent word sequence yang dimiliki oleh cluster candidate dan Idsi merupakan sekumpulan dokumen yang mengandung frequent word sequence tersebut. Hanya
node yang memiliki frequent word sequence saja yang dapat digunakan untuk membentuk cluster candidate. Seperti yang terlihatpada table 1, didapatkan empat
cluster candidate yaitu cc[FS = “boys play”, Ids = {1, 2, 3}], cc[FS = “play basketball”, Ids = {1, 3}], cc[FS = “young boys play”, Ids = {1, 2}] dan cc [FS = “boysplay basketball”, Ids = {1, 3}].
2.3 COMBINING CLUSTER CANDIDATE
Pada tahapan kedua, cluster candidate yang telah ada digabung dengan
cluster candidate yang memiliki frequent word sequences yang sama. Tujuannya untuk mendapatkan cluster yang mengandung dokumen dengan topik yang lebih umum. Penggabungan cluster candidate pada penelitian ini menggunakan konsep
kmismatch.
Pada penelitian ini, diperiksa k-mismatch dari frequent word sequences
yang ditemukan. Terdapat tiga mismatches yang terjadi diantara dua frequent word sequences FSi dan FSj yaitu insertion, deletion dan substitution. Insertion
merupakan proses memasukkan kata sejumlah k kedalam frequent word sequence
yang panjang |P| lebih kecil. Deletion merupakan proses menghilangkan kata sejumlah k kedalam frequent word sequences yang panjang |P| lebih besar. Sedangkan substitution merupakan proses penggantian kata sejumlah k ke kedua
frequent word sequences. Untuk lebih rinci, berikut ini merupakan contoh ketiga jenis mismatches dengan k= 1:
a. Insertion: {|FSi| < |FSj| |FSi= “boys play”; FSj= ”boys play basketball”}; dengan memasukkan kata “basketball” pada FSi maka FSi=FSj.
b. Deletion: {|FSi| > |FSj| |FSj=”boys play”; FSi=”play”}; dengan menghapus kata “boys” dari FSj maka FSj = FSi.
Setelah penggabungan cluster candidate menjadi cluster, akan didapatkan dokumen yang overlap. Overlapping terjadi apabila dokumen berada di beberapa
cluster yang berbeda. Untuk mengetahui ada tidak overlapping digunakan rumus
yaitu sebagai berikut : O(Ci,Cj) = Idsi Idsj Rumus ini menguji dua cluster Ci
an Cj. Jika O(Ci, Cj) lebih besar dari nilai threshold yang telah ditentukan, kedua
cluster tersebut dapat digabung menjadi satu. Nilai threshold antara = 0 sampai
= 1 dengan range [0,1]. Jika nilai threshold = 0 kedua cluster harus berpisah
tetapi apabila = 1, kedua cluster tersebut mungkin memiliki dokumen yang sama
tetapi bukan berarti kedua cluster tersebut sama persis karena dokumen mungkin merepresentasikan dua topic yang berbeda. Dokumen yang tidak memiliki frequent word sequences akan digabungkan menjadi satu cluster dengan label “unrelated issue”.
Rumus ini menguji dua cluster Ci an Cj. Jika O(Ci, Cj) lebih besar dari nilai
threshold yang telah ditentukan, kedua cluster tersebut dapat digabung menjadi
satu. Nilai threshold antara = 0 sampai = 1 dengan range [0,1]. Jika nilai
threshold = 0 kedua cluster harus berpisah tetapi apabila = 1, kedua cluster
tersebut mungkin memiliki dokumen yang sama tetapi bukan berarti kedua cluster
tersebut sama persis karena dokumen mungkin merepresentasikan dua topic yang
berbeda. Dan untuk dokumen atau file yang tidak memiliki frequent word sequences , maka akan digabungkan menjadi satu cluster dengan label
2.6 Visual Basic .NET
Sejarah Visual Basic yaitu Billgat pendiri Microsoft memulai bisnis
software dengan mengembangkan interpreter bahasa Basic untuk Altair 8800, untuk kemudian diubah agar dapat berjalan di atas IBM PC dengan sistem operasi
DOS, Perkembangan berikutnya ialah diluncurkannya BASICA (basic-advanced) untuk DOS, Setelah BASICA, Microsoft meluncurkan Microsoft QuickBasic dan
Microsoft Basic (dikenal juga sebagai Basic Compiler), Visual basic adalah pengembangan dari bahasa popular BASIC (Beginner’s All-purpose Symbolic Instruction Code), Bahasa BASIC diciptakan oleh Professor John Kemeny dan Thomas Eugene Kurtz dari Perguruan Tinggi Dartmouth pada pertengahan tahun 1960-an (Deitel&Deitel, 1999). Bahasa program tersebut tersusun mirip dengan bahasa Inggris yang biasa digunakan oleh para programmer untuk menulis program - program sederhana yang berfungsi sebagai pembelajaran bagi konsep dasar pemrograman, Sejak saat itu banyak versi BASIC yang dikembangkan untuk digunakan pada berbagai platform. Beberapa versinya seperti Microsoft QBASIC, QUICKBASIC, GWBASIC ,IBM BASICA, Apple BASIC dan lain-lain, Apple BASIC
dikembangkan oleh Steve Wozniak, mantan karyawan Hewlett Packard dan teman dekat Steve Jobs (pendiri Apple Inc.). Steve Jobs pernah bekerja dengan Wozniak sebelumnya (karya : membuat game arcade “Breakout” untuk Atari), dan mengumpulkan uang dan bersama-sama merakit PC, dan pada tanggal 1 April 1976 mereka secara resmi mendirikan perusahaan Apple, Popularitas dan pemakaian
memperbaiki bahasa itu sendiri, dan akhirnya berujung pada lahirnya Visual Basic
yang berbasis GUI (Graphic User Interface) bersamaan dengan Microsoft Windows, Pemrograman Visual Basic begitu mudah bagi pemula dan musiman karena dirasa menghemat waktu pemrograman dengan tersedianya komponen - komponen siap pakai. Hingga akhirnya Visual Basic juga telah berkembang menjadi beberapa versi, sampai yang terbaru, yaitu Visual Basic 2008, Bagaimanapun juga Visual Basic 6.0 tetap menjadi versi yang paling popular karena mudah dalam membuat programnya dan tidak menghabiskan banyak Memori. Sejarah BASIC di tangan Microsoft sebagai bahasa yang diinterpretasi (BASICA) dan juga bahasa yang dikompilasi (BASCOM) membuat Visual Basic
diimplementasikan sebagai gabungan keduanya. Programmer yang menggunakan
Visual Basic memilih kode bahasa pemrograman yang dikompilasi atau kode yang harus bahasa pemrograman yang diinterpretasikan sebagai hasil Porting dari kode VB. Sayangnya, meskipun sudah terkompilasi jadi bahasa mesin, DLL bernama MSVBVMxx.DLL tetap dibutuhkan, Namun karakteristik bahasa terkompilasi tetap muncul (lebih cepat dari mode terinterpretasi).
2.7.1 Perkembangan Visual Basic
mengontrak Copper dan asosiasinya untuk mengembangkan tripod agar dapat digunakan di windows 3.0 dibawah nama kode Ruby. Berikut Perjalanan Visual Basic (VB 1.0 Sampai VB 10) : Perjalanan dari Visual Basic (VB1 to VB 10) :
a. Visual Basic 1.0 (May 1991) di rilis untuk windows pada COMDEX/Windows Wordltrade yg dipertunjukan di Atlanta , Georgia.
b. Proyek “Thunder” dirintis.
c. Visual Basic 1.0 untuk DOS dirilis pada bulan September 1992. Bahasa ini tidak kompatibel dengan Visual Basic For Windows. VB 1.0 for DOS ini pada kenyataanya merupakan versi kelanjutan dari compiler BASIC, QuickBasic
dan BASIC Professional Development System.
d. Visual Basic 2.0 dirilis pada November 1992, Cakupan pemrogramannya cukup mudah untuk digunakan dan kecepatannya juga telah di modifikasi. Khususnya pada form yang menjadikan object dapat dibuat secara seketika, serta konsep dasar dari Class modul yang berikutnya di implementasikan pada VB 4.
e. Visual Basic 3.0, dirilis pada musim panas 1993 dan dibagi menjadi versi
standard dan professional. VB 3 memasukan Versi 1.1 dari Microsoft Jet Database Engine yang dapat membaca serta menulis database Jet (atau
access) 1.x.
g. Visual Basic 5.0 (February 1997), Microsoft merilis secara eksklusif Visual basic untuk versi windows 32 bit . Programmer yang menulis programnya pada versi 16 bit dapat dengan mudah melakukan import programnya dari VB4 ke VB5. Dan juga sebaliknya, program VB5 dapat diimport menjadi VB4. VB 5 memperkenalakan kemampuan untuk membuat User Control.
h. Visual Basic 6.0 (pertengahan 1998) memperbaiki beberapa cakupan, temasuk kemapuannya untuk membuat Aplikasi Web-based . Visual Basic 6 di jadwalkan akan memasuki Microsoft “fasa non Supported” dimulai pada maret 2008.
1. Visual Basic .NET, dirilis pada tahun 2002, beberapa yang mencoba pada versi pertama .NET ini mengemukakan bahwa bahasa ini sangat powerful tapi bahasa yang digunakan sangat berbeda dengan bahasa sebelumnya, dengan kekurangan diberbagai area, termasuk runtime yang 10 kali lebih besar dari paket runtime VB6 serta peningkatan penggunan memory.
2. Visual Basic .NET 2003, dirilis dengan menggunakan NETframework versi 1.1.
3. Visual Basic 2005, merupakan itegrasi selanjutnya dari Visual Basic .NET dan
Microsoft memutuskan untuk menghilangkan kata kata .NET pada judulnya. Pada merilis, Microsoft memasukan beberapa fitur baru, diantaranya : Edit and
1.1. IsNot Patent, merupakan salah satu fitur dari Visual Basic 2005 merupakan konversi If = Not X Is Y menjadi If X IsNot Y.
4. Visual Basic 2005 Express, merupkan bagian dari Product Visual Studio. Microsoft membuat Microsoft Visual Studio 2005 Express edition untuk pemula yang gemar dengan VB, salah satu produknya adalah Visual Basic 2005 Express yang merupakan produk gratis dari Microsoft.
5. Visual Basic “ Orcas”, dijadwalkan akan dirilis pada tahun 2007 dan dibangung diatas .NET 3.5. Pada rilis ini , Microsoft menambahkan beberapa fitur , diantaranya : True Tenary operator , yaitu fungsi If ( value, value )
yang digunakan untuk menggantikan fungsi IIF, LINQ Support, Ekspresi Lambda, XML Literals, Nullable types, Type Inference.
6. Visual Basic ‘VBx’, Visual Basic 10, yang juga dkenal dengan nama VBx, akan menawarkan dukungan untuk Dynamic Language Runtime. VB 10 direncanakan akan menjadi bagian da 15. An dari SilverLight 1.1
Sumber : VisualStudio.Net dengan database.
2.7.2 Pemrograman Berorientasi Objek (OOP).
Visual Basic merupakan bahasa yang mendukung pemrograman berorientasi objek, namun tidak sepenuhnya. Beberapa karakteristik obyek tidak dapat dilakukan pada
Polymorphism secara terbatas dilakukan dengan mendeklarasikan class module
yang memiliki Interface tertentu. Visual Basic (VB) tidak bersifat case popular.
2.7.3 Desain Visual dan Komponen.
Visual Basic menjadi popular karena kemudahan desain form secara visual dan adanya kemampuan untuk menggunakan komponen-komponen ActiveX yang dibuat oleh pihak lain. Namun komponen ActiveX memiliki masalahnya tersendiri yang dikenal sebagai DLL hell pada Visual Basic .NET, Microsoft mencoba mengatasi masalah DLL hell dengan mengubah cara penggunaan komponen (menjadi
independen terhadap registry).
Gambar 2.2 Contoh Alur Code
Dalam bagan diatas kita dapat melihat jika .NET dapat melakukan kompilasi dari source yang berbeda, oleh karena itu VB .NET dapat bekerja secara bebas diantara berbagai bahasa pemrograman yang didukung oleh .NET framework. Pada .NET Framework, terdapat environtment Common Library Runtime (CLR)
yang menjalankan kode program dan menyediakan servis pada aplikasi untuk mempermudah tahap pengembangan aplikasi. CLR merupakan implementasi dari
standar Common Language Infrastructure (CLI) yang mendefinisikan execution environment untuk kode program. Dengan environtment CLR, Visual Basic.NET
memiliki fitur yang lebih berorientasi objek dibandingkan versi sebelumnya. Beberapa keuntungan yang didapatkan dari CLR atau environment runtime pada umumnya:
1. Kinerja semakin baik.
Ketika menggunakan VB .NET, hanya sintaks VB saja yang masih dapat digunakan, selebihnya akan berbeda jauh karena adanya konsep-konsep baru pada .NET dimana sangat berbeda di VB6, terutama konsep OOP. Di .NET semua harus mensupport OO, sehingga yang VB6 dulu tidak bisa OOP, maka ketika di .NET harus support OOP.
Dengan adanya sifat Runtime .NET yang hanya bisa dijalankan di OS Windows 98/ME, NT, 2000, XP, 2003, atau OS generasi selanjutnya maka VB.NET pun hanya dapat menjalankan aplikasinya di platform tersebut. Tetapi saat ini karena bahasa pemprograman VB .NET banyak dipakai oleh programmer maka mulai ada pengembangan yang dapat membuat program yang dibangun dengan VB .NET dapat dijalankan pada OS lainya yang berada di luar windows.
Sumber : VisualStudio.Net dengan database.
2.7 MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris:database management system) atau DBMS yang multi thread,
multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License(GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.
perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah : David Axmark, Allan Larsson, dan Michael "Monty" Widenius
MySQL adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses perintah - perintah SQL, yang dibuat oleh user maupun program - program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari Postgre SQL dan lima kali lebih cepat dibandingkan Interbase.
Sebagai software database dengan konsep database modern, MySQL memiliki banyak kelebihan. Kelebihan tersebut antara lain :
MySQL dapat digunakan dengan stabil tanpa kendala, berarti pada berbagai sistem operasi diantaranya seperti Windows, Linux, Mac OS X Server, Solaris, Amiga HP-UX dan masih banyak lagi.
2. Open source MySQL didistribusikan secara open source di bawah lisensi GPL, sehingga dapat memperoleh menggunakannya secara cuma - cuma tanpa dipungut biaya sepeserpun.
3. Multi User
MySQL dapat digunakan untuk menangani beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. Hal ini akan memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan dalam waktu yang bersamaan pula.
4. Performance Tuning
MySQL memiliki kecepatan yang cukup menakjubkan dalam menangani query
sederhana, serta mampu memproses lebih banyak SQL persatuan waktu.
5. Column Types
6. Command dan Functions
MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah
SELECT dan WHERE dalam query.
7. Scalability dan Limits
Dalam hal batas kemampuan, MySQL terbukti mampu menangani database
dalam skala yang besar dengan jumlah record lebih dari 50 juta dan 60 ribu tabel serta 5 miliar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada setiap tabelnya.
Interface
Sama halnya dengan software database lainnya, MySQL memiliki interface
(antarmuka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Aplication Programming Interface).
8. Struktur tabel
Struktur tabel MySQL cukup baik, serta cukup fleksibel. Misalnya ketika menangani Alter Table, dibandingkan database lainnya semacam ProgresSQL
ataupun Oracle.
1. Tidak cocok untuk menangani data dengan jumlah yang besar, baik untuk menyimpan data maupun untuk memproses data.
2. Memiliki keterbatasan kemampuan kinerja pada server ketika data yang disimpan telah melebihi batas maksimal kemampuan daya tampung server karena tidak menerapkan konsep Technology Cluster Server.
3. Dari sisi security atau keamanan, yang agak terlalu sederhana bagi sebuah SQL Engine meskipun tidak sesederhana SQLite yang juga datang dari dunia Open Source dan cukup digemari para Web Developer .
Sumber : Bunafit Nugroho, 2011, Panduan Lengkap Menguasai Perintah SQL, Media Kita 2008.
2.9 Power Designer 11
Sybase Power Designer 12 merupakan tool pemodelan yang dikeluarkan oleh Sybase untuk membangun sebuah sistem informasi yang cepat, terstruktur dan efektif. Sybase Power Designer 12 mendukung beberapa pemodelan sebagai berikut :
1. Requirement Management 2. Business Process
3. Data Modelling
4. XML Modelling
5. Application Modelling dengan UML
Pada tutorial ini akan mencoba menggunakan Power Designer untuk melakukan pemodelan data (data modeling) untuk kemudian akan digunakan untuk melakukan perancangan basis data. Secara sederhana, untuk melakukan pemodelan data pada
Power Designer, kita harus memulainya pada
level Conceptual Data Model, dimana pemodelan data dilakukan dengan menggunakan metode Entity Relationship Diagram. Pada CDM, tipe data yang dipergunakan bersifat general, dan tidak spesifikterhadap suatu database tertentu. Tahap kedua adalah membuat Physical Data Model (PDM), PDM merupakan bentuk spesifik dari CDM yang telah kita bangun. Power Designer memiliki banyak dukungan target database, sehingga kita tidak perlu bingung mengenai tipe – tipe data yang dipergunakan karena Power Designer akan menyesuaikan seperti pada tipe data yang didefinisikan sebelumnya pada tahap CDM.
Tahap terakhir adalah mengenerate script Data Definition Language (DDL) dari PDM yang telah dibuat. Melalui DDL inilah kita dapat mengenerate objek – objek
database (table, trigger,view, procedure) sehingga kemudian DDL script ini dapat dieksekusi ke software database lain seperti Oracle atau MySQL, atau dapat juga dibuat koneksi dan mengeksekusinya langsung viaPower Designer.
A. Conceptual Data Modelling
1. Pilih menu file > new > pada dialog new pilih new model dan Conceptual Data Model kemudian klik OK.
Gambar 2.3 Form New Conceptual Data Model (CDM).
2. Langkah selanjutnya adalah membuat entitas mahasiswa. Pada tahapan ini, klik ikon entity pada pallete dan klik lagi pada workspace. Kemudian kembali ke
Gambar 2.4 Membuat New Entity.
3. Pada tab general, dapat memberi nama entitas tersebut yaitu “mahasiswa”.
Table 2.1 Table Atribut Entity Mahasiswa.
5. Untuk atribut NIM kita set sebagai primary key, sehingga centang checkbox P untuk mengeset Primary Key; Selain itu NIM juga tidak boleh kosong sehingga centang juga M untuk Mandatory, kemudian klik OK.
6. Langkah selanjutnya adalah membuat entitas buku. Untuk membuat entitas buku, langkah – langkah yang dilakukan sama dengan tahapan pembuatan entitas mahasiswa dengan atribut sbb :
Table 2.2 Table Atribut Entity Buku.
7. Kemudian Set Kode Buku sebagai Primary Key dan Mandatory.
8. Berikutnya membuat relasi antara kedua entitas ini, untuk itu klik icon relationship pada pallete, kemudian hubungkan kedua entitas tersebut.
Gambar 2.6 Membuat Relasi.
10. Pada tab general , dapat mengubah nama relationshipnya menjadi “meminjam”.
11. Kemudian pada tab detail, dapat memilih tipe relasi antara kedua entitas tersebut, dalam hal ini pilih 1 to many.
12. Pada relasi mahasiswa to buku pilih cardinality 1,n dan centang pada checkbox mandatory.
13. Sedangkan pada relasi buku to mahasiswa, pilih cardinality 1,1 dan centang pada checkbox mandatory kemudian klik OK.
14. Untuk mengecek kebenaran model ini, dapat memilih tools > check model >
OK. Bila benar, maka akan terlihat pesan bahwa CDM yang telah dibangun benar pada bagian bawah workspace seperti pada gambar dibawah.
Gambar 2.8 Kebenaran Relasi ditunjukkan report 0 Error, 0 Warning.
B. Tahap 2 : Physical Data Modelling.
1. Setelah membuat CDM, maka tahapan selanjutnya adalah membuat PDM. Untuk membuat PDM, maka pilih tools > generate physical data model.
2. Pada tab general dapat memilih generate new physical data model.
3. Pada pilihan database, dapat memilih database yang akan digunakan, karena dalam tutorial menggunakan Oracle 10g XE, maka dapat memilih database Oracle 10g.
5. Pada tab detail, akan terdapat beberapa pilihan, untuk table prefix, isi dengan TBL_
6. Pada reference, ganti pilihan delete rule dengan cascade, kemudian klik OK. 7. Kemudian, dapat mengecek kebenaran model dengan cara yang sama saat
mengecek kebenaran model CDM.
C. Tahap 3 : Data Definition Language Generation.
1. Tahap terakhir dalam perancangan database dengan menggunakan Sybase Power Designer 11 ini adalah perancangan DDL script yang nantinya dapat diimpor pada database server.
2. Untuk itu pilih database > generate database.
3. Pada dialog database generation, pilih script generation pada pilihan
generation type.
4. Pada directory, dapat memilih dimana DDL script ini akan disimpan. 5. Pada file name, dapat mengetikkan nama untuk script ini.
6. Untuk tab dan pilihan lain dapat kita biarkan dalam kondisi default.
7. Kemudian klik OK dan untuk melihat DDL script yang telah digenerate klik edit, dibawah ini adalah DDL script untuk relasi mahasiswa – buku yang telah dibuat :
if exists(select 1 from sys.sysforeignkey where
role='FK_BUKU_RELATIONS_MAHASISW') then alter table BUKU
delete foreign key FK_BUKU_RELATIONS_MAHASISW end if;
select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id
and i.index_name='BUKU_PK'
select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id
and i.index_name='RELATIONSHIP_1_FK'
and t.table_name='BUKU' ) then
drop index BUKU.RELATIONSHIP_1_FK end if;
if exists(
select 1 from sys.sysindex i, sys.systable t
where i.table_id=t.table_id
and i.index_name='MAHASISWA_PK' and t.table_name='MAHASISWA'
drop index MAHASISWA.MAHASISWA_PK end if;
if exists(
select 1 from sys.systable where table_name='BUKU'
and table_type in ('BASE', 'GBL TEMP')
where table_name='MAHASISWA'
/*==============================================
constraint PK_BUKU primary key (KODEBUKU)
);
create unique index BUKU_PK on BUKU (
KODEBUKU ASC );
/*============================================== ================*/
/*============================================== ================*/
create index RELATIONSHIP_1_FK on BUKU ( NIM ASC
constraint PK_MAHASISWA primary key (NIM)
);
/*============================================== ================*/
/*============================================== ================*/
create unique index MAHASISWA_PK on MAHASISWA ( NIM ASC
);
alter table BUKU
add constraint FK_BUKU_RELATIONS_MAHASISW foreign key (NIM)
references MAHASISWA (NIM) on update restrict
on delete restrict;
41
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Untuk membuat aplikasi pada proyek akhir ini terlebih dahulu dilakukan
analisa sistem, kemudian analisa kebutuhan dan perancangan sistem serta
perancangan antar muka. Analisa sistem berguna untuk mengetahui data apa saja
yang dibutuhkan dalam proses yang akan dikerjakan. Analisa kebutuhan berguna
untuk identifikasi user dan menentukan variabel kebutuhan untuk input dan output user. Perancangan sistem berguna untuk mengintregasikan semua proses - proses
yang terjadi kemudian dilakukan perancangan database. Sedangkan perancangan antarmuka bertujuan digunakan sebagai jembatan antara pengguna dan sistem
aplikasi yang dibuat.
3.2 Pengumpulan Data
Pada pembuatan aplikasi ini, diperlukan beberapa data untuk melengkapi uji coba kelayakan aplikasi, pengumpulan data dilakukan dengan metode:
a. Tinjauan Pustaka
Pengumpulan referensi dari internet dan buku - buku serta informasi dari
42
Knuuth Morrist Prath dalam proses pembuatan aplikasi manajemen dan pengelolaan data Tugas Akhir mahasiswa untuk memilih metode yang baik
untuk diterapkan.
3.3 Analisis Data
Analisis data bertujuan untuk menyusun data dalam cara yang bermakna
sehingga dapat dipahami. Para peneliti berpendapat bahwa tidak ada cara yang paling
benar secara absolut untuk mengorganisasi, menganalisis dan menginterpretasikan
data maka prosedur analisis data dalam penelitian disesuaikan dengan tujuan
penelitian.
Dari data yang telah terkumpul maka dilakukan analisa data yaitu
menganalisa beberapa cara yang tepat menggunakan metode / algorithma untuk
pencocokan string pada sebuah aplikasi. Dalam menggunakan metode yang terbaru
untuk mendapatkan hasil yang maksimal dan valid.
3.4 Analisa Sistem
Dalam pengerjaan aplikasi Tugas Akhir ini. Adapun PIA yang bertugas
sebagai admin. Dimana PIA sebagai admin disini yang memutuskan apakah judul
yang mahasiswa ajukan layak untuk memenuhi Tugas Akhir atau tidak dan apabila
judul yang diajukan layak kemudian admin mengentry data Tugas Akhir mahasiswa
mulai dari mengentry data proposal mahasiswa, data bimbingan mahasiswa dan data
43
Pada bab ini juga akan dibahas tentang validasi relasi antar table sebelum pembuatan database. Dalam pembuatan relasi tersebut digunakan Power Designer,
pembuatan table dalam Power Designer ini dilakukan bertujuan untuk membantu validasi table dan memudahkan user untuk membuat table yang valid sebelum
dilakukan pembuatan database. Berikutnya untuk membuat konsep data
menggunakan data flow diagram (DFD). Setelah itu barulah ke tingkat selanjutnya
yaitu menggunakan konsep data Conceptual Data Model (CDM) dan Phisycal Data
Model(PDM).
Konsep DFD, CDM dan PDM didesain untuk menginformasikan kepada para
pemakai (user) persepsi tentang alur data dan bukan menggambarkan bagaimana cara
sebuah data disimpan dalam sebuah Komputer.
Pendefisian sebuah data model adalah sebuah group dengan konsep yang akan
membantu untuk menspesifikasikan struktur sebuah data dan sebuah himpunan
kumpulan yang spesifik.
3.5 Perancangan Sistem
Perancangan sistem digunakan untuk menggambarkan sejumlah proses
terstruktur dalam sistem aplikasi, berorientasi pada aliran sistem yang terjadi, agar
memperjelas sistem aliran aplikasi, berorientasikan pada aliran sistem yang terjadi,
agar memperjelas sistem alur aplikasi yang dibuat. Penjelasan mengenai sistem
44
alur kerja dari aplikasi berupa flowchart dan workflow dimana akan dirincikan alur kerja aplikasi mulai dari penginputan data, mencetak data hingga melakukan
pengarsipan data tugas akhir mahasiswa.
3.5.1 Konteks Diagram
DFD menggambarkan penyimpanan data dan proses yang mentransformasikan
data. DFD menunjukkan hubungan antara data pada sistem dan proses pada sistem.
Gambar 3.1 Konteks Diagram
Pada gambar Diagram Konteks diatas adalah suatu proses utama dan proses
basic dimana proses tersebut merupakan proses sistem secara keseluruhan. Dalam gambar diatas ditunjukkan dimana mahasiswa yang dimaksud adalah mahasiswa
yang ingin mngajukan judul tugas akhir dan mahasiswa yang sedang melakukan
tugas akhir. Pia bertanggung jawab sepenuhnya dalam pengoperasian sistem dan
mahasiswa hanya menerima informasi data tugas akhir miliknya. Proses Aplikasi
Manajemen dan Pengelolaan data tugas akhir mahasiswa adalah satu proses yang
45
Semua proses pada konteks diagram diturunkan atau didetailkan lagi ke DFD
Level 0,gambar DFD Level 0, gambar DFD Level 0 sebagai berikut:
3.5.2 Data Flow Diagram Level 0
Gambar 3.2 DFD Level 0 Aplikasi Manajemen dan Pengelolaan data TA
atau DFD Level 0. Dimana PIA bertanggung jawab sepenuhnya atas data TA
mahasiswa baik data proposal mahasiswa, data bimbingan mahasiswa dan data
46 3.5.3 Data Flow Diagram Level 1
Semua proses pada DFD Level 0 diturunkan atau didetailkan lagi ke DFD
Level 1, Gambar DFD Level 1 adalah sebagai berikut:
Data Proposal Mahasiswa
47
Pada Level 1 Sub Sistem pada aplikasi terdapat dua proses, yaitu simpan data, edit data, hapus data dan cetak laporan.
3.5.4 Data Flow Diagram Level 2
Dfd Level 2 adalah hasil decompose atau pecahan dari proses DFD Level 1,
proses decompose ini dilakukan karena dalam proses tersebut terdapat sub proses lagi dan oleh karena itu perlu dipecah lagi.
Gambar 3.4 DFD Level 1 Aplikasi Manajemen dan Pengelolaan data TA
Proses ini adalah hasil pecahan dari proses pengelolaan data. Dalam proses ini
dibahas 1 sub proses yaitu input data proposal, bimbingan, seminar dan rekapitulasi pembimbing yang mana proses tersebut merupakan proses pendukung dalam
48
3.6 Conceptual Data Model (CDM)
Pada Model data konseptual atau dengan kata lain Conceptual Data Model
(CDM) pada aplikasi sistem ini merepresentasikan rancangan basis data konseptual di server. Berikut ini gambar model data konseptual :
49
3.7 Physical Data Model (PDM)
Pada Model data ini dibuat dengan cara generate data konseptual diagram
diatas. Diagram data fisik ini menghasilkan tabel - tabel yang akan digunakan dalam
implementasi aplikasi.
50
3.8 Create Database
Query database dibutuhkan di dalam MySQL untuk membuat sebuah table
yang nantinya akan menjadi lokasi penyimpanan data pada aplikasi yang telah dibuat.
Untuk mendapatkan sebuah query user tidak perlu membuat secara manual, query
bisa di dapat dengan cara generate database dari CDM dan PDM yang telah dibuat.
Maka akan muncul query seperti contoh berikut :
51
3.9 Database Management system
Struktur file merupakan penggambaran deskripsi dari field - field pada proses
perancangan database yang terwujud dalam bentuk table beserta keterangan yang diperlukan yaitu antara lain :
A. Nama Tabel : Proposal
4 BIDANG_MINAT CHAR (10) KATAGORI JUDUL
5 PENGUJI 1 CHAR (75) DOSEN PENGUJI PERTAMA
8 KETERANGAN VARCHAR (200) KETERANGAN PROPOSAL
Tabel 3.1 Keterangan Tabel Proposal
B. Nama Tabel : Bimbingan
52
4 BIDANG_MINAT CHAR (6) KATAGORI JUDUL
5 PEMBIMBING 1 CHAR (50) DOSEN PENGUJI PERTAMA
6 PEMBIMBING 2 CHAR (50) DOSEN PENGUJI KEDUA
7 NILAI_PEMBIMBING 1 INTEGER
NILAI BIMBIMGAN
PEMBIMBING 1
8 NILAI_PEMBIMBING2 INTEGER
NILAI BIMBIMGAN
Tabel 3.2 Keterangan Tabel Bimbingan
C. Nama Tabel : Seminar
53 Foreign Key : NPM
NO Nam a Kolom Tipe Dat a Ket erangan
1 NPM INTEGER FOREIGN KEY
2 NAM A CHAR (50) NAM A M AHASISWA 3 JUDUL VARCHAR (200) JUDUL AJUAN TA 4 BIDANG_M INAT CHAR (6) KATAGORI JUDUL
5 TANGGAL SEM INAR DATE TANGGAL INPUT DATA SEM INAR 6 PENGUJI 1 CHAR (50) DOSEN PENGUJI PERTAM A 7 PENGUJI 2 CHAR (50) DOSEN PENGUJI KEDUA 8 NILAI_PENGUJI 1 INTEGER NILAI SEM INAR PENGUJI 1 9 NILAI_PENGUJI 2 INTEGER NILAI SEM INAR PENGUJI 2
54
3.10 Flowchart Aplikasi Management dan Pengelolahan TA
Gambar 3.8 Flowchart Aplikasi Manajemen dan Pengelolaan data TA
3.11 Work Flow
Work Flow ini merupakan gambaran sistem secara umum, dijelaskan juga bagaimana sistem ini bekerja pada siapa pelaku sistem ( user ) serta aktifitas yang dilakukan oleh user. Semua dapat dilihat pada gambar dibawah ini. Dari aktifitas user
55
3.11.1 Workflow Manajemen dan Pengelolahan data Proposal TA
56
3.11.2 Workflow Management dan Pengelolahan data Bimbingan TA
57
3.11.3 Workflow Management dan Pengelolahan data Seminar.
Gambar 3.11 Workflow Management dan Pengelolahan data Seminar.
Pada gambar diatas menjelaskan tentang alur kerja dari management dan pengelolahan data proposal, bimbingan dan seminar. Pada workflow proposal terdapat
tiga kolom, kolom pertama mahasiswa, system dan PIA. Sedangkan pada workflow
bimbingan terdapat dua kolom yaitu kolom mahasiswa dan pembimbing, karena pada
form ini yang berinteraksi hanya mahasiswa dan dosen pembimbing. Pada form
58
mahasiswa apabila telah menempuh pengajuan proposal dan telah melakukan
bimbingan sehingga memenuhi syarat untuk pengajuan seminar. Maka mahasiswa
berhak mengajukan seminar. Pengisian data proposal, bimbingan dan seminar
sepenuhnya dilakukan oleh pia sebagai admin.
Setelah melakukan proses menyimpan, mengedit dan menghapus data maka
pia melakukan pengarsipan data dengan mencetak data proposal, bimbingan dan
seminar mahasiswa.
3.12 Perancangan Antarmuka
Pada implementasi antarmuka ini, menjelaskan bagaimana membuat sebuah
antarmuka yang menarik dan mudah dipahami dari sebuah aplikasi sehingga menjadi
user friendly bagi pengguna dan dapat dijalankan dengan mudah oleh pengguna
aplikasi.
3.13 Desain Halaman Utama
Dari desain halaman utama ini, adalah menu utama dari aplikasi dimana ketika admin ingin melakukan suatu proses maka admin cukup mengklik button
pilihan menu yang telah tersedia. Terdapat dua pilihan menu pada halaman utama
59
dilajutkan dengan mengklik button data proposal. Adapun contoh dari penjelasan adalah sebagai berikut :
Gambar 3.12 Rancangan Sketsa Layout Halaman Utama
LAPORAN FILE
FORM PROPOSAL
FORM BIMBINGAN
FORM SEMINAR
LAPORAN PROPOSAL
LAPORAN BIMBINGAN
BAB IV
IMPLEMENTASI
Pada bab ini akan dibahas mengenai implementasi dari rancangan sistem
aplikasi yang telah dibuat pada bab sebelumnya. Bagian implementasi sistem
aplikasi ini meliputi implementasi data, implementasi proses, dan implementasi
antarmuka.
4.1 Spesifikasi Sistem
Sistem yang digunakan untuk memproses semua kegiatan yang terdiri atas
masing- masing table yang saling berkaitan, misalnya dari proses pengelolahan data proposal, pengelolahan data bimbingan, pengelolahan data seminar,
pengelolahan data rekapitulasi dosen pembimbing dan proses mencetak hasil
pengelolahan data proposal, bimbingan, seminar dan rekapitulasi dosen
pembimbing sehingga akan menghemat banyak waktu serta mempermudah
pengguna dalam mengelola data dan menjaga keamanan data.
4.2 Perangkat Sistem
Peralatan yang digunakan untuk semua proses dari keseluruhan tahap
pembuatan aplikasi yang ada termasuk mencetak laporan adalah menggunakan
perangkat keras dan perangkat lunak.
4.2.1 Perangkat Keras (Hardware) yang Digunakan
Didalam perancangan dan pembangunan sistem aplikasi pengelolahan data
TA ini, penulis membutuhkan perangkat keras. Perangkat keras yang dimaksud
1. Laptop AXIO dengan processor Intel® CoreTM2 Duo Processor
T5450, RAM 2GB adalah spesifikasi Laptop yang gunakan.
2. Printer CANON dengan tipe MP280 Series Printer.
4.2.2 Perangkat Lunak (Software) yang Digunakan
Perangkat lunak yang digunakan dalam perancangan dan pembuatan
sistem aplikasi pengelolahan data TA ini adalah sebagai berikut :
1. Untuk sistem operasi yang penulis gunakan adalah Microsoft Windows
XP 2.
2. Power Designer 11 digunakan untuk pembuatan table data, untuk menentukan tipe data dan untuk menentukan relasi antar table. Selain
fungsinya diatas, Power Designer 11 ini digunakan karena membantu untuk pembuatan table yang valid baik untuk validasi data dalam table, relasi antar table dan menentukan tipe data yang benar untuk masing –
masing kolom di dalam table.
3. Mysql Connector ODBC 3.51.27 digunakan untuk connector MySQL
YOG.
4. Dalam pembuatan database untuk penyimpanan data, aplikasi yang digunakan adalah MySQL YOG.
5. Untuk membaca data dari MySQL YOG pada Visual Basic 2005
digunakan aplikasi penunjang yaitu MySQl,data.
7. DotNetBar digunakan untuk menunjang desain tampilan form agar
tampak bagus dan terkesan 3 dimensi.
8. Untuk mengetahui bagaimana sistem ini bekerja dan siapa pelaku
sistem ( user ) serta aktifitas yang dilakukan oleh user dan untuk pembuatan flowchart dari jalannya program, maka digunakan aplikasi
Microsoft Office Visio 2003.
9. Adobe PhotoShop 7.0 digunakan untuk membuat desain menu form
utama dalam aplikasi.
10.Macromedia Flash 8 digunakan untuk memberikan efek gerak pada nama di masing – masing form.
4.3 Implementasi Desain Antarmuka
Setelah perancangan desain antarmuka yang dilakukan pada bab
sebelumnya telah selesai, maka pada bab ini akan diimplementasikan bagaimana
penerapan desain antarmuka yang telah dibuat pada bab sebelumnya. Halaman
menu utama akan tampil pertama kali dilayar komputer ketika aplikasi ini
dijalankan. Pada implementasi desain antarmuka ini akan dibahas menu - menu
yang ada pada form menu utama, yaitu terdapat 2 buah menu dan terdapat masing – masing 5 sub menu yang dapat dipilih oleh user, menu dan sub menu tersebut
diantaranya adalah sebagai berikut :
a. Halaman Menu File akan tampil di pojok kiri atas pada halaman menu
utama ketika aplikasi dijalankan. Dan apabila user memilih menu File
maka akan muncul sub menu sebagai berikut :
b. Halaman sub menu Form Bimbingan TA.
c. Halaman sub menu Form Seminar TA.
d. Halaman sub menu Form Siap Lisan.
e. Halaman sub menu Form Rekapitulasi Dosen Pembimbing.
b. Halaman Menu Laporan akan tampil di pojok kiri atas setelah Menu
File pada halaman menu utama ketika aplikasi dijalankan. Dan
apabila user memilih menu Laporan maka akan muncul sub menu
sebagai berikut :
a. Halaman sub menu Form Laporan Data Proposal TA.
b. Halaman sub menu Form Laporan Data Bimbingan TA.
c. Halaman sub menu Form Laporan Data Seminar TA
d. Halaman sub menu Form Laporan Data Siap Lisan.
e. Halaman sub menu Form Laporan Data Rekapitulasi Dosen
Pembimbing.
4.3.1 Halaman Menu Utama
Halaman menu utama pada aplikasi pengelolaan data Tugas Akhir mahasiswa teknik Informatika ini akan tampil pada saat user mengakses aplikasi.
Dimana halaman menu utama aplikasi pengelolahan data Tugas Akhir mahasiswa
teknik Informatika menyediakan 2 menu pilihan yang dapat dipilih oleh user, yaitu menu file dan meu laporan. Di dalam menu file dan menu laporan yang telah
tersedia pada menu utama, ketika di klik maka terdapat beberapa sub menu. Sub
menu yang terdapat pada menu file antara lain : sub menu form Proposal TA, sub
menu form Bimbingan TA, sub menu form Seminar TA, sub menu form Siap Lisan dan sub menu Rekapitulasi Dosen Pembimbing. Sedangkan sub menu yang
terdapat pada form laporan antara lain : sub menu Laporan Proposal Ta, sub menu
Laporan Bimbingan TA, sub menu Seminar TA, sub menu Siap Lisan dan sub
menu Rekapitulasi Dosen Pembimbing.
4.3.2 Halaman Sub Menu Proposal TA