• Tidak ada hasil yang ditemukan

PENGEMBANGAN APLIKASI STATISTIK PERPUSTAKAAN MENGGUNAKAN MODEL-VIEW-CONTROLLER (STUDI KASUS PERPUSTAKAAN IPB) Oleh: Firmansyah G

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENGEMBANGAN APLIKASI STATISTIK PERPUSTAKAAN MENGGUNAKAN MODEL-VIEW-CONTROLLER (STUDI KASUS PERPUSTAKAAN IPB) Oleh: Firmansyah G"

Copied!
65
0
0

Teks penuh

(1)

PENGEMBANGAN APLIKASI STATISTIK PERPUSTAKAAN

MENGGUNAKAN MODEL-VIEW-CONTROLLER

(STUDI KASUS PERPUSTAKAAN IPB)

Oleh:

Firmansyah

G64102053

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(2)

ABSTRAK

FIRMANSYAH. Pengembangan Aplikasi Statistik Perpustakaan menggunakan

Model-View-Controller (Studi Kasus Perpustakaan IPB). Dibimbing oleh AGUS BUONO dan IRMAN

HERMADI.

Statistik perpustakaan merupakan bagian dari laporan kegiatan pelaksanaan suatu perpustakaan. Statistik perpustakaan berguna untuk mengkaji ulang pelaksanaan kegiatan yang dilakukan, bahan pertimbangan pada saat melakukan pengadaan anggaran buku rujukan, peningkatan pelayanan, dan evaluasi kinerja perpustakaan.

Masalah yang dibahas dalam penelitian ini ialah penggunaan cara manual pada sistem penghitungan statistik perpustakaan. Dengan cara manual yang dilaksanakan, muncul hambatan-hambatan dalam pelaksanaanya seperti ketidakakuratan penghitungan statistik yang diakibatkan faktor kelalaian penghitungan manual, ketidakefisien kerja, dan pemborosan waktu.

Penelitian ini bertujuan untuk merancang dan membuat program aplikasi bagi otomatisasi penghitungan statistik perpustakaan. Basisdata yang digunakan dalam aplikasi ini adalah CDS/ISIS yang didesain untuk manajemen komputerisasi basisdata berstruktur non-numerik. Aplikasi dibuat menggunakan bahasa pemrograman PHP dan PHP-OPENISIS sebagai port OPENISIS ke PHP dalam bentuk extension PHP. OPENISIS itu sendiri merupakan command-line

tool untuk membaca basisdata native CDS/ISIS. Untuk tampilan grafik menggunakan JPGRAPH

yaitu sebuah library berorientasi objek lengkap untuk menggambar grafik menggunakan PHP. Aplikasi dikembangkan menggunakan konsep Model-View-Controller (MVC) yang membagi aplikasi menjadi 3 bagian, yaitu bussines logic sebagai Model, tampilan antarmuka sebagai View dan Controller yang mengatur alur kerja sistem.

Aplikasi statistik perpustakaan mempunyai 3 menu utama, yaitu statistik pengunjung, statistik peminjam, dan statistik koleksi. Hasil yang ditampilkan pada statistik pengunjung adalah grafik, data detail, data intensitas, dan report pengunjung perpustakaan per bulan atau per tahun. Hasil yang ditampilkan pada statistik peminjam adalah grafik, data detail, data intensitas, dan

report peminjam perpustakaan per bulan atau per tahun. Disisi lain, hasil yang ditampilkan pada

statistik koleksi adalah grafik, data detail, dan report kelas koleksi yang dipinjam dari perpustakaan per bulan atau per tahun

(3)

Dan seandainya pohon-pohon di bumi menjadi pena dan laut (menjadi tinta), ditambahkan kepadanya tujuh langit (lagi) sesudah (kering)nya,

niscaya tidak akan habis-habisnya (dituliskan) Kalimat Allah. Sesungguhnya Allah Maha Perkasa lagi Maha Bijaksana. (Q.S. Luqman: 27)

(4)

PENGEMBANGAN APLIKASI STATISTIK PERPUSTAKAAN

MENGGUNAKAN MODEL-VIEW-CONTROLLER

(STUDI KASUS PERPUSTAKAAN IPB)

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer

Pada Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

Oleh:

Firmansyah

G64102053

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(5)

Judul : Pengembangan Aplikasi Statistik Perpustakaan Menggunakan

Model-View-Controller (Studi Kasus Perpustakaan IPB)

Nama : Firmansyah

NIM : G64102053

Menyetujui,

Pembimbing I

Ir. Agus Buono, M.Si., M.Kom.

NIP. 132 045 532

Pembimbing II

Irman Hermadi, M.S.

132 321 422

Mengetahui,

Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam

NIP. 131 473 999

(6)

PRAKATA

Alhamdulillah. Puji dan syukur penulis ucapkan kepada Allah SWT karena atas limpahan rahmat dan karunia-Nya penulis dapat menyelesaikan tugas akhir ini dengan baik. Shalawat dan salam tercurah kepada Nabi Muhammad SAW.

Tema yang dipilih untuk tugas akhir ini adalah Pengembangan Aplikasi Statistik Perpustakaan menggunakan Model-View-Controller (Studi Kasus perpustakaan IPB). Yang penulis kerjakan pada tugas akhir ini ialah membuat suatu aplikasi yang dapat mengolah data perpustakaan berbasis CDS/ISIS menjadi data dan grafik statistik.

Terima kasih penulis ucapkan kepada semua pihak yang telah membantu dalam penyelesaian tugas akhir ini, terutama kepada Bapak Ir. Agus Buono, M.Si., M.Kom sebagai pembimbing pertama yang telah banyak mencurahkan waktunya untuk membimbing penulis. Selain itu kepada Bapak Irman Hermadi, M.S. sebagai pembimbing kedua atas saran-saran yang telah diberikan.

Penulis juga ingin mengucapkan rasa terima kasih kepada:

1. Ayah dan Ibu tercinta yang selalu memberikan nasihat, dorongan, doa dan dukungan finansial. Terima kasih atas segala pengorbanan, keringat, dan air mata yang engkau berikan. Sungguh aku tak akan pernah bisa membalasnya. Ya Allah, Izinkan aku untuk selalu berbakti kepadanya di saat dirinya ada maupun sudah tiada seraya berdoa Rabbigfirli waliwalidayya war hamhuma kama rabbayani shagira. Ya Allah, semoga Engkau kumpulkan kami kembali kelak di tempat yang lebih baik bersama orang-orang yang Engkau ridhai.

2. Kakakku Imron, Nurhayati, Nuraini, atas dukungannya secara moril dan finansial. Adikku Adi, Iwan, Fathan, dan Opi , terima kasih atas pengertiannya.

3. Emak, ibu kost yang baik hati. Semoga Allah membalas segala kebaikannya dengan balasan yang berlipat ganda.

4. Mas Sujiwo Tejo yang telah memberikan source code kelas-kelas untuk pengaksesan database CDS/ISIS sehingga pengaksesan menjadi lebih mudah.

5. Ahmad, Zaki, dan Adhi, Teman senasib sepenanggunganku di Ilkom. Terima kasih atas empat tahun persahabatan kita yang indah, lengkap dengan segala suka dukanya. Mudah-mudahan kalian berhasil mencapai segala cita-cita kalian.

6. La Ode, Erus, Tedi, Reza, dan Arif, teman-teman kostanku. Terima kasih atas segala kebaikan dan pengertiannya.

7. Teman-teman Ilkomerz 39 untuk persahabatan, waktu yang tidak akan terulang, dan momen-momen yang tak terlupakan.

8. Pak Effendi, Pak Jatmiko, dan Pak Soleh yang telah mengizinkan penulis menggunakan laboratorium Komputasional. Terima kasih atas kerjasamanya.

9. Semua pihak yang telah membantu dalam penyelesaian tugas akhir ini yang tidak dapat disebutkan satu-persatu.

Semoga karya ilmiah ini dapat bermanfaat dan menjadi amal sholih bagi semua pihak yang terlibat dalam penyusunan skripsi ini.

Bogor, Mei 2007

(7)

RIWAYAT HIDUP

Penulis dilahirkan di Jakarta, pada tanggal 12 Mei 1983. Penulis adalah putra keempat dari pasangan Bapak Muhammad Soleh dan Ibu Aan Hasanah.

Pendidikan sekolah menengah ditempuh di SMU Negeri 21 Jakarta dan lulus pada tahun 2002. Pada tahun yang sama penulis diterima menjadi mahasiswa Program Studi Ilmu Komputer Departemen Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor melalui jalur SPMB (Seleksi Penerimaan Mahasiswa Baru).

Selama masa perkuliahan, penulis aktif di Himpunan Mahasiswa Ilmu Komputer (HIMALKOM) FMIPA IPB sebagai Ketua Departemen Kerohanian periode jabatan 2003/2004. Di akhir perkuliahan, penulis berkesempatan mengikuti Praktek Lapang (PL) selama dua bulan (26 Januari – 26 Maret 2006) di Perpustakaan Pusat IPB dengan mengembangkan Aplikasi Statistik Perpustakaan Menggunakan Basisdata CDS/ISIS.

(8)

DAFTAR ISI

Halaman DAFTAR TABEL ... ix DAFTAR GAMBAR... ix DAFTAR LAMPIRAN ... ix PENDAHULUAN ... 1 Latar Belakang... 1 Tujuan... 1 Ruang Lingkup ... 1 TINJAUAN PUSTAKA ... 1 Basisdata... 1 PHP... 1 Web Server... 2 Dreamweaver. ... 2 CDS/ISIS. ... 2 MySQL. ... 3 PHP-OPENISIS. ... 3 JPGRAPH... 3

Metode Pengembangan Waterfall... 3

Sistem Berorientasi Objek. ... 4

Model-View-Controller. ... 4

Jaringan Saraf Tiruan... 5

JST Propagasi Balik Standar. ... 6

METODE PENELITIAN ... 8 Data ... 8 Lingkungan Pengembangan... 8 PENGEMBANGAN SISTEM ... 8 Analisis ... 8 Perancangan... 11 Implementasi. ... 15

Integrasi dan Pengujian. ... 17

Penggunaan dan Pemeliharaan ... 17

HASIL DAN PEMBAHASAN ... 17

Kelebihan Sistem... 22

Kekurangan Sistem... 22

KESIMPULAN DAN SARAN ... 22

Kesimpulan... 22

Saran... 22

DAFTAR PUSTAKA... 22

(9)

DAFTAR TABEL

Halaman

1. Kapasitas yang disediakan dalam CDS/ISIS ... 3

2. Fungsi-fungsi pada Model ... 11

3. Fungsi-fungsi pada View ... 13

DAFTAR GAMBAR

Halaman 1 Arsitektur aplikasi situs ... 2

2 Hubungan antar bagian MVC ... 5

3 Alur komunikasi antar bagian MVC... 5

4 Arsitektur JST lapis tunggal. ... 6

5 Grafik fungsi sigmoid biner dengan selang (0,1)... 6

6 Grafik fungsi sigmoid bipolar dengan selang (-1,1). ... 7

7 Arsitektur JST propagasi balik ... 7

8 Diagram Konteks... 10

9 DFD level 1 ... 10

10 Layout umum View Aplikasi Statistik Perpustakaan IPB ... 12

11 Diagram Sequences Aplikasi Statistik Perpustakaan IPB... 14

12 Halaman Home ... 18

13 Link Navigasi ... 18

14 Tampilan form menu statistik pengunjung bulanan ... 19

15 Link Navigasi hasil bulanan ... 19

16 Grafik statistik pengunjung bulanan ... 19

17 Data detail pengunjung bulanan ... 20

18 Arsitektur JST pada Aplikasi Statistik Perpustakaan IPB ... 20

19 Data tabel dan grafik persentase kunjungan bulanan ... 21

20 Tabel dan grafik rata-rata intensitas kunjungan per hari... 21

21 Tabel pengunjung tersering ... 21

22 Prediksi pengunjung minggu depan... 21

DAFTAR LAMPIRAN

Halaman 1 DFD level 2 ... 25

2 Class Diagram... 29

3 Penjelasan kelas Model_Sql pada Aplikasi Statistik Perpustakaan IPB ... 30

4 Penjelasan kelas Model pada Aplikasi Statistik Perpustakaan IPB ... 31

5 Penjelasan kelas View pada Aplikasi Statistik Perpustakaan IPB... 33

6 Penjelasan kelas Controller pada Aplikasi Statistik Perpustakaan IPB... 35

7 Modul modul hasil implementasi. ... 37

8 Tampilan form pengunjung tahunan. ... 38

9 Perancangan tabel basisdata ... 39

10 Tabel keterangan JST ... 40

(10)

PENDAHULUAN

Latar Belakang

Perpustakaan perguruan tinggi adalah perpustakaan yang terdapat pada perguruan tinggi, fakultas atau jurusan, maupun lembaga yang berafiliasi dengan perguruan tinggi , dengan tujuan utama membantu perguruan tinggi mencapai tujuannya yakni Tri Dharma

(Basuki 1991). Tujuan perpustakaan

perguruan tinggi antara lain: menyediakan informasi untuk masyarakat perguruan tinggi, menyediakan bahan rujuan pada semua tingkat dan strata akademis, menyediakan

ruangan belajar bagi pengunjung;

memberikan jasa peminjaman untuk berbagai jenis pemakai; dan menyediakan jasa informasi aktif di luar bidang lingkungan perguruan tinggi.

Kegiatan yang terdapat pada perpustakaan antara lain adalah: pengawasan pengunjung saat masuk dan keluar perpustakaan, pengurusan keanggotaan, proses peminjaman, dan pembuatan laporan kegiatan pelaksanaan. Salah satu bagian dari pembuatan laporan kegiatan pelaksanaan adalah penghitungan statistik perpustakaan. Statistik perpustakaan

berguna untuk mengevaluasi kinerja

perpustakaan.

Saat ini penghitungan statistik

perpustakaan masih menggunakan cara

manual sehingga terjadi ketidakefisienan kerja dan pemborosan waktu. Untuk itu dibutuhkan suatu aplikasi yang dapat mengotomasi penghitungan statistik perpustakaan sehingga menjadi lebih cepat dan akurat.

Aplikasi statistik perpustakaan yang dibuat dalam penelitian ini menggunakan konsep

Model-View-Controller (MVC) yang telah

dikembangkan oleh Marston (2004). MVC membagi aplikasi menjadi tiga bagian, yaitu

business logic sebagai Model, tampilan

antarmuka pengguna sebagai View dan pengatur alur kerja sistem sebagai Controller. Tujuan

Penelitian ini bertujuan untuk

mengembangkan aplikasi statistik

perpustakaan menggunakan konsep

Model-View-Controller pada perpustakaan yang menggunakan basisdata CDS/ISIS.

Ruang Lingkup

Ruang lingkup penelitian ini adalah:

1. Mengembangkan Aplikasi statistik

perpustakaan menggunakan konsep

Model-View-Controller pada perpustakaan

yang menggunakan basisdata CDS/ISIS.

2. Fungsi yang terdapat pada aplikasi dibatasi pada tiga fungsi utama yaitu statistik pengunjung, statistik peminjam, satistik koleksi.

3. Periode penghitungan statistik

perpustakaan dapat dilakukan per bulan atau per tahun.

4. Fasilitas statistik koleksi buku yang dipinjam dibatasi hanya untuk buku-buku

Kelas Satu sampai dengan Kelas

Sembilan. Manfaat Penelitian

Manfaat penelitian ini adalah membantu pihak Perpustakaan IPB, khususnya bagian sirkulasi, untuk mengotomasi pembuatan laporan statistik perpustakaan sehingga ketidakefisienan kerja dan pemborosan waktu dapat dihindari.

TINJAUAN PUSTAKA

Basisdata

Basisdata adalah koleksi bersama atas data yang terhubung secara logis, dan deskripsi dari data tersebut dirancang untuk memenuhi kebutuhan suatu organisasi (Connolly 2002). Tujuan utama suatu basisdata adalah pengelolaan dan pengolahan data yang begitu kompleks dengan mudah, cepat dan efisien untuk berbagai kebutuhan.

PHP

PHP (PHP: Hypertext Preprocessor)

merupakan bahasa scripting yang ditulis menggunakan bahasa C, Java, dan Perl dengan beberapa tambahan fungsi khusus PHP. Saat ini, PHP banyak digunakan untuk membangun aplikasi web yang dinamis. Script PHP menyatu dengan file HTML.

Interpreter PHP dalam mengeksekusi kode PHP pada sisi server (disebut server-side) berbeda dengan Java Virtual Machine yang mengeksekusi program pada sisi klien

(client-side). Web server bekerja secara langsung

terhadap file yang bersangkutan, tidak memanggil script terpisah seperti pada metode CGI (Common Gateway Interface) (Bakken 2004).

PHP pertama kali diperkenalkan sekitar tahun 1995 oleh Rasmus Lerdorf yang membuat sebuah script Perl untuk keperluan dinamisasi website pribadinya. Akan tetapi,

kemudian dikembangkan lagi sehingga

menjadi sebuah bahasa yang disebut

“Personal Home Page”. Integrasi PHP sangat luas ke berbagai server basisdata. Beberapa basisdata yang didukung PHP, antara lain:

(11)

Oracle, Sybase, mSQL, MySQL, Solid, dan PostgreSQL (Nugroho 2004).

Web Server

Hampir semua pekerjaan pada aplikasi situs berlangsung di server. Aplikasi khusus yang disebut web server bertanggung jawab untuk berkomunikasi dengan browser. Web server menerima permintaan dari pengguna situs,

meresponnya, kemudian menampilkan

halaman situs yang sesuai.

Web server menyimpan semua file yang terkait dengan sebuah situs dan melakukan semua pekerjaan yang diperlukan untuk menjalankan situs tersebut. Bersama dengan basisdata dan bahasa pemrograman, web

server memproses hampir semua pekerjaan

dalam aplikasi situs dalam arsitektur seperti yang diilustrasikan pada Gambar 1.

PHP dan MySQL dapat bekerja sama dengan banyak web server, salah satunya

adalah Apache. Web server yang

dikembangkan oleh komunitas open source ini

telah terbukti ketangguhan serta

konektivitasnya dengan PHP dan MySQL. Apache merupakan web server yang paling popular.

Gambar 1 Arsitektur aplikasi situs (Greenspan 2002) Dreamweaver MX

Dreamweaver MX adalah suatu program

editor web yang dibuat oleh perusahaan

software Macromedia. Sebagai editor, Dreamweaver MX mempunyai sifat WYSIWYG (What You See Is What You Get), sehingga pemrogram dapat langsung melihat hasil pekerjaannya tanpa harus dibuka di

browser.

Seperti program editor web lainnya,

Dreamweaver MX juga memiliki dua bentuk

layar, yaitu bentuk halaman design dan halaman code. Hal ini akan mempermudah untuk menambahkan script yang berbasis PHP maupun Javascript. Dreamweaver MX selain

mendukung pembuatan web yang berbasis HTML, juga dapat mendukung program-program web yang lain di antaranya PHP, ASP, Perl, Javascript, dan lain-lain (Nugroho 2004).

CDS/ISIS

CDS/ISIS (Computerized Documentation

Sevices/Integrated Sets Of Information Systems) merupakan suatu program paket

terapan komputer yang dirancang khusus untuk menangani basis data yang berupa teks (non numerik) terutama data bibliografi yang sering ditangani sebagai kegiatan layanan pada pusat informasi, perpustakaan, ataupun pusat dokumentasi.

CDS/ISIS diciptakan oleh UNESCO

division of software Development and Application Office of Information Programmers and Services pada tahun 1985 (

Unesco 1989). Versi terakhir yang telah dikembangkan ialah versi 3.07. Program aplikasi ini juga dibuat ke dalam berbagai format sesuai dengan jenis perangkat keras yang digunakan antara lain untuk micro, mini, dan juga mainframe.

Kemampuan yang terdapat pada CDS/ISIS ialah :

Derajat kompatibilitas tinggi karena dapat

dioperasikan pada bermacam-macam

platform ( melakukan penyesuaian dengan

fitur mesin).

Memiliki fasilitas temu balik teks yang canggih, hal ini dikarenakan CDS/ISIS menggunakan teknik pengindeksan dalam proses penelusuran data dan mempunyai karakteristik Database Management System (DBMS).

Dapat digunakan pada sistem jaringan. Sistem multiuser yang dipakai telah memiliki teknik pencegahan terjadinya

deadlock (pengubahan suatu data oleh

beberapa pemakai).

Dilengkapi dengan fasilitas pemrograman yang menggunakan bahasa PASCAL versi

CDS/ISIS (Pascal ISIS), sehingga

pengembangan program aplikasi dapat dilakukan lebih lanjut sesuai kebutuhan pemakai.

Menu CDS/ISIS dapat dimodifikasi dan dibuat ke dalam beberapa bahasa yang mudah dimengerti oleh pemakai.

Menyediakan fasilitas pengamanan data dengan menyesuaikan tingkat jabatan pemakai. Semakin tinggi jabatan semakin banyak data yang bisa diakses.

Untuk kapasitas CDS/ISIS dapat dilihat pada Tabel berikut ini:

Internet Web Browser(Firefox,Nestcape)

Relational Database (MySQL Oracle, MSSQL) Web Server (Apache) Middleware PHP, ColdFusion, ASP

(12)

Tabel 1 Kapasitas yang disediakan dalam program CDS/ISIS

KAPASITAS JUMLAH

Basisdata Tergantung

harddisk Record satu file 16 juta

Karakter dalam record 8000

Field dalam satu record 200

Panjang satu field 8000

Banyak field dalam 1 19

Halaman dalam 1 worksheet 20

Karakter format tampilan 4000

Karakter pada stop-words list 799

Salah satu keunggulan utama yang disediakan oleh CDS/ISIS ialah dapat memanipulasi jumlah data tak terbatas yang mengandung perbedaan elemen data yang kompleks. Untuk para pengguna ahli, CDS/ISIS menyediakan pilihan fasilitas pemrograman yang sangat luas tergantung spesialisasi pembuatan aplikasi menurut penggunaannya. CDS/ISIS juga menyediakan

library eksternal pemrograman yaitu ISIS_DLL yang menyediakan segala alat yang

dibutuhkan untuk membangun aplikasi

berbasis CDS/ISIS. MySQL

Salah satu basisdata server yang cukup terkenal saat ini adalah MySQL. Basisdata

server keluaran T.c.X DataKonsultAB, sebuah

perusahaan IT Swedia ini, menawarkan berbagai keunggulan dibandingkan basisdata

server lain, yaitu:

Sangat cepat mengeksekusi perintah Mampu menangani jutaan user dalam waktu yang bersamaan

Mampu menampung lebih dari 50.000.000

record.

Konektivitas jaringan yang memungkinkan pengguna dapat mengakses basisdata dari mana saja melalui internet.

Dapat berjalan baik pada berbagai platform UNIX layaknya pada sistem non-UNIX seperti Windows dan OS/2.

Mempunyai dukungan open source.

Kelebihan lain dari MySQL adalah

penggunaan bahasa Query standar yang dimiliki SQL (Structure Query Language).

SQL adalah suatu bahasa permintaan

terstruktur yang telah distandarkan untuk semua program pengakses basisdata seperti Oracle, PostgreSQL, SQL Server, dan lain-lain. Sebagai sebuah program penghasil basisdata, MySQL tidak dapat berjalan sendiri tanpa adanya sebuah aplikasi lain (interface). MySQL dapat didukung oleh hampir semua program aplikasi baik open source seperti PHP maupun yang tidak, yang terdapat pada

platform Windows seperti Visual Basic,

Delphi, dan lainnya. PHP-OPENISIS

PHP-OPENISIS merupakan port

OPENISIS ke PHP dalam bentuk extension PHP. OPENISIS itu sendiri merupakan

command-line tool untuk membaca basisdata native CDS/ISIS.

JPGRAPH

JPGRAPH adalah sebuah library

berorientasi objek lengkap untuk

menggambar grafik menggunakan PHP.

JPGRAPH dikeluarkan dibawah lisensi QPL 0.1 (Qt license) untuk penggunaan non komersial dan lisensi JPGRAPH Professional untuk penggunaan komersial.

JPGRAPH memiliki banyak kelas yang memudahkan kita untuk membuat grafik lebih lengkap dan variatif. Kita bisa memakai kelas-kelas tersebut untuk membuat bermacam-macam grafik di antaranya adalah grafik batang, grafik garis, scatter plot, error plot,

box and stock charts, radar plot, pie plot, dll.

Total kelas dan method yang dimiliki oleh JPGRAPH ialah 101 dan 948.

Metode Pengembangan Sistem Waterfall Menurut Sommerville (2001), metode pengembangan sistem Waterfall terbagi menjadi beberapa tahapan, yaitu:

a. Tahap analisis Kebutuhan

Merupakan tahap untuk mengumpulkan informasi kebutuhan sistem yang akan dibuat, menganalisis pengguna yang akan berinteraksi dengan sistem, tugas yang dilakukan pengguna, dan lingkungan sistem. Pada tahap ini, dilakukan komunikasi dengan pengguna

untuk mengumpulkan informasi yang

diperlukan. Selanjutnya, dari informasi yang diperoleh, didefinisikan secara detail dan disajikan sebagai spesifikasi sistem.

b. Perancangan

Merupakan tahap yang mendefinisikan

informasi kebutuhan menjadi suatu

representasi sistem sebelum

diimplementasikan. Pada tahap ini, dirancang pula arsitektur sistem secara keseluruhan.

(13)

c. Implementasi

Merupakan tahap yang merealisasikan rancangan menjadi kumpulan program atau unit-unit program sehingga menjadi suatu sistem yang dapat digunakan.

d. Integrasi dan Pengujian

Unit-unit program yang sudah dibuat diintegrasikan dan diuji sebagai sistem yang lengkap untuk menjamin bahwa semua kebutuhan sudah terpenuhi. Setelah pengujian selesai dilakukan, sistem siap untuk dilaksanakan.

e. Penggunaan dan Pemeliharaan

Fase ini umumnya menjadi fase terpanjang dalam siklus hidup sistem. Fase pemeliharaan meliputi koreksi error yang tidak ditemukan pada tahap sebelumnya. Pemeliharaan juga dilakukan untuk memperbaiki implementasi unit-unit sistem dan menambahkan layanan-layanan baru ketika muncul kebutuhan yang baru.

Sistem Berorientasi Objek

Objek adalah komponen software yang memodelkan entitas nyata; memiliki data, fungsi, dan sifat yang dinamik.

Sebuah sistem yang dibangun berdasarkan metode berorientasi objek adalah sebuah sistem yang komponennya dienkapsulasi menjadi kelompok data dan fungsi yang dapat mewarisi atribut dan sifat komponen lainnya, dan komponen-komponen tersebut saling berinteraksi satu sama lain (Meyer 1997). Kelebihan Software berorientasi objek adalah:

Reused Code, kode-kode yang telah dibuat

dapat dipergunakan kembali. Kode lebih ringkas, lebih sedikit kesalahan, konsisten, dan mudah untuk dipelihara

Enkapsulasi, yaitu pemecahan masalah ke

bentuk yang lebih kecil. Dengan adanya enkapsulasi, perubahan pada suatu bagian berimplikasi minimum ke bagian lainnya.

Communicable, source code lebih natural

dan lebih mudah dijelskan ke anggota tim.

Testable, setiap kelas dapat dites secara

individual, lebih mudah untuk dipisahkan, dan lebih mudah untuk membetulkan kesalahan.

Kelas adalah kumpulan objek yang

mempunyai atribut yang sama. Kelas adalah definisi statik dari entitas. Entitas adalah atribut kelas, variable lokal, parameter formal, dan hasil fungsi.

Tujuh langkah untuk mendapatkan hasil

software yang memuaskan (Meyer 1997)

adalah:

Modularisasi, sistem dimodularisasi berdasarkan struktur objek.

Abstraksi data, objek harus dideskripsikan sebagai implementasi dari ADT (Abstract

Definition Type).

Classes, setiap tipe yang tidak sederhana

adalah sebuah modul, setiap modul adalah tipe tingkat tinggi.

Inheritance, sebuah kelas dapat didefinisikan berdasarkan ekstensi atau restriksi dari kelas lain.

Polimorphisme, entitas program harus

dimungkinkan untuk mengacu kepada lebih dari satu kelas dan operasi harus dimungkinkan untuk lebih dari satu kelas.

Multiple and repeated inheritance, harus

dimungkinkan untuk membuat deklarasi kelas sebagai pewaris dari banyak kelas, dan lebih dari satu jika pewarisnya sebuah kelas.

Pengembangan sistem dengan metode berorientasi objek dapat meningkatkan :

Produktivitas

Kecepatan pengembangan Kualitas perangkat lunak Kemudahan pemeliharaan Model-View-Controller (MVC)

MVC adalah suatu rancangan aplikasi yang terdiri atas tiga bagian yaitu: Model, View, dan

Controller, sehingga membuat pengembangan

aplikasi menjadi lebih mudah. MVC

dikembangkan untuk memetakan input,

proses, dan output ke dalam user interfaces (Marston 2004). MVC pattern mengatur dan memisahkan software ke dalam tiga bagian, yaitu:

1. Model, berfungsi untuk mengenkapsulasi application data, application flow, dan bussiness logic.

2. View, berfungsi untuk mengekstrak data dari Model dan memformatnya ke dalam bentuk presentasi.

3.Controller, menjalankan application flow

dan menerima input dari user,

mengubahnya untuk dikirim ke Model dan

View. ( Sweat 2005)

Hubungan di antara bagian-bagian MVC dapat dlihat pada Gambar 2.

MVC Pattern pertama kali dibangun oleh Trygve Reenskaug dari Xerox’s Palo Alto

Research Centre (PARC) di tahun 1970. Di

lain pihak, referensi implementasinya pertama kali dibangun oleh Tim SmallTalk-80 untuk memecahkan masalah interaksi GUI (

Graphical User Interfaces) pada aplikasi.

(14)

HTTP Request

HTTP Response Gambar 2 Hubungan antar bagian MVC

(Sweat 2005)

Penjelasan dari masing-masing bagian adalah sebagai berikut:

Model

Model merupakan representasi dari proses

bisnis di dalam aplikasi perangkat lunak. Lebih mudahnya, dapat juga disebutkan bahwa Model adalah bagian yang bertugas untuk mengolah data mentah menjadi data yang mengandung arti yang diinginkan oleh pengguna.

View

View mengatur antarmuka dari sistem,

mengatur output baik grafis maupun teks, yang nantinya dikirimkan ke pengguna aplikasi. Format HTML merupakan contoh

umum hasil akhir yang dikirimkan dalam aplikasi web.

Controller

Controller merepresentasikan permintaan

yang datang (HTTP request) dari pengguna berupa input dari keyboard atau mouse, memerintahkan Model untuk memproses

aksi berdasarkan input, kemudian

menampilkan hasil dari aksi tersebut ke

View.

Alur komunikasi antar tiap bagian MVC diawali oleh permintaan dari user yang diekspresikan oleh HTTP Request. HTTP

Request dikirimkan ke Controller. Kemudian Controller akan menterjemahkan HTTP Request tersebut sebagai perintah request

data dan mengirimkannya ke Model.

Kemudian Model akan menjalankan perintah tersebut dan menghasilkan data hasil. Setelah itu, Controller akan memerintahkan View

Untuk menampilkan data hasil. View

melaksanakan perintah tersebut dengan cara mengambil data hasil, memformatnya ke dalam bentuk presentasi, dan mengirimkan hasilnya untuk ditampilkan (HTTP Response). Alur komunikasi antar tiap bagian MVC dapat dilihat pada Gambar 3.

Gambar 3 Alur komunikasi Antar tiap bagian MVC ( Sweat 2005) Jaringan Syaraf Tiruan

Jaringan Syaraf Tiruan (JST) merupakan suatu sistem pemroses informasi yang memiliki persamaan secara umum dengan cara kerja jaringan syaraf biologi (Fausett 1994). Secara matematis, untuk suatu syaraf, setiap input Xi dimodulasikan oleh sebuah

pembobot Wi sehingga jumlah total input

dinyatakan sebagai:

i i i

W

X

...

(1) atau dalam bentuk vektor, X.W, dimana X = [X1, X2, …, Xn] dan W = [W1, W2, …, Wn].

Sinyal input selanjutnya diproses oleh fungsi aktivasi (activation function) untuk menghasilkan sinyal output, yang jika tidak nol, akan ditransmisikan sebagai output (Fu 1994).

Model

Controlle

r

(15)

Jaringan syaraf merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran pada otak manusia tersebut. Istilah buatan digunakan karena pada

pengimplementasiannya jaringan ini

menggunakan komputer agar mampu

menyelesaikan sejumlah proses perhitungan

selama proses pembelajaran. Dengan

demikian, bisa dikatakan bahwa jaringan syaraf tiruan merupakan sistem pemrosesan informasi yang memiliki karakteristik hampir sama dengan jaringan jaringan neural biologis yaitu otak manusia.

Neuron dan hubungan antar synapses merupakan elemen kunci untuk proses informasi pada jaringan. Lihat gambar dia atas. Sebagian besar proses neuron terlihat seperti pohon yang disebut dengan dendrites yang menerima sinyal dari neuron lainnya melewati persimpangan yang disebut Synapse. Menurut Fausett (1994), suatu JST dicirikan oleh tiga hal sebagai berikut:

1. Arsitektur JST

Arsitektur jaringan ialah pengaturan

neuron dalam suatu lapisan, pola hubungan dalam lapisan dan di antara lapisan. Dalam JST, neuron-neuron diatur dalam sebuah lapisan (layer). Ada tiga tipe lapisan, yaitu lapisan input, lapisan tersembunyi (hidden layer) dan lapisan output. Jaringan neuron dikelompokkan sebagai lapis tunggal (single layer) yang terdiri atas lapisan input dan output, dan lapis banyak (multiple layer) yang terdiri atas lapisan input, lapisan tersembunyi, dan lapisan output. Ilustrasi JST lapis tunggal dapat dilihat dalam Gambar 4.

Gambar 4 Arsitektur JST lapis tunggal 2. Metode pembelajaran untuk penentuan

pembobot koneksi.

Metode pembelajaran digunakan untuk menentukan nilai pembobot yang akan digunakan pada saat pengujian. Ada dua

tipe pembelajaran, yaitu dengan

pengarahan (supervised learning) dan tanpa pengarahan (unsupervised learning). Di lain pihak, metode pembelajaran JST, di antaranya: Perceptron, Aturan Delta (Adaline/Madaline), Backpropagation, Self Organizing Map (SOM), dan

Learning Vector Quantization (LVQ) .

3. Fungsi aktivasi yang digunakan.

Fungsi aktivasi merupakan fungsi yang menentukan level aktivasi, yaitu keadaan internal sebuah neuron dalam JST. Keluaran aktivasi ini biasanya dikirim sebagai sinyal ke neuron lainnya. Contoh fungsi aktivasi ialah fungsi identitas fungsi tangga biner (binary step function), fungsi tangga bipolar, fungsi sigmoid biner dan fungsi sigmoid bipolar.

JST Propagasi Balik Standar

Menurut Fu (1994), jaringan propagasi balik (propagation network) merupakan jaringan umpan maju berlapis banyak (multilayer feedforward network). Aturan pembelajaran propagasi balik disebut

backpropagation yang merupakan jenis dari

teknik gradient descent dengan backward

error (gradient) propagation.

Fungsi aktivasi yang digunakan dalam propagasi balik ialah fungsi sigmoid. Hal ini disebabkan karena dalam jaringan propagasi balik fungsi aktivasi yang digunakan harus kontinu, dapat didiferensialkan, dan monoton naik (Fausett 1994). Salah satu fungsi aktivasi yang paling banyak digunakan ialah sigmoid biner, yang memiliki selang [0, 1] dan didefinisikan sebagai: ) exp( 1 1 ) ( 1 x x f ... (2) Dengan turunannya )] ( 1 )[ ( ) ( ' 1 1 1 x f x f x f ... (3)

Grafik untuk fungsi sigmoid biner dapat diihat dalam Gambar 5.

Gambar 5 Grafik fungsi sigmoid biner dengan selang (0,1)

Fungsi aktivasi lain yang biasa digunakan ialah sigmoid bipolar, yang memiliki selang nilai [-1, 1], dan didefinisikan sebagai:

1 ) exp( 1 2 ) ( 2 x x f ... (4) n a wr w3 w1 w2 pr p3 p2 p1 b f

(16)

Dengan turunannya: )] ( 1 )][ ( 1 [ 2 1 ) ( ' 2 2 2 x f x f x f ... (5)

Grafik untuk fungsi sigmoid bipolar dapat dilihat dalam Gambar 6.

Gambar 6 Grafik fungsi sigmoid bipolar dengan selang (-1,1)

Jaringan ini menggunakan metode

pembelajaran dengan pengarahan (supervised

learning). Cara kerja JST diawali dengan

inisialisasi pembobot dan bias. Pemilihan metode inisialisasi pembobot dan bias berpengaruh pada kecepatan JST dalam mencapai kekonvergenan. (Fausett, 1994). JST propagasi balik ditunjukkan dalam Gambar 7.

Gambar 7 Arsitektur JST propagasi balik (Fu 1994)

Pada pelatihan JST propagasi balik terdapat tiga tahapan, yaitu pelatihan input yang bersifat umpan maju, penghitungan galat, dan penyesuaian pembobot. Secara umum cara kerja JST propagasi balik ada beberapa langkah. Pertama, pola input dan target dimasukkan ke dalam jaringan. Selanjutnya pola input ini akan berubah sesuai dengan propagasi pola tersebut ke lapisan-lapisan berikutnya hingga menghasilkan output. Output ini akan dibandingkan dengan target. Apabila dari hasil perbandingan ini

dihasilkan nilai yang sama, proses

pembelajaran akan berhenti. Tetapi apabila berbeda, maka jaringan mengubah pembobot yang ada pada hubungan antar neuron dengan suatu aturan tertentu agar nilai output lebih mendekati nilai target. Proses pengubahan

pembobot adalah dengan cara

mempropagasikan kembali nilai korelasi galat output jaringan ke lapisan-lapisan sebelumnya (propagasi balik). Kemudian dari lapisan input, pola akan diproses lagi untuk mengubah nilai pembobot, hingga akhirnya memperoleh output jaringan baru. Proses ini dilakukan berulang-ulang sampai diperoleh nilai yang sama atau minimal sesuai dengan galat yang diinginkan. Proses perubahan pembobot inilah yang disebut proses pembelajaran.

Algoritma propagasi balik ialah sebagai berikut (Fu 1994):

Inisialisasi pembobot.

Tentukan semua pembobot dan threshold untuk tiap node dengan nilai yang kecil.

Threshold untuk node ialah negatif dari

pembobot dari unit bias (yang level aktivasinya ditetapkan 1).

Penghitungan fungsi aktivasi.

1. Tingkat aktivasi unit input ditentukan oleh contoh yang telah diberikan pada

network.

2. Tingkat aktivasi Oj unit tersembunyi

dan output ditentukan oleh:

)

(

j i ji j

F

W

O

O

... (6)

Dimana Wji adalah pembobot dari unit

Oi, i ialah threshold dari node, dan F

adalah fungsi sigmoid:

a e F 1 1 ) ( ...(7) Pelatihan bobot.

1. Dimulai dari unit-unit output dan dilakukan backward menuju lapisan tersembunyi secara rekursif. Perubahan pembobot sebagai berikut:

ji ji

ji

t

w

t

w

W

(

1

)

(

)

... (8)

Dengan Wji(t) adalah pembobot dari unit i ke unit j pada saat t iterasi ke-t dan Wji adalah koreksi pembobot.

2. Perubahan pembobot dihitung dengan: i

j

ji

O

W

... .(9) Dengan adalah trial independent

learning rate dan j adalah error

gradient pada unit j.

3. Error gradient dihitung sebagai berikut:

untuk unit output:

j = Oj(1-Oj)(Tj-Oj) ... (10) Backward Error Propagation OUTPUT LAYER HIDDEN LAYER INPUT LAYER Input Actual Output Forward Information Flow Forward Information Flow Target Output

(17)

Dengan Tj adalah aktivasi output

(target yang diharapkan dan Oj adalah

aktivasi output aktual pada unit output

j).

untuk lapisan tersembunyi:

j = Oj(1-Oj) k Wkj ... (11)

Dengan j adalah error gradient pada

unit k yang memiliki koneksi dari unit tersembunyi j.

3. Iterasi diulangi sampai konvergen terhadap kriteria error yang ditentukan. Satu iterasi meliputi pemberian contoh, penghitungan aktivasi dan modifikasi pembobot.

METODE PENELITIAN

Metode pengembangan sistem dalam penelitian ini adalah metode pengembangan sistem Waterfall yang terdiri dari beberapa tahapan yaitu analisis, perancangan, implementasi, integrasi dan pengujian, dan penggunaan dan pemeliharaan. Perancangan dengan tahapan-tahapan yang disediakan berguna untuk membangun sistem yang optimal.

Data

Data yang digunakan dalam penelitian ini terdiri dari 2 jenis data, yaitu data pengunjung dan data sirkulasi. Data tersebut berasal dari

basisdata CDS/ISIS. Data pengunjung

berjumlah 19080 record yang terdiri dari 1

record pengunjung bulan Mei 2005, 3691 record pengunjung bulan Januari 2006, dan

sisanya adalah pengunjung bulan Februari 2006. Data sirkulasi terdiri dari 29088 record. Lingkungan Pengembangan

Perangkat keras dan perangkat lunak yang digunakan dalam mengembangkan sistem ini adalah:

Perangkat keras

1. Prosessor Intel Celeron 1,7 GHz 2. RAM 256 MB

3. Harddisk 40 GB

4. Monitor Resolusi 1024 x 768

5. Mouse dan Keyboard Perangkat Lunak

1. Sistem operasi : Microsoft Windows XP Professional

2. Web server: Apache

3. DBMS: CDS/ISIS dan MySQL

4. Scripting Language: PHP 4.2.1

5.Grafik : JPGraph OO Library

6. Editor Teks: Macromedia Dreamweaver

MX.

7. Adobe Photoshop 7.0 untuk membantu membuat tampilan desain antarmuka.

PENGEMBANGAN SISTEM

Sistem dikembangkan dengan

menggunakan metode pengembangan sistem Waterfall. Pengembangan dengan tahapan-tahapan yang disediakan berguna untuk membangun sistem yang optimal. Menurut Sommerville (2001), tahapan metode pengembangan sistem Waterfall terdiri atas analisis, perancangan, implementasi, integrasi

dan pengujian, dan penggunaan dan

pemeliharaan. Analisis

Bagian sirkulasi Perpustakaan IPB memiliki kebutuhan untuk mengolah data perpustakaan menjadi data statistik. Data statistik tersebut dibutuhkan sebagai bagian dari laporan evaluasi kinerja Perpustakaan IPB setiap tahunnya. Kebutuhan tersebut meliputi pembuatan grafik statistik jumlah pengunjung setiap departemen per bulan maupun per tahun, grafik statistik jumlah peminjam setiap departemen per bulan maupun per tahun, data pengunjung tersering, data peminjam tersering, dan data koleksi dipinjam tersering. Pembuatan data statistik tersebut dikerjakan secara manual dengan cara mengubah data berformat CDS/ISIS ke dalam data berformat Microsoft Excel kemudian diolah dengan software tersebut. Karena dikerjakan secara manual, output yang dihasilkan rentan dengan kesalahan yang diakibatkan oleh faktor kelalaian manusia. Aplikasi Statistik Perpustakaan IPB diharapkan nantinya akan mengatasi masalah tersebut di atas. Untuk menghasilkan data statistik, pengguna aplikasi ini, yaitu pegawai bagian sirkulasi Perpustakaan IPB,

nantinya cukup mengisi form dengan

parameter yang dibutuhkan.

Maksud dan tujuan dari tahap ini adalah untuk mendapatkan informasi yang tepat mengenai apa saja yang harus dilakukan oleh aplikasi ini. Berdasarkan hasil analisis, kebutuhan yang diperlukan untuk Aplikasi Statistik Perpustakaan IPB terbagi dalam empat menu utama, yaitu :

1. Statistik Pengunjung

Statistik pengunjung dibutuhkan untuk mengetahui banyaknya kunjungan pengguna perpustakaan setiap bulan dan setiap tahunnya. Kebutuhan dalam menu ini terbagi dalam beberapa submenu, yaitu:

(18)

Pengunjung departemen elemen fakultas Pada submenu ini aplikasi diharapkan

memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

kunjungan, dan report yang

menggambarkan banyaknya pengunjung yang berasal dari setiap departemen pada fakultas tertentu dalam periode bulanan maupun tahunan. Report yang ditampilkan berisi analisis data di antaranya adalah: pengunjung tersering suatu fakultas, data dan grafik persentase kunjungan tiap departemen, data dan grafik intensitas kunjungan per hari, grafik intensitas kunjungan per jam, dan grafik prediksi kunjungan minggu depan.

Pengunjung departemen elemen mahasiswa Pada submenu ini aplikasi diharapkan

memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

kunjungan, dan report yang

menggambarkan banyaknya pengunjung yang berasal dari setiap departemen di seluruh fakultas dalam periode bulanan maupun tahunan. Report yang ditampilkan berisi analisis data di antaranya adalah: pengunjung tersering dari seluruh fakultas, data dan grafik persentase kunjungan seluruh fakultas, data dan grafik intensitas kunjungan per hari, grafik intensitas kunjungan per jam, dan grafik prediksi kunjungan minggu depan.

Pengunjung elemen golongan

Pada submenu ini aplikasi diharapkan memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

kunjungan, dan report yang

menggambarkan banyaknya pengunjung yang berasal dari setiap elemen anggota mahasiswa, anggota luar biasa, dan tamu dalam periode bulanan maupun tahunan.

Report yang ditampilkan berisi analisis data

diantaranya adalah: pengunjung tersering dari seluruh fakultas ditambah dengan elemen golongan lainnya, data dan grafik persentase kunjungan seluruh fakultas dan elemen golongan lainnya, data dan grafik intensitas kunjungan per hari, grafik intensitas kunjungan per jam, dan grafik prediksi kunjungan minggu depan.

2. Statistik Peminjam

Statistik peminjam dibutuhkan untuk mengetahui banyaknya pinjaman pengguna perpustakaan setiap bulan dan setiap tahunnya. Kebutuhan dalam menu ini terbagi dalam beberapa submenu, yaitu:

Peminjam departemen elemen fakultas

Pada submenu ini aplikasi diharapkan memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

kunjungan, dan report yang

menggambarkan banyaknya peminjam yang berasal dari setiap departemen pada fakultas tertentu dalam periode bulanan maupun tahunan. Report yang ditampilkan berisi analisis data di antaranya adalah: peminjam tersering suatu fakultas, data dan grafik persentase peminjaman tiap departemen, data dan grafik intensitas peminjaman per hari, dan grafik prediksi peminjaman minggu depan.

Peminjam departemen elemen mahasiswa Pada submenu ini aplikasi diharapkan memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

peminjaman, dan report yang

menggambarkan banyaknya peminjam yang berasal dari setiap departemen di seluruh fakultas dalam periode bulanan maupun tahunan. Report yang ditampilkan berisi analisis data di antaranya adalah: peminjam tersering dari seluruh fakultas, data dan grafik persentase peminjaman seluruh fakultas, data dan grafik intensitas peminjaman per hari, dan grafik prediksi peminjaman minggu depan.

Peminjam elemen golongan.

Pada submenu ini aplikasi diharapkan memiliki fasilitas untuk menampilkan grafik statistik, data detail, intensitas

peminjaman, dan report yang

menggambarkan banyaknya peminjam yang berasal dari seluruh fakultas ditambah dengan elemen golongan lainnya dalam periode bulanan maupun tahunan. Report yang ditampilkan berisi analisis data di antaranya adalah: peminjam tersering dari seluruh fakultas ditambah elemen golongan lainnya, data dan grafik persentase peminjaman seluruh fakultas, data dan grafik intensitas peminjaman per hari, dan grafik prediksi kunjungan minggu depan. 3. Statistik Koleksi

Statistik koleksi dibutuhkan untuk mengetahui banyaknya koleksi yang dipinjam pengguna perpustakaan setiap bulan dan setiap tahunnya. Kebutuhan dalam menu ini terbagi dalam beberapa submenu, yaitu: :

Koleksi dipinjam dari suatu kelas.

Pada submenu ini aplikasi diharapkan dapat menampilkan grafik statistik, data detail, dan report yang menggambarkan banyaknya koleksi yang dipinjam dari suatu kelas tertentu dalam periode bulanan maupun tahunan. Report yang dihasilkan

(19)

berisi analisis data di antaranya adalah koleksi buku yang dipinjam tersering dan data beserta grafik persentase kelas koleksi buku yang dipinjam.

Koleksi dipinjam dari seluruh kelas

Pada submenu ini aplikasi diharapkan dapat menampilkan grafik statistik, data detail, dan report yang menggambarkan banyaknya koleksi yang dipinjam dari seluruh kelas koleksi yaitu dari Kelas Satu sampai dengan Kelas Sembilan dalam periode bulanan maupun tahunan. Report yang dihasilkan berisi analisis data di antaranya adalah koleksi buku yang dipinjam tersering dan data beserta grafik persentase kelas koleksi buku yang dipinjam.

Dari hasil analisis di atas, secara garis besar dapat kita simpulkan bahwa fasilitas-fasilitas yang dibutuhkan pada Aplikasi ini adalah:

Grafik statistik dari seluruh submenu. Data detail dari seluruh submenu.

Tabel intensitas dari submenu yang berasal dari menu statistik pengunjung dan menu statistik peminjam.

Report dari seluruh submenu.

Sebagai acuan dalam mengembangkan aplikasi ini, maka dibuatlah sebuah Diagram Konteks, DFD level 1, DFD level 2, dan Class

Diagram. Untuk Diagram Konteks dan DFD

level 1 dapat dilihat pada Gambar 8 dan Gambar 9. Untuk DFD level 2 dapat dilihat pada Lampiran 1. Di sisi lain, untuk Class

Diagram dapat dilihat pada Lampiran 2.

Diagram Konteks pada Gambar 8 dapat dijelaskan sebagai berikut: parameter-parameter yang dikirimkan pengguna berupa bulan, tahun, asal fakultas, dan asal basisdata

ditangkap oleh Aplikasi Statistik

Perpustakaan IPB sebagai permintaan yang kemudian dipakai untuk mengolah data pada basisdata MySQL menjadi data hasil yang diinginkan. Data hasil tersebut kemudian

dikirim kepada pengguna.

Gambar 8 Diagram Konteks

(20)

DFD level 1 pada Gambar 9 dapat dijelaskan sebagai berikut: Model terdiri dari 2 proses utama yaitu proses Model_Sql dan

proses Model. Fungsi utama proses

Model_Sql adalah mentransfer basisdata

CDS/ISIS menjadi basisdata MySQL

sedangkan proses bisnis yang sesungguhnya

ditangani oleh proses Model. Untuk

meningkatkan efisiensi waktu, proses Model_Sql nantinya hanya akan dijalankan sekali dalam seminggu. Dalam diagram ini, paramter-parameter yang dimasukkan oleh pengguna dikenali oleh proses Controller sebagai permintaan. Permintaan tersebut kemudian direspon oleh proses Controller dengan memanggil fungsi pada proses Model untuk menghasilkan data yang diinginkan oleh pengguna, kemudian proses Controller akan memanggil proses View untuk menampilkan data yang telah dihasilkan oleh proses Model

kepada pengguna. Proses View akan

mengambil data dari proses Model dan

dibentuk ke dalam tabel atau grafik untuk kemudian ditampilkan kepada pengguna. Perancangan

Pada Aplikasi Statistik Perpustakaan IPB, akan dikembangkan perancangan antar muka dan proses dengan menggunakan konsep MVC. MVC memetakan input, proses, dan output ke dalam user interface.

Alasan digunakan MVC dalam penelitian

ini adalah untuk kemudahan dalam

pengelolaan dan perbaikan sistem. Hal ini dikarenakan MVC memisahkan perancangan sistem menjadi tiga bagian, yaitu bussines

logic sebagai Model, tampilan antarmuka

pengguna sebagai View dan Controller yang mengatur kerja sistem secara keseluruhan. 1. Model

Model bertugas untuk mengolah data

berdasarkan perintah dari Controller yang kemudian hasilnya akan ditangkap oleh View. Berdasarkan hasil analisis, Model ditangani oleh dua proses utama yaitu proses Model_Sql dan proses Model. Fungsi utama proses Model_Sql adalah mentransfer basisdata

CDS/ISIS menjadi basisdata MySQL

sedangkan proses bisnis yang sesungguhnya ditangani oleh proses Model. Proses Model terdiri dari beberapa fungsi yang akan digunakan untuk bussines logic di dalam sistem. Fungsi fungsi yang ada di dalam proses Model dan kegunaannya dapat dilihat di Tabel 2. Di sisi lain, fungsi-fungsi yang terdapat di dalam proses Model_Sql dan kegunaannya dapat dilihat pada Lampiran 3.

Tabel 2 Fungsi fungsi pada Model Nama Fungsi Kegunaan

get_fakdep_pg() Mendapatkan data

pengunjung tiap

departemen pada

fakultas tertentu

get_em_pg() Mendapatkan data

pengunjung semua

fakultas

get_elmgol_pg() Mendapatkan data

pengunjung semua fakultas ditambah dengan elemen golongan lainnya get_intensitas_ kunjungan_bulan () Mendapatkan data intensitas kunjungan tiap hari dan tiap jam dalam bulan tertentu get_intensitas_

kunjungan_tahun ()

Mendapatkan data

intensitas kunjungan tiap hari tiap jam selama tahun tertentu get_intensitas_ra

ta_pg()

Mendapatkan rata-rata intensitas kunjungan tiap hari dalam bulan atau tahun tertentu

get_fakdep_pj() Mendapatkan data

pengunjung tiap

departemen pada

fakultas tertentu

get_em_pj() Mendapatkan data

pengunjung semua

fakultas

get_elmgol_pj() Mendapatkan data

peminjam semua fakultas ditambah dengan elemen golongan lainnya. get_intensitas_ peminjaman_ bulan() Mendapatkan data intensitas peminjaman tiap hari dalam bulan tertentu get_intensitas_ peminjaman_ tahun() Mendapatkan data intensitas peminjaman tiap hari dalam tahun tertentu

get_intensitas_ra ta_pj()

Mendapatkan rata-rata intensitas peminjaman tiap hari dalam bulan atau tahun tertentu

get_kelas_kl() Mendapatkan data

koleksi dipinjam dari kelas tertentu

(21)

Lanjutan Tabel 2 Fungsi fungsi pada Model Nama Fungsi Kegunaan

get_ku_kl() Mendapatkan data

koleksi dipinjam dari semua kelas

get_grafikvalue_ fakdep()

Mendapatkan data

grafik pengunjung atau

peminjam tiap departemen pada fakultas tertentu get_grafikvalue_ emeg Mendapatkan data

grafik pengunjung atau peminjam tiap fakultas atau elemen golongan

maks_value() Mendapatkan nilai

tertinggi pengunjung atau peminjaman

ekspor() Mengekspor data ke

dalam format Microsoft Excel

2. View

View dalam Aplikasi Statistik Perpustakaan IPB ini bertugas untuk menangkap data hasil dari Model yaitu berupa data grafik, data detail, dan data report kemudian mengubahnya ke dalam format presentasi dan menampilkannya kepada pengguna. Layout View secara umum terdiri dari :

Header

Header Aplikasi Statistik Perpustakaan IPB

diletakkan pada bagian Atas berisi logo IPB dan nama aplikasi.

Link Navigasi

Link navigasi diletakan setelah Header. Link ini merupakan representasi dari menu.

Dari link ini pengguna bisa memilih menu mana yang diinginkan. Menu pada link ini terdiri dari enam menu utama dan dua menu tambahan. Enam menu utama yaitu: menu statistik pengunjung bulanan, statistik pengunjung tahunan, statistik peminjam bulanan, statistik peminjam tahunan, statistik koleksi bulanan, dan statistik koleksi tahunan. Di sisi lain, dua menu tambahan yaitu: Home dan Appendices.

Home merupakan halaman pembuka dan Appendices merupakan halaman yang berisi

keterangan istilah-istilah yang dipakai dalam aplikasi ini.

Header Form

Header Form diletakkan di atas Form dan

merepresentasikan halaman menu yang sedang aktif.

Form

Form aplikasi ini terdiri dari beberapa listbox yang berguna untuk memilih

kombinasi antara bulan, tahun, fakultas dan basisdata yang diinginkan pengguna.

Link Navigasi Hasil

Link Navigasi Hasil terdiri dari empat link

yaitu: Link Grafik, Link Data Detail, Link Tabel Intensitas, dan Link Report. Link Grafik berfungsi untuk menampilkan hasil grafik statistik, Link Data Detail untuk menampilkan hasil data detail, Link Tabel Intensitas untuk menampilkan hasil tabel intensitas, dan Link Report untuk menampilkan hasil report.

Grafik

Grafik Aplikasi Statistik Perpustakaan IPB diletakkan pada bagian atas.

Data Detail

Data Detail merupakan tampilan data-data hasil proses pada Model secara detail. Tabel Intensitas

Tabel Intensitas merupakan tampilan tabel intensitas peminjaman tiap hari atau tabel intensitas kunjungan tiap hari per jamnya.

Report

Report merupakan tampilan untuk mengemas grafik statistik dan hasil analisis data dalam bentuk laporan.

Layout View Aplikasi Statistik

Perpustakaan IPB secara umum dapat dilihat Gambar 10. Header Link Navigasi Header Form Form grafik tabel intensitas data detail report Footer

Gambar 10 Layout umum View Aplikasi Statistik Perpustakaan IPB

(22)

Fungsi fungsi pada View dapat dilihat pada Tabel 3.

Tabel 3 Fungsi-fungsi pada View

Nama Fungsi

setheader Membuat header

aplikasi

Setform() Membuat form periode

bulanan

Setform2() Membuat form periode

tahunan

Judul() Membuat judul grafik

Subjudul() Membuat subjudul

grafik

Keterangan() Membuat keterangan

untuk grafik persen graph

text() Membuat text

keterangan pada grafik

plot() Membuat barplot

Setup_graph() Membuat grafik dan

menampilkannya

Persen_graph() Membuat grafik

persentase Grafik_intensitas

_jampg()

Membuat grafik

rata-rata intensitas

kunjungan per jam. Grafik_intensitas

_hari()

Membuat grafik

rata-rata intensitas

kunjungan atau

intensitas peminjaman per hari.

Report Mengemas grafik

statistik dan hasil analisis data dalam bentuk laporan

Ket_tabel() Menyimpan beberapa

variable yang berkaitan

dengan tabel

Indexing Mengindeks data detail

detail_pg() Membingkai data detail

Pengunjung dalam

sebuah tabel

print_pg() Menyatukan tabel data

detail pengunjung

dengan indeksnya

detail_pj() Membingkai data detail

peminjam dalam sebuah tabel

Print_pj Menyatukan tabel data

detail peminjam dengan indeksnya

Detail_kl() Membingkai data detail

koleksi dalam sebuah tabel

Lanjutan Tabel 3. fungsi-fungsi pada View

Nama Fungsi

Print_kl() Menyatukan tabel data

detail koleksi dengan indeksnya

Tampil_intensitas _kunjungan

Membingkai data

intensitas kunjungan dalam sebuah tabel Print_intensitas _kunjungan() Menyatukan tabel intensitas kunjungan dengan indeksnya Tampil_intensitas _peminjaman() Membingkai data intensitas peminjaman ke dalam sebuah tabel Print_intensitas

_peminjaman()

Menyatukan tabel

intensitas peminjaman dengan indeksnya. ekspor_report() Mengekspor report ke

dalam format Microsoft

Word atau Microsot

Excel 3. Controller

Controller bertugas untuk menerima permintaan yang datang (HTPP request) dari

user, mengevaluasi permintaan, kemudian

memerintahkan Model untuk mengolah data berdasarkan permintaan tersebut. Controller kemudian akan memerintahkan View untuk menampilkan data hasil olahan Model tersebut. Controller merupakan bagian dari sistem yang mengendalikan alur proses dalam program dengan melakukan hal hal sebagai berikut:

Menerima permintaaan yang datang (HTTP

request) dan menerjemahkan permintaan

tersebut menjadi panggilan-panggilan fungsi yang sesuai dengan fungsi Model. Memanggil fungsi-fungsi pada Model sesuai dengan urutan yang telah ditentukan. Memproses keluaran dari fungsi-fungsi

yang ada di Model supaya dapat

ditampilkan di View.

Menampilkan hasil pemrosesan keluaran dari Model ke View.

Di dalam Controller, terdapat fungsi-fungsi yang memanggil Model Fungsi-fungsi yang ada di Controller dapat dilihat pada Lampiran 6.

Selanjutnya, contoh tahapan MVC dapat dilihat pada Gambar 11, yaitu ketika pengguna melakukan proses mendapatkan statistik pengunjung bulanan.

(23)

Gambar 11 Diagram Sequence Aplikasi Statistik Perpustakaan IPB

Keterangan: : Pesan : Respon/ balasan pesan Tahapan pada Gambar 11 dapat dijelaskan

sebagai berikut: Tahapan di atas diawali dengan permintaan user untuk mendapatkan statistik pengunjung bulanan. Permintaan ini diterima oleh Controller dan direspon dengan

menampilkan halaman utama statistik

pengunjung bulanan. Selanjutnya ketika pengguna selesai mengisi form dengan parameter data pengunjung bulanan yang diinginkannya, maka View akan mengirimkan parameter tersebut ke Controller. Controller akan menerimanya sebagai perintah untuk menampilkan grafik statistik. Controller akan memanggil fungsi get_grafikvalue_pg() pada

Model untuk menghasilkan nilai grafik

kemudian memanggil fungsi setup_graph() pada View. View akan mengambil nilai grafik dari fungsi get_grafikvalue_pg() pada Model

untuk diubah ke dalam bentuk grafik dan ditampilkan kepada pengguna. Setelah itu pengguna bisa mendapatkan fasilitas data detail, grafik intensitas, dan report

pengunjung bulanan dengan parameter yang sama tanpa harus memasukan parameter lagi. Jika pengguna memasukan parameter baru pada form, maka sistem akan menampilkan grafik statistik secara default, setelah itu barulah pengguna bisa mendapatkan fasilitas lainnya dengan parameter yang sama.

Kemudian tahapan untuk fasilitas lainnya adalah sebagai berikut:

Keinginan pengguna untuk menampilkan data detail pengunjung bulanan direspon oleh Controller dengan menjalankan fungsi Tampil_Data_Detail. Fungsi ini akan memanggil fungsi get_fakdep_pg() pada

(24)

Model dan memanggil fungsi print_pg()

pada View. Kemudian fungsi print_pg() pada View akan mengambil data yang telah dihasilkan oleh fungsi get_fakdep_pg() pada Model dan menampilkannya dalam bentuk tabel berindeks

Ketika pengguna ingin menampilkan tabel intensitas kunjungan, maka Controller meresponnya dengan menjalankan fungsi Get_Intensitas_Kunjungan(). Kemudian

fungsi Get_Intensitas_Kunjungan()

memanggil fungsi get_intensitas_kunjungan

bulan() pada Model dan fungsi

print_intensitas_kunjungan() pada View.

View akan mengambil data yang dihasilkan

oleh fungsi

get_intensitas_kunjungan_bulan() pada

Model untuk ditampilkan kepada pengguna

dalam bentuk tabel berindeks.

Ketika pengguna ingin menampilkan report pengunjung bulanan, maka Controller meresponnya dengan menjalankan fungsi Report(). Fungsi ini akan menjalankan fungsi report() pada View yang akan

menghasilkan tampilan report dan

menampilkannya kepada pengguna. Implementasi

1. View

Kelas View menangani antarmuka Program yang terdiri dari Header, Link Navigasi, Header Form, Form, Link Navigasi Hasil, tampilan grafik statistik, tabel data detail, tabel intensitas, report, dan footer.

Link Navigasi terletak setelah Header.

Menu pada link ini terdiri dari enam menu utama dan dua menu tambahan. Enam menu utama yaitu: menu statistik pengunjung bulanan, statistik pengunjung tahunan, statistik peminjam bulanan, statistik peminjam tahunan, statistik koleksi bulanan, dan statistik koleksi tahunan. Di lain pihak, dua menu tambahan yaitu: Home dan Appendices. Home merupakan halaman pembuka dan Appendices merupakan halaman yang berisi keterangan tentang istilah-istilah yang dipakai dalam aplikasi ini.

Form terletak di sebelah kiri dan bisa diakses oleh pengguna sistem. Menu Form terdiri dari 3 buah listbox yaitu:

Listbox bulan, menampilkan list bulan dari

Januari hingga Desember.

Listbox tahun, menampilkan tahun yang

sebelumnya telah disetting sesuai dengan kebutuhan yang berlaku.

Listbox asal statistik, pilihannya terdiri dari

berbagai fakultas, elemen mahasiswa, dan elemen golongan.

Kombinasi masukan dari listbox dan menu nantinya akan menjadi parameter-parameter untuk menghitung data statistik yang diinginkan.

Hasil dari penghitungan data statistik akan ditampilkan dalam bentuk grafik. Di atas grafik terdapat keterangan tipe, asal, bulan, dan tahun grafik. Sedangkan di sebelah kiri grafik terdapat keterangan dari singkatan-singkatan di bar grafik.

Grafik yang terdapat dalam aplikasi ini

dibuat menggunakan kelas-kelas dari

JPGRAPH Object Oriented Library.

JPGRAPH sangat cocok untuk pembuatan grafik karena mempunyai banyak kelas yang berhubungan dengannya.

Aplikasi ini menggunakan 3 kelas dari JPGRAPH, yaitu kelas Graph yang terdapat dalam file Jpgraph.php, kelas Text yang terdapat dalam file Jpgraph.php, dan kelas

BarPlot yang terdapat dalam file

Jpgraph_bar.php. Berikut adalah pseudocode fungsi setup_graph() yaitu fungsi yang menangani pembuatan grafik pada kelas View:

function setup_graph() {

$jud=$this->judul(); $e1 =700;

$e2 =300;

$this->graph = new Graph($e1,$e2,"auto"); $this->graph->SetScale("textlin"); $this->graph->img->SetMargin(45,165,80,60); $this->graph->SetMarginColor('white'); $this->graph->yaxis->scale->SetGrace(100); $this->graph->title->Set($jud); $this->graph->title->SetFont(FF_COMIC,FS_BOLD,18); $d = $this->subjudul(); $this->graph->subtitle->Set($d); $this->graph->subtitle->SetFont(FF_FONT2,FS_BOLD); // Setup font for axis $this->graph->xaxis->title->Set($jud); $this->graph->yaxis->title->Set('Jumlah'); $this->graph->yaxis->title->SetColor('blue'); $this->graph->yaxis->title->SetFont(FF_FONT1); $this->graph->xaxis->title->SetFont(FF_FONT2); $this->graph->xaxis->title->SetColor('blue'); $this->graph->title->SetColor('darkblue'); $this->graph->subtitle->SetColor('darkred'); $this->graph->xaxis->SetFont(FF_FONT1); $this->graph->yaxis->SetFont(FF_FONT1); $this->graph->xaxis->SetTickLabels($this->x_label()); $this->text(); $this->graph->AddText($this->text()); $this->graph->Add($this->plot($stat)); //$this->graph->StrokeCSIM(); return $this->graph; }

Hasil dari penghitungan data statistik juga akan ditampilkan secara mendetail dalam

Gambar

Tabel 1 Kapasitas yang disediakan dalam     program CDS/ISIS
Gambar 3 Alur komunikasi Antar tiap bagian MVC ( Sweat 2005)   Jaringan Syaraf Tiruan
Grafik untuk fungsi sigmoid bipolar dapat  dilihat dalam Gambar 6.
Grafik statistik dari seluruh submenu.
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa produk video pembelajaran yang dikembangkan memiliki kualitas sangat baik untuk digunakan dalam pembelajaran IPA di SD Negeri

Pembelaannya terhadap LHPL pada pokoknya membantah tidak pernah bersaing, sebagaimana diuraikan dalam butir 25.4 dan 27.2 bagian Tentang Duduk Perkara;--- 1.4.4 Bahwa

Pemurnian Enzim Penisilin Asilase Ekstrak enzim yang diperoleh masih merupakan campuran dari berbagai macam enzim sehingga untuk mendapatkan enzim yang lebih murni

Tujuan dari penulisan skripsi ini adalah untuk memenuhi salah satu syarat penyelesaian Program Pendidikan Strata Satu pada jurusan Akuntansi di Sekolah Tinggi Ilmu

Penelitian ini bertujuan untuk mengetahui kebutuhan apa yang menjadi prioritas utama untuk dipenuhi oleh nelayan berdasarkan hirarki kebutuhan Maslow, untuk mengetahui

Pemakaian peralatan pelindung yang cocok (termasuk peralatan pelindung diri yang dirujuk dalam Bagian 8 dalam lembar data keselamatan) untuk mencegah kontaminasi terhadap kulit,

NOW IN COPPER, DESIGNED TO IMPRESS Chevrolet Trax kini tampil dengan desain baru yang lebih stylish dan modern1. Signature Dual-Port Grille khas Chevrolet mengadopsi bahasa

tangannya  pun  diulurkan  hendak  meraih  benda  itu.  Sekonyong- konyong tangan Nyi Putri lengket, tidak bisa dilepaskan lagi dari bunga tersebut. Perlahan-Iahan benda