ABSTRAK SPARTHA merupakan aplikasi desktop yang membantu para staff perpustakaan Universitas Kristen Maranatha dalam melakukan kegiatan mengolah informasi koleksi buku. Pengguna juga dipermudah dalam melakukan pencarian buku perpustakaan dengan adanya modul katalog yang tersedia di berbagai sudut tempat perpustakaan. Namun dibutuhkan sebuah sarana yang bersifat mobile (dapat di akses kapan saja dan dimana saja). Pengembangan sistem ini dilakukan dengan metode basis data terdistribusi, dimana sistem menggunakan trigger untuk menarik data transaksi terbaru dari SPARTHA, kemudian dilakukan sinkronisasi data dengan database aplikasi mobile oleh web service. Dengan menggunakan metode pengujian load testing, menunjukan bahwa sistem ini mampu digunakan hingga 1000 user secara bersamaan. Aplikasi berbasis mobile ini dapat menjadi katalog online dan dapat melakukan booking bagi anggota yang terdaftar. Kata kunci: Perpustakaan, Trigger, Web Service, Mobile, Basis Data Terdistribusi, Load Testing
v
ABSTRACT SPARTHA is a desktop application that helps Maranatha Christian University’s library staff in maintaining books collection. This application has a catalog module that helps user to search books. But, there’s a need to mobilize - accessed anytime and anywhere - the application. The development of this mobile system was conducted using a distributed database schema, where the system uses triggers to retrieve data from the most recent transactions in SPARTHA, and finally synchronizing the data to a database of mobile applications by using web services. System evaluation by performing a load testing, shows that the system is able to handle up to 1000 users. This mobile-based applications is also designed for online catalog and bookings for library members. Keywords: Library, Trigger, Web Service, Mobile, Distributed Database Systems, Load Testing
vi
DAFTAR ISI PERNYATAAN PUBLIKASI LAPORAN PENELITIAN.................................. iii PERNYATAAN ORISINALITAS LAPORAN PENELITIAN ........................... iii PRAKATA ......................................................................................................... iii ABSTRAK .......................................................................................................... v ABSTRACT ......................................................................................................... vi DAFTAR ISI ..................................................................................................... vii DAFTAR GAMBAR .......................................................................................... ix DAFTAR TABEL ............................................................................................. xii DAFTAR PROGRAM ...................................................................................... xiii DAFTAR LAMPIRAN ..................................................................................... xiv BAB I PENDAHULUAN .................................................................................... 1 1.1 Latar Belakang....................................................................................... 1 1.2 Rumusan Masalah.................................................................................. 2 1.3 Tujuan ................................................................................................... 2 1.4 Batasan Masalah .................................................................................... 2 1.5 Sistematika Pembahasan ........................................................................ 3 BAB II KAJIAN TEORI ...................................................................................... 6 2.1 Perpustakaan.......................................................................................... 6 2.2 Online Public Access Catalog (OPAC) .................................................. 6 2.3 Basis Data.............................................................................................. 7 2.3.1 Konsep Dasar Basis Data ..................................................................... 7 2.3.2 Sistem Basis Data ........................................................................... 7 2.4 DBMS (Database Management System) ................................................ 9 2.4.1 Keuntungan DBMS ...................................................................... 10 2.4.2 Kerugian DBMS ........................................................................... 13 2.5 Siklus Hidup Aplikasi Basis Data ........................................................ 14 2.5.1 Perencanaan Basis Data (Database Planning) ............................... 14 2.5.2 Definisi Sistem (System Definition) .............................................. 15 2.5.3 Analisa Kebutuhan (Requirements Analysis) ................................. 15 2.5.4 Perancangan Basis Data (Database Design) .................................. 16 2.5.5 Pemilihan DBMS (DBMS Selection) ............................................. 18 2.5.6 Perancangan Aplikasi (Application Design) .................................. 19 2.5.7 Prototyping ................................................................................... 19 2.5.8 Implementasi (Implementation) .................................................... 19 2.5.9 Data Conversion and Loading ...................................................... 19 2.5.10 Pengujian (Testing) ....................................................................... 19 2.5.11 Operational Maintenance ............................................................. 20 2.5.12 Database Security ......................................................................... 22 2.6 Basis Data Terdistribusi ....................................................................... 22 2.6.1 Sistem Basis Data Terdistribusi .................................................... 22 2.6.2 Arsitektur Sistem Basis Data Terdistribusi .................................... 23 2.7 UML (Unified Modelling Language) ................................................... 24 2.7.1 Pengertian UML ........................................................................... 24 2.7.2 Komponen-Komponen UML ........................................................ 25 2.8 ERD (Entity Relational Diagram) ........................................................ 28 2.9 .NET Framework ................................................................................. 31 vii
2.10 Pemrograman C# ................................................................................. 32 2.11 Web Service ......................................................................................... 33 2.11.1 Arsitektur Web Service ................................................................. 33 2.11.2 Web Service Framework ............................................................... 35 2.12 Visual Studio ....................................................................................... 36 2.13 Windows Phone ................................................................................... 36 BAB III ANALISIS DAN DISAIN .................................................................... 38 3.1 Analisis................................................................................................ 38 3.1.1 Aplikasi SPARTHA...................................................................... 38 3.1.2 Jaringan SPARTHA...................................................................... 52 3.1.3 Keterbatasan SPARTHA............................................................... 52 3.1.4 Solusi Keterbatasan SPARTHA .................................................... 53 3.2 Gambaran Keseluruhan ........................................................................ 58 3.2.1 Antarmuka dengan Pengguna ........................................................ 58 3.2.2 Antarmuka Perangkat Keras.......................................................... 59 3.2.3 Antarmuka Perangkat Lunak ......................................................... 59 3.2.5 Antarmuka Komunikasi ................................................................ 59 3.2.6 Fitur-Fitur Produk Perangkat Lunak .............................................. 60 3.3 Disain Perangkat Lunak ....................................................................... 74 3.3.1 Pemodelan Perangkat Lunak ......................................................... 74 3.3.2 Disain Penyimpanan Data ............................................................. 86 BAB IV PENGEMBANGAN PERANGKAT LUNAK ..................................... 93 4.1 Implementasi Class / Modul ................................................................ 93 4.1.1 Implementasi Trigger .................................................................... 93 4.1.2 Implementasi Web Service Sinkronisasi ........................................ 95 4.1.3 Implementasi Windows Service Booking ....................................... 96 4.1.4 Implementasi Windows Service Sinkronisasi ................................. 96 4.1.5 Implementasi Web Service Aplikasi .............................................. 97 4.1.6 Implementasi Teknik Pencarian Buku ......................................... 100 4.1.7 Implementasi Class ..................................................................... 100 4.2 Implementasi Penyimpanan Data ....................................................... 109 4.3 Implementasi Antarmuka ................................................................... 110 BAB V TESTING DAN EVALUASI SISTEM ............................................... 118 5.1 Rencana Pengujian............................................................................. 118 5.2 Pelaksanaan Pengujian ....................................................................... 118 5.2.1 Black Box ................................................................................... 118 5.2.1 Load Test .................................................................................... 122 BAB VI KESIMPULAN DAN SARAN .......................................................... 126 6.1 Kesimpulan........................................................................................ 126 6.2 Saran ................................................................................................. 126 DAFTAR PUSTAKA ...................................................................................... 128 RIWAYAT HIDUP PENULIS......................................................................... 129
viii
DAFTAR GAMBAR Gambar 2. 1 Siklus Hidup Aplikasi Basis Data .................................................. 14 Gambar 2. 2 Lingkungan Basis Data Terdistribusi ............................................. 23 Gambar 2. 3 Arsitektur Sistem Basis Data Terdistribusi ..................................... 24 Gambar 2. 4 Komponen Dasar Use Case............................................................ 25 Gambar 2. 5 Use Case Diagram ......................................................................... 26 Gambar 2. 6 Diagram Relationship Unary.......................................................... 29 Gambar 2. 7 Diagram Relationship Binary ......................................................... 29 Gambar 2. 8 Diagram Relationship Ternary ....................................................... 30 Gambar 2. 9 Diagram One to One ...................................................................... 30 Gambar 2. 10 Diagram One to Many.................................................................. 31 Gambar 2. 11 Diagram Many to Many ............................................................... 31 Gambar 2. 12 Model Umum Web Service .......................................................... 33 Gambar 2. 13 Message Oriented Model ............................................................. 34 Gambar 2. 14 Service Oriented Model ............................................................... 34 Gambar 2. 15 Resource Oriented Model............................................................. 35 Gambar 2. 16 Policy Model................................................................................ 35 Gambar 3. 1 Activity Diagram Modul Katalog ................................................... 39 Gambar 3. 2 Activity Diagram Mengelola Tanggal Libur ................................... 40 Gambar 3. 3 Activity Diagram Mengelola Grup Anggota ................................... 41 Gambar 3. 4 Activity Diagram Mengelola Anggota ............................................ 42 Gambar 3. 5 Activity Diagram Mengelola Peminjaman ...................................... 43 Gambar 3. 6 Activity Diagram Mengelola Pengembalian ................................... 44 Gambar 3. 7 Activity Diagram Mengelola Laporan Sejarah Buku ....................... 45 Gambar 3. 8 Activity Diagram Sejarah Peminjaman Buku.................................. 46 Gambar 3. 9 Activity Diagram Koleksi Buku sedang Dipinjam .......................... 47 Gambar 3. 10 Activity Diagram Koleksi Buku Dipinjam Terbanyak................... 48 Gambar 3. 11 Activity Diagram Peminjaman Terbanyak .................................... 49 Gambar 3. 12 Activity Diagram Denda Keterlambatan ....................................... 50 Gambar 3. 13 Activity Diagram Rekap Denda .................................................... 51 Gambar 3. 14 Jaringan SPARTHA ..................................................................... 52 Gambar 3. 15 Schema Database SPARTHA ...................................................... 55 Gambar 3. 16 Schema Database Temporary....................................................... 56 Gambar 3. 17 Rancangan Konsep trigger ........................................................... 57 Gambar 3. 18 Jaringan yang akan dibangun ...................................................... 59 Gambar 3. 19 Use Case...................................................................................... 75 Gambar 3. 20 Activity Diagram Cari Buku ......................................................... 77 Gambar 3. 21 Activity Diagram Lihat Buku Terbanyak Dipinjam ...................... 77 Gambar 3. 22 Activity Diagram Share ke Jejaring Sosial.................................... 78 Gambar 3. 23 Activity Diagram SMS Buku Detail .............................................. 78 Gambar 3. 24 Activity Diagram Registrasi ......................................................... 79 Gambar 3. 25 Activity Diagram Login ................................................................ 80 Gambar 3. 26 Activity Diagram Tunggu Buku Sirkulasi ..................................... 81 Gambar 3. 27 Activity Diagram Booking Buku................................................... 82 Gambar 3. 28 Activity Diagram Lihat Profil anggota.......................................... 82
ix
Gambar 3. 29 Activity Diagram Ubah Profil anggota ......................................... 83 Gambar 3. 30 Activity Diagram Lihat Buku yang dipinjam ................................ 83 Gambar 3. 31 Activity Diagram Lihat Buku yang di-booking ............................. 84 Gambar 3. 32 Activity Diagram Lihat Buku yang ditunggu ................................ 84 Gambar 3. 33 Activity Diagram Sistem Reminder .............................................. 85 Gambar 3. 34 Activity Diagram Logout .............................................................. 85 Gambar 3. 35 Class Diagram Aplikasi Mobile dan Website ............................... 86 Gambar 3. 36 Entity Relationship Diagram ........................................................ 87 Gambar 3. 37 User Interface Design Halaman Pencarian Normal ...................... 88 Gambar 3. 38 User Interface Design Halaman Pencarian Spesifik...................... 89 Gambar 3. 39 User Interface Design Halaman Hasil Pencarian ......................... 90 Gambar 3. 40 User Interface Design Halaman Login ......................................... 91 Gambar 3. 41 User Interface Design Halaman Detail Buku................................ 92 Gambar 4. 1 Class Anggota ............................................................................. 101 Gambar 4. 2 Class Anggota_Web .................................................................... 101 Gambar 4. 3 Class Buku .................................................................................. 102 Gambar 4. 4 Class Booking .............................................................................. 103 Gambar 4. 5 Class Jurusan ............................................................................... 103 Gambar 4. 6 Class Kondisi .............................................................................. 103 Gambar 4. 7 Class Jenis ................................................................................... 104 Gambar 4. 8 Class Barcode.............................................................................. 104 Gambar 4. 9 Class Peminjaman ....................................................................... 105 Gambar 4. 10 Class Oleh ................................................................................. 105 Gambar 4. 11 Class GrupAnggota.................................................................... 106 Gambar 4. 12 Class Penerbit ............................................................................ 106 Gambar 4. 13 Class Setting .............................................................................. 107 Gambar 4. 14 Class User_web ......................................................................... 107 Gambar 4. 15 Class BebasPerpus ..................................................................... 108 Gambar 4. 16 Class WaitingList ....................................................................... 108 Gambar 4. 17 Schema Penyimpanan Data Aplikasi Mobile dan Website ........... 109 Gambar 4. 18 User Interface Simple Search ..................................................... 110 Gambar 4. 19 User Interface Advance Search .................................................. 111 Gambar 4. 20 User Interface Result ................................................................. 111 Gambar 4. 21 User Interface Detail Buku ........................................................ 112 Gambar 4. 22 User Interface Detail Barcode.................................................... 113 Gambar 4. 23 User Interface Login .................................................................. 113 Gambar 4. 24 User Interface Dashboard.......................................................... 114 Gambar 4. 25 User Interface My Profile .......................................................... 115 Gambar 4. 26 User Interface My Borrowed ...................................................... 115 Gambar 4. 27 User Interface My Booked......................................................... 116 Gambar 4. 28 User Interface Add Reminder ..................................................... 117 Gambar 5. 1 Summary Memory Test ................................................................ 122 Gambar 5. 2 Summary CPU Usage .................................................................. 122 Gambar 5. 3 Summary Performance Frames .................................................... 122 Gambar 5. 4 Summary Performance Detail Frames(1) ..................................... 123 Gambar 5. 5 Summary Performance Detail Frame(2) ...................................... 123
x
Gambar 5. 6 Screenshot Load Test 500 User .................................................... 124 Gambar 5. 7 Screenshot Load Test 1000 User .................................................. 125
xi
DAFTAR TABEL Tabel 2. 1 Notasi Activity Diagram .................................................................... 27 Tabel 2. 2 Notasi Class Diagram ....................................................................... 27 Tabel 5. 1 Login Akun SAT ............................................................................. 119 Tabel 5. 2 Cek Anggota Web ........................................................................... 119 Tabel 5. 3 Lihat Data Anggota SPARTHA ....................................................... 120 Tabel 5. 4 Tambah Data Anggota_Web ............................................................ 120 Tabel 5. 5 Tambah Booking Buku .................................................................... 121 Tabel 5. 6 Update Status Booking..................................................................... 121
xii
DAFTAR PROGRAM Kode Program 4. 1 Script Trigger Insert dan Delete ........................................... 94 Kode Program 4. 2 Script Trigger Update .......................................................... 95 Kode Program 4. 3 Script Web Service Sinkronisasi ........................................... 96 Kode Program 4. 4 Script Windows Service Booking .......................................... 96 Kode Program 4. 5 Script Windows Service Sinkronisasi ................................... 97
xiii
DAFTAR LAMPIRAN LAMPIRAN A SCHEMA DATABASE TEMPORARY ...................................... A-1 LAMPIRAN B SCHEMA DATABASE SPARTHA .......................................... B-1 LAMPIRAN C TRANSFORMASI ERD MOBILE DAN WEBSITE ................ C-1
xiv