SITUS WEB DAN APLIKASI SENTRALISASI DATA PRAKTIKUM LABORATORIUM JURUSAN SISTEM KOMPUTER UNIVERSITAS GUNADARMA MENGGUNAKAN VB.NET DAN SOAP Bintang Eka Putera 1) Raden Supriyanto, SSi., MSc., 2) Jurusan Sistem Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Gunadarma Jl Margonda 100 1) e-mail : [email protected] 2) e-mail : [email protected] ABSTRAK SITUS WEB DAN APLIKASI SENTRALISASI DATA PRAKTIKUM LABORATORIUM JURUSAN SISTEM KOMPUTER UNIVERSITAS GUNADARMA MENGGUNAKAN VB.NET DAN SOAP, merupakan aplikasi berbasis web, dan aplikasi berbasis desktop yang dapat digunakan, untuk melakukan beberapa kegiatan administrasi laboratorium secara online. Baik praktikan maupun staff, keduanya dapat menggunakan aplikasi ini untuk mengetahui berbagai macam informasi, kegiatan Laboratorium yang berada dibawah Jurusan Sistem Komputer. Informasi tersebut, berupa daftar nilai serta status kelulusan praktikan, kalender akademik laboratorium, jadwal praktikum, dan berita mengenai kegiatan, didalam laboratorium. Berbeda dengan aplikasi berbasis web, aplikasi sentralisasi data berbasis desktop, adalah aplikasi yang digunakan, untuk mempermudah proses distribusi data nilai praktikum, dari server administrasi laboratorium, kepada beberapa client, seperti bagian koordinator laboratorium, dan sekretariat jurusan. Aplikasi ini, dikembangkan menggunakan bahasa pemrograman Visual Basic .Net 2008 Framework 3.5 SP1, yang sangat kaya dengan berbagai komponen pengelolaan jaringan. Dalam transaksi data, aplikasi ini membungkus objek data yang dikirim menggunakan protokol SOAP, sedangkan untuk meningkatkan keamanan dalam transaksi, digunakan algorithma enkripsi TripleDES, dengan dukungan algorithma enkripsi asimetrik RSA dalam proses distribusi kunci publik, serta validasi menggunakan algorithma MD5. Aplikasi sentralisasi data praktikum berbasis desktop, menggunakan komponen Crystal Report, untuk memberi 1 kemudahan dalam proses pemeriksaan informasi secara langsung, oleh operator pada sisi client. Kata kunci : web, middleware, socket, soap, vb.net, enkripsi, public key mahasiswa, PENDAHULUAN Saat ini, Jurusan Sistem Komputer, Fakultas Ilmu Gunadarma, Komputer, memiliki Universitas tiga jenis laboratorium, yaitu Laboratorium Dasar, Laboratorium Menengah, dan Laboratorium Lanjut. Ketiga laboratorium tersebut, memiliki berbagai macam praktikum yang bersifat unik, dengan tingkat kesulitan dan jumlah praktikan Banyaknya jumlah laboratorium, praktikum, dan praktikan, menimbulkan berbagai macam persoalan. Baik dari sisi laboratorium, maupun dari sisi mahasiswa, yang menjadi praktikan. Salah adalah sulitnya melakukan distribusi informasi dari sisi laboratorium, kepada seluruh praktikan secara cepat dan efisien, terutama, ditengah kesibukan Dengan melihat kemajuan teknologi internet yang sudah semakin pesat, dan sudah menjadi hal yang biasa bagi khususnya mahasiswa Universitas Gunadarma. Ada baiknya, jika teknologi ini staf laboratorium, dan seluruh staf Sekretariat Jurusan Sistem Komputer, Universitas Gunadarma. Karena kemampuan memperkecil jarak untuk antara pemberi informasi dengan penerima yang tinggi, penggunaan aplikasi berbasis halaman web, dapat menjadi salah satu solusi yang baik, terutama, untuk masalah distribusi juga yang membutuhkan. Dengan dibukanya hot-zone Universitas Gunadarma untuk seluruh mahasiswa, maka, saat ini mahasiswa dapat menggunakan layanan web dengan lebih mudah dan efisien. Aplikasi sentralisasi data praktikum, adalah sebuah aplikasi middleware yang digunakan oleh administrator database, untuk menerima, dan mengirim informasi, dari bagian koordinasi data laboratorium rutinitas yang sangat tinggi. masyarakat, asisten, informasi akademik kepada seluruh pihak yang beragam. satunya, praktikan, digunakan untuk melakukan sosialisasi informasi, kepada kepada Staf Sekretariat Jurusan Sistem Komputer, Aplikasi secara ini, aman dan menggunakan cepat. protokol middleware SOAP, sehingga, secara tidak langsung, telah menghilangkan batas sistem operasi yang menggunakannya. Secara sederhana aplikasi ini bekerja 2 secara client - server, dimana bagian koordinasi data laboratorium menjadi server, dan Sekretariat Jurusan menjadi client dari aplikasi ini. Untuk keamanan pengiriman data, aplikasi ini menggunakan enskripsi pada data yang dikirim. Gambar 1 Arsitektur Client Server TELAAH PUSTAKA Pada arsitektur client server, client Aplikasi Client - Server Pemrograman Jaringan akan membuat sebuah permintaan dalam modern sekarang ini berbasis pada model client server. Pada sebagian besar kasus, server biasanya mengirim data, sedangkan client menerimanya. bentuk Service Request kepada server untuk menggunakan suatu resource. Setelah itu server akan mengirim Service Response berupa balasan dari server atas permintaan dari client berupa hasil proses. Jaringan client - server adalah memanfaatkan sebuah komputer dari jaringan sebagai pusat (central) pertemuan Konsep TCP/IP TCP/IP merupakan protokol standar antar beberapa client pada aplikasi yang pada sama. Dalam proses pertemuannya tiap - menghubungkan banyak komputer yang tiap client harus melakukan koneksi berbeda jenis mesin maupun sistem dengan server agar dapat bergabung pada operasi agar dapat berinteraksi satu sama aplikasi yang sama, proses inilah yang lain. disebut dengan protokol komunikasi client - server. jaringan Konsep internet TCP/IP yang berawal dari kebutuhan DoD (Department of Defense) Client hanya bisa menggunakan USA akan suatu komunikasi diantara resource yang disediakan server sesuai berbagai variasi komputer yang telah ada. dengan otoritas yang diberikan oleh Komputer-komputer DoD ini seringkali administrator. harus menghubungkan organisasi peneliti antara dengan satu organisasi peneliti lainnya. Oleh karenanya pada tahun 1969 dimulailah penelitian terhadap 3 serangkaian protokol TCP/IP. Tahun 1968 password, walaupun tak semua FTP DoD menggunakannya. ARPANet (Advance Research Project Agency) memulai penelitian yang kemudian menjadi cikal bakal packet Network Terminal Protokol (telnet) memungkinkan switching. sebagai menjadi Remote Login tulang terkenal punggungnya, sebagai internet. pengguna komputer untuk melakukan login ke dalam suatu komputer di dalam suatu jaringan. Jadi Protokol-protokol TCP/IP dikembangkan hal lebih lanjut pada awal 1980 dan menjadi menggunakan protokol standar untuk ARPANet pada perpanjangan tangan dari komputer tahun jaringan tersebut. 1983. Protokol-protokol ini mengalami peningkatan popularitas di komunikasi pemakai ketika TCP/IP dapat diimplementasikan dengan sangat baik pada versi 4.2 BSD (Berkeley Standar ini berarti bahwa pengguna komputer sebagai Computer mail Digunakan untuk menerapkan sistem e-mail(elektronik mail). Network File System (NFS) Distribution) UNIX. Versi ini digunakan Pelayanan akses file - file jarak jauh secara luas pada institusi penelitian dan yang memungkinkan klien - klien pendidikan serta digunakan sebagai dasar untuk mengakses file - file pada dari beberapa penerapan UNIX komersial, komputer jaringan jarak jauh walaupun termasuk SunOS dari Sun dan Ultrix dari file tersebut disimpan secara lokal. Remote Execution Digital. Berikut ini adalah layanan Memungkinkan pengguna komputer “tradisional” yang dilakukan TCP/IP: untuk menjalankan suatu program dari Pengiriman File (File Transfer) komputer yang berbeda. File Transfer memungkinkan Protokol (FTP) pengguna komputer yang satu untuk dapat mengirim ke atau menerima file dari komputer jaringan. Karena masalah keamanan data, maka FTP seringkali memerlukan nama pengguna(user name) dan Pemrograman Socket Socket adalah sebuah kelas yang digunakan sebagai mekanisme komunikasi untuk membentuk terjadinya pertukaran data antar program atau proses baik dalam satu mesin maupun antar mesin menggunakan file dekriptor. 4 Setelah ada hubungan antar sistem, baru memiliki dilakukan pertukaran data melalui stream. penggunaan jalur data yang minimal. Ada dua golongan socket di Unix keunggulan dalam hal Socket Datagram dapat dianalogikan yang paling umum dipakai yaitu: dengan komunikasi yang terjadi pada Socket Lokal atau AF_UNIX kelas, Socket Lokal adalah socket yang melakukan semacam terbatas sebuah ini untuk saat broadcasting guru materi pelajaran untuk diterima oleh setiap Socket murid. Tidak ada yang dapat menjamin umumnya materi pelajaran dapat diterima oleh file. digunakan melakukan pada dengan komunikasi perantaraan misalnya komunikasi antar semua murid dengan baik, kecuali diterapkan metoda rechecking. aplikasi dalam satu mesin. Socket Networking atau AF_INET Socket Networking ditujukan untuk Rechecking ini dapat dilakukan baik oleh guru maupun murid. Guru komunikasi antar aplikasi antar mesin bertanya untuk memastikan jawaban dalam lingkungan jaringan TCP/IP. dari murid benar, atau murid bertanya Identifikasi socket dilakukan dengan untuk memastikan kebenaran materi sebuah service identifier yaitu berupa yang diterimanya. Socket Datagram nomor port TCP/IP yang dapat di pun menggunakan metoda ini untuk sambung oleh client. menjamin pengiriman data dapat dilakukan dengan baik. Socket Networking Socket Socket Stream Networking memiliki beberapa jenis, namun yang paling umum digunakan adalah sebagai berikut: Socket Stream, koneksi dua aplikasi Datagram berkomunikasi dengan (UDP) cara yang berbeda. Socket ini tidak membutuhkan koneksi yang tersambung dengan benar untuk mengirimkan dan menerima data. Model koneksi semacam ini tidak dapat menjamin komunikasi full-duplex berbasis aliran (stream) data. Pada model komunikasi Socket Datagram Socket Socket Stream (TCP) adalah socket data dapat harus dalam kondisi tersambung dengan benar untuk dapat bertukar data. Ini dapat dianalogikan seperti komunikasi telepon. Jika sambungan telepon di salah satu titik putus, maka komunikasi Koneksi tidak model dapat seperti terjadi. ini akan dipertukarkan dengan baik, namun 5 menjamin data dapat dipertukarkan dengan baik, namun memiliki kelemahan dalam hal penggunaan jalur data yang relatif besar dan tidak boleh terputus. Gambar 2 Diagram Blok Soket Untuk mengadakan komunikasi dari antara dua mesin atau lebih yang berada beberapa elemen-elemen utama sebagai dalam satu jaringan dibutuhkan suatu berikut: protokol, agar suatu komunikasi dapat Protokol terjadi Socket Networking Suatu aturan atau terdiri mekanisme dan protokol dimengerti. yang Aturan digunakan atau dalam dimana dua komputer atau lebih dapat komunikasi socket dapat menggunakan saling TCP ataupun UDP. berinterkoneksi. Protokol mendefinisikan suatu format paket data yang akan menunjang dipertukarkan mekanisme untuk tersebut. Misalnya TCP/IP Local IP Address Alamat IP (internet protocol) milik client yang akan melakukan koneksi terhadap server Local Port Alamat Port milik client yang digunakan untuk melakukan koneksi terhadap server Remote IP Address Alamat IP milik server dimana client akan melakukan koneksi. Remote Port Alamat Port milik server dimana client akan melakukan koneksi World Wide Web (WWW) World Wide Web (WWW), lebih dikenal dengan web, merupakan salah satu layanan yang didapat oleh pemakai komputer yang terhubung ke Internet. Web computer memudahkan untuk pengguna berinteraksi dengan pelaku internet lainnya dan menelusuri (informasi) di internet. Selain itu, web telah diadopsi oleh perusahaan sebagai sebagian dari strategi informasinya, karena beberapa alasan: Akses informasi mudah, Setup server lebih mudah, Informasi mudah didistribusikan, dan Bebas platform; informasi dapat disajikan oleh browser web pada sistem operasi mana saja karena adanya 6 standar dokumen berbagai tipe data dokumen html dapat disajikan. danMacromedia Dreamweaver. Kelebihan Cascading Style Sheet (CSS) seperti dan EditPlus kekurangan JavaScript dapat dilihat pada tabel berikut. Cascading Style Sheet merupakan suatu teknologi yang digunakan untuk memperindah tampilan halaman website (situs). Dengan menggunakan CSS kita dapat mengubah secara keseluruhan tampilan yang ada di situs kita, sekaligus memformat ulang situs kita dengan lebih cepat dan praktis. Cascading Style Sheet sendiri dapat ditulis langsung pada dokumen html atau ditulis diluar dokumen html. JavaScript JavaScript adalah bahasa pemrograman khusus untuk halaman web. Tabel 1 Kelebihan Dan Kekurangan JavaScript Kelebihan Kekurangan Cepat, Karena Tidak Dapat membuat diletakan di dalam program aplikasi dokumen HTML dan tersendiri dapat langsung dicoba pada browser Objek yang dikelola Mudah, karena JavaScript sangat memiliki sedikit terbatas sintaks Script dapat disalin atau di-copy dari Web browser, sehingga Terbuka, (Platform setiap orang dapat Independent) menggunakan program JavaScript yang telah kita buat Ukurannya sangat kecil dibandingkan dengan program - program Java JavaScript terdiri dari dua suku kata, yaitu Java yang berarti bahasa pemrograman berorientasi objek pengembangan dari Sun dan Script adalah instruksi program. JavaScript dikembangkan Netscape sebagai bahasa pemrograman sederhana karena tidak bisa digunakan untuk membuat suatu aplikasi atau applet. Namun dengan JavaScript kita dapat membuat halaman web yang interaktif dan Secara mendasar basis data (database) adalah kumpulan data yang disimpan didalam sebuah file atau banyak file. Dalam sistem informasi berbasis komputer maka database merupakan kumpulan data yang terstruktur sehingga memungkinkan kemudahan dalam pemrosesan untuk menghasilkan suatu informasi. mudah. Untuk melakukan pengeditan, dapat menggunakan editor teks biasa seperti Notepad Basis Data atau menggunakan editor Sistem manajemen basis data (Database Management System (DBMS) merupakan suatu software yang digunakan 7 untuk mengelola basis data, mulai dari dasarnya yang sama. Kelebihan tersebut pendefinisian, data, bisa dari kemampuan menangani data maintenance data sampai mengatur hak dalam jumlah banyak, kelengkapan sistem akses pengguna basis data. keamanan, pengelolaan Sistem manajemen basis data kemudahan backup dan replikasi dan lain - lain. Management Ada beberapa komponen yang harus Database System, RDBMS) merupakan diperhatikan dalam perancangan sebuah salah satu model dari sistem manajemen database, komponen - komponen tersebut basis data. adalah sebagai berikut: relasional (Relational RDBMS memiliki beberapa Tabel adalah sebuah tempat untuk komponen dasar. Yaitu: Basis Data (“DB” dalam RDBMS) Tempat yang data terstrukturkan, beberapa kolom yang disebut field dan baris yang disebut record. Dalam terdiri dari kolom dan baris. Sistem Manajemen (“MS” dalam pembuatannya terdapat beberapa field khusus yang disebut field kunci (key) seperti primary key RDBMS) Software yang memungkinkan data dimasukan, diubah, diambil Relasional (“R” dalam RDBMS) Menunjukan - bahwa masing dan foreign key. Kedua jenis field ini umumnya dapat digunakan dalam proses pengindeksan dan pembuatan kembali, dicari dan dihapus. masing (mengelompokan) didalam database. Tabel terdiri dari dimana data disimpan dalam tabel yang dapat pemisah data menyimpan (repository) Tabel data tabel relasi dengan tabel lainnya. pada saling Normalisasi Normalisasi suatu tahap perancang database harus mempertimbangkan masalah ruang dimana berhubungan. Beberapa RDBMS yang terkenal penyimpanan adalah (efisiensi), saat ini adalah Oracle, Sybase, MS SQL duplikasi Server, Interbase, Informix, CA Open konsistensi dan integritas data didalam Ingres, PostgreSQL, MySQL dan MS basis data yang dirancangnya. proses Access. Tiap RDBMS memiliki kelebihan normalisasi umumnya dilakukan secara masing bertingkat, - masing selain komponen dan mencegah namun kelebihan biasanya data, hanya 8 dengan sampai tingkat ketiga (third rollback normal melakukan recovery apabila terjadi form) saja suatu proses ‘crash’. normalisasi sudah mencukupi Urutan tingkat normalisasi adalah kemampuan InnoDB telah untuk mendukung konstraint foreign key sebagai jenis tabel pertama dalam MySQL. sebagai berikut: • Tingkat dan Pertama (First Normal Form, 1NF) adalah menghilangkan MYSQL MySQL merupakan software system kelompok informasi kolom dalam manajemen tabel yang berulang. database (Database • Tingkat Kedua (Second Normal Management Sistem – DBMS) yang Form, 2NF) adalah menghilangkan sangat popular si kalangan pemrogram data yang bukan field kunci dan web, tergantung pada field kunci. dengan menggunakan script PHP dan Perl. • Tingkat Ketiga (Third Normal terutama di lingkungan Linux Software database ini kini telah tersedia Form, 3NF) adalah tiap field dalam juga satu record harus berisi informasi Windows (98/ME ataupun NT/2000/XP). dalam satu didefinisikan kesatuan oleh kunci pada platform system operasi yang Database MySQL tersedia secara utama bebas cuma - cuma dan boleh digunakan oleh setiap orang, dengan lisensi open (primary key). source GNU General Public License Relasi Data Relasi data adalah memungkinkan (GPL) atau pun lisensi komersial non isi suatu tabel dapat menjadi bagian GPL. Saat ini diperkirakan lebih dari 3 dari tabel lain ketika dibaca. Dalam juta pemakai di seluruh dunia, dengan Server database MySQL, fitur ini bisa lebih diperoleh ketika kita menggunakan memasangnya, mesin Yahoo!, penyimpanan dengan jenis dari setengah termasuk MP3.com, juta server didalamnya NASA, Silicon InnoDB. Yaitu jenis penyimpanan pada Graphics, HP, Xerox, Cisco dan Texas MySQL yang memungkinkan MySQL Instruments. mempunyai kemampuan untuk Data didalam tabel sendiri dapat penanganan tabel transaksi basis data memiliki bermacam tipe disesuaikan secara aman (transaction-safe, dengan penggunaannya. Berikut adalah komplian ACID), seperti commit, 9 tabel tipe data yang umum dipakai didalam MySQL. Tabel 2 Tipe Data Umum Didalam MySQL Keterangan Bilangan bulat dengan kisaran: (Unsigned) 0 s/d INT (M) 4294967295 [UNSIGNED] (Signed) -2147483648 s/d 2147483647 Angka pecahan dengan kisaran: FLOAT (M, D) ± 1.175494351E-38 s/d ± 3.402823466E+38 Tanggal dengan format: DATE YYYY-MM-DD Tanggal dan Waktu dengan Format: DATETIME YYYY-MM-DD HH:MM:SS Karakter dengan panjang tetap sesuai dengan yang CHAR (M) ditentukan. Jumlah karakter yang dapat disimpan adalah antara 0 s/d 255 karakter Karakter dengan panjang karakter dapat berubah ubah sesuai dengan yang VARCHAR (M) disimpan saat itu. Jumlah karakter yang dapat disimpan adalah antara 0 s/d 65535 karakter Objek biner dengan ukuran BLOB bisa mencapai sampai 65535 byte Objek biner berukuran sangat besar yang bisa LONGBLOB mencapai 4,294,967,295 byte Tipe Data Merupakan kelompok perintah yang digunakan pendefinisian macam perintah yang dapat digunakan dalam pengelolaan basis data. Perintah perintah itu digolongkan menjadi DDL, DML dan DCL sesuai dengan fungsinya masing - masing. melakukan database dan pendefinisian table. Dengan kelompok perintah dalam DDL ini maka kita dapat membuat strukturnya, table, mengubah menghapus table, membuat indeks untuk table, dan lainlain yang bermuara pada pembentukan struktur database. Perintah - perintah tersebut adalah CREATE DATABASE, ALTER DATABASE, RENAME DATABASE, DROP DATABASE, CREATE TABLE, ALTER TABLE, RENAME TABLE, DROP TABLE, CREATE INDEX, DROP INDEX. DML Perintah (statement) SQL digunakan untuk melakukan manipulasi data dalam database, menambahkan (insert), mengubah (update), menghapus (delete), mengambil dan mencari data (query). Perintah - perintah tersebut adalah INSERT, MySQL mempunyai bermacam - untuk UPDATE, SELECT, DELETE, TRUNCATE. DCL Termasuk didalam DCL adalah perintah untuk melakukan pendefinisian pemakaian yang boleh mengakses database dan apa saja DDL 10 privilege-nya. Fasilitas ini tersedia sehingga permodelan sistem dunia ke pada system manajemen database yang program menjadi realistis. memiliki fasilitas keamanan dengan Fleksibilitas untuk berubah membatasi pemakai dan system dengan mudah karena hanya kewenangannya. Perintah - Program dapat mengikuti perubahan perintah itu adalah mengubah objek-objek system yang START TRANSACTION, COMMIT, berubah, ROLLBACK, GRANT, REVOKE. program objek lain yang tidak berubah. Jika Pemrograman Berorientasi Objek (PBO) atau Object Oriented Programming (OOP) adalah teknik pembuatan program yang berorientasikan objek. Teknik ini apa itu objek, membuang menggunakan kode pemrograman procedural, keseluruhan kode harus Pemrograman Berorientasi Objek menekankan tanpa bukan diganti dan ini artinya membangun program dari awal kembali. Reusability Kode objek-objek suatu program dapat digunakan pada proyek program bagaimana objek itu digunakan. PBO ini lain dikembangkan suatu kondisi suatu mendekati, sehingga kita tidak perlu program mempunyai kelakuan seperti menulis ulang keseluruhan kode proyek halnya objek-objek yang sehari-hari kita program gunakan, misalnya computer dan di dalam menghemat waktu, tenaga dan biaya. pemikiran berdasarkan bahwa sebenarnya yang kebetulan objek yang tersebut. Hal mempunyai sama ini atau akan objek tersebut tersusun atas berbagai Konsep object oriented memiliki objek yang saling berinteraksi. Ada beberapa keuntungan mengapa kita memilih pemrograman dengan berorientasi objek, yaitu: Realistic modeling Melalui pendekatan terhadap objek yang kita tiru dari dunia nyata, sudut pandang pembuatan program akan selaras dengan realitas dunia nyata, karakteristik utama, yaitu: Enkapsulasi (pembungkusan) Hanya metode dan properties yang dapat diakses dari luar, implementasi internal disembunyikan, sehingga keruwetannya tidak terlihat dari luar. Pengguna objek tidak perlu mengetahui bagaimana implementasi internal suatu operasi objek. Selain itu hal ini memastikan pengguna sebuah objek 11 Ada tidak dapat mengganti keadaan internal objek dengan cara yang tidak layak. Polymorphism cukup banyak program berorientasi objek yang dapat digunakan dalam permodelan system, antara lain Suatu kondisi dimana dua objek atau Visual Basic Net, PHP dan Java. lebih mempunyai antarmuka (interface) yang identik, perilaku namun berbeda. mempunyai Objek - objek Personal Home Page (PHP) PHP singkatan dari PHP Hypertext Merupakan bahasa program dapat menerima pesan yang Preprocessor. sama dari objek lain, tetapi mempunyai berbentuk skrip yang ditempatkan dalam respon yang berbeda tergantung tugas server dan diproses di server. Hasilnyalah objek tersebut. yang dikirimkan ke client, tempat pemakai Inheritance (pewarisan) menggunakan browser. PHP dirancang Kode suatu objek dapat diturunkan untuk membentuk web dinamis. ke objek lainnya yang berdasarkan Pada prinsipnya, PHP mempunyai pada hubungan relasional hierarki, fungsi yang sama dengan skrip – skrip sehingga menjadi seperti ASP ( Active ServerPage ), Cold efisien (karena penulisan ulang kode Fusion, ataupun Perl. Hampir seluruh dapat dihindari). aplikasi berbasis web dapat dibuat dengan penulisan kode Inheritance mengatur polimorfisme PHP ini, namun fungsi PHP yang paling dan enkapsulasi dengan mengizinkan utama adalah untuk konektivitas database objek yang sudah ada tanpa harus dengan web. Dengan PHP, membuat mengimplementasi perilaku aplikasi web yang terkoneksi ke database tersebut. Perilaku tersebut dapat berupa menjadi sangat mudah. Sistem database properties ataupun metode/fungsinya yang telah didukung oleh PHP adalah : ulang Hasil implementasi kelas adalah Oracle objek, Kelas adalah template kumpulan MySQL objek yang mempunyai sifat yang sama, Dll perilaku, atau disebut dengan himpunan Interpreter PHP dalam objek sejenis. Jadi, kelas merupakan cetak mengeksekusi kode PHP pada sisi server biru (blueprint) atau prototipe dimana di (disebut server-side) dan berbeda dengan dalamnya terdapat variabel - variabel dan mesin maya Java yang mengeksekusi metode (fungsi) untuk dijadikan objek. program pada sisi client (client-side). 12 Proses eksekusi kode PHP yang disisipkan dalam pemrograman. Jauh lebih mudah pada halaman HTML secara diagram untuk menguasainya dibandingkan dengan dapat digambar sebagai berikut. versinya yang terdahulu, yaitu Visual Basic 6 (VB6). Ada banyak perubahan dalam VB.NET 2008 ini disbanding VB6, antara lain: Bahasa pemrograman sekarang benarbenar bahasa berbasis objek (Object Oriented Gambar 3 Diagram Interpreter PHP Dalam Proses Eksekusi Secara Client Side Programming), sedangkan VB6 bukan bahasa berbasis objek. [6] Aplikasi dan komponen yang ditulis di VB.NET 2008 mempunyai akses penuh Visual Basic .NET 2008 (VB.NET 2008) ke Net Framework, sedangkan di VB6 Visual Basic .Net 2008 adalah salah tidak dikenal atau tidak digunakan satu program berorientasi objek. Program .NET Framework. Visual Basic .NET 2008 adalah produksi Semua aplikasi yang dibuat beroperasi Microsoft Corp. program ini biasanya dalam manajemen Common Language dipaket bersama-sama dengan Visual C# Runtime (CLR). 2008 dan Visual C++ 2008 dalam paket Common Language Runtime (CLR) Visual Studio 2008. Bahasa Visual Basic adalah suatu runtime lingkungan yang telah karena memproses, melaksanakan dan mengatur kemudahan penggunaannya bagi orang kode dasar Visual Basic, mirip dengan awam dan penulisan kode di dalamnya runtime Visual Basic tradisional, yaitu tidak terlalu rumit dibandingkan dengan vbrun300.dll bahasa C, Delphi, dan Java. Kemampuannya digunakan secara luas atau msvb60.dll. lebih ditingkatkan Visual Basic .Net 2008 (VB.NET sehingga jalannya program yang dibuat 2008) menawarkan banyak kemudahan lebih stabil dan penanganan kesalahan dibandingkan dengan versi lebih baik, dengan tujuan supaya program sebelumnya, antara lain teknik pemrograman dapat dibuat lebih - versi yang dibuat dapat berjalan secara optimum. terstruktur dan lebih banyak bantuan 13 Dalam pembuatan aplikasi menggunakan Visual Basic.NET 2008, tampilan halaman awal dari aplikasi Visual Studio 2008. pertama kali kita akan dihadapkan dengan Gambar 4 Tampilan Awal Visual Studio 2008 Pada tampilan awal tersebut kita dapat membuat aplikasi baru atau Visual C++, Visual C# dan Visual Basic.NET itu sendiri. membuka aplikasi yang telah ada. Untuk membuat aplikasi baru, kita mempunyai dua pilihan, yaitu dengan membuat sebuah SOAP (Simple Object Access Protocol) SOAP (Simple Object Access solution baru atau menggunakan solution Protocol) adalah sebuah protokol XML yang telah ada sebelumnya. Dalam hal ini sederhana untuk pertukaran informasi solution bisa diartikan sebagai wadah dari terstruktur antara aplikasi - aplikasi yang beberapa proyek aplikasi yang dibuat terdistribusi diatas protokol asli web dalam aplikasi Visual Studio 2008. Proyek seperti aplikasi itu sendiri bisa terdiri dari spesifikasi format pesan yang digunakan beberapa bentuk proyek dengan bahasa XML, proses yang dilakukan XML, pemrograman yang berbeda - beda, seperti aturan HTTP. - aturan SOAP melakukan penyandian untuk 14 standarisasi dan definisi tipe data aplikasi, berhak. Dengan enkripsi data dan sebuah persetujuan untuk melakukan disandikan remote procedure calls dan respon. menggunakan sebuah kunci (key). Untuk (encrypted) akan dengan membuka (decrypt) data tersebut dapat digunakan dua buah cara: Soap Didalam VB.NET Untuk menyimpan objek, koleksi Menggunakan kunci yang sama dengan atau data struktur apapun yang ingin kunci disimpan. mengenkripsi (digunakan pada kasus Anda SoapFormatter. menerjemahkan dapat menggunakan SoapFormatter data dan akan strukturnya dapat SoapFormatter, digunakan untuk private key cryptography). Menggunakan kunci yang berbeda (digunakan pada kasus public key kedalam berkas XML. Untuk yang menggunakan referensi cryptography). Cara proyek yang dilakukan dalam System.Runtime.Serialization.Formatters. menggunakan media elektronik adalah Soap ditambahkan kedalam proyek anda. dengan menyandikan informasi dengan suatu kode tertentu (encryption) sehingga tidak Kriptografi Kriptografi (cryptography) adalah bisa terbaca mengembalikan hasil (ciphertext) sandi dan tersebut merupakan suatu ilmu dan seni untuk (decryption) sehingga dapat dibaca oleh menjaga data-data atau informasi agar penerima pesan (plaintext). kata Tugas utama Cryptogrphy adalah "Crypto" yang berarti "Secret" (rahasia) untuk menjaga agar baik plaintext maupun dan "Graphy" yang berarti "Writing" kunci ataupun keduanya tetap terjaga (tulisan). Sebuah algoritma kriptografik kerahasiaannya dari penyadap (disebut (Cryptographic Algorithm), disebut cipher juga dengan lawan, penyerang, pencegat, yaitu penyelundup pesan, musuh, attacker dan aman. Kriptografi persamaan berasal dari matematik yang digunakan untuk proses "Enkripsi" dan Selain untuk keamanan, manfaat "Dekripsi". Metode untuk sebagainya). Enkripsi meyandikan ini digunakan data-data atau dari Cryptography ini adalah untuk: Authentication informasi sehingga tidak dapat dibuka atau dibaca oleh orang lain yang tidak 15 Penerima pesan dapat memastikan RSA RSA keaslian pengirimnya. Penyerang tidak dapat berpura-pura sebagai orang lain. Integrity oleh Ron Rivest, Adi Shamir dan Len Adleman dari MIT. RSA sendiri merupakan singkatan Penerima harus dapat memeriksa apakah dikembangkan pesan telah dimodifikasi yang diambil dari huruf depan dari masing – masing pengembang algoritma ini, yaitu ditengah jalan atau tidak. Seorang Rivest penyusup Shamir Adleman.Teori RSA tidak dapat didasari atas aritmatika modular dan ke dalam operasi bilangan prima, yaitu ketika pesan, mengurangi atau merubah pesan mengalirkan dua bilangan prima itu selama data berada diperjalanan. mudah, namun memfaktorisasikan hasil seharusnya memasukkan tambahan Nonrepudiation dari bilangan - bilangan tersebut adalah Pengirim seharusnya tidak dapat sulit, khususnya jika hasil tersebut besar. mengelak bahwa dialah pengirim pesan Pada sesungguhnya. Tanpa Cryptography, menimbulkan kegemparan di lingkungan seseorang pemerintahan, dialah dapat mengelak bahwa pesan yang pengirim pengeluarannya, sehingga diklasifikasikan RSA teknik sebagai itu produk pemerintahan. Hal ini dapat dimengerti, sesungguhnya. Authority karena itu bisa berarti akan ada pihak Informasi yang berada pada sistem jaringan awal seharusnya dimodifikasi oleh berwenang. Modifikasi hanya dapat tanpa kemungkinan tertangkap oleh agen pihak yang pemerintah. hal itu juga dijaga oleh US yang tidak patent, yang mencegah terjadinya RSA diinginkan, dapat berupa penulisan tambahan pengubahan pesan, pengubahan status, musuh dapat berkomunikasi dengan bebas tidak asli. isi, penghapusan, METODOLOGI PENELITIAN pembuatan pesan baru (pemalsuan), Untuk membuat aplikasi, langkah atau menyalin pesan untuk digunakan yang dilakukan pertama kali adalah oleh penyerang. melakukan pendataan dari seluruh laboratorium sistem komputer, membuat rancangan relasi baris data. berikut adalah 16 gambar rancangan relasi basis data yang penulis buat. Gambar 5 Relasi basis data Langkah berikutnya adalah menentukan protokol distribusi data, merancang aplikasi web, yaitu dengan memperkirakan metode terbaik untuk membagi bentuk halaman berdasarkan meningkatkan informasi merancang sistem distribusi yang aman penjabaran ditampilkan yang akan ditampilkan. informasi pada yang akan aplikasi web kecepatan distribusi, dalam bentuk flowchart. laboratorium Sistem Komputer adalah Informasi dilakukan berita dan kegiatan laboratorium, yang kalender akademik laboratorium, daftar praktikum, jadwal praktikum, daftar hasil kelulusan praktikum, rangkuman nilai praktikum. Gambar 6 Alur Transaksi Data Praktikum Merancang aplikasi sentralisasi data praktikum berbasis desktop. yaitu dengan 17 halaman HASIL DAN PEMBAHASAN web. penyajian informasi disesuaikan dengan jenis halaman. Hasil pendataan laboratorium yang penulis peroleh adalah sebagai berikut. Tabel 3 Laboratorium Pada Jurusan Sistem Komputer Nama Laboratorium Ruang Kampus D, Ruang Laboratorium Dasar D137 Laboratorium Kampus D, Ruang Menengah D132 Kampus D, Ruang Laboratorium Lanjut D121 dan D125 Laboratorium Sistem Kampus J Kalimalang Komputer Kalimalang Gambar 9 Hasil rancangan kaki web Bagian kaki web, berisi informasi bahasa yang digunakan halaman, alamat email web master, dan waktu saat aplikasi dijalankan. Hasil Rancangan Aplikasi Sentralisasi Data Praktikum Berbasis Desktop Hasil Rancangan Aplikasi Web Pada mencoba gambar berikut, menjabarkan Aplikasi penulis bentuk Sentralisasi Data Praktikum Berbasis Desktop yang telah hasil dirancang penulis terdiri dari dua buah rancangan aplikasi web per bagian. aplikasi utama. Kedua aplikasi ini memiliki fungsi yang bersifat client – server. Aplikasi server atau yang diberi Gambar 7 Hasil rancangan kepala web Pada Bagian kepala, nama Transfer Nilai Praktikum Server penulis (TNPS) menyertakan menu utama dan nama yang terhubung langsung dengan database laboratorium sistem komputer menjadi pengenal aplikasi. pada bagian (db_labsiskom) menggunakan data source tersebut penulis juga meletakan logo name (DSN) yang bernama dsn_tnps. universitas gunadarma. Gambar 8 Hasil rancangan badan web Bagian badan web, menampung seluruh informasi yang disajikan oleh 18 dengan server, maka layanan pertama yang dapat digunakan oleh client adalah memeriksa data baru dari aplikasi server yaitu dengan menekan tombol Periksa Data Baru pada tampilan utama. Jika terdapat data baru pada server, maka secara otomatis box daftar Data Praktikum Baru akan terisi. Setelah itu, operator Gambar 10 Tampilan Utama Aplikasi Server dapat memilih salah satu data yang Transfer Nilai Praktikum (TNPS) tersedia lalu menekan tombol Download Ketika dimulai, Aplikasi Server untuk mengambil data baru dari server Transfer Nilai secara otomatis berada pada keadaan aktif (Running TNPS & dan menyimpannya kedalam database internal milik aplikasi client Listening), dimana soket jaringan akan TNP. aplikasi akan menempatkan daftar membuka jalur masuk bagi aplikasi client. nama dari data yang telah didownload Agar server dapat dihubungkan dengan kedalam box 'Data Telah Didownload'. client, operator server harus memastikan Tombol Simpan Sebagai Berkas bahwa server sudah dalam keadaan aktif XML berfungsi untuk menyimpan salah (Running). satu data yang ada pada penyimpanan internal kedalam bentuk dokumen XML. hal ini dapat dimanfaatkan oleh operator untuk keperluan backup secara cepat atau keperluan lain seperti konversi data kedalam format dokumen spreadsheet seperti Excel atau berkas spreadsheet OpenOffice. Tombol Lihat Detil digunakan untuk melihat isi dari data nilai praktikum yang berada didalam daftar Gambar 11 Tampilan Keadaan Awal Aplikasi Client (TNP) 'Data Telah Didownload', tombol tersebut Untuk dapat memanfaatkan layanan akan menampilkan form baru yang berisi dari server TNPS, aplikasi client harus seluruh informasi yang berada pada melakukan periode tahun ajaran yang dipilih. Login. Setelah terhubung 19 Hasil Pengujian Aplikasi Kolom Connected Clients berfungsi Server menampilkan Transfer Nilai Praktikum nomor pengenal sesi (Session Identifier) dari seluruh client Seperti telah dibahas sebelumnya, akan yang sedang terhubung dengan aplikasi langsung membuka jalur komunikasi agar ini. Operator dapat memutuskan hubungan aplikasi client dapat terhubung dengan dengan suatu client dengan memilih aplikasi ini. informasi pada jendela konsol nomor pengenal sesi milik client pada akan menggambarkan seluruh proses yang kolom terjadi pada aplikasi server. (disconnect). ketika dijalankan aplikasi ini Hasil lalu menekan Pengujian tombol Aplikasi 'DC' Client Transfer Nilai Praktikum Pengujian aplikasi client transfer nilai praktikum (tnpc) dimulai dengan menjalankan aplikasi tersebut. Setelah jendela awal muncul, dapat dilihat bahwa hanya ada dua tombol dari aplikasi yang aktif, yaitu tombol 'Login' dan 'Tutup Gambar 12 Tampilan Keadaan Listening Aplikasi Server (TNPS) Aplikasi'. Maksud dari baris terakhir dari jendela konsol bertuliskan 'Server is Running (Port: 14001)' adalah server sudah siap untuk menerima permintaan membuka hubungan dari aplikasi client. Baris yang bertuliskan 'Hubungan dengan server database berhasil dilakukan' menjelaskan mengenai persiapan database memperjelas bahwa aplikasi ini telah berhasil membuka hubungan dengan Gambar 13 Tampilan Keadaan Awal Aplikasi Client (TNP) server database dan dapat digunakan untuk memanfaatkan seluruh sumber daya Aplikasi ini tidak banyak berguna yang diberikan oleh server database. jika tidak terhubung dengan aplikasi 20 server. Namun jika sebelumnya sudah ada Acrobat (pdf), dokumen Microsoft Word data nilai praktikum pada server database (doc), dokumen RichText format (rtf) dan yang terhubung secara langsung dengan dokumen Crystal Report (rpt) itu sendiri. aplikasi ini, maka kolom 'Data Telah Didownload' akan terisi secara otomatis dengan seluruh daftar periode. Setelah melakukan proses download, maka ketika salah satu periode pada kolom data telah didownload dipilih, tombol simpan sebagai berkas xml dan Gambar 14 Tampilan Crystal Report setelah menekan tombol Lihat Detil lihat detil akan aktif. Tombol 'Simpan Sebagai Berkas XML' berfungsi untuk menerjemahkan PENUTUP data nilai praktikum kedalam bentuk berkas dokumen XML, sehingga menjadi Kesimpulan mudah untuk dibawa secara langsung oleh pengguna atau dapat Berdasarkan pada analisis dan hasil diterjemahkan uji coba aplikasi web laboratorium sistem kembali menjadi bentuk berkas dokumen komputer lainnya dengan mudah. pengiriman Sedangkan Tombol 'Lihat Detil' dan aplikasi nilai middleware praktikum, dapat disimpulkan: dapat digunakan oleh operator untuk - Simple Object Application Protocol melihat isi data nilai praktikum secara (SOAP) sebagai protokol middleware, langsung melalui layar monitor. Karena digunakan menggunakan fasilitas Crystal Report. pengiriman objek data nilai praktikum maka operator dapat mencetak data nilai karena praktikum mesin konversi objek dengan lebih cepat dan pencetak. Selain itu operator juga dapat mudah. Dengan menggunakan protokol memanfaatkan fasilitas yang diberikan ini, oleh Crystal Report untuk menyimpan untuk melakukan penambahan fitur tampilan dari Crystal Report menjadi seperti Remote Procedure Call (RPC). tersebut melalui beberapa bentuk berkas dokumen seperti penulis protokol tidak dalam ini mencegah proses mendukung kemungkinan - Pemanfaatan framework .NET sangat dokumen Microsoft Excel (xls), Adobe baik dilakukan, karena teknologi ini 21 masih tergolong teknologi baru dan kampus. Penulis sadar bahwa aplikasi memiliki berbagai macam komponen ini masih memiliki banyak kekurangan yang sangat berkualitas. Tentu saja, terutama dalam kecepatan penyajian aplikasi ini jadi lebih terasa mengikuti data, karena seluruh data yang dikirim perkembangan teknologi. Oleh karena dari server web masih dalam bentuk itu untuk html standar yang tidak dipadatkan. pemrograman Beberapa informasi yang dapat di penulis menyimpulkan menggunakan bahasa VB.NET dari Aplikasi Pemrograman terima Visual Studio 2008 dengan dukungan mahasiswa, yaitu daftar praktikum penuh terhadap Framework .NET Versi pada 3.5. praktikan - Kriptografi Enkripsi RSA, oleh suatu daftar suatu kegiatan daftar hasil kelulusan dari seluruh praktikum yang pernah data yang akan dikirim dari aplikasi diikuti oleh masing – masing praktikan, server ke aplikasi client, sehingga data informasi berita dan peristiwa dari nilai praktikum yang dikirim melalui masing – masing laboratorium serta jaringan dapat lebih terlindungi. informasi kriptografi laboratorium, praktikum, rangkuman nilai praktikum digunakan untuk membungkus paket - Algorithma khususnya dalam praktikum, dapat pengguna RSA – informasi lain yang berhubungan dengan kegiatan didalam memegang prinsip algorithma enkripsi laboratorium. asimetrik dengan kunci public dan - Aplikasi middleware yang penulis buat kunci privat yang sangat fleksibel, dan merupakan inti dari sentralisasi data dapat dibuat secara runtime. Jadi tidak praktikum pada laboratorium sistem perlu ada kunci yang tertanam didalam komputer, tujuan pembuatan aplikasi aplikasi server ataupun client. ini adalah melakukan pengiriman data - Aplikasi Web memiliki yang berbagai diharapkan dapat penulis buat fitur yang nilai informasi baik Komputer Jurusan yang dan di seluruh ke Sistem bagian Sekretariat Komputer. dalam pengembangan aplikasi ini, penulis berhubungan dengan kegiatan didalam laboratorium dari laboratorium dibawah Jurusan Sistem mempermudah seluruh praktikan untuk memperoleh berbagai praktikum berusaha untuk mengurangi berbagai lingkungan macam masalah yang mungkin terjadi. 22 Aplikasi ini juga yaitu, sebaiknya beberapa antarmuka memanfaatkan antarmuka Crystal Report yang dapat dari mempermudah operator aplikasi client middleware diperbaiki, sehingga, lebih untuk memberi kemudahan dan kenyamanan memeriksa informasi yang aplikasi web dan aplikasi bagi pengguna yang menggunakan diterimanya dari aplikasi server. aplikasi – aplikasi tersebut. Saran Karena penulis menganggap, DAFTAR PUSTAKA seluruh aplikasi yang penulis buat ini, masih memiliki Maka, penulis banyak sangat kekurangan. [1] Anonim, "Microsoft Visual Studio mengharapkan 2008 berbagai masukan, agar kualitas seluruh Documentation", http://www.microsoft.com/, 2008 aplikasi yang penulis buat ini, menjadi [2] Anonim, lebih baik. http://www.webtropy.com/articles/a Beberapa saran dan masukan dari rt2.asp?RSA, 2008 penulis, untuk memperbaiki keterbatasan aplikasi ini adalah: [3] D.I. Management Services. Pty Ltd, - Karena data laboratorium yang saat ini "RSA Theory", belum kompatibel antara satu sama mgt.com.au, lain. Tentu saja hal ini menjadi 2007 http://www.di- Sydney, Australia, masalah, ketika melakukan pemasukan data kedalam aplikasi. Untuk itu, [4] Hakim, Lukmanul, "Membongkar sebaiknya hubungan kerjasama antar Trik Rahasia Para Master PHP", laboratorium khususnya yang berada Loko Media, 2008 dibawah Jurusan Sistem Komputer [5] Hut, Wardana S., MSi., "Membuat lebih ditingkatkan, agar tiap data Aplikasi laboratorium dari masing – masing laboratorium dapat lebih Berbasis Pendekatan Sistem dengan Visual Basic .Net mudah 2008", Elex Media Komputindo, dipadukan menjadi sebuah sistem.yang Jakarta, 2008 kompatibel. - Saran dari penulis [6] Irawan, Ivan, "PHP siapa takut!", untuk http://www.ilmukomputer.com, pengembangan kembali aplikasi ini 23 [7] Komputer Wahana, Technologies, "Menguasai Internet Computer Pemrograman Web dengan PHP 5", Network", C.V Andi dan Wahana Komputer, http://staffsite.gunadarma.ac.id, Yogyakarta, 2006 diakses pada November 2008 [8] MySQL AB, "MySQL Reference [13] The PHP Documentation Group, 5.1 "PHP Manual", Manual", www.php.net/docs.php, 2007 http://dev.mysql.com/doc, September 2008 [14] Tim Administrator Pengembang Aplikasi Modul Jaringan Komputer Tingkat Lanjut 2008, [9] Sidik, Betha, Ir., "MySQL Untuk Pengguna, Penyusun "Modul Panduan Jaringan Komputer dan Lanjut", Web", Laboratorium Komputer. Informatika, Bandung, Juni 2005 Depok: Sistem Universitas Gunadarma 2008 [10] Sidik, Betha, Ir., "Pemrograman [15] Yayasan Web Dengan HTML", Informatika, Total Sarana Edukasi, http://www.total.or.id/info.php?kk= Bandung, Juli 2005 Cryptography, 2007, diakses pada [11] Supono, "Pemrograman Web Februari 2009 dengan Java Script", YRama Widya, Bandung, 2006 [12] Supriyanto, Raden, "Cryptography SSi., And MSc., Security 24