Bab ini berisi kesimpulan dari uji coba perangkat lunak, dan saran untuk pengembangan, perbaikan serta penyempurnaan terhadap aplikasi yang telah dibuat.
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 dapat diperoleh dengan sangat mudah dan murah.
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 menentukan peringkat nilai (grade nilai).
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 data (Sumber : Crockford, 2006). Struktur JSON ada dua, antara lain :
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) (Sumber : Crockford, 2006)
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) (Sumber : Crockford, 2006)
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> <state>Indonesia</state> <zip>55284</zip> <phone>081328462499</phone> <email>[email protected]</email> </contact> (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, sedangkan pada XML bisa menggunakan tag dan atribut sesuai kebutuhan.
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 dokumen XML. Dalam dokumen ini, XML mengacu pada versi 1.0 dan
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> <state>Indonesia</state> <zip>55284</zip> <phone>081328462499</phone> <email>[email protected]</email> </contact> </xml> (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: <html> <body> <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> <state>Indonesia</state> <zip>55284</zip> <phone>081328462499</phone> <email>[email protected]</email> </contact> </xml>
<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 teknis proyek-proyek berskala besar. Ketika HTML dikembangkan pada tahun
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 informasi di dalamnya, harus dibuat software lagi.
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 penutup.
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 ?>. Tapi perlu diingat bahwa header standard XML <?xml version=”1.0”
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