LAB. BASIS DATA UPN “VETERAN” JATIM
SKRIPSI
Oleh:
DWI ENGGAL PRAYOGA
0735010038
JURUSAN SISTEM INFORMASI
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
JAWA TIMUR
ii
RANCANG BANGUN SISTEM PENILAIAN PRAKTIKUM
BERBASIS JSON WEB SERVICE PADA LAB. BASIS DATA
UPN ”VETERAN” JATIM
Disusun Oleh :
DWI ENGGAL PRAYOGA NPM. 0735010038
Telah disetujui untuk mengikuti Ujian Negara Lisan Gelombang III Tahun Akademik 2011/2012
Pembimbing 1, Pembimbing 2,
Nur Cahyo Wibowo, S.Kom, M.Kom Waldy Permana Agastya, S.Kom, MM.
NPT : 279 030 440 197 NIDN : 0713018502
Mengetahui,
Ketua Program Studi Sistem Informasi UPN “Veteran” Jawa Timur
RANCANG BANGUN SISTEM PENILAIAN PRAKTIKUM
BERBASIS JSON WEB SERVICE PADA LAB. BASIS DATA
UPN ”VETERAN” JATIM
Disusun Oleh :
DWI ENGGAL PRAYOGA
NPM : 0735010038
Telah dipertahankan dihadapan dan diterima oleh Tim Penguji Skripsi Program Studi Sistem Informasi, Fakultas Teknologi Industri
Universitas Pembangunan Nasional “Veteran” Jawa Timur Pada tanggal 14 Desember 2011
PEMBIMBING :
1.
Nur Cahyo Wibowo, S.Kom, M.Kom NPT. 279 030 440 197
2.
Waldy Permana Agastya, S.Kom, M.M NIDN. 0713018502
TIM PENGUJI :
1.
Nur Cahyo Wibowo, S.Kom, M.Kom NPT. 279 030 440 197
2.
Moh. Irwan Afandi, ST, MSc NPT. 276 070 740 220
3.
Achmad Junaedi, S.Kom NPT. 378 110 401 991
Mengetahui
Dekan Fakultas Teknologi Industri
Alhamdulillahirobbil’alamin...
Dengan segala puja dan puji syukur atas kehadirat ALLAH SWT, yang
maha pengasih lagi maha penyayang yang telah membuka pintu kemudahan,
sehingga penulis bisa menyelesaikan Tugas Akhir dengan judul RANCANG
BANGUN SISTEM PENILAIAN PRAKTIKUM BERBASIS JSON WEB SERVICE PADA LAB. BASIS DATA UPN “VETERAN” JATIM. Melalui Penulisan Tugas Akhir ini, penulis merasa mendapat kesempatan besar untuk
lebih memperdalam ilmu pengetahuan yang diperoleh selama di perkuliahan.
Namun demikian, penulis menyadari bahwa Tugas Akhir ini masih memiliki
banyak kelemahan dan kekurangan. Oleh karena itu penulis sangat mengharapkan
kritik dan sarannya untuk pengembangan ke depannya. Tak lupa, penulis ingin
mengucapkan terimakasih yang sebanyak-banyaknya kepada pihak-pihak yang
membantu kami dalam mencari pencerahan materi dan spiritual.
1. Kepada orang-tua penulis, yang tidak pernah lelah untuk memberi penulis
dorongan semangat, do’a yang tidak pernah putus, untuk kelancaran
belajar dan masa depan penulis.
2. Bpk. Nur Cahyo Wibowo, S.Kom, M.Kom selaku pembimbing I, penguji
II seminar, dan penguji I lisan yang memberikan banyak motivasi dan
bimbingan selama penyelesaian program ini.
3. Bpk. Waldy Permana Agastya, S.Kom, MM. Selaku pembimbing II yang
juga memberikan banyak saran, serta dukungan untuk menyelesaikan
program ini. Yang tidak pernah lelah untuk memberikan bimbingan
kepada penulis, walau itu diluar jam kampus.
4. Ibu Syurfah Ayu Ithriah, S.Kom. yang tidak pernah lelah mendorong, serta
memberikan dukungan kepada penulis untuk menyelesaikan program ini.
penyelesaian tugas akhir ini.
6. Bpk. Moh Irwan Afandi, ST, MSc selaku penguji II lisan yang
memberikan arahan dan bimbingan dalam penyelesaian tugas akhir.
7. Bpk. Achmad Junaedi, S.Kom selaku penguji III lisan yang memberikan
banyak saran yang membangun dalam penyelesaian tugas akhir ini.
8. Karya Yatsunori Mitsuda dan Linkin Park yang telah menjadi inspirator,
serta tempat beristirahat bagi hati dan pikiran penulis yang jenuh saat
pembuatan sistem.
9. Tidak lupa kami mengucapkan terima kasih kepada rekan-rekan
mahasiswa karena dengan dorongan semangat, kritik dan saran serta
dukungan merekalah yang membuat penulis untuk tetap bersemangat
untuk menyelesaikan program ini.
Walaupun seringkali kami menemui persoalan yang menghalangi. Namun,
dorongan serta dukungan dari orang-orang disekitar penulislah yang membuat
penulis tetap berdiri dan terus berlari menuju keberhasilan. Terima kasih
semuanya...
Surabaya, 09 Desember 2011
DAFTAR ISI
Halaman
ABSTRAK………..iii
KATA PENGANTAR ... iv
DAFTAR ISI...v
1.3. Batasan Masalah ...3
1.4. Tujuan ...3
1.5. Manfaat ...4
1.6. Metodologi Penelitian...4
1.7. Sistematika Penulisan ...5
BAB II TINJAUAN PUSTAKA...7
2.1. Rancang Bangun Sistem ...7
2.2. Sistem Penilaian Praktikum ...8
2.3. Web Service ...10
2.3.1. Arsitektur Web Service...11
2.3.2. JSON (JavaScript Object Notation)...12
2.3.3. XML (eXtensible Markup Language)...16
2.3.4. JSON dan XML Web Service...25
2.3.5. Profil Laboratorium Basis Data UPN “VETERAN” JATIM ..27
BAB III ANALISIS DAN PERANCANGAN SISTEM ...29
3.1. Analisa Sistem ...29
3.2. Perancangan Sistem ...37
3.2.2. Data Flow Diagram...39
3.2.3. Entity Relationship Diagram...43
3.2.4. Desain Interface ...48
3.2.5. Pseudo-code Program ...53
BAB IV IMPLEMENTASI SISTEM...56
4.1. Kebutuhan Sistem ...56
4.2. Penjelasan Pengguna Program ...57
4.3. Source Code Program ...62
BAB V UJI COBA SISTEM ...69
5.1. Hasil dan Pembahasan ...69
5.2. Penerapan JSON dan XML Web Service pada Sistem Penilaian Praktikum...73
5.3. Evaluasi Sistem...74
BAB VI PENUTUP...76
6.1. Simpulan ...76
6.2. Saran ...76
DAFTAR PUSTAKA ...78
LAMPIRAN 1 : Interview ...79
Tabel 3.1 Struktur Tabel Pengguna ...45
Tabel 3.2 Struktur Tabel Praktikan ...45
Tabel 3.3 Struktur Tabel Nilai...46
Tabel 3.4 Struktur Tabel Modul ...46
Tabel 3.5 Struktur Tabel Penjadwalan ...47
Tabel 3.6 Struktur Tabel Pengajar...47
Tabel 3.7 Struktur Tabel Sesi Praktikum ...47
Tabel 3.8 Struktur Tabel Praktikum ...48
Gambar 2.1 Arsitektur Web Service...11
Gambar 2.2 JSON (object) ...13
Gambar 2.3 JSON (array) ...14
Gambar 2.4 JSON (value) ...14
Gambar 2.5 JSON (string)...15
Gambar 2.6 JSON (number)...16
Gambar 2.7 Tampilan Dokumen XML pada Browser...18
Gambar 2.8 Dokumen XML yang Digabung Dalam HTML ...21
Gambar 2.9 Tampilan Dokumen XML pada Browser...23
Gambar 2.10 Contoh Dokumen XML...25
Gambar 3.1 Ilustrasi Arsitektur Sistem ...30
Gambar 3.2 System Flow Sistem Penilaian Praktikum...39
Gambar 3.3 Context Diagram...40
Gambar 3.4 DFD level 0 ...41
Gambar 3.5 DFD level 1 Olah Fungsi Web Service...42
Gambar 3.6 CDM (Conceptual Data Modelling)...43
Gambar 3.7 PDM (Physical Data Modelling) ...44
Gambar 3.8 Desain Interface Form Login...49
Gambar 3.9 Desain Interface Form Input Nilai Praktikum...49
Gambar 3.10 Desain Interface Form Log Nilai ...50
Gambar 3.11 Desain Interface Form Cek Laporan...50
Gambar 3.12 Desain Interface Form Modul ...51
Gambar 3.13 Desain Interface Form Menu Aktivasi...51
Gambar 3.14 Desain Interface Form Menu Utama...52
Gambar 3.15 Desain Interface Form Menu Laporan User...52
Gambar 4.3 Form Log Nilai ...59
Gambar 4.4 Form Cek Laporan ...59
Gambar 4.5 Form Modul...60
Gambar 4.6 Menu Utama. ...60
Gambar 4.7 Menu Laporan User...61
Gambar 4.8 Menu Laporan Admin ...61
Gambar 4.9 Menu Aktivasi ...62
Gambar 5.1 Proses Input Nilai ke Seluruh Praktikan...70
Gambar 5.2 Proses Input Nilai per Praktikan...71
Gambar 5.3 Pelaporan Internal Aplikasi Desktop (1) ...71
Gambar 5.4 Pelaporan Internal Aplikasi Desktop (2) ...72
Gambar 5.5 Pelaporan Internal Aplikasi Web...72
Pembimbing I : Nur Cahyo Wibowo, S.Kom, M.Kom
Pembimbing II : Waldy Permana Agastya, S.Kom, MM.
ABSTRAK
Perkembangan teknologi yang luar biasa telah membawa banyak perubahan pada arus teknologi. Namun pertukaran data informasi masih seringkali terkendala dengan adanya perbedaan platform yang memakan waktu dan biaya dalam pengoperasiannya. Sistem penilaian praktikum yang sebelumnya masih mengandalkan media cetak untuk pengolahan datanya terasa sangat menghambat pertumbuhan informasi. Untuk itu perlu dibangun sistem penilaian praktikum secara komputerisasi yang dapat di akses oleh pihak laboratorium dimanapun dan kapanpun.
Tugas Akhir ini membahas tentang bagaimana melakukan pertukaran data informasi pada sistem penilaian praktikum melalui dua aplikasi yang berbeda platform. Teknologi web service adalah solusi dari permasalahan yang dapat menjembatani perbedaan platform dalam pertukaran data informasi. JSON web service digunakan karena mempunyai fungsi atau layanan yang dapat diakses oleh platform berbasis dekstop maupun web, sehingga pertukaran data informasi tidak lagi terhambat.
Hasil dari tugas akhir ini berupa JSON web service yang dapat diakses oleh dua aplikasi yang berbeda platform, serta fungsi-fungsi web service yang dapat digunakan oleh lebih dari satu client, dalam penerapannya fungsi yang dimaksud adalah fungsi untuk menampilkan data nilai praktikan.
1.1 Latar Belakang
Praktikum Pemrograman Sistem Informasi merupakan salah satu praktikum
yang diselenggarakan pada program studi Sistem Informasi UPN “VETERAN”
Jawa Timur. Praktikum ini ditujukan untuk mengasah kemampuan mahasiswa
dalam pengembangan Sistem Informasi dan Sistem Basis Data. Karena ke
depannya para mahasiswa Sistem Informasi secara tidak langsung akan
menerapkan ilmu yang didapat di dunia kerja.
Dalam proses belajar-mengajar di Laboratorium Basis Data ini terdapat
sistem penilaian yang mengatur tentang pencatatan data hasil
praktikum-praktikum mahasiswa. Dari sistem tersebut seharusnya dapat menampilkan
informasi yang teratur dan mudah diakses oleh instruktur praktikum dan kepala
laboratorium. Serta pengolahan data nilai praktikum yang efisien dan efektif
(mudah dalam revisi nilai) bagi instruktur praktikum.
Berdasarkan hasil survey yang diperoleh di lapangan, saat ini informasi yang
ditampilkan dari sistem penilaian praktikum pada Laboratorium Basis Data
Sistem Informasi UPN “VETERAN” JATIM masih secara manual (dokumentasi
masih secara tertulis) dan kurang teratur (tidak adanya catatan tentang segala
aktivitas pihak instruktur maupun asisten dalam proses input data). Hal ini sering
menyusahkan kepala laboratorium dalam memantau data nilai mulai nilai awal
Untuk membuat sistem penilaian yang terintegrasi dengan baik, maka
informasi yang dihasilkan harus tepat dan akurat serta data-data yang diperlukan
berada di satu tempat (terpusat), sehingga pada saat mengolah data menjadi
informasi tidak terjadi kesalahan, misalnya : data yang dimasukkan tidak valid,
data yang dimasukkan tidak lengkap (data nilai dari praktikan yang tidak hadir),
dan lain-lain. Dalam pembuatan sistem penilaian praktikum, cara manual
dirasakan sangat tidak efisien sehingga diperlukan cara lain dalam pembuatannya,
yaitu menggunakan metode komputerisasi. Dan ditambah lagi sistem penilaian ini
akan menggunakan web service untuk mengatasi pertukaran data informasi
dengan platform yang berbeda.
Dalam penelitian ini, merancang dan membangun prototype aplikasi JSON
web service akan diterapkan pada sistem penilaian praktikum Laboratorium Basis
Data UPN “VETERAN” JATIM. Selain JSON, format data yang akan digunakan
adalah XML yang merupakan format data pertama dari web service. JSON
muncul sebagai alternatif format data web service yang menawarkan kecepatan
dalam transaksi data. Alasan mengapa penelitian ini menggunakan web service
dan dua platform yang berbeda, yaitu aplikasi berbasis dekstop dan web adalah
aplikasi desktop sangat efektif dan efisien dalam transaksi data dan aplikasi web
ditujukan untuk penyampaian informasi (nilai praktikum) yang dapat diakses oleh
pihak manapun, sedangkan web service menjadi jembatan untuk transaksi data
1.2 Rumusan Masalah
Dalam penelitian ini terdapat beberapa permasalahan yang akan dihadapi,
antara lain :
a. Bagaimana merancang dan membangun sistem penilaian praktikum
berbasis JSON web service.
b. Bagaimana merancang dan membangun aplikasi penilaian praktikum
berbasis desktop dan web yang dapat berkomunikasi dengan JSON web
service.
1.3 Batasan Masalah
Batasan dari masalah yang dibahas adalah sebagai berikut :
a. Aplikasi yang akan dibangun hanya aplikasi web dan aplikasi desktop
yang terintegrasi dengan web service.
b. Response data web service yang digunakan dalam format JSON dan
XML.
c. Data mahasiswa yang digunakan untuk simulasi adalah data mahasiswa
SI angkatan 2007 sesi PSI – A1.
d. Untuk login kedua aplikasi tidak menggunakan fungsi web service.
e. Kedua aplikasi dan web service adalah sebuah prototype.
1.4 Tujuan
Adapun tujuan dari studi kasus ini adalah sebagai berikut :
a. Merancang dan membangun sistem penilaian berbasis JSON web
b. Merancang dan membangun aplikasi desktop dan web yang dapat
berkomunikasi dengan JSON web service.
1.5 Manfaat
Manfaat yang dapat diperoleh dari penelitian ini adalah :
a. Cepat dalam proses input nilai, pemantauan proses olah nilai, dan
keakuratan pengolahan nilai akhir bagi praktikan (meminimalisir
kesalahan perhitungan nilai praktikum).
b. Sistem pada aplikasi yang dibangun dalam penelitian ini dapat
dikembangkan lagi.
1.6 Metodologi Penelitian
Dalam pengerjaan proyek akhir ini meliputi langkah-langkah sebagai
berikut :
a. Studi Literatur
Pada tahap ini dilakukan studi literatur dari beberapa referensi baik itu
dari buku atau internet.
b. Perancangan Sistem
Pada tahap ini dilakukan perancangan sistem yang akan dibangun,
meliputi perancangan database, perancangan sistem dan pembuatan user
c. Persiapan Data
Data-data penunjang yang didapatkan berupa suatu kesimpulan,
fakta-fakta dan aturan yang mengatur proses pencarian data yang saling
berhubungan satu sama lain disimpan ke dalam Basis Data.
d. Pengujian dan Analisa
Pengujian dan analisa dimaksudkan untuk mengetahui sejauh mana
sistem yang dibuat pada proyek akhir ini dapat berfungsi sesuai dengan
proses sistem yang diharapkan.
e. Kesimpulan
Dibuat kesimpulan dari pengujian sistem proyek akhir dengan
membandingkan apakah hasilnya seperti yang diharapkan pada tujuan
proyek akhir sebelumnya.
f. Pembuatan Laporan
Membuat dokumentasi dari semua tahapan proses diatas berupa laporan
yang berisi tentang dasar teori, hasil proyek akhir dan hasil analisa.
1.7 Sistematika Penulisan
Sistematika pembahasan yang akan diuraikan dalam buku laporan proyek
akhir ini terbagi dalam beberapa bab yang akan dibahas sebagai berikut :
BAB I PENDAHULUAN
Bab ini berisi tentang pendahuluan yang terdiri dari latar belakang,
perumusan masalah, batasan masalah, tujuan dan sasaran,
BAB II TINJAUAN PUSTAKA
Bab ini membahas mengenai teori-teori yang berkaitan dengan
penyelesaian Proyek Akhir, yang didapatkan dari berbagai macam
buku serta sumber-sumber terkait lainnya yang berhubungan
dengan pembuatan Proyek Akhir ini.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab ini membahas mengenai perancangan sistem, meliputi system
flow, perancangan proses, dan perancangan user interface.
BAB IV IMPLEMENTASI SISTEM
Bab ini membahas mengenai implementasi sistem.
BAB VUJI COBA SISTEM
Bab ini menyajikan dan menjelaskan seluruh hasil dan analisa
dalam pembuatan Proyek Akhir ini dan bagaimana penyelesaian
dari setiap permasalahan error yang terjadi pada sistem operasi
Windows
BAB VI PENUTUP
Bab ini berisi kesimpulan dari uji coba perangkat lunak, dan saran
untuk pengembangan, perbaikan serta penyempurnaan terhadap
2.1 Rancang Bangun Sistem
Tahap rancang bangun sistem adalah tahap dimana harus dipastikan bahwa
semua persyaratan untuk menghasilkan sebuah sistem informasi yang telah
terpenuhi. Hasil sistem yang dirancang harus sesuai dengan kebutuhan user dalam
mendapatkan informasi yang dibutuhkan. Dan tentunya sistem yang dirancang
harus bisa dikembangkan lagi untuk pengembang lain yang ingin
mengembangankan sistem yang dibangun. Apabila ada salah satu persyaratan
yang kurang dalam merancang bangun sistem, bisa dipastikan sistem tersebut
gagal dan harus membangun lagi dari awal.
Perancangan sistem harus dapat memberikan gambaran-gambaran yang
jelas, berguna, serta lengkap kepada progammer dan ahli-ahli teknik yang terlibat.
Hal ini harus diperhatikan bahwa sistem yang disusun harus dapat berkembang
lagi. Dalam perencanaan sistem secara umum, langkah-langkah yang harus
dilakukan adalah :
a. DocFlow (Document Flow)
b. SysFlow (System Flow)
c. DFD (Data Flow Diagram)
d. ERD (Entity Relationship Diagram)
Namun karena dalam rancang bangun sistem penilaian praktikum berbasis
JSON web service pada laboratorium basis data UPN “Veteran” Jatim bersifat
a. SysFlow (System Flow)
b. DFD (Data Flow Diagram)
c. ERD (Entity Relationship Diagram)
2.2 Sistem Penilaian Praktikum
Sistem adalah sekumpulan komponen yang dirangkai untuk suatu tujuan,
sistem merupakan buatan manusia yang terdiri dari komponen-komponen yang
terkomputerisasi yang mempunyai tujuan untuk mengumpulkan, menyimpan,
memproses data dan menghasilkan informasi yang berguna untuk keputusan dan
tindakan yang akan dilakukan.
Sistem informasi merupakan kumpulan data atau fakta yang terjadi
dilingkup perangkat lunak (software) ataupun perangkat keras (hardware)
maupun data yang diolah dan digunakan oleh sistem diatas untuk membentuk
suatu model Sistem Informasi. Informasi sangat mutlak untuk dipergunakan
dalam pembuatan Sistem Informasi, oleh karena itu data atau fakta harus
benar-benar valid dan terjamin akan kebenarannya sehingga dapat membantu
menentukan keputusan dan tindakan yang tepat. Sistem Informasi adalah satu set
prosedur yang terdiri dari proses dan pengumpulan informasi yang mendukung
pembuatan keputusan.
Keberadaan komputer disini dinilai sangat penting karena pemakaian
komputer untuk mengolah data sangat cepat, akurat dan efektif, selain itu
pentingnya pemakaian komputer sebagai alat bantu dalam sistem informasi adalah
bahwa teknologi otomasi melalui komputerisasi sudah tersedia dimana-mana dan
Sistem Penilaian merupakan sistem yang dapat memberikan informasi
yang berkaitan dengan hal-hal yang berhubungan dengan penilaian praktikan
untuk membantu pembuatan laporan dibidang akademik, misalkan informasi
tiap-tiap sesi praktikum, tiap-tiap modul, penghitungan nilai rata-rata praktikan, dan
lain-lain. Sistem penilaian juga biasa digunakan dalam bidang pendidikan baik di
lembaga-lembaga formal ataupun lembaga-lembaga non formal dimana aktifitas
administrasinya tidak jauh dari kegiatan-kegiatan administrasi kantor-kantor lain
sehingga jika diklasifikasikan, sistem penilaian juga dapat digolongkan sebagai
sistem informasi manajemen tapi dalam lingkup yang kecil karena tidak seluruh
kegiatan sistem informasi manajemen dilakukan disini namun lebih mengarah
pada kegiatan pengolahan data.
Mengingat banyaknya pekerjaan yang dilakukan maka untuk satu
permasalahan khususnya untuk menyelesaikan masalah nilai, lebih baik
dikerjakan oleh lebih dari satu orang agar tidak membuat permasalahan menjadi
semakin rumit, sebab informasi akan semakin tidak terintegrasi dan kadang
memiliki resiko tidak dapat selesai tepat pada waktunya, dikarenakan salah satu
penanggung jawab yang saling terkait tidak dapat mengerjakan dan
memungkinkan terjadinya manipulasi nilai. Lain lagi saat menjelang
pengumuman nilai akhir praktikum, pihak praktikan sering kesal jika ada
instruktur praktikum yang terlambat memberikan nilai, sebab hal ini dapat
menghambat perhitungan rata-rata untuk setiap nilai praktikan, total nilai, dan
2.3 Web Service
Web service adalah sebuah sistem perangkat lunak yang dirancang untuk
mendukung interaksi interoperabilitas mesin ke mesin melalui jaringan. Web
service memiliki interface yang dijelaskan dalam mesin format processable
(khususnya WSDL). Sistem lain berinteraksi dengan web service melalui cara
yang ditentukan oleh deskripsi sistem itu sendiri menggunakan pesan SOAP,
biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam
konjungsi dengan web terkait lainnya (Sumber : W3C Working Group, 2004).
Web service digunakan sebagai suatu fasilitas yang disediakan oleh suatu
website untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain,
sehingga sistem lain dapat berinteraksi dengan sistem tersebut melalui
layanan-layanan (service) yang disediakan oleh suatu sistem yang menyediakan web
service. Web service menyimpan data informasi dalam format XML maupun
JSON, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda
platform, sistem operasi, maupun bahasa compiler.
Web service bertujuan untuk meningkatkan kolaborasi antar pemrogram
dan perusahaan, yang memungkinkan sebuah fungsi di dalam web service dapat
dipinjam oleh aplikasi lain tanpa perlu mengetahui detail pemrograman yang
terdapat di dalamnya.
Beberapa alasan mengapa digunakannya web service adalah sebagai
berikut:
a. Web service dapat digunakan untuk mentransformasikan satu atau
lingkup yang menjadi satu, sehingga tingkat keamanan dapat ditangani
dengan baik.
b. Web service memiliki kemudahan dalam proses deployment-nya, karena
tidak memerlukan registrasi khusus ke dalam suatu sistem operasi. Web
service cukup di-upload ke web server dan siap diakses oleh pihak-pihak
yang telah diberikan otorisasi.
c. Web service berjalan di port 80 yang merupakan protokol standar HTTP,
dengan demikian web service tidak memerlukan konfigurasi khusus di sisi
firewall.
(Sumber : Utama, 2010)
2.3.1 Arsitektur Web Service
Web service memiliki tiga entitas dalam arsitekturnya, yaitu:
a. Service Requester (peminta layanan)
b. Service Provider (penyedia layanan)
c. Service Broker/Registry (daftar layanan)
Gambar 2.1 Arsitektur Web Service
Service Provider: Berfungsi untuk menyediakan layanan/service dan
mengolah sebuah registry agar layanan-layanan tersebut dapat tersedia.
Service Broker/Registry: Berfungsi sebagai lokasi central yang
mendeskripsikan semua layanan/service yang telah di-register.
Service Requestor: Peminta layanan yang mencari dan menemukan
layanan yang dibutuhkan serta menggunakan layanan tersebut.
Dalam implementasi sistem penilaian praktikum sesuai gambar arsitektur
sistem diatas, pihak instruktur praktikum, kepala laboratorium, dan praktikan
adalah pihak peminta layanan (Service Requester), web service sebagai daftar
layanan (Service Broker), dan pihak developer web service sebagai penyedia
layanan (Service Provider). Hanya pihak instruktur, kepala laboratorium, dan
praktikan yang berhubungan dengan sistem, sedangkan developer web service
berada di luar sistem karena hanya menyediakan layanan (service).
2.3.2 JSON (JavaScript Object Notation)
JSON (JavaScript Object Notation) adalah format pertukaran data yang
ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan
dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari
Bahasa Pemrograman JavaScript, Standar ECMA-262 Edisi-3 – Desember 1999.
JSON merupakan format teks yang tidak bergantung pada bahasa pemrograman
apapun karena menggunakan gaya bahasa yang umum digunakan oleh programer
keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Phyton, dan lain-lain.
Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran
a. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan
sebagai objek (object), rekaman (record), struktur (struct), kamus
(dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau
associative array.
b. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa,
hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau
urutan (sequence).
Struktur-struktur data ini disebut sebagai struktur data universal. Pada
dasarnya, semua bahasa pemrograman modern mendukung struktur data ini dalam
bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena
format data mudah dipertukarkan dengan bahasa-bahasa pemrograman yang juga
berdasarkan pada struktur data ini.
Bentuk-bentuk JSON antara lain :
a. Object, adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai
dengan “{” (kurung kurawal buka) dan diakhiri “}” (kurung kurawal tutup).
Setiap nama diikuti dengan “:” (titik dua) dan setiap pasangan nama/nilai
dipisahkan oleh “,” (koma).
Gambar 2.2 JSON (object)
b. Array, adalah kumpulan nilai yang terurutkan. Array dimulai dengan “[”
(kurung kotak buka) dan diakhiri dengan “]” (kurung kota tutup). Setiap nilai
dipisahkan oleh “,” (koma).
Gambar 2.3 JSON (array)
(Sumber : Crockford, 2006)
c. Value, dapat berupa string dalam kutip ganda, atau angka, atau true atau false
atau null, atau sebuah object atau sebuah array. Struktur-struktur tersebut
dapat disusun bertingkat.
Gambar 2.4 JSON (value)
d. String, adalah kumpulan dari nol atau lebih karakter Unicode, yang
dibungkus dengan tanda kutip ganda. Didalam string dapat digunakan
backslash escape “\” untuk membentuk karakter khusus. Sebuah karakter
mewakili karakter tunggal pada string. String sangat mirip dengan string C
atau Java.
Gambar 2.5 JSON (string)
(Sumber : Crockford, 2006)
e. Number, sangat mirip dengan number di C atau Java, kecuali format oktal dan
Gambar 2.6 JSON (number)
(Sumber : Crockford, 2006)
Spasi kosong (whitespace) dapat disisipkan di antara pasangan tanda-tanda
tersebut, kecuali beberapa detail encoding yang secara lengkap dipaparkan oleh
bahasa pemrograman yang bersangkutan.
2.3.3 XML (eXtensible Markup Language)
XML adalah sebuah markup language untuk dokumen yang berisi
informasi terstruktur (Walsh, 1998). XML terletak pada inti web service, yang
digunakan untuk mendeskripsikan data. Fungsi utama dari XML adalah
komunikasi antar aplikasi, integrasi data, dan komunikasi aplikasi eksternal
dengan partner luaran. Dengan standarisasi XML, aplikasi-aplikasi yang berbeda
dapat dengan mudah berkomunikasi antar satu dengan yang lain.
XML adalah singkatan dari eXtensible Markup Language. Bahasa markup
mengkombinasikan text dan informasi tambahan mengenai text tersebut. Bahasa
markup lain yang populer seperti HTML, menggambarkan kepada web browser
ketika sedang mengunjungi sebuah situs web. XML adalah sebuah bahasa markup
yang digunakan untuk mengolah meta data (informasi tentang data) yang
menggambarkan struktur dan maksud/tujuan data yang terdapat dalam dokumen
XML, namun bukan menggambarkan format tampilan data tersebut. XML adalah
sebuah standar sederhana yang digunakan untuk medeskripsikan data teks dengan
cara self-describing (deskripsi diri). XML juga dapat digunakan untuk
mendefinisikan domain tertentu lainnya, seperti musik, matematika, keuangan dan
lain-lain yang menggunakan bahasa markup terstruktur (Sumber : Utama, 2010).
Berikut ini adalah contoh sebuah dokumen XML untuk informasi contact
person :
<?xml version="1.0" encoding="ISO-8859-1"?><contact> <contact>
<name>Yadi Utama</name>
<company>PT. Gamatechno Indonesia</company> <address>Jl. Cik Di Tiro No.34</address>
<city>Yogyakarta</city>
(Sumber : Utama, 2010)
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai
dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag
penutup(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen(parameter yang
dinyatakan dalam tag pembuka misal <form name=”isidata”>). Hanya bedanya,
HTML medefinisikan dari awal tag dan atribut yang dipakai didalamnya,
Standard Header
Elemen root
Elemen child
Berikut ini adalah tampilan dokumen XML di atas apabila dijalankan pada sebuah
browser :
Gambar 2.7 Tampilan Dokumen XML pada Browser
(Sumber : Utama, 2010)
a. Struktur Penulisan Dokumen XML
Berikut ini adalah contoh sebuah struktur dokumen XML :
<?xml version="1.0" encoding="ISO-8859-1"?>
<email> <to>Andi </to>
<from>Yadi Utama</from> <subject>Hallo</subject>
<message>Selamat Pagi…</message> </email>
(Sumber : Utama, 2010)
Baris pertama pada dokumen XML di atas adalah deklarasi standar header
yang mendefinisikan versi XML dan karakter encoding yang digunakan dalam
menggunakan standar encoding karakter set ISO-8859-1 (Latin-1/West
European).
Baris selanjutnya menggambarkan elemen induk (root) dokumen
“<email>..</email>”, sebagaimana disebutkan bahwa “Dokumen ini adalah
sebuah Email”. Kemudian baris ke 3-6 menggambarkan elemen anak (child) dari
elemen induk dokumen.
Tag pada dokumen XML bersifat case sensitif di mana tag pembuka dan
tag penutup harus ekivalen. Seperti contoh tag pembuka “<email>” harus ditutup
dengan tag “</email>”.
Berikut ini adalah contoh penulisan dokumen XML yang tidak benar :
“<email>….</Email>”
“<email>….</EMAIL>”
“<Email>….</email>”
Berikut ini adalah contoh penulisan dokumen XML yang benar :
“<email>….</email>”
“<EMAIL>….</EMAIL>”
“<Email>….</Email>”
(Sumber Utama, 2010)
Karena XML bersifat mudah untuk dibaca dan ditulis baik oleh manusia
maupun komputer, maka XML merupakan sebuah format yang dapat digunakan
untuk pertukaran data (interchange) antar aplikasi dan platform yang berbeda
(platform independent). Metode deskripsi data XML (self-describing)
membuatnya menjadi pilihan efektif untuk bisnis ke bisnis, solusi antar jaringan,
e-business, dan aplikasi terdistribusi. XML juga bersifat dapat diperluas
dapat ditransfer dengan mudah melalui protokol standar internet seperti HTTP
tanpa dibatasi oleh firewall.
Tidak seperti HTML, data-data dalam dokumen XML tidak dapat
ditampilkan dalam format tampilan tertentu yang diinginkan dalam web browser.
Namun XML dapat dimanipulasi sebagai “pulau data” untuk ditampilkan pada
browser web melalui HTML sesuai dengan format tampilan yang diinginkan:
<xml id="contact-person"> <contact>
<name>Yadi Utama</name>
<company>PT. Gamatechno Indonesia</company> <address>Jl. Cik Di Tiro No.34</address>
<city>Yogyakarta</city>
(Sumber : Utama, 2010)
Dokumen XML ini dapat digabungkan dengan HTML untuk ditampilkan
dalam sebuah web browser dengan membangun sebuah tabel dalam kode HTML
dan mengasosiasikan nilai pada kolom-kolomnya dengan data dari elemen-elemen
XML tersebut: <address>Jl. Cik Di Tiro No.34</address>
<table border="1" datasrc="#contact-person">
<tr><th>Name</th> <td><span datafld="name"></span></td></tr> <tr><th>Company</th> <td><span datafld="company"></span></td></tr> <tr><th>Address</th> <td><span datafld="address"></span></td></tr> <tr><th>City</th> <td><span datafld="city"></span></td></tr>
<tr><th>State</th> <td><span datafld="state"></span></td></tr> <tr><th>ZIP</th> <td><span datafld="zip"></span></td></tr> <tr><th>Phone</th> <td><span datafld="phone"></span></td></tr> <tr><th>Email</th> <td><span datafld="email"></span></td></tr> </table>
</body> </html>
(Sumber : Utama, 2010)
Ketika ditampilkan melalui browser web, akan terlihat tampilannya sepeti
ini:
Gambar 2.8 Dokumen XML yang Digabung Dalam HTML
(Sumber : Utama, 2010)
Dikembangkan mulai tahun 1996 dan mendapatkan pengakuan dari W3C
pada bulan Februari 1998. Teknologi yang digunakan pada XML sebenarnya
bukan teknologi baru, tapi merupakan turunan dari SGML yang telah
dikembangkan pada awal 80-an dan telah banyak digunakan pada dokumentasi
1990, para penggagas XML mengadopsi bagian paling penting pada SGML dan
dengan berpedoman pada pengembangan HTML menghasilkan markup language
yang tidak kalah hebatnya dengan SGML.
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai
dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup
(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen (parameter yang dinyatakan
dalam tag pembuka misal <form name=”isidata”>). Hanya bedanya, HTML
medefinisikan dari awal tag dan atribut yang dipakai di dalamnya, sedangkan
pada XML bisa menggunakan tag dan atribut sesuai kebutuhan. Untuk lebih
jelasnya lihat contoh di bawah :
<pesan>
<dari>MIS Manager</dari> <buat>HRD Manager</buat> <buat>Bagian rekrut</buat>
<buat>Computer Suport team</buat>
<subyek>Permohonan Tenaga kerja baru</subyek>
<isi>Mohon diberikan tenaga kerja baru untuk mengisi lowongan di Departemen MIS</isi>
</pesan>
(Sumber : Utama, 2010)
Pada contoh di atas <pesan>, <dari> <buat>,dan <isi> bukanlah tag
standard yang telah ditetapkan dalam XML. Tag itu dibuat sesuai kebutuhan.
Sampai di sini XML tidak melakukan apapun. Yang ada hanyalah informasi yang
dikemas dengan tag XML. Untuk mengirim, menerima atau menampilkan
Gambar 2.9 Tampilan Dokumen XML pada Browser
(Sumber : Utama, 2010)
XML untuk saat ini bukan merupakan pengganti HTML. Masing-masing
dikembangkan untuk tujuan yang berbeda. Kalau HTML digunakan untuk
menampilkan informasi dan berfokus pada bagaimana informasi terlihat, XML
mendeskripsikan susunan informasi dan berfokus pada informasi itu sendiri. XML
terutama dibutuhkan untuk menyusun dan menyajikan informasi dengan format
yang tidak mengandung format standard layaknya heading, paragraph, table dan
lain sebagainya.
Sama dengan HTML, File XML berbentuk teks sehingga bila diperlukan
agar dapat membacanya tanpa memerlukan bantuan software khusus. Hal ini
memudahkan pengembang aplikasi yang menggunakan XML untuk mendebug
programnya. XML lebih fleksible dibanding HTML dalam hal kemampuannya
menyimpan informasi dan data. Pada XML bisa menyimpan data baik dalam
atribut maupun sebagai isi elemen yang diletakkan di antara tag pembuka dan tag
Kelebihan lain yang dimiliki XML adalah bahwa informasi bisa di
pertukarkan dari satu sistem ke sistem lain yang berbeda platform. Misalnya dari
Windows ke Unix, atau dari PC ke Machintosh bahkan dari internet ke handphone
dengan teknologi WAP.
b. Bagian-Bagian dari Dokumen XML
Sebuah dokumen XML terdiri dari bagian bagian yang disebut dengan
node. Node tersebut adalah:
Root nodeyaitu node yang melingkupi keseluruhan dokumen. Dalam satu
dokumen XML hanya ada satu root node. Node yang lainnya berada di
dalam root node.
Element nodeyaitu bagian dari dokumen XML yang ditandai dengan tag
pembuka dan tag penutup, atau bisa juga sebuah tag tunggal elemen
kosong seperti <anggota nama=”budi”/> . Root node biasa juga disebut
root element .
Attribute note termasuk nama dan nilai atribut ditulis pada tag awal
sebuah elemen atau pada tag tunggal.
Text node, adalah text yang merupakan isi dari sebuah elemen, ditulis
diantara tag pembuka dan tag penutup
Comment nodeadalah baris yang tidak dieksekusi oleh parser
Processing Instruction node, adalah perintah pengolahan dalam dokumen
XML. Node ini ditandai awali dengan karakter <? Dan diakhiri dengan ?>.
Standard Header
Attribute Root Node
Elemen kosong Comment
encoding=”iso-8859-1”?> bukanlah processing instruction node. Header
standard bukanlah bagian dari hirarki pohon dokumen XML.
NameSpace Node, node ini mewakili deklarasi namespace.
<?xml version=”1.0” encoding=”iso-8859-1”?> <!--Dokumen ini menjelaskan tentang isi buku--> <Buku
Judul=”Teknik Membangun Web Service Dengan Menggunakan SOAP dan WSDL”
Penulis=”Yadi Utama”> <pengantar/>
<Bab No=”1”>Pengantar XML</Bab> <Bab No=”2”>Web Service</Bab> <Bab No=”3”>SOAP</Bab>
. . . </Buku>
Gambar 2.10 Contoh Dokumen XML
(Sumber : Utama, 2010)
2.3.4 JSON dan XML Web Service
Dari kesimpulan di atas, JSON atau XML web service dapat didefinisikan
sebagai aplikasi yang dapat diakses oleh aplikasi lain. Sesuai dengan namanya,
JSON web service menyimpan datanya dalam format JSON dan XML web service
dalam format XML. Berikut adalah salah satu contoh fungsi JSON web service
dan XML web service.
<WebMethod()> _
<ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
Public Function updstatON(ByVal nmpilON As String) As String
strSql = "UPDATE praktikum SET status = 'ON' FROM praktikum WHERE nama_prak = '" & nmpilON & "'"
tabelname = "updtstatON"
Fungsi diatas adalah fungsi dengan format JSON untuk mengubah status
praktikum yang aktif pada semester yang sedang berlangsung dengan parameter
jenis praktikum yang dipilih user (contoh : ADBO, PSI, atau Basis Data).
b. XML Web Service
<WebMethod()> _
DMLSql.CommandText = "SELECT DISTINCT
sesi_praktikum.nama_sesi FROM sesi_praktikum INNER JOIN
praktikum ON sesi_praktikum.id_prak = praktikum.id_prak WHERE praktikum.status = 'ON'"
Fungsi diatas adalah fungsi dengan format XML untuk menampilkan sesi
praktikum yang aktif pada semester yang sedang berlangsung.
2.3.5 Profil Laboratorium Basis Data UPN “Veteran” Jawa Timur
Laboratorium Basis Data ditujukan untuk mengasah kemampuan
mahasiswa dalam pengembangan Sistem Informasi dan Sistem Basis Data.
Sejumlah fasilitas dan pengajar yang disediakan oleh laboratorium ini untuk
praktikum Basis Data antara lain :
a. Personal Computer (PC) : 14 unit
b. Instruktur praktikum :
1. Waldy Permana Agastya, S.Kom., MM
2. Syurfah Ayu Ithriah, S.Kom
c. Jumlah praktikan per sesi : 20 Mahasiswa
d. Praktikum yang diselenggarakan Lab. Basis Data :
1. Basis Data
3. ADBO (Analisa dan Desain Berorientasi Objek)
e. Modul praktikum pemrograman sistem informasi :
1. Modul I : Pengenalan PL/SQL
2. Modul II : Cursor
3. Modul III : Form Dasar
4. Modul IV : LOV & Trigger pada Form
5. Modul V : Form Master Detail
6. Modul VI : Program Unit
7. Modul VII : Laporan & Grafik
8. Modul VIII : Menu & Shortcut
Selain untuk melayani praktikum mata kuliah basis data, ADBO,
pengembangan sistem informasi, dan lain-lain, mahasiswa tingkat akhir juga
dapat menggunakan laboratorium ini untuk mengerjakan tugas akhir ataupun
3.1 Analisa Sistem
Pencatatan nilai praktikan yang masih dicatat secara manual mengakibatkan
munculnya salah perhitungan hasil akhir nilai praktikan. Pihak instruktur atau
asisten juga merasa kesulitan apabila menghadapi pilihan untuk mengubah nilai
praktikum dalam jumlah yang banyak. Penelitian ini dibangun untuk menghadapi
masalah tersebut. Sehingga instruktur tidak akan kerepotan dalam mengganti
maupun menghitung nilai akhir praktikan. Langkah awal dalam membangun
sebuah sistem adalah menganalisa sistem, mencari tahu apa yang dibutuhkan oleh
user dan apa yang dipermasalahkan oleh user. Di dalam sistem penilaian
praktikum ini terdapat tiga user, antara lain instruktur praktikum, kepala
laboratorium, dan praktikan. Karena berhubungan dengan penilaian praktikum,
maka akan dibangun proses input nilai praktikum yang hanya akan bisa di akses
oleh para instruktur praktikum, sedangkan untuk kepala laboratorium dan
praktikan hanya mempunyai kepentingan untuk mengetahui nilai praktikum.
Untuk instruktur praktikum akan dibangun aplikasi penilaian berbasis desktop,
sedangkan untuk kepala laboratorium dan praktikan akan dibangun aplikasi
berbasis web. Aplikasi berbasis desktop dipilih untuk instruktur dikarenakan
aplikasi ini hanya boleh di akses oleh instruktur praktikum (bersifat rahasia). Dan
aplikasi berbasis web dipilih karena aplikasi ini akan dapat di akses baik oleh
kepala laboratorium, maupun oleh para praktikan (bersifat umum). Selain
dibangun sebuah web service yang menjadi pembahasan utama. Seperti yang telah
dijelaskan pada bab sebelumnya, sebuah web service adalah layanan web yang
menyediakan fungsi-fungsi yang dibutuhkan oleh proses-proses di dalam sistem
penilaian praktikum. Untuk membangun keseluruhan aplikasi dan web service,
dibutuhkan beberapa perangkat lunak pengembang (software development).
Perangkat lunak yang akan digunakan antara lain, Microsoft Visual Studio 2005,
Sybase Power Designer 6 32-bit, Microsoft Visio 2007, dan Microsoft SQL
Server 2005. Ilustrasi arsitektur sistem penilaian praktikum yang akan dibangun
dapat digambarkan seperti pada Gambar 3.1.
Berikut adalah penjelasan mengenai beberapa perangkat lunak yang akan
digunakan :
a. Microsoft Visual Studio 2005
Bahasa pemrograman yang akan digunakan dalam membangun
aplikasi keseluruhan adalah bahasa VB (Visual Basic). Sejarah Visual Basic
dimulai dari penemuan BASIC (Beginner’s All Purpose Symbolic
Instruction Code), sebuah bahasa yang mudah dipelajari dan digunakan bagi
progammer pemula, pada tahun 1964. Pada tahun 1975, ketika Microsoft
merupakan perusahaan baru, Microsoft BASIC dan produk sukses mereka
Quick BASIC (QBASIC) menjadi versi BASIC yang banyak digunakan.
Quick BASIC bisa digunakan dalam Windows ketika diluncurkan, tetapi
masih diperlukan usaha lebih untuk pemrogaman Graphical User Interface
(GUI).
Microsoft mengeluarkan produk baru, yaitu Visual Basic 1.0 yang
merupakan bahasa pemrogaman berbasis GUI. Visual Basic merupakan
bahasa interpreter, yaitu bahasa yang menggunakan program khusus untuk
membaca dan menjalankan kode tanpa proses compile terlebih dahulu.
Proses compile adalah proses menterjemahkan kode dalam bahasa tingkat
tinggi menjadi bahasa mesin. Bahasa pemrogaman yang membutuhkan
proses compile disebut bahasa compiler. Visual Basic 1.0 bukanlah program
yang pertama kali muncul dengan model seperti itu, tapi program ini
menyediakan lingkungan yang cepat untuk membangun grafis antar muka
Basic adalah bahasa interpreter yang hasil tampilanya tidak terlalu bagus
apabila dibandingkan dengan Visual C++, Delphi, atau bahasa compiler lain.
Perubahan lain adalah kemampuan membuat komponen.
Membagi-bagi kode dalam suatu program adalah dengan menuliskanya sebagai
prosedur. Versi-versi baru Visual Basic dengan kemampuanya membuat
komponen-komponen menjadi semakin kompleks. Versi 4.0 yang
diluncurkan pada tahun 1996 merupakan versi pertama yang bisa membuat
komponen dan sekarang merupakan komponen penting dalam membuat
proyek pemrogaman.
Banyak tambahan fitur-fitur baru ke dalam Visual Basic, namun
semuanya dibangun pada dasar-dasar yang sudah ada. Untuk menulis bahasa
baru yang terlepas dari bahasa sebelumnya membutuhkan banyak usaha.
Kelebihan dari bahasa baru adalah benar-benar terhindar dari kelemahan
bahasa progran yang lalu. Ini yang dilakukan oleh Microsoft pada waktu
berpindah dari Visual Basic 6.0 ke Visual Basic .NET. Bahasa ini ditulis
ulang untuk membuat versi yang benar-benar handal.
Visual Basic .NET dibangun diatas teknologi .NET, yaitu teknologi
dan konsep platform yang dapat digunakan mengembangkan aplikasi yang
terdistribusi melalui internet. Teknologi .NET ini tercermin dalam .NET
framework yang merupakan dasar untuk pengembangan aplikasi-aplikasi
berbasis .NET. .NET framework menyediakan dua hal penting. Yaitu
Common Language Runtime (CLR) dan Class Library. CLR merupakan
engine yang menjalankan aplikasi .NET dan menyediakan layanan-layanan
seperti sistem operasi yang menyediakan lapisan antara program dengan
kompleksitas sistem. Bahasa yang memenuhi Common Language
Specification (CLS) juga dapat menggunakan .NET framework. Class
Library menyediakan satu set besar fungsi wrapping dan abstraksi seperti
internet protokol, akses file system, manipulasi XML dan banyak lagi.
Karena dibangun berdasarkan teknologi .NET maka Visual Basic
.NET mampu untuk membuat aplikasi yang terdistribusi malalui internet
dimana client bukan lagi hanya PC, namun dapat berupa alat-alat yang lain
seperti mobile device dalam lingkungan yang terintegrasi. Visual Basic
.NET mampu membuat aplikasi server (ASP.NET, XML Web Service)
dalam lingkungan yang terintegrasi.
Alasan mengapa menggunakan Visual Basic .NET 2005 ini karena
Microsoft Visual Basic adalah bahasa pemrogaman yang digunakan untuk
membuat aplikasi Windows yang berbasis grafis (GUI - Graphical User
Interface). Untuk mendesain tampilan yang kita inginkan, kita perlu
meletakan objek-objek grafis ke lembar (form) yang sudah tersedia ada
Visual Basic dan selanjutnya kita hanya perlu memikirkan struktur dan
logika data dari program utama.
Visual Basic merupakan salah satu bahasa pemrogaman yang
dikembangkan oleh Microsoft. Selain itu Visual Basic juga merupakan
sarana (tools) untuk menghasilkan program-program aplikasi berbasiskan
Windows. Beberapa kemampuan atau manfaat dari Visual Basic adalah bisa
objek- objek pembantu program seperti control ActiveX, file, help, aplikasi
internet dan sebagainya.
b. Microsoft SQL Server 2005
Microsoft SQL Server 2005 adalah perangkat lunak pengolahan
database yang sesuai untuk mengolah informasi dalam jumlah yang besar.
SQL Server adalah bagian dari Back Office Microsoft, yang juga
menyertakan Back Office Server, Exchange Server, Proxy Server, Site
Server, Small Bussiness Server, SNA Server, dan System Management
Server.
Tahun 1993 SQL Server mulai dikembangkan oleh Microsoft. Pada
SQL Server saat itu Microsoft merupakan porting partner bagi Sybase SQL
Server, karena itu tidak heran jika SQL Server yang dikembangkan ini
mempunyai arsitektur yang berbasis Sybase. Pada tahun 1995 dan 1996
secara berurutan, SQL Server versi 6.0 dan 6.4 akhirnya dirilis.
Setelah dirilisnya kedua versi tersebut, selanjutnya perbaikan SQL
Server direncanakan akan dirilis sebanyak tiga kali, yang pada setiap rilisnya
menitikberatkan pada hal yang berbeda. Rilis pertama fokus pada
pembangunan ulang arsitektur SQL Server agar sesuai untuk digunakan oleh
perusahaan, yaitu SQL Server 7.0. pembangunan arsitektur tidak dilakukan
dari awal, tapi dari arsitektur yang sudah ada dengan disertai penyesuaian
terhadap beberapa aplikasi yang telah berjalan pad SQL Server. Dengan rilis
pertama ini menjadikan SQL Server sebagai DBMS pertama yang dapat
2000. Pada versi ini ditambahkan fitur XML, data mining, upgrade OLAP
dari versi sebelumnya, dan fitur materialized views. Sedangkan rilis ketiga
yaitu SQL Server 2005.
Selain sejarah, rasanya perlu juga dikenalkan juga beberapa fitur yang
dimiliki oleh SQL Server 2005. Beberapa diantaranya adalah:
1. Upgrade menjadi SQL Server 2005, misalnya dari versi 2000, berbeda
dengan upgrading pada versi-versi sebelumnya, maka tidak perlu ada
migrasi database.
2. Perubahan tools sets dapat dikatakan dilakukan secara besar-besaran.
SQL Enterprise Manager dan Query Analyzer diganti dengan SQL
Server Management Studio. Beberapa kemampuan Analysis Manager
juga telah tercakup pada SQL Server Management. The Client Network
Utility, server Network Utility, dan SQL Service Manager diganti
dengan SQL Server Configuration Manager MMC snap-in. selain itu
ada tambahan tool set baru, yaitu Business Intelligence Development
Studio, yang digunakan membangun aplikasi business intelligence.
Dengan adanya perubahan tool set secara besar-besaran ini dapat
mendukung fungsionalitas DBA secara keseluruhan yang tidak
didapatkan pada beberapa rilis sebelumnya.
3. SQL Server 2005 menggantikan Data Transformation Service (DTS)
pada SQL Server 7.0 dan 2000 dengan SQL Server Integration Services
(SSIS). Meski sangat mungkin untuk menjalankan package DTS di
SQL Server 2005, tidak ada lagi tools yang dapat mendukung
migrasi dari package DTS menjadi SSIS untuk melakukan
pengembangan baru, yaitu dengan Data Transformation Services
Migration Wizard.
4. Menambahkan dukungan untuk AMD dan Intel 64 bit pada arsitektur
x86, Itanium 64 bit, dan ekstensi untuk tuning system NUMA (
Non-Uniform Memory Access).
Berikut adalah alasan dan keunggulan menggunakan Microsoft SQL
Server 2005 sebagai manajemen pengolahan data, antara lain:
1. Menyediakan pengelolaan view secara dinamis, yaitu dengan adanya
catalog views, karena digantikanya sistem tabel menjadi sistem catalog.
Pengelolaan dalam DBMS dan memecahkan permasalahan dengan
adanya Dedicated Administrative Console dan melakukan tuning.
2. Mampu menyimpan dan memelihara mirror kopian database dari
server lain.
3. Mengurangi beban kerja DBA.
4. Upgrading dari versi sebelumnya tidak memerlukan migrasi database.
Selain perangkat lunak, perangkat keras (hardware) juga dibutuhkan
sebagai media untuk aplikasi yang dibangun. Berikut adalah penjelasan mengenai
standart minimum beberapa perangkat keras yang dibutuhkan :
a. Sistem Operasi : Standar minimum sistem operasi yang disarankan adalah
sistem operasi Microsoft Windows XP. Namun yang akan digunakan
Microsoft Windows dipilih karena aplikasi yang akan dibangun berbasis
Windows.
b. Media Output : Media untuk output program berupa monitor PC ataupun
monitor laptop.
c. Media Input : Media untuk input program berupa mouse, keyboard, keypad
laptop ataupun touchpad laptop.
3.2 Perancangan Sistem
Setelah tahap analisa sistem selesai dilakukan, tahap selanjutnya dalam
siklus pembuatan sistem adalah desain sistem. Pada tahap ini terdapat aktifitas
pendefinisian kebutuhan fungsional-fungsional dan persiapan untuk rancang
bangun hingga implementasi dari sistem informasi. Langkah-langkah yang
dilakukan dalam tahap perancangan sistem adalah.
3.2.1 System Flow Penilaian
Aliran sistem adalah bagian yang menunjukkan arus kerja secara
menyeluruh dari suatu sistem terkomputerisasi yang menjelaskan urutan
prosedur-prosedur yang terdapat di dalam sistem. Dalam rancangan kerja aplikasi dalam hal
pemrosesan data nilai praktikum, terdapat dua entitas yang berhubungan dengan
proses. Namun hanya satu entitas yang berhubungan langsung dengan sistem. Dua
entitas tersebut adalah praktikan dan pengguna (instruktur praktikum dan kepala
laboratorium). Pihak instruktur praktikum bertanggung jawab atas nilai tiap
praktikan yang diinputkan ke dalam sistem dan juga mengecek nilai akhir
apabila terdapat permintaan revisi nilai dari para praktikan yang telah disetujui
oleh kepala laboratorium. Sedangkan untuk praktikan dan kepala laboratorium
hanya dapat melihat nilai matang praktikum setelah sesi praktikum berakhir
melalui aplikasi berbasis web yang telah disediakan.
Dalam rancangan sysflow (System Flow) sistem penilaian praktikum
laboratorium Basis Data UPN “VETERAN” Jawa Timur. Proses dimulai pada
menampilkan data nilai praktikan berdasarkan sesi praktikum, jenis nilai, dan
modul. Setelah itu proses dilanjutkan input nilai yang berdasarkan penilaian
instruktur terhadap kinerja tiap praktikan. Dilanjut kemudian ke proses simpan
nilai praktikan yang membutuhkan detail data pada entitas praktikan, pengguna,
dan sesi praktikum yang kemudian nilai-nilai tersebut akan meng-update nilai
yang telah ada pada entitas nilai. Setelah proses menyimpan nilai selesai,
instruktur dapat mengecek ulang nilai praktikan yang telah tersimpan. Selanjutnya
adalah tugas untuk kepala laboratorium untuk melihat laporan nilai secara
keseluruhan dan memutuskan untuk mencetak laporan atau tidak. Dalam sistem
ini diberikan menu untuk rekapitulasi nilai akhir, yang dapat memudahkan kerja
instruktur dalam hal rekapitulasi (meng-update nilai total praktikum per modul,
nilai rata-rata, dan grade nilai) dengan waktu yang singkat serta tingkat akurat
data yang tinggi, sehingga meminimalisir adanya kesalahan pada proses nilai
akhir. Proses selengkapnya dalam sysflow penilaian praktikum dapat dilihat dalam
Gambar 3.2 System Flow Sistem Penilaian Praktikum
3.2.2 Data Flow Diagram
Data Flow Diagram (DFD) menggambarkan aliran data yang terjadi di
dalam sistem yang dirancang, sehingga dengan dibuatnya DFD ini akan terlihat
a. Context diagram
Context diagram menggambarkan proses aliran data yang terjadi
dalam sistem secara garis besarnya. Selanjutnya Context diagram dapat di
dekomposisi menjadi data flow diagram level 0 yang menjelaskan proses
level yang lebih tinggi. Selengkapnya dapat dilihat pada Gambar 3.3. Dapat
dijelaskan bahwasanya jumlah entitas yang berhubungan dengan sistem
secara langsung adalah 3 entitas, yaitu : kepala laboratorium, instruktur, dan
praktikan. Dimana masing- masing entitas mempunyai hak dan kepentingan
masing-masing.
data input nilai demo prak data input nilai disiplin
Gambar 3.3 Context Diagram
b. DFD Level 0
Dalam penggambaran DFD level 0 ini, tidak meletakkan beberapa
simbol database karena harus melalui proses selanjutnya terlebih dahulu.
Ada beberapa proses dalam DFD level 0 yang dibutuhkan, yaitu: proses
olah nilai dan proses olah laporan. Kedua proses tersebut akan berlanjut ke
proses olah fungsi web service. Proses selengkapnya dapat dilihat pada
pencarian data laporan 3 data input nilai demo prak
data input nilai lapres
c. DFD Level 1 Olah Fungsi Web Service
Pada DFD level 1, terdapat dua proses yang menuju ke proses olah
fungsi web service, proses pertama adalah proses olah nilai dan proses
lanjutan yaitu proses fungsi update nilai. Dalam proses ini membutuhkan
detail data pada tabel praktikan, pengguna, dan sesi prak. Setelah itu
melakukan eksekusi data pada tabel nilai. Untuk proses kedua menuju ke
proses lanjutan yaitu proses fungsi tampil laporan. Dalam proses ini pertama
kali akan melakukan pencarian data berdasarkan sesi dan juga modul.
Selanjutnya data yang dicari akan diterima dan kemudian akan merespon
kembali ke proses olah laporan. Proses selengkapnya dapat dilihat pada
Gambar 3.5.
[response pencarian laporan][request fungsi cari laporan]
execute update nilai
3.2.3 Entity Relationship Diagram
Entity Relationship Diagram (ERD) dari Sistem Informasi Penilaian dan
Absensi terdiri dari Conceptual Data Model (CDM) dan Physical Data Model
(PDM). Gambaran CDM dan PDM dapat dilihat pada Gambar 3.6 dan Gambar
3.7.
a. Conceptual Data Modelling (CDM)
Gambar 3.6 merupakan Conceptual Data Model (CDM) digunakan
dalam perancangan database sistem. Dalam CDM ini terdapat total 8 tabel
dengan rincian 6 tabel master dan 2 tabel relasi. Diagram dan relasi lebih
lengkapnya dapat dilihat pada Gambar 3.6.
menginput
b. Physical Data Model (PDM)
Gambar 3.7 merupakan Physical Data Model pada Sistem Penilaian
Praktikum. PDM merepresentasikan table-tabel yang digunakan beserta
dengan tipe data dan panjang karakter dari masing field.
ID_PENGAJAR = ID_PENGAJAR
Gambar 3.7 PDM (Physical Data Modelling)
c. Struktur Database
Adapun perancangan tabel yang terdapat dalam pembuatan aplikasi
pada laboratorium basis data UPN “Veteran” JATIM adalah sebagai
Tabel 3.1 Struktur Tabel Pengguna
KETERANGAN
Tabel 3.2 Struktur Tabel Praktikan
KETERANGAN
Foreign Key : npm_praktikan, id_mdl, id_pengajar
Tabel 3.3 Struktur Tabel Nilai
Tabel 3.4 Struktur Tabel Modul
KETERANGAN
Foreign Key : id_sesi, id_pengajar, npm_praktikan
Tabel 3.5 Struktur Tabel Penjadwalan
Fungsi : menyimpan data detail pengajar
Tabel 3.6 Struktur Tabel Pengajar
KETERANGAN
Fungsi : menyimpan data detail sesi praktikum
Tabel 3.7 Struktur Tabel Sesi Praktikum
8. Nama Tabel : praktikum
Primary Key : id_prak
Foreign Key : -
Fungsi : menyimpan data detail praktikum
Tabel 3.8 Struktur Tabel Praktikum
KETERANGAN
Sebelum menuju ke proses pemrograman, hal yang akan dilakukan pertama
adalah merancang desain interface. Desain interface yang akan dibuat ini
bukanlah desain matang yang sudah jadi, melainkan desain yang akan menjadi
patokan dasar form aplikasi. Dalam merancang desain interface akan bergantung
kepada hasil akhir sysflow (aliran sistem) yang telah dibuat. Jika dalam mendesain
antarmuka aplikasi tanpa adanya desain sysflow, maka yang terjadi adalah
perulangan yang tidak perlu dalam mendesain karena akan muncul banyak
kebutuhan yang tak terduga. Berikut adalah desain interface untuk keseluruhan
form aplikasi baik yang berbasis desktop maupun web:
a. Form Aplikasi Berbasis Desktop
Untuk form aplikasi berbasis desktop akan dibangun empat form, antara
dan form modul. Form lengkap aplikasi berbasis desktop dapat dilihat pada
Gambar 3.8 hingga Gambar 3.12.
1. Form Login
Gambar 3.8 Desain InterfaceFormLogin
Desain form login diperuntukkan sebagai form awal untuk verifikasi user
yang berhak mengakses ke dalam form utama. Form login ini sangat
dibutuhkan untuk mencegah penyalahgunaan aplikasi dari pihak-pihak diluar
pihak internal (instruktur praktikum dan kepala laboratorium).
2. FormInput Nilai Praktikum
Desain form input nilai praktikum dirancang untuk kegiatan input nilai
praktikum. Dalam desain ini dimaksimalkan untuk kemudahan user dalam
memahami cara kerja input nilai praktikum.
3. FormLog Nilai (Khusus Kalab)
Gambar 3.10 Desain InterfaceFormLog Nilai
Desain log nilai dirancang untuk melihat update data nilai praktikum.
Dalam desain ini diberikan pilihan untuk melihat update data nilai
berdasarkan tanggal yang dipilih.
4. Form Cek Laporan
Gambar 3.11 Desain InterfaceForm Cek Laporan
Desain cek laporan dirancang untuk proses menampilkan data nilai
pilihan untuk menampilkan nilai total, rata-rata, serta grade (nilai huruf) dan
pilihan kedua untuk menampilkan nilai tupen, disiplin, demo praktikum, serta
lapres.
5. Form Modul (Khusus Kalab)
Gambar 3.12 Desain InterfaceForm Modul
Desain modul dirancang untuk melakukan proses update modul yang bisa
di akses oleh asisten maupun instruktur. Dalam desain ini diberikan pilihan
untuk melakukan proses update modul berdasarkan modul dan status modul
yang dipilih.
b. Form Aplikasi Berbasis Web
Untuk form aplikasi berbasis web juga akan dibangun empat form, antara
lain : form menu utama, form menu laporan user, form menu laporan admin,
dan form menu aktivasi. Form lengkap aplikasi berbasis web dapat dilihat
pada Gambar 3.13 hingga Gambar 3.16.
1. Form Menu Aktivasi
Desain menu aktivasi dirancang untuk proses mengubah status praktikum
yang akan aktif pada semester saat ini. Dalam desain ini hanya diberikan
pilihan praktikum yang akan dipilih kepala laboratorium sebagai praktikum
aktif.
2. Form Menu Utama
Gambar 3.14 Desain InterfaceForm Menu Utama
Desain menu utama dirancang untuk halaman pembuka aplikasi berbasis
web. Dalam desain ini terdapat pilihan untuk login (khusus kepala
laboratorium) dan juga pilihan untuk melihat nilai praktikum untuk praktikan.
3. Form Menu Laporan User
Desain menu laporan user dirancang untuk menampilkan data nilai
praktikum untuk user (praktikan). Dalam desain ini hanya diberikan pilihan
menampilkan data nilai praktikum berdasarkan sesi praktikum yang dipilih.
4. Form Menu Laporan Admin
Gambar 3.16 Desain InterfaceForm Menu Laporan Admin
Desain menu laporan admin dirancang untuk menampilkan data nilai
praktikum untuk kepala laboratorium. Dalam desain ini diberikan pilihan
menampilkan data nilai praktikum berdasarkan sesi praktikum dan modul
yang dipilih.
3.2.5 Pseudo-code Program
Pseudo-code adalah kode atau tanda yang menyerupai (pseudo) atau
merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering
digunakan untuk menuliskan algoritma dari suatu permasalahan. Pseudo-code
berisikan langkah-langkah untuk menyelesaikan suatu permasalahan (hampir
sama dengan algoritma), hanya saja bentuknya sedikit berbeda dengan algoritma.
permrograman. Selain itu biasanya pseudo-code menggunakan bahasa yang
mudah dipahami secara universal dan juga lebih ringkas daripada algoritma.
Berikut adalah pseudo-code dari aplikasi berbasis desktop dan web :
a. Pseudo-code Aplikasi Berbasis Desktop
Prosedur Login
Input username. Input password.
Tekan tombol “submit”.
IF username dan password = Cocok THEN Form Input Nilai Praktikum muncul. ELSE
Input ulang username dan password. Prosedur Tampil Nilai Admin
Pilih Sesi.
Pilih Modul.
Tekan tombol “submit”. Prosedur Tampil Nilai User
Pilih Sesi.
Tekan tombol “submit”.
b. Pseudo-code Aplikasi Berbasis Desktop
Prosedur Login
Input username.
Input password.
Tekan tombol “submit”.
IF username dan password = Cocok THEN Form Input Nilai Praktikum muncul. ELSE
Input ulang username dan password.
Prosedur Utama Input Nilai Praktikum
Pilih Sesi
Pilih Jenis Nilai
Pilih Modul
Tekan tombol “tampilkan”.
IF pilih input nilai praktikan per orang = TRUE THEN
Pilih praktikan.
Input Nilai.
Tekan “enter”.
ELSE
Centang check box “semua nilai praktikan”.
Tekan “enter”. Prosedur Update Nilai
IF update nilai per modul = TRUE THEN
Pilih modul 1, 2, 3, 4, 5, 6, 7, 8, FP ELSE IF update nilai total, rata2, dan grade nilai = TRUE THEN
Pilih Sesi.
Pilih NPM.
ELSE
Tutup Form Data Laporan. Prosedur Cek Laporan
IF radio button “nilai total, rata2, dan grade” = TRUE THEN
Pilih Sesi.
Tekan tombol “submit”.
ELSE
Pilih Sesi.
Pilih Modul.