Bab Implementasi berisi penjelasan mengenai tahap-tahap implementasi yang dilakukan dalam pembangunan aplikasi Semantic Web Perpustakaan. Hal-hal yang diuraikan mencakup kebutuhan-kebutuhan untuk proses implementasi seperti software dan hardware, penerapan desain fungsi, data dan interface pada aplikasi web perpustakaan.
4.1 Kebutuhan Implementasi
Hardware dan software yang dibutuhkan dalam membangun aplikasi Semantic Web Perpustakaan diuraikan pada Tabel 3 dan Tabel 4 berikut.
A. Kebutuhan Hardware
Tabel 3 Kebutuhan Implementasi Hardware
No Nama Keterangan
1 Laptop 2 Buah
2 Processor Intel Pentium(R)
3 RAM 3.00 GB
4 Harddsik 500 GB
B. Kebutuhan Software
Tabel 4 Kebutuhan Implementasi Software
No Nama Keterangan
1 Operating System Windows 10
2 IDE NetBeans IDE 8.1
3 DBMS Jena
4 Browser Mozilla Firefox
5 Developing Tools Microsoft Visual Studio 2010 6 Other Software Protégé 3.4.8
4.2 Implementasi Ontologi
Implementasi ontologi menggunakan perangkat lunak sebagai berikut: 1. Protégé 3.4.8
Protégé 3.4.8 merupakan tool ontologi yang menyediakan komponen – komponen dan yang digunakan untuk menjelaskan ontologi suatu domain. Komponen – komponen ontologi tersebut adalah class, properties dan individuals/instances. Halaman pada protégé 3.4.8 dapat dilihat pada Gambar 32.
Gambar 32 Halaman Protégé
2. OWLViz
OWLViz adalah plugin yang dapat memvisualisasikan ontologi yang telah dibangun. 4.2.1 Implementasi Superclass
Implementasi ontologi dilakukan dengan pendekatan top-down yaitu dengan mendefinisikan class atau concept umum dilanjutkan dengan class atau concept yang lebih spesifik. Dalam pengimplementasian pada protégé langkah pertama yang
dilakukan adalah penentuan superclass umum untuk domain perpustakaan. Superclass yang diimplementasikan pada protégé dapat dilihat pada Gambar 33.
Gambar 33 Superclass Ontologi pada Protege
Keterangan gambar:
IdentityBook merupakan pengelompokan berdasarkan identitas dari bahan pustaka.
LibraryCollection merupakan pengelompokan berdasarkan bahan – bahan pustaka yang tersedia di perpustakaan.
Tahapan pengimplementasian selanjutnya yang dilakukan adalah penentuan subclass yang berfungsi untuk menspesifikan class umum atau superclass. Subclass dari IdentityBook yang diimplementasikan pada protégé dapat dilihat pada Gambar 34.
Keterangan Gambar:
People merupakan pengelompokan berdasarkan identitas buku yang tergolong dengan manusia.
Organization merupakan pengelompokan berdasarkan identitas buku yang tergolong dengan organisasi.
Subclass dari People dapat dilihat pada Gambar 35.
Gambar 35 Subclass dari Class People
Keterangan Gambar:
Author merupakan pengelompokan pengarang dari koleksi pustaka.
Editor merupakan pengelompokan editor dari koleksi pustaka.
Supervisor merupakan pengelompokan supervisor dari koleksi pustaka.
Writer merupakan pengelompokan penulis dari koleksi pustaka.
Gambar 36 Subclass dari Class Organization
Keterangan Gambar:
Organizer merupakan pengelompokan penyelenggara dari koleksi pustaka.
Publisher merupakan pengelompokan penerbit dari koleksi pustaka.
University merupakan pengelompokan universitas dari koleksi pustaka.
Subclass dari LibraryCollection yang diimplementasikan pada protégé dapat dilihat pada Gambar 37.
Keterangan Gambar
Article merupakan pengelompokan koleksi pustaka berdasarkan artikel yang tersedia di perpustakaan.
Book merupakan pengelompokan koleksi pustaka berdasarkan buku yang tersedia di perpustakaan.
CompactDisk merupakan pengelompokan koleksi pustaka berdasarkan compact disk yang tersedia di perpustakaan.
Encyclopedia merupakan pengelompokan koleksi pustaka berdasarkan encyclopedia yang tersedia di perpustakaan.
Journal merupakan pengelompokan koleksi pustaka berdasarkan jurnal yang tersedia di perpustakaan.
Magazine merupakan pengelompokan koleksi pustaka berdasarkan majalah yang tersedia di perpustakaan.
Newspaper merupakan pengelompokan koleksi pustaka berdasarkan koran yang tersedia di perpustakaan.
Proceeding merupakan pengelompokan koleksi pustaka berdasarkan proceeding yang tersedia di perpustakaan.
TechnicalReport merupakan pengelompokan koleksi pustaka berdasarkan technical report yang tersedia di perpustakaan.
Thesis merupakan pengelompokan koleksi pustaka berdasarkan tesis yang tersedia di perpustakaan.
4.2.2 Implementasi Subclass
Pada hirarki ontologi perpustakaan ini masing – masing subclass memiliki subclass sehingga subclass sebelumnya menjadi superclass dari subclass yang baru. Subclass dari superclass Organizer dapat dilihat pada Gambar 38.
Gambar 38 Superclass Organizer dan subclassnya
Keterangan Gambar
ProceedingOrganizer merupakan pengelompokan penyelenggara dari proceeding.
Subclass dari superclass Publisher dapat dilihat pada Gambar 39.
Gambar 39 Superclass Publisher dari subclassnya
Gambar 40 Superclass Author dan subclassnya
Keterangan Gambar
JournalUniversity merupakan pengelompokan jurnal berdasarkan universitas.
ProceedingUniversity merupakan pengelompokan proceeding berdasarkan universitas.
ThesisUniversity merupakan pengelompokan thesis berdasarkan universitas.
TechnicalReportUniversity merupakan pengelompokan technical report berdasarkan universitas.
Subclass dari superclass Editor dapat dilihat pada Gambar 41.
Keterangan Gambar:
JournalEditor merupakan pengelompokan editor dari jurnal. Subclass dari superclass Organizer dapat dilihat pada Gambar 42.
Gambar 42 Superclass Organizer dengan Subclassnya
Keterangan Gambar:
ProceedingOrganizer merupakan pengelompokan penyelenggara dari proceeding.
Subclass dari superclass Publisher dapat dilihat pada Gambar 43.
Keterangan Gambar
BookPublisher merupakan pengelompokan penerbit dari buku.
MagazinePublisher merupakan pengelompokan penerbit dari majalah.
EncyclopediaPublisher merupakan pengelompokan penerbit dari encyclopedia.
NewspaperPublisher merupakan pengelompokan penerbit dari koran. Subclass dari superclass Supervisor dapat dilihat pada Gambar 44.
Gambar 44 Superclass Supervisor dengan Subclassnya
Keterangan Gambar
TechnicalReportSupervisor merupakan pengelompokan supervisor dari technical report.
ThesisSupervisor merupakan pengelompokan supervisor dari tesis. Subclass dari superclass Book dapat dilihat pada Gambar 45.
Gambar 45 Superclass Book dan subclassnya
Keterangan Gambar
ComputerBook merupakan pengelompokan buku jenis komputer.
ScienceBook merupakan pengelompokan buku jenis ilmu pengetahuan.
Subclass dari superclass CompactDisk dapat dilihat pada Gambar 46.
Gambar 46 Superclass CompactDisk dan subclassnya
Keterangan Gambar
SoftwareDisk merupakan pengelompokan compact disk software. Subclass dari superclass Newspaper dapat dilihat pada Gambar 47.
Gambar 47 Superclass Newspaper dan subclassnya
Keterangan Gambar
SportNewspaper merupakan pengelompokan koran bola.
GeneralNewspaper merupakan pengelompokan koran umum misalnya kompas, analisa dan lain-lain.
4.2.3 Implementasi Slot atau Properties
Slot atau properties yang diimplementasikan adalah object properties yang akan menghubungkan antar individu/instance. Properties yang terdapat pada ontologi perpustakaan terdapat pada Gambar 48.
Gambar 48 Object Properties pada Ontologi Perpustakaan
Keterangan Gambar
Slot hasAuthor
- Menghubungkan instance subclass BookTitle dengan instance pada subclass BookAuthor.
- Menghubungkan instance subclass ArticleTitle dengan instance pada subclass ArticleAuthor.
- Menghubungkan instance subclass EncyclopediaTitle dengan instance pada subclass EncyclopediaAuthor.
Slot hasEditor
- Menghubungkan instance subclass JournalTitle dengan instance pada subclass JournalEditor.
- Menghubungkan instance subclass BookTitle dengan instance pada subclass BookPublisher.
- Menghubungkan instance subclass MagazineTitle dengan instance pada subclass MagazinePublisher.
- Menghubungkan instance subclass NewspaperHeadline dengan instance pada subclass NewspaperPublisher.
Slot hasSupervisor
- Menghubungkan instance subclass TechnicalReportTitle dengan instance pada subclass TechnicalReportSupervisor.
- Menghubungkan instance subclass ThesisTitle dengan instance pada subclass ThesisSupervisor.
Slot hasUniversity
- Menghubungkan instance subclass JournalTitle dengan instance pada subclass JournalUniversity.
- Menghubungkan instance subclass ProceedingTitle dengan instance pada subclass ProceedingUniversity.
- Menghubungkan instance subclass TechnicalReportTitle dengan instance pada subclass TechnicalReportUniversity.
- Menghubungkan instance subclass TechnicalReportSupervisor dengan instance pada subclass TechnicalReportUniversity.
- Menghubungkan instance subclass ThesisTitle dengan instance pada subclass ThesisUniversity.
Slot hasWriter
- Menghubungkan instance subclass ThesisTitle dengan instance pada subclass ThesisWriter.
- Menghubungkan instance subclass TechnicalReportTitle dengan instance pada subclass TechnicalReportWriter.
- Menghubungkan instance subclass ProceedingTitle dengan instance pada subclass ProceedingWriter.
4.2.4 Implementasi Slot facet
Facet adalah properties dari slot. Slot facet diimplementasikan pada data object dari protégé. Slot facet dari ontologi perpustakaan dapat dilihat pada Gambar 49.
Gambar 49 Data Property Hierarchy Perpustakaan
Keterangan Gambar:
hasAbstract adalah bertipe string yang merupakan abstrak dari bahan pustaka yang tersedia di perpustakaan. Class yang menggunakan data property hasAbstract adalah class Article.
hasEdition adalah bertipe integer yang merupakan edisi pada majalah.
hasHeadline adalah bertipe string yang merupakan headline dari bahan pustaka di perpustakaan. Class yang menggunakan data property hasHeadline adalah class Newspaper.
hasISBN adalah bertipe string yang merupakan ISBN dari bahan pustaka di perpustakaan. Class yang menggunakan data property hasISBN adalah class Book, Journal dan Proceeding.
hasISSN adalah bertipe string yang merupakan ISSN dari bahan pustaka di perpustakaan. Class yang menggunakan data property hasISSN adalah class Newspaper, Magazine dan Proceeding.
hasName adalah bertipe string yang merupakan nama dari bahan pustaka di perpustakaan. Class yang menggunakan data property hasName adalah class Newspaper.
hasTitle adalah bertipe string yang merupakan judul dari bahan pustaka di perpustakaan. Class yang menggunakan data property hasTitle adalah class Book, Article, Magazine, Journal, CompactDisk, Encyclopedia, Proceeding, Thesis dan TechnicalReport.
PublicationDate adalah bertipe string yang merupakan identitas tanggal terbitan dari bahan pustaka yang tersedia di perpustakaan. Class yang menggunakan data property datePublication adalah class Newspaper.
pageCount adalah bertipe integer yang merupakan jumlah halaman dari bahan pustaka yang tersedia di perpustakaan. Class yang menggunakan data property pageCount adalah class Newspaper.
PublicationYear adalah bertipe integer yang merupakan tahun terbitan dari bahan pustaka yang tersedia di perpustakaan. Class yang menggunakan data property yearOfPublication adalah class Book.
4.2.5 Implementasi Instance
Tahapan terakhir dalam implementasi ontologi adalah membuat individu atau instances pada class dalam suatu hirarki. Instance dari ontologi perpustakaan dapat dilihat pada Gambar 50.
Gambar 50 Instance pada Ontologi Perpustakaan 4.2.6 Implementasi Restriction
Pada subbab ini akan dijelaskan restriction dari class, property dan data type.
4.2.6.1 Equivalent Class
Equivalent class merupakan kesamaan arti dari class pada ontologi. Equivalent class dari class buku yang terdapat pada ontologi perpustakaan dapat dilihat pada Gambar 51.
Keterangan Gambar
Buku merupakan koleksi pustaka dan merupakan koleksi dari beberapa
koleksi pustaka.
Buku merupakan koleksi pustaka dan merupakan koleksi pustaka yang memiliki identitas dari beberapa identitas pustaka.
Equivalent class dari class Article dapat dilihat pada Gambar 52.
Gambar 52 Equivalent Class Article
Keterangan Gambar
Article merupakan koleksi pustaka dan merupakan koleksi dari beberapa koleksi pustaka.
Article merupakan koleksi pustaka dan merupakan koleksi pustaka yang memiliki abstract dari beberapa koleksi pustaka.
Article merupakan koleksi pustaka dan merupakan koleksi pustaka yang memiliki identitas dari beberapa identitas pustaka.
Equivalent class dari class Compact Disk dapat dilihat pada Gambar 53.
Keterangan Gambar
Compact Disk merupakan koleksi pustaka dan merupakan koleksi dari beberapa koleksi pustaka.
Compact Disk merupakan koleksi pustaka dan merupakan koleksi pustaka yang memiliki identitas dari beberapa identitas pustaka.
Equivalent class dari class Encyclopedia dapat dilihat pada Gambar 54.
Gambar 54 Equivalent Class Compact Disk
Keterangan Gambar
Encyclopedia merupakan koleksi pustaka dan merupakan koleksi dari beberapa koleksi pustaka.
Encyclopedia merupakan koleksi pustaka dan merupakan koleksi pustaka yang memiliki identitas dari beberapa identitas pustaka.
4.2.6.2 Disjoint Class
Disjoint class artinya bahwa instance dari setiap class tidak dapat menjadi instance dari lebih dari beberapa class. Contoh dari disjoint class dari ontologi pada perpustakaan dapat dilihat pada Gambar 55.
Gambar 55 Disjoint class Abstract
Keterangan Gambar
Class Abstract disjoint dengan class Title, class Publisher, class Name, class Editor, class ISBN, class Organizer, class Headline, class Author, class ISSN, class Writer, class University, dan class Supervisor.
Gambar 56 Disjoint class Article
Keterangan Gambar
Class Article disjoint dengan class Proceeding, class Book, class Journal, class Thesis, class Encyclopedia, class TechnicalReport, class Newspaper, class CompactDisk, dan class Magazine.
4.2.6.3 Inverse Functional Property
Inverse functional property dari property has Author dapat dilihat pada Gambar 57.
Gambar 57 Inverse Functional Property hasAuthor
Keterangan Gambar
hasAuthor inverse dari object property isAuthorOf.
hasEditor inverse dari object property isEditorOf.
hasOrganizer inverse dari object property isOrganizerOf.
hasPublisher inverse dari object property isPublisherOf.
hasSupervisor inverse dari object property isSupervisorOf.
hasWritter inverse dari object property isWritterOf.
Gambar 58 Implementasi Inverse Functional hasAuthor
4.2.6.4 Functional Data Type
Functional data type dari YearOfPublication dapat dilihat pada Gambar 59.
Gambar 59 Functional Data Type hasName
Keterangan Gambar
Range dari data type property hasName adalah string.
Allowed values dari hasName adalah Kompas, SIB, Analisa, Jakarta Pos, Koran Bola dan Tempo.
Class yang menggunakan data type property adalah class Newspaper dan Magazine.
4.2.7 Taksonomi Kelas
Konsep taksonomi pada ontologi perpustakaan yang dibangun dapat dilihat pada Gambar 60. Pada gambar taksonomi dapat dilihat bahwa setiap instance memiliki hubungan dengan instance yang lainnya di dalam sebuah ontologi, dan keterhubungan tersebut yang menjadikan ontologi mampu menyediakan data yang lebih lengkap kepada pengguna.
4.3 Implementasi Web
Setelah Ontologi perpustakaan dibangun maka dibutuhkan sebeuah web yang sifatnya semantic, yang nanti nya akan digunakan sebagai antarmuka bagi pengguna untuk menampilkan hasil query dari ontologi yang ada. Pada Tugas Akhir ini dapat dilihat implementasi sebuah web semantic pada gambar dibawah. Aplikasi web yang dibangun akan melakukan proses pencarian dengan memasukkan kata kunci pencarian maka akan ditampilkan data yang lebih akurat yang sesuai dengan kata pencarian.
4.4 Metode Pengujian
Metode pengujiaan dilakukan untuk memastikan apakah sistem yang sudah dibangun sesuai dengan yang diharapkan olleh pengguna atau tidak. Adapun metode pengujian yang digunakan adalah balckbox, yaitu metode pengujian aplikasi yang hanya berfokus pada function sistem yang diibangun apakah sudah sesuai atau tidak dengan hasil yang diharapkan tanapa megetahui apa yang sebenarnya berjalan di back end.
4.5 Skenario Pengujian
Skenario pengujian diperlukan untuk mengetahui dan memastikan apakah sistem atau aplikasi yang dibangun dapat berfungsi dengan baik atau tidak dan apakah sudah memberikan hasil yang sesuai dengan yang diharapkan. Skenario pengujian dilakukan terhadap ontologi yang telah dikumpulkan dan juga dengan memilih dari setiap menu yang ada di aplikasi. Pengujian ini dilakukan dengan cara memeriksa kesesuain hasil pencarian dengan kata kunci yang dimasukkan. Pengujian yang dilakukan adalah sebagai berikut:
4.6 Analisa Hasil Pengujian
Setelah dilakukan pengujian terhadapap sistem yang dibangun secara menyeluruh, maka dapat disimpulkan bahwa pengujian telah menunjukkan hasil atau keluaran yang sesuai dengan rancangan aplikasi program ini. Dan dari hasil pengujian
yang dilakukan maka dapat disimpulkan bahwa aplikasi ini dapat berfungsi dengan baik dan benar, dengan bukti hasil skenario pengujian.: