i
SKRIPSI
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Jurusan Teknik Informatika
Disusun oleh:
Ari Tunggul S Christanto
035314042
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNVERSITAS SANATA DHARMA
YOGYAKARTA
ii
A Thesis
Presented as Partial Fulfillment of the Requirements
to Obtain the Sarjana Teknik Degree
in Department of Informatics Technology
Created by :
Ari Tunggul S. Christanto
035314042
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SAINS AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
vi
Marilah kepada – Ku, semua yang letih lesu
Dan berbeban berat, Aku akan memberi kelegaan kepadamu.
( Matius 11 : 28 )
Dia Mengerti..
Dia Peduli…
Persoalan yang kita hadapi..
Namun satu yang Dia minta
Agar kita percaya
Sampai muzizat menjadi nyata..
Nikmatilah hidup karena hidup adalah luar biasa!!
Hidup adalah perjuangan yang luar biasa..
vii
Karya ini kupersembahkan untuk :
Jesus Christ Juru Slamatku atas berkat dan anugerah…
Bapaku yang selalu sabar mendoakan aku
Ibuku yang ada di Surga (akhirnya ade lulus juga bu..)
Mba Christin kakaku yang selalu memotivasi aku
Wahyu E. Mardhani yang setia dan sabar menemani
penyusunan skripsi.
viii
Universitas Sanata Dharma, masih dilakukan secara manual sehingga mengakibatkan tidak akuratnya data tentang ketersediaan barang, terhambatnya pencarian barang karena banyaknya jenis bahan kimia dan alat laboratorium dan pembuatan laporan yang memakan waktu yang lama. Sehingga dibutuhkan sistem informasi yang dapat menginventory bahan kimia dan alat laboratorium sehingga dapat menghasilkan informasi yang tepat dan sesuai dengan kebutuhan laboratorium.
Dalam Tugas Akhir ini Sistem Informasi Inventory Laboratorium Farmasi Berbasis Client-Server menggunakan bahasa pemrograman Java dan database
MySQL.
ix
Sanata Dharma University, still processed with working can make the data result not accurate of item availability, searching more difficult because many varieties chemical substance and laboratory equipment and making report not efisien. So solve this problem, need the information system that can inventorying chemical subtance and laboratory equipment pharmacy so can produced accurate information.
The thesis of Inventory Information System Pharmacy Laboratory Base of Client Server that use java programming language and MySQL database.
xi
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa yang telah melimpahkan berkat-berkatNya sehingga penulis dapat menyelesaikan tugas akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi salah satu syarat untuk memperoleh gelas Sarjana Teknik Jurusan Teknik Informatika.
Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada semua pihak yang telah membantu dalam menyelesakan tugas akhir ini. Ucapan terima kasih ini antara lain kepada:
1. Bapak Ir.Gregorius Heliarkao, S.J., S.S., B.S.S., M.A., M.Sc., selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.
2. Bapak Puspaningtyas Sanjoyo Adi, S.T.,M.T., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma.
3. Ibu Ridowati Gunawan, S.Kom., M.Kom., selaku Dosen Pembimbing Akademik.
4. Ibu Agnes Maria Polina, S.Kom.,M.Sc., selaku Dosen Pembimbing Tugas Akhir yang telah memberikan banyak nasehat, bimbingan dan motivasi sehingga penulis dapat menyelesaikan tugas akhir ini.
5. Bapak Yohannes Dwiatmaka, S.Si., M.Si., selaku Kepala Laboratorium Farmasi Universitas Sanata Dharma. Terima kasih atas bantuan dan kerjasamanya.
xii
9. Bapak Belle yang telah membantu dalam pemasangan komputer di ruang sidang.
10. Seluruh keluargaku khususnya Bapak, Ibu (Alm) dan Mba Christ yang telah mendoakan, memberi nasihat, motivasi dan kasih sayang yang tak henti-hentinya kepada penulis sehingga dapat menyelesaikan tugas akhir ini.
11.Wahyu E. Mardhani yang selalu memberikan semangat dan mau mendengarkan keluh kesahku selama ini serta selalu sabar dalam menemaniku..Kapan kamu nyusul de??
12.Buat sahabat-sahabatku di Jenengan Camp yaitu Pakdhe yang selalu memberikan ide-ide, Boyo ,Gaband, Epot (tak susul kalian…).
13.Bregas, Sinug Solopok, Santhos, Si Ako yang selalu memberikan keceriaan dikost..(Ndang cepet dirampungke cah!!).
14.Buat temen-temen Purworejo Grace, Risma, Keluarga Bu Ucik terima kasih telah memberikan tumpangan di Purworejo.
15.Buat Dea (Kepala Suku TI 03 dan Laborant BasDat)..Tank de,dah dikasih tempat nongkrong buat kita-kita.
xiii
18.Temen-temen Mitra Perpus..Terima kasih kerjasamanya selama ini.
19.Dan semua pihak yang tidak dapat penulis sebutkan satu persatu yang membantu dalam penyusunan tugas akhir ini.
Akhir kata penulis berharap agar tugas akhir ini bermanfaat bagi semua pihak dan untuk perkembangan ilmu dan teknologi.
Yogyakarta, September 2008
xiv
HALAMAN JUDUL ... ii
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN ... iv
PERNYATAAN KEASLIAN KARYA ... v
HALAMAN MOTTO ... vi
HALAMAN PERSEMBAHAN ... vii
ABSTRAK ... viii
ABSTRACT ... ix
HALAMAN PERSETUJUAN PUBLIKASI KARYA ILMIAH ... x
KATA PENGANTAR ... xi
DAFTAR ISI ... xiv
DAFTAR GAMBAR ... xxii
DAFTAR TABEL ... xxviii
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.2. Rumusan Masalah ... 2
1.3. Batasan Masalah ... 2
1.4. Tujuan dan Manfaat ... 3
xv
2.1. Sistem Informasi ... 7
2.1.1. Pengertian Sistem, Data, Informasi dan Sitem Informasi ... 7
2.2. Pengembangan Perangkat Lunak Berorientasi Obyek ... 8
2.2.1. Konsep Obyek 2.2.1.1. Object Oriented Analysis (OOA) ... 8
2.2.1.2.Object Oriented Design (OOD) ... 8
2.2.1.3. UML (Unified Modelling Language) ... 10
2.3. Bahasa Pemrograman Java ... 13
2.4. JDBC ... 15
2.5. MySQL ... 16
2.6. Sistem Client-Server ... 19
2.7. Laboratorium ... 23
BAB III ANALISIS DAN DESAIN SISTEM ... 25
3.1. Analisis Sistem ... 25
3.1.1. Gambaran Umum Sistem Lama ... 25
3.1.2. Gambaran Umum Sistem Baru ... 27
3.1.3. Aktor Yang Terlibat Dalam Sistem ... 29
3.1.4. Use Case Diagram... 30
xvi
e.Use Case Diagram Mengupdate Distribusi Barang ... 33
f.Use Case Laporan ... 33
e.1. Use Case Diagram Membuat Laporan (Petugas) ... 33
e.2. Use Case Diagram Membuat Laporan (Kepala Laboratorium) ... 34
3.1.5. Class Diagram ... 35
3.1.6. ER Diagram ... 36
3.2. Desain Sistem ... 37
3.2.1. Sequence Diagram ... 37
a. Mengupdate Data User ... 37
a.1. Proses Menyimpan Data User ... 37
a.2. Proses Mengubah Data User ... 37
a.3. Proses Menghapus Data User... 38
a.4. Proses Menampilkan Data User ... 38
a.5. Proses Mencari Data User ... 39
b. Mengupdate Master Barang ... 40
b.1. Proses Menyimpan Master Barang ... 40
b.2. Proses Mengubah Master Barang ... 40
b.3. Proses Menghapus Master Barang ... 41
xvii
c.2. Proses Mengubah Barang Masuk ... 43
c.3. Proses Menghapus Barang Masuk ... 44
c.4. Proses Menampilkan Data Barang Masuk ... 44
c.5. Proses Mencari Data barang Masuk ... 45
d. Mengupdate Distribusi Barang ... 46
d.1. Proses Menyimpan Distribusi Barang ... 46
d.2 Proses Mengubah Distribusi Barang ... 46
d.3. Proses Menghapus Distribusi Barang ... 47
d.4. Proses Menampilkan Data Distribusi Barang ... 47
d.5. Proses Mencari Data Distribusi Barang ... 48
e. Pembuatan Laporan ... 49
e.1. Proses Membuat Laporan Master Barang ... 49
e.2 Proses Membuat Laporan Barang Masuk ... 49
e.3. Proses Membuat Laporan Distribusi Barang ... 50
f. Mengupdate Laboratorium ... 51
f.1. Proses Menyimpan Laboratorium ... 51
f.2. Proses Mengubah Laboratorium ... 51
f.3. Proses Menghapus Laboratorium ... 52
f.4. Proses Menampilkan Laboratorium ... 52
xviii
b. Physical Database Desain... 55
3.2.3. Desain User Interface ... 59
a. Halaman Login ... 59
b. Halaman Menu Utama Kepala Laboratorium ... 59
c. Halaman Menu Utama Petugas Laboratorium ... 60
d. Halaman Menu User ... 61
e. Halaman Tambah User ... 62
f. Halaman Edit User ... 62
g. Halaman Menu Laboratorium ... 63
h. Halaman Tambah Laboratorium ... 64
i. Halaman Edit Laboratorium ... 64
j. Halaman Menu Master Barang ... 65
k. Halaman Tambah Master Barang... 66
l. Halaman Tambah Stok Master Barang ... 67
m. Halaman Edit Master Barang...68
n. Halaman Menu Barang Masuk...69
o. Halaman Tambah Barang Masuk...70
p. Halaman Edit Barang Masuk...71
q. Halaman Menu Distribusi Barang...72
xix
v. Halaman Laporan Distribusi Barang...75
w. Halaman Ganti Password...77
x. Halaman about...77
3.3.3. Desain Output ... 78
a. Laporan Master Barang ... 78
b. Laporan Barang Masuk ... 78
c. Laporan Distribusi Barang ... 79
BAB IV IMPLEMENTASI ... 80
4.2. Karakteristik Sistem ... 80
4.3. Spesifikasi Perangkat ... 80
4.3.1. Kebutuhan Perangkat Keras ... 81
4.3.2. Kebutuhan Perangkat Lunak ... 81
4.4. Implementasi Database ... 82
4.5. Koneksi Java ke MySQL ... 82
4.6. Implmentasi Antar Muka ... 84
4.6.1. Halaman Login ... 84
4.6.2. Halaman Menu Utama ... 87
a. Halaman Menu Utama Kepala Laboratorium ... 87
xx
4.6.6. Halaman Barang Masuk ... 109
a. Halaman Barang Masuk Petugas ... 109
b. Halaman Barang Masuk Kepala Laboratorium ... 112
4.6.7. Halaman Distribusi Barang ... 113
a. Halaman Distribusi Barang Petugas ... 113
b. Halaman Distribusi Barang Kepala Laboratorium ... 115
4.6.8. Halaman Cetak Laporan ... 116
a. Halaman Cetak Laporan Per Bulan ... 116
b. Halaman Cetak Laporan Per Tanggal ... 117
4.6.9. Halaman Ganti Password ... 118
4.6.10.Halaman about...118
4.7. Halaman Laporan ... 119
4.7.1. Laporan Master Barang ... 119
4.7.2. Laporan Barang Masuk ... 120
4.7.3. Laporan Distribusi Barang ... 121
4.8. Skenario Implementasi Aplikasi ... 121
4.8.1. Implementasi Pada Sisi Kepala Laboratorium ... 121
4.8.2. Implementasi Pada Sisi Petugas Laboratorium ... 122
xxi
BAB VI PENUTUP ... 128
6.1. Kesimpulan ... 128
6.2. Saran... ... 128
DAFTAR PUSTAKA ... 129
xxii
xxiii
xxiv
xxv
xxvi
Gambar 4.17: Halaman User (Konfirmasi Hapus)... 97 Gambar 4.18: Halaman Edit User ... 98 Gambar 4.19: Halaman Tambah User ... 100 Gambar 4.20: Halaman Master Barang... 101 Gambar 4.21: Halaman Tambah Master Barang ... 102 Gambar 4.22: Halaman Master Barang (popup tabel) ... 102 Gambar 4.23: Halaman Master Barang (Konfirmasi Jumlah Stok Barang) ... 103 Gambar 4.24: Halaman Tambah Stok Master Barang ... 103 Gambar 4.25: Halaman Konfirmasir Barang Mendekati atau Kadaluarsa ... 104 Gambar 4.26: Halaman Konfirmasir Stok Barang Sama atau Melebihi
xxvii
xxviii
1 1.1.Latar Belakang Masalah
Perkembangan teknologi yang semakin maju dapat membantu manusia dalam pembuatan suatu sistem informasi. Sistem informasi ini diharapkan mampu mengolah data menjadi sebuah informasi yang lebih berguna.
Sebuah laboratorium tentunya mempunyai berbagai macam alat ataupun bahan. Penulis ingin membuat sebuah sistem untuk mengolah ataupun pencatatan alat atau bahan yang ada di sebuah laboratorium tersebut. Penulis ingin membuat suatu sistem informasi khususnya pada laboratorium Fakultas Farmasi Universitas Sanata Dharma.
Dengan letak laboratorium yang letaknya tersebar maka kepala laboratorium juga akan mengalami kesulitan dalam mengetahui segala aktivitas yang terjadi pada setiap laboratorium.
Berdasarkan kondisi tersebut penulis tertarik mengambil topik Sistem Informasi Inventory Laboratorium Farmasi Berbasis Client-Server . Dengan adanya sistem ini diharapkan dapat membantu memecahkan masalah tersebut.
1.2. Rumusan Masalah
Sejalan dengan latar belakang masalah, maka rumusan masalah adalah sebagai berikut:
Bagaimana mengembangkan Sistem Informasi Inventory Laboratorium Farmasi berbasis Client-Server yang mendukung kinerja untuk Laboratorium Farmasi Universitas Sanata Dharma.
1.3. Batasan Masalah
Mengingat kompleknya pembuatan sistem ini, maka pembuatan sistem ini dibatasi pada beberapa hal:
1. Data yang diolah dibatasi, yaitu mengenai data persediaan bahan kimia dan alat laboratorium pada laboratorium Kimia Analisis, laboratorium Kimia Organik, dan laboratorium Kimia Analisis Instrumental.
2. Sistem ini tidak menangani cara pembelian bahan kimia maupun alat laboratorium beserta laporan keuangan.
3. Pembuatan sistem ini menggunakan bahasa pemrograman Java dan
database MySQL.
4. Sistem berjalan pada jaringan komputer dengan protokol TCP/IP. 5. Sistem tidak menangani masalah pada jaringan fisik.
1.4. Tujuan dan Manfaat
Tujuan dari pembuatan Sistem Informasi ini adalah membangun Sistem Informasi Laboratorium Berbasis Client-Server menggunakan tahap rekayasa perangkat lunak berorientasi obyek menggunakan bahasa pemrograman Java dan database MySQL.
1.5. Metode Penelitian
Metode penelitian yang digunakan adalah studi kasus dengan langkah-langkah sebagai berikut:
1. Observasi
Mengadakan pengamatan secara langsung pada obyek, dalam hal ini laboratorium farmasi Universitas Sanata Dharma.
2. Studi Pustaka.
Membaca dan mempelajari buku-buku (literature) yang berhubungan dengan masalah yang diteliti.
3. Wawancara
Merupakan pengumpulan data dengan mengadakan wawancara dan tanya jawab dengan pihak-pihak yang bersangkutan dalam hal ini kepada kepala laboratorium dan petugas laboran.
4. Pengembangan perangkat lunak
Perangkat lunak ini dikembangkan dengan metode pengembangan perangkat lunak berorientasi obyek (Whitten, 2004), dengan langkah-langkah sebagai berikut:
a. Analisis dan Desain Sistem Berorientasi Obyek
1. Pembuatan Use Case Diagram, Class Diagram, dan Sequence
Diagram.
2. Perancangan database.
3. Perancangan user interface.
1.6. Sistematika Penulisan
Sistematika penulisan mencakup beberapa hal yaitu: 1. BAB I PENDAHULUAN
Bab ini berisi tentang latar belakang, identifikasi masalah, batasan sistem, rumusan masalah, tujuan dan manfaat pembuatan “Sistem Informasi Laboratorium Farmasi Berbasis Client- Server”.
2. BAB II LANDASAN TEORI
Bab ini berisi tentang dasar teori tentang definisi sistem informasi, laboratorium dan penjelasan bahasa pemrograman Java dan database
MySQL sebagai penunjang pengembangan sistem informasi ini. 3. BAB III ANALISIS DAN DESAIN SISTEM
Bab ini berisi tentang analisis dan perancangan sistem yang akan dibangun 4. BAB IV IMPLEMENTASI SISTEM
Bab ini berisi hasil pengubahan dari analisis dan rancangan menjadi implementasi progam, menggunakan tahap-tahap rekayasa perangkat lunak.
5. BAB V ANALISIS HASIL IMPLEMENTASI
Bab ini berisi hasil pengujian progam dan berisi kelebihan dan kekurangan progam.
6. BAB VI Penutup
7. DAFTAR PUSTAKA
Bab ini berisi daftar-daftar buku ataupun referensi yang digunakan untuk membuat skripsi ini.
8. LAMPIRAN
7 2.1 Sistem Informasi
2.1.1 Pengertian Sistem, Data, Informasi, dan Sistem informasi
Sistem adalah kumpulan dari subsistem-subsistem yang saling dihubungkan untuk membentuk satu kesatuan yang utuh (Jogiyanto, 1999). Data adalah fakta mentah mengenai orang, kejadian, dan hal-hal penting dalam organisasi. Tiap fakta dengan sendirinya secara relatif tidak ada artinya ( Whitten, 2004).
2.2 Pengembangan Perangkat Lunak Berorientasi Objek 2.2.1 Konsep Obyek
Pendekatan berorientasi obyek pada pengembangan sistem didasarkan pada konsep tentang obyek yang telah ada pada sebuah lingkungan sistem. Obyek sendiri dapat diartikan sesuatu yang dapat dilihat, disentuh atau dirasakan, dan user menyimpan data serta mencatat perilaku mengenai sesuatu itu.
2.2.1.1 Object Oriented Analysis (OOA)
Sebuah teknik model driven yang mengintegrasikan data dan proses ke dalam konstruksi yang disebut obyek. Model ini berisikan gambar-gambar yang mengintruksikan obyek-obyek sistem dari berbagai macam perspektif, seperti struktur, behavior, dan interaksi obyek.
2.2.1.2 Object Oriented Design (OOD)
Pendekatan yang digunakan untuk menentukan solusi perangkat lunak dalam hal menggabungkan obyek, attribute, dan metodenya.
Pada Object Oriented Design (OOD) ini dibagi menjadi tiga obyek yaitu:
1. Entity Object
Adalah sebuah obyek yang berisikan informasi yang berhubungan dengan bisnis yang bersifat menetap dan disimpan pada sebuah
“aktif/hidup” setelah mengeksekusi sebuah progam dan disimpan dalam database.
Simbol Entity Object:
: Object En tit y
Gambar 2.1 :Simbol Entity Object 2. Interface Object
Adalah sebuah obyek yang menyediakan media di mana pengguna dapat berkomunikasi dengan sistem. Pengguna dapat berkomunikasi menggunakan antarmuka/interface.
Tugas dari Interface Entity adalah:
1. Menerjemahkan inputan dari pengguna ke dalam informasi sehingga dapat dipahami oleh sistem dan digunakan untuk memproses peristiwa bisnis.
2. Mengambil data yang berkaitan dengan peristiwa bisnis dan menerjemahkan data tersebut kepada pengguna.
Simbol Interface Object:
:Interf ace Object
Gambar 2.2 :Simbol Interface Object 3. Control Object
Adalah obyek yang berisi aplikasi logika yang bukan merupakan tanggung jawab entity object.
Simbol Control Object
: Control Obj ect
Gambar 2.3 :Simbol Control Object
2.2.2 UML (Unified Modelling Language)
UML mendefinisikan diagram-diagram berikut: 1. Use-Case Diagram
Use-Case Diagram adalah permodelan yang mengidentifikasikan dan menggambarkan fungsi-fungsi sistem dengan menggunakan alat (Whitten, 2004). Use-Case Diagram ini menggambarkan interaksi sistem, eksternal sistem dengan actor. Dengan kata lain menggambarkan secara grafis siapa yang menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem.
Komponen-komponen use-case diagramadalah:
1. Use-Case menggambarkan langkah-langkah yang secara tindakan saling terkait (skenario), baik terotomatisasi maupun secara manual, untuk tujuan melengkapi satu tugas bisnis tunggal(Whitten, 2004).
Gambar 2.4: Simbol Use-Case
2. Actor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi (Whitten,2004).
Gambar 2.5: Simbol Actor
3. Association (Gabungan) adalah hubungan antara pelaku/actor
dengan use case di mana terjadi interaksi di antara mereka (Whitten, 2004).
Gambar 2.6: Simbol Association
2. Class Diagram
Merupakan gambar grafis mengenai struktur objek statis dari suatu sistem, menunjukan kelas-kelas objek yang menyusun sebuah sistem dan juga hubungan antar kelas objek tersebut (Whitten, 2004).
3. Sequence Diagram
Menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use case.
Actor
Sequence Diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case (Whitten, 2004).
2.3 Bahasa Pemrograman Java
Java dikembangkan oleh Sun Microsystems pada Agustus 1991. Progam Java bersifat tidak tergantung pada platform atau dapat pula diartikan bahwa Java dapat dijalankan pada berbagai sistem operasi.
Kode yang disebut bytecode dapat dijalankan pada berbagai sistem operasi karena kode ini berbeda dengan kode mesin. Kode mesin sangat bergantung pada
platform, sedangkan bytecode dapat dijalankan pada berbagai platform yang telah dilengkapi dengan interpreter Java. Java merupakan bahasa pemrogaman berorientasi obyek, sehingga Java menggunakan kelas untuk membentuk suatu obyek.
Progam Java dapat dibedakan menjadi dua jenis yaitu, applet dan aplikasi.
Applet adalah progam yang dibuat dengan Java, dapat diletakkan pada webserver
dan diakses web browser. Dalam hal ini browser yang digunakan adalah yang memiliki kemampuan Java (misalnya Netscape Navigator, Internet Explorer dan HotJava). Sedangkan aplikasi adalah progam yang dibuat dengan Java yang bersifat umum. Aplikasi dapat dijalankan secara langsung, tidak perlu browser
Berikut ini adalah komponen yang terdapat pada Java: 1. Kompiler Java
Kompiler Java bernama javac. Progam ini berfungsi untuk mengkompilasi berkas sumber kode Java dalam bentuk yang dapat dimengerti oleh
interpreter Java. Hasil kompilasi berupa berkas bytecode. Dalam hal ini akhiran yang dugunakan berupa .clas
2. Interpreter Java
Interpreter Java digunakan untuk mengeksekusi berkas bytecode ( class ).
3. Debugger Java
Debugger jdb berfungsi seperti interpreter tetapi dilengkapi dengan kemampuan khusus seperti menghentikan eksekusi progam pada posisi yang dihendaki oleh pemrogram dan menampilkan nilai variabel-variabel tertentu. Progam ini berguna untuk melacak kesalahan progam.
4. Penampil Applet
Penampil apllet, aplletviewer berguna untuk menampilkan applet. 5. Pembangkit Dokumentasi
Pembangkit dokumentasi (javadoc) berguna untuk mengkonversi berkas kode Java dalam berkas HTML (Hypertext Markup Language).
6. Pembangkit Header C
Contoh Penulisan Script Java: public class Latihan {
public static void main(String [ ] args {
system.out.println(“ Selamat Belajar Java “); }
JDBC (Java Database Connection) merupakan salah satu API (Application Progamming Interface) Java yang secara khusus ditujukan untuk menangani koneksi ke database. JDBC API terdiri dari sejumlah class dan interface yang ditulis dalam bahasa Java yang menyediakan API standar sebagai alat bantu bagi pembuat progam dan memberikan kemungkinan untuk menulis aplikasi database dengan menggunakan semua java API. JDBC API memudahkan untuk mengirimkan perintah SQL ke sistem database relasional dan mendukung bermacam-macam perintah SQL.
Dengan JDBC dapat membuat progam dengan portabilitas tinggi dan cukup mudah karena secara umum pemrograman JDBC tidak memiliki perbedaan kode yang berarti untuk pemrograman dari database tertentu dengan database
server serta perintah SQL tertentu yang mungkin memiliki perbedaan sintaks
tertentu atau perintah SQL khusus yang hanya terdapat pada database tertentu. Pemrograman JDBC sebenarnya memiliki struktur seperti melakukan koneksi, membuat obyek statement, mengeksekusi perintah SQL dan mendapatkan data hasil query serta menambah kode untuk penanganan error. Selain itu JDBC memungkinkan untuk menghasilkan kode yang reusable yang berarti dapat digunakan ulang untuk progam lain.
2.5 MySQL
MySQL merupakan multiuser database yang menggunakan bahasa SQL (Structured Query Language) yang umumnya untuk menangani data yang cukup besar. SQL (Structured Query Language) merupakan bahasa yang telah distandarisasi dan digunakan untuk mengelola. Di dalam SQL terdapat 3 sub bahasa yaitu:
1. Data Definition Language (DDL), digunakan untuk membangun obyek-obyek dalam database seperti tabel.
Berikut pernyataan–pernyataan DDL: a. CREATE TABEL
Digunakan untuk membuat tabel dengan nama kolom yang ditentukan oleh pengguna.
b. DROP TABEL
Digunakan untuk menghapus semua baris/record dan menghapus tabel dari database.
Penulisan script: drop database [nama database]; c. ALTER TABEL
Digunakan untuk menambah atau menghapus sebuah kolom dari suatu tabel.
Penulisan script: alter tabel [nama database];
2. Data Manipulation Language (DML), digunakan untuk menambah, menghapus, mengubah, dan mencari data pada tabel. Berikut pernyataan-pernyataan DML:
a. SELECT
Digunakan untuk query dan menampilkan data dari sebuah
database. Pernyataan SELECT menspesifikasikan kolom nama yang termasuk dalam result set (hasil query).
Penulisan script : select [field] from [nama tabel]; b. INSERT
c. DELETE
Digunakan untuk menghapus sebuah baris tertentu atau sekumpulan baris dari sebuah tabel.
Penulisan script: delete from [nama tabel]; d. UPDATE
Digunakan untuk mengubah nilai dari sebuah kolom atau sekumpulan kolom dari suatu tabel.
Penulisan script = update [nama tabel]
set <nama kolom1> = <nilai baru>... where <nama kolom> Operator <nilai>
3. Data Control Language (DCL), digunakan untuk menangani masalah keamanan pada database.
Kelebihan lain dari MySQL adalah menyediakan dukungan open source . Beberapa type data dalam MySQL :
Tipe data Keterangan
INT(M) [UNSIGNED] Angka -2147483648 s/d 2147483647
FLOAT(M,D) Angka pecahan
DATE Tanggal Format : YYYY-MM-DD
DATETIME Tanggal dan Waktu
CHAR(M) String dengan panjang tetap sesuai dengan yang ditentukan.
Panjangnya 1-255 karakter
VARCHAR(M) String dengan panjang yang berubah-ubah sesuai dengan yang disimpan saat itu.
Panjangnya 1 – 255 karakter
BLOB Teks dengan panjang maksimum 65535 karakter LONGBLOB Teks dengan panjang maksimum 4294967295
karakter
2.6 Sistem Client-Server
Pada dasarnya struktur client/server terdiri dari tiga komponen aplikasi yaitu: 1. Client Machine merupakan sistem yang menjalankan aplikasi komponen
client. Client tersebut dapat meminta satu atau beberapa permintaan layanan.
2. Server Machine merupakan sistem yang menjalankan aplikasi komponen
server. Server ini akan memenuhi permintaan layanan client dan mengirimkanya pada machineclient.
3. Communication Network adalah fasilitas komunikasi yang mengijinkan satu atau beberapa pesan permintaan layanan yang dikirim dari client ke
server dan mengijinkan satu atau beberapa pesan yang berisi layanan dari
Terdapat dua macam arsitektur yaitu: 1. Arsitektur 2-Tier
Arsitektur ini terdapat dua pembagian tugas:
a. Clien (tier 1) bertanggung jawab terhadap presentasi data kepada pengguna.
b. Server (tier 2) bertugas melayani permintaan client.
Adanya pemisahan fungsi client dan server, disamping meningkatkan kompleksifitas tersendiri dalam pembangunan aplikasi sistem secara keseluruhan, juga menimbulkan kelemahan yaitu pemasangan aplikasi (deployment) yang tidak praktis. Jika terjadi perubahan atau perbaikan aplikasi database, maka harus mengulangi pekerjaan instalasi di semua mesin client yang digunakan.
Gambar 2.7 : Arsitektur 2-Tier First Tier Tasks Client -User interface
-Main business and data processing
Second Tier Tasks
Database server -Server side validation -Database acces
`
Layanan presentasi menangani kegiatan presentasi dan aplikasi bisnis utama sedangkan layanan data menyediakan aplikasi bisnis terbatas khususnya dalam hal validasi dimana client tidak mampu melaksanakannya akibat minimnya informasi yang ada pada client.
2. Arsitektur 3-Tier
Arsitektur 3-tier memiliki 3 tingkatan (tier) dimana tiap tier berpotensi untuk menjalankan dengan platform yang berbeda.
Ketiga tier tersebut adalah:
a. User Interface bertugas menangani layanan semua interaksi pengguna dengan aplikasi. Lapisan ini bertanggung jawab untuk semua input pengguna dan komunikasi dengan lapisan layanan bisnis/menengah.
b. Business LogicTier bertanggung jawab melakukan pemrosesan kebutuhan untuk menyelesaikan business problem.
Gambar 2.8 : Arsitektur 3-Tier
Dengan arsitektur 3-Tier suatu aplikasi multiuser akan menjadi lebih mudah untuk melakukan perawatan dan pengembangan baik dari aspek perangkat lunak yaitu penambahan prosedur atau fungsi aplikasi maupun aspek perangkat keras dengan aspek penambahan jumlah client dalam jaringan.
First Tier Tasks
Client -User Interface
Second Tier Tasks
Application server -Business logic -Data processing logi
Three Tier Taska
Database server -Data validation -Database acces
`
2.7 Laboratorium
Laboratorium (disingkat lab) adalah tempat riset ilmiah, eksperimen, pengukuran ataupun pelatihan ilmiah dilakukan. Laboratorium biasanya dibuat untuk memungkinkan dilakukannya kegiatan-kegiatan tersebut secara terkendali. (www.wikipedia.com, 2007). Laboratorium Farmasi Sanata Dharma merupakan salah satu fasilitas penunjang kegiatan akademik dan untuk membantu pemahaman mengenai ilmu farmasi.
Jumlah laboratorium pada Fakultas Farmasi terdapat 11 laboratorium yaitu: 1. Kimia Fisika
2. Kimia Analisis Instrumental 3. FTS Padat
Di dalam Laboratorium Farmasi Sanata Dharma terdapat beberapa petugas yaitu: 1. Kepala Laboratorium
laboratorium juga menentukan distributor untuk memasok bahan kimia dan alat laboratorium tersebut. Kemudian bahan kimia dan alat laboratorium tersebut disimpan pada gudang yang nantinya akan didistribusikan untuk setiap laboratorium.
2. Petugas Laboratorium (Laborant)
Petugas Laboratorium bertugas mencatat persediaan barang pada setiap laboratorium. Setiap awal semester petugas laboratorium akan mengajukan daftar bahan kimia dan alat laboratorium kepada kepala laboratorium sebagai pertimbangan pembelian. Jika pada praktikum barang-barang tersebut habis, maka petugas dapat segera memesan kepada kepala laboratorium. Disamping itu petugas laboratorium mempunyai tugas yaitu: 1. Membuat jadwal praktikum.
25
3.1. Analisis Sistem
3.1.1. Gambaran Umum Sistem Lama
Secara Teknis Gambaran Umum Sistem Lama:
1. Pada setiap awal semester petugas laboratorium memesan bahan kimia dan alat laboratorium yang diperlukan untuk satu semester kedepan.
2. Pemesanan tersebut dilakukan dengan mengisi formulir yang berisi daftar jenis barang dan jumlah yang akan dipesan.
3. Kemudian kepala laboratorium melakukan pengecekan stok barang di gudang. Jika jumlah barang di gudang memenuhi jumlah barang yang diajukan oleh petugas laboratorium, maka kepala laboratorium memerintahkan petugas untuk mengambil barang tersebut digudang namun apabila jumlah barang digudang tidak memenuhi maka kepala laboratorium melakukan pembelian barang.
4. Selanjutnya kepala laboratorium melakukan pengecekan stok barang di gudang serta melakukan pencatatan stok barang dan pendistribusian barang tersebut ke laboratorium dengan menggunakan Spread Sheet.. 5. Petugas laboratorium mencatat jenis dan jumlah barang pada laboratorium
Gambaran Umum Sistem Lama Dengan Flowchart:
3.1.2. Gambaran Umum Sistem Baru
Aplikasi yang dibangun menangani pencatatan stok barang di gudang dan di laboratorium. Informasi yang dihasilkan oleh sistem informasi yang dibangun ini adalah berupa laporan-laporan meliputi laporan stok barang di gudang, laporan stok barang di laboratorium dan laporan penggunaan barang di laboratorium.
Sistem informasi ini dibangun menggunakan bahasa pemrograman Java Netbeans 5.5.1 dan database MySQL 5.
Secara Teknis Gambaran Umum Sistem Baru :
1. Pada setiap awal semester petugas laboratorium memesan bahan kimia dan alat laboratorium yang diperlukan untuk satu semester kedepan. Namun sewaktu-waktu jika bahan kimia atau alat laboratorium persediaanya habis kepala laboratorium dapat melakukan pembelian.
2. Kepala laboratorium melakukan login masuk kedalam sistem. Sistem ini terbagi menjadi dua hak aksesnya yaitu kepala laboratorium dan petugas pada setiap laboratorium.
4. Petugas laboratorium melakukan login masuk kedalam sistem.
5. Petugas laboratorium menginputkan barang – barang yang akan digunakan dalam laboratorium tersebut.
6. Kepala laboratorium akan melakukan pengecekan stok barang di gudang dan stok barang disetiap laboratorium.
Gambaran Umum Sistem Baru Dengan Flowchart:
3.1.3. Aktor Yang Terlibat Dalam Sistem
Pada Sistem Informasi Laboratorium Farmasi melibatkan dua aktor , yaitu : 1. Kepala laboratorium
Dalam hal ini orang yang bertanggung jawab memeriksa jalannya aktivitas pada sistem yaitu dapat memeriksa informasi stok barang di gudang dan laboratorium serta penggunaan barang pada laboratorium tersebut.
2. Petugas
3.1.4. Use Case Diagram
Mengupdate Master Barang Mengupdate User
Mengupdate Barang Masuk
Mengupdate Distribusi Barang
Membuat Laporan
Logout Login
petugas
<<depend on>>
kepala laboratorium
Mengupdate Laboratorium
a. Use Case DiagramMengupdate User
M enyi m pan Data User
M engubah Data User
M enghapus Data User
M el i hat Data User kepal a
l aboratori um
M encari Data User
Gambar 3.4 : Use Case Diagram MengupdateUser b. Use Case Diagram Mengupdate Laboratorium
Menyi mpan Data Laboratori um
Mengubah Data Laboratori um
Menghapus Data Laboratori um
Meli hat Data Laboratori um kepal a
l aboratori um
Mencari Data Laboratori um
c.Use Case Diagram MengupdateMaster Barang
Menyi mpan Data Master Barang
Mencari Data Master Barang Mengubah Data Master Barang
Menghapus Data Master Barang kepala
laboratori um
Meli hat Data Master Barang
Gambar 3.6 : Use Case Diagram Master Barang d.Use Case DiagramMengupdate Barang Masuk
Menyi mpan Data Barang Masuk
Mencari Data Barang M asuk Mengubah Data Barang Masuk
Menghapus Data Barang Masuk Petugas
Meli hat Data Barang M asuk
e.Use Case Diagram Mengupdate Distribusi Barang
menyi mpan Data Distri busi Barang
Mencari Data Di stri busi Barang Mengubah Data Di stribusi Barang
Menghapus Data Distri busi Barang petugas
Meli hat Data Di stribusi Barang
Gambar 3.8 : Use Case Diagram Mengupdate Distribusi Barang
f.Use Case Diagram Laporan
e.1.Use Case Diagram Membuat Laporan (Petugas)
Gambar 3.9 : Use Case Diagram Membuat Laporan (Petugas)
Membuat Laporan Barang M asuk
e.2. Use Cas DiagramMembuat Laporan (Kepala Laboratorium)
Membuat Laporan Master Barang kepala
laboratorium
Laporan
Laporan Di stribusi Barang
tam pil() kode_deti l_distri busi_barang : String kode_di stribusi : Stri ng kode_barang : Stri ng tanggal _distribusi : Date
kode_deti l_barang_masuk : Stri ng kode_masuk : String kode kadaluarsa : Stri ng kode_barang : Stri ng tanggal _masuk : Date kode_di stribusi : Stri ng kode_laboratorium : String juml ah_total : Double add_distri busi_barang() juml ah stok : Double add_master_barang() nama_l aboratori um : Stri ng lantai : Stri ng kode_pegawai : Stri ng add_laboratori um () update_laboratori um() delete_laboratorium() cari_laboratori um()
3.1.6. ER Diagram
barang 1 punya N kadaluarsa
punya a. kode kadaluarasa b. tanggal kadaluarsa
3.2. Desain Sistem
3.2.1. Sequence Diagram a. Mengupdate Data User
a.1. Proses Menyimpan Data User
Gambar 3.13 :Sequence Diagram Proses Menyimpan Data User
a.2. Proses Mengubah Data User
A
Gambar 3.14 : Sequence Diagram Proses Mengubah Data User
: Kepal a Laboratori um
: l ayar Kepal a Laboratorium : Kepal a Laboratorium
kontrol : us er
mem asukkan data us er
add us er()
ins ert data
konfi rmasi data tel ah ditambahkan
: Kepal a Laboratorium
: l ayar Kepala Laboratorium : Kepal a Laboratorium kontrol : user mem asukan data us er baru
update_user()
update user
a. 3. Proses Menghapus Data User
Gambar 3.15 :Sequence Diagram Proses Menghapus Data User
a.4. Proses Menampilkan Data User
Gambar 3.16 :Sequence Diagram Proses Menampilkan Data User
: Admin : l ayar Kepala Laboratorium : Kepal a Laboratorium kontrol
: us er
mem as ukan data user
delete user()
dalete us er
konfi rmasi data telah dihapus
: Kepal a
Laboratorium : l ayar Kepala Laboratorium : Kepal a Laboratorium kontrol
: user
tampil data user
tampil_user()
select data
a.5. Proses Mencari Data User
: Kepal a
Laboratorium : l ayar Kepala Laboratorium : Kepal a Laboratorium kontrol
: user
memasukan kata kunci
searching()
informasi data user
search data
b.Mengupdate Master Barang
b. 1. Proses Menyimpan Master Barang
: Kepal a Laboratorium
: l ayar m aster barang : master barang kontrol : master barang
memasukkan data master barang
add_mas ter_barang()
ins ert data
konfi rmasi data m aster barang tel ah disimpan
Gambar 3.18 : Sequence Diagram Proses Menyimpan Master Barang b.2. Proses Mengubah Master Barang
: Kepal a Laboratorium
: l ayar master barang
: master barang kontrol : master barang
memasukkan data master barang baru
update_mas ter_barang()
konfi rmasi data master barang telah dubah
update data
b.3. Proses Menghapus Master Barang
: Petugas : l ayar m aster barang : master barang kontrol : m aster barang
memasukkan data master barang
delete_master_barang()
konfi rmasi data m aster barang tel ah di hapus
delete barang
Gambar 3.20 : Sequence Diagram Proses Menghapus Master Barang
b.4.Proses Menampilkan Data Master Barang
: Kepal a Laboratorium
: l ayar m aster barang : master barang kontrol : master barang
tampil data master barang
view_data_master_barang()
informasi data master batang
select data
b.5. Proses Mencari Data Master Barang
: Kepal a Laboratorium
: l ayar m aster barang : master barang kontrol : master barang
memasukkan kata kunci
searching_data_master_barang()
informasi data master barang
select data
c. Mengupdate Barang Masuk
c.1. Proses Menyimpan Barang Masuk
Gambar 3.23. :Sequence DiagramProses Menyimpan Barang Masuk c.2. Proses Mengubah Barang Masuk
Petugas : Layar Barang Masuk : Informasi stok barang
: Barang Masuk : Barang Masuk Kontrol
masukkan data barang masuk baru
cek_stok()
update_barang_masuk()
update data
konfi rmasi data telah diubah
update data
Gambar 3.24 :Sequence DiagramProses Mengubah Barang Masuk : Barang Masuk Kontrol
: Petugas : Layar Barang Masuk : Barang Masuk : Informasi stok barang masukkan data barang masuk
cek_s tok()
add_barang_m as uk()
ins ert data
konfi rmasi data tel ah disi mpan
c. 3. Proses Menghapus Barang Masuk
Petugas : Layar Barang Masuk : Barang Masuk Kontrol : Barang Masuk : Informasi stok barang masukkan data barang masuk
delete_barang_masuk( )
delete data
konfi rmasi data barang masuk tel ah di hapus
update data
Gambar 3.25 :Sequence DiagramProses Menghapus Barang Masuk
c.4. Proses Menampilkan Data Barang Masuk
Gambar 3.26 :Sequence DiagramProsesMenampilkan Data Barang Masuk Petugas : (layar pembel ian) : pembel ian kontrol : pembel ian : Informasi stok barang
lihat barang masuk
view_barang_masuk()
select data
informasi data barang masuk
c.5. Proses Mencari Data Barang Masuk
Petugas : (Layar Barang Masuk) : (Barang Masuk Kontrol) : (Barang Masuk)
memasukkan kata kunci
searching_barang_masuk()
select data
informasi data barang masuk
d. Mengupdate Distribusi Barang
d.1 Proses Menyimpan Distribusi Barang
: Petugas Layar Distri busi Barang : Distribusi Barang Kontrol : Distribusi Barang : i nformasi stok barang
memasukkan kode barang
cek_stok()
add_barang_keluar()
insert data
konfi rmasi data di stribusi barang tel ah di si mpan
insert data
Gambar 3.28:Sequence Diagram ProsesMenyimpan Distribusi Barang d.2 Proses Mengubah Distribusi Barang
: Petugas : Layar Distri busi Barang : Distribusi Barang Kontrol : Distribusi Barang : i nformasi stok barang
memasukkan kode barang
update_barang_keluar()
konfi rmasi data di stribusi barang telah diubah
update data cek_stok()
update data
d.3. Proses Menghapus Distribusi Barang
: Petugas : Layar Distri busi Barang : Distribusi Barang Kontrol : Distribusi Barang : i nformasi stok barang
memasukkan kode barang
delete_barang_keluar()
konfi rmasi data di stribsi barang telah dihapus
delete data
delete data
Gambar 3.30 :Sequence Diagram ProsesMenghapus Distribusi Barang d.4 Proses Menampilkan Distribusi Barang
Gambar 3.32:Sequence Diagram ProsesMenampilkan Distribusi Barang : Petugas : Layar Distri busi Barang
: Distribusi Barang Kontrol
: Distribusi Barang : i nformasi stok barang
lihat distribusi barang
view_barang_keluar()
informasi data distri busi barang kel uar
select data
d.5. Proses Mencari Distribusi Barang
: Petugas : Layar Distri busi Barang : Distribusi Barang Kontrol : Distribusi Barang
memasuukan kata kunci
seraching_barang_keluar()
informasi data distri busi barang
searching data
e. Pembuatan Laporan
e.1 Proses Membuat Laporan Master Barang
Gambar 3.34 :Sequence DiagramProses Membuat Laporan Master Barang e.2 Proses Membuat Laporan Barang Masuk
Gambar 3.35 :Sequence DiagramProses Membuat Laporan Barang Masuk : Kepal a
Laboratorium
: Layar Master Barang : Master Barang Kontrol : Master Barang memasukan kategori pencetakan laporan
cetak_laporan_master_barang( )
select data
laporan master barang
: Petugas : Layar Barang Masuk : Barang M asuk Kontrol : Barang M asuk memasukkan kategori pencetakan l aporan
cetak_laporan_barang _m asuk( )
s elect data
e.3 Proses Membuat Laporan Distribusi Barang
Gambar 3.36 :Sequence DiagramProses Membuat Laporan Distribusi Barang : Petugas : l ayar Distribusi Barang : Distribusi Barang Kontrol
: Distribusi Barang
memasukkan kategori pencetakan laporan
cetak_laporan_barang_keluar( )
select data
f. Mengupdate Laboratorium
f.1 Proses Menyimpan Laboratorium
: Kepal a Laboratorium
: l ayar l aboratorium : l aboratorium kontrol : l aboratorium
memasukkan data laboratori um
add_laboratorium ()
konfi rmasi data l aboratorium telah disimpan
insert data
Gambar 3.37 :Sequence Diagram ProsesMenyimpan Laboratorium f.2 Proses Mengubah Laboratoroium
: kepala
laboratori um : l ayar l aboratorium : l aboratori um kontrol : l aboratori um
memasukan data l aboratorium baru
update_laboratori um()
update laboratorium
konfi rmasi data l aboratorium tel ah di ubah
f.3 Proses Menghapus Laboratorium
: kepala
laboratori um : l ayar l aboratorium : l aboratori um kontrol : l aboratori um
m em asukan data l aboratorium
delete_laboratorium()
konfi rm asi data l aboratorium tel ah di hapus
delete laboratorium
Gambar 3.39 :Sequence Diagram ProsesMenghapus Laboratorium f.4 Proses Menampilkan Laboratorium
: kepala
laboratori um : l ayar l aboratorium : l aboratori um kontrol : l aboratori um
tam pil data laboratorium
tampil_laboratorium()
informasi data laboratorium
select data
f.5 Mencari Laboratorium
: kepala
laboratori um : l ayar l aboratorium : l aboratori um kontrol : l aboratori um
memasuukan kata kunci pencari an
searching_l aboratorium()
informasi data laboratorium
search data
3.2.2.Desain Database
a.Logical Database Desain
b. Physical Database Desain
Dari relasi antar table yang terbentuk selanjutnya akan dirancang struktur data dari masing-masing table :
a.Tabel Master Barang
Tabel ini digunakan untuk menyimpan data master barang yang disimpan di gudang.
Nama Field Tipe Data Ukuran Keterangan
Kode_barang varchar 8 Primary key
Nama varchar 50 Nama barang
Jenis varchar 30 Jenis barang
Satuan varchar 15 Satuan barang
Stok_awal double Stok awal barang
Stok_limit double Stok limit barang
Jumlah_stok double Jumlah
keseluruhan stok
Gambar 3.44 : Tabel Master Barang b.Tabel Kadaluarsa
Tabel ini digunakan untuk menyimpan detil master barang yang disimpan di gudang, data yang disimpan meliputi tanggal masuk, tanggal kadaluarsa dan jumlah barang.
Nama Field Tipe Data Ukuran Keterangan
Kode _kadaluarsa varchar 8 Primary key
Kode_barang varchar 8 Foreign key
Tanggal_masuk date Tanggal masuk
Tanggal_kadaluarsa date Tanggal kadaluarsa barang
jumlah double Jumlah barang
Gambar 3.45 : Tabel Kadaluarsa
c.Tabel Barang Masuk
Tabel ini digunakan untuk menyimpan data barang masuk yang masuk disetiap laboratorium.
Nama Field Tipe Data Ukuran Keterangan
Kode _masuk varchar 8 Primary key
Kode_laboratorium varchar 8 Foreign key
Jumlah_ambil double Stok awal barang
Jumlah_total double Jumlah keseluruhan
stok
Gambar 3.46 : Tabel Barang Masuk d.Tabel Detil Barang Masuk
Tabel ini digunakan untuk menyimpan data detil dari barang masuk meliputi tanggal masuk, tanggal kadaluarsa dan jumlah barang.
Nama Field Tipe Data Ukuran Keterangan
Kode_detil_masuk varchar 8 Primary key
Kode_masuk varchar 8 Foreign key
Kode_barang varchar 8 Foreign key
Tanggal_masuk date Tanggal masuk
barang
kadaluarsa barang
Jumlah integer Jumlah barang
Gambar 3.47 : Tabel Detil Barang Masuk
e.Tabel Distribusi Barang
Tabel ini digunakan untuk menyimpan data pendistribusian barang setiap laboratorium untuk praktikum atau penelitian skripsi.
Nama Field Tipe Data Ukuran Keterangan
Kode_distribusi varchar 8 Primary key
Kode_laboratorium varchar 8 Foreign key
Jumlah_total double Jumlah keseluruhan
barang
Gambar 3.48 : Tabel Distribusi Barang
f.Tabel Detil Distribusi Barang
Tabel ini digunakan untuk menyimpan data detil dari distribusi barang meliputi tanggal distribusi dan jumlah barang.
Nama Field Tipe Data Ukuran Keterangan
Kode_detil_distribusi varchar 8 Foreign key
Kode_distribusi varchar 8 Foreign key
Kode_barang varchar 8 Foreign key
Tanggal_distribusi date Tanggal distribusi
barang
Jumlah integer Jumlah barang
g.Tabel Laboratorium
Tabel ini digunakan untuk menyimpan data laboratorium.Meliputi kode laboratorium, nama laboratorium, lantai gedung tempat laboratorium dan pegawai yang bekerja dilaboratorium tersebut.
Nama Field Tipe Data Ukuran Keterangan
Kode_laboratorium varchar 8 Primary key
Nama_laboratorium varchar 30 Nama laboratorium
Lantai varchar 15 Lantai laboratorium
Kode_pegawai Varchar 8 Foreign key
Gambar 3.50: Tabel Laboratorium
h.Tabel Pegawai
Tabel ini digunakan untuk menyimpan data pegawai, khususnya yang berhubungan dengan laboratorium.Pada tabel ini juga berisi username
dan password yang digunakan untuk masuk kedalam sistem.
Nama Field Tipe Data Ukuran Keterangan
Kode_pegawai varchar 8 Primary key
Nama_pegawai varchar 50 Nama pegawai
Jabatan varchar 30 Jabatan pegawai
Username varchar 30 Username
pegawai
Password varchar 30 Password pegawai
3.2.3. Desain User Interface
a.Halaman Login
Halaman ini digunakan untuk verifikasi user masuk kedalam sistem
Gambar 3.52 : Halaman Login
b.Halaman Menu Utama Kepala Laboratorium
Halaman ini akan muncul jika jabatan user adalah Kepala Laboratorium.
Gambar 3.53 : Halaman Menu Utama Kepala Laboratorium Username :
Password :
LOGIN BATAL
SISTEM INFORMASI LABORATORIUM FARMASI --SILF--
Menu Barang Report Help
User Master
Barang
Laborat orium
Barang Masuk
Distribusi Barang
c.Halaman Utama Petugas Laboratorium
Halaman ini akan muncul jika jabatan user adalah petugas laboratorium.
Gambar 3.54 : Halaman Menu Utama Petugas Laboratorium SISTEM INFORMASI LABORATORIUM FARMASI --SILF--
Menu Barang Report Help
Barang Masuk
Distribusi Barang
d. Halaman Menu User
Halaman ini digunakan untuk melihat data dan melakukan pencarian data
user. Pada halaman ini juga terdapat fasilitas tambah, edit dan hapus
user.
Gambar 3.55 : Halaman Menu User
Keterangan: 1.Cari
2.Tambah User
3.View 4.Back 5.Exit
NIP Nama Jabatan Username Password
1 2
e.Halaman Tambah User
Halaman ini digunakan Kepala Laboratorium untuk menambah user yaitu pegawai laboratorium.
Gambar 3.56: Halaman Tambah User
f. Halaman Edit User
Halaman ini digunakan untuk mengubah data dari user.
Gambar 3.57 : Halaman Edit User
g. Halaman Menu Laboratorium
Halaman ini digunakan Kepala Laboratorium untuk melihat data laboratorium dan melakukan pencarian laboratorium. Pada halaman ini juga terdapat fasilitas tambah, edit dan hapus data laboratorium.
Gambar 3.58 : Halaman Menu Laboratorium Keterangan:
1.Cari
2.Tambah Laboratorium 3.View
4.Back 5.Exit
Kode Lab Nama Lantai NIP
1 2
3 4
Nama Pegawai
h.Halaman Tambah Laboratorium
Halaman ini digunakan untuk menambah data laboratorium beserta dengan pegawai yang bertanggung - jawab.
Gambar 3.59: Halaman Tambah Laboratorium i.Halaman Edit Laboratorium
Halaman ini digunakan untuk mengedit data laboratorium.
Gambar 3.60: Halaman Edit Laboratorium
j.Halaman Menu Master Barang
Halaman ini digunakan Kepala Laboratorium untuk melihat data master barang dan pencarian master barang. Pada halaman ini juga terdapat fasilitas tambah, edit dan hapus data master barang.
Gambar 3.61 : Halaman Menu Master Barang Keterangan :
1.Kode Kadaluarsa 2.Kode Barang 3.Cari
4.Tambah Barang 5.View
6.Back 7.Exit
Nama Jenis
3 4
1
6
Satuan Jumlah Total Tgl Masuk Tgl Kdlrsa
5 2
k.Halaman Tambah Master Barang
Halaman ini digunakan untuk menambah data master barang.
Gambar 3.62: Halaman Tambah Master Barang
Kode Barang : Nama Barang :
Jenis : Satuan : Stok Awal : Stok Limit : Tanggal Masuk : Tanggal Kadaluarsa:
Menu Help
l. Halaman Tambah Stok Master Barang
Halaman ini digunakan untuk menambah jumlah stok master barang dengan jenis yang sama, perbedaanya pada tanggal masuk dan tanggal kadaluarsa.
Gambar 3.63: Halaman Tambah Stok Master Barang
Kode Barang : Nama Barang : Jumlah T:anggal Masuk : Tanggal Kadaluarsa:
Menu Help
m. Halaman Edit Master Barang
Halaman ini digunakan untuk mengedit data pada master barang.
Gambar 3.64: Halaman Edit Master Barang
Kode Kadaluarsa Kode Barang : Nama Barang :
Jenis : Satuan : Jumlah : Stok Limit : Tanggal Masuk : Tanggal Kadaluarsa:
Menu Help
n.Halaman Menu Barang Masuk
Halaman ini digunakan Kepala Laboratorium dan Petugas untuk melihat data dan pencarian data barang masuk laboratorium. Untuk petugas halaman ini juga terdapat fasilitas tambah, edit dan hapus data barang masuk laboratorium.
Gambar 3.65: Halaman Menu Barang Masuk Keterangan :
1.Kode Masuk 6. Cetak
2.Kode Barang 7. Back
3.Cari 8.Exit
4.Tambah Barang Masuk 5.View
Nama Barang Jumlah
3 4
1
6
Nama Lab Tgl Masuk Tgl Kadaluarsa
5 2
o. Halaman Tambah Barang Masuk
Pada halaman ini petugas laboratorium dapat melakukan tambah barang masuk
Gambar 3.66: Halaman Tambah Barang Masuk
Kode Barang Masuk :
Tanggal Masuk :
:
:
Menu Help
p. Halaman Edit Barang Masuk
Pada halaman ini petugas laboratorium dapat melakukan edit barang masuk laboratorium.
Gambar 3.67: Halaman Edit Barang Masuk
Kode Barang Masuk :
Tanggal Masuk :
:
:
Menu Help
q. Halaman Menu Distribusi Barang
Halaman ini digunakan Kepala Laboratorium dan Petugas untuk melihat data dan pencarian data distribusi barang. Untuk petugas halaman ini juga terdapat fasilitas tambah, edit dan hapus data distribusi barang.
Gambar 3.68: Halaman Menu Distribusi Barang Keterangan :
1.Kode Distribusi 2.Cari
3.Tambah Distribusi 4.View
5.Cetak 6.Back 7.Exit
Kode Barang Nama Barang
2 3
1
5
Tgl Pemakaian Nama Lab Jumlah
r.Halaman Tambah Distribusi Barang
Pada halaman ini petugas dapat melakukan tambah distribusi barang.
Gambar 3.69: Halaman Tambah Distribusi Barang
Kode Distribusi Barang : Tanggal Distribusi :
:
:
Menu Help
s.Halaman Edit Distribusi Barang
Pada halaman ini petugas dapat melakukan tambah distribusi barang.
Gambar 3.70: Halaman Edit Distribusi Barang
Kode Distribusi Barang : Tanggal Distribusi :
:
:
Menu Help
t.Laporan Master Barang / Barang Masuk / Distribusi Barang
Halaman ini digunakan untuk pembuatan laporan master barang, barang masuk dan distribusi barang.
Gambar 3.71: Laporan Master Barang / Barang Masuk / Distribusi Barang (Per Bulan)
Laporan Bulanan Laporan Per Semester
Menu Help
Per Bulan Per Tanggal
Bulan :
Tahun :
Per Bulan
Semester :
Tahun :
Pembuat Laporan :
Per Semester
Gambar 3.72: Laporan Master Barang / Barang Masuk / Distribusi Barang (Per Tanggal)
Tanggal Awal :
Tanggal Akhir :
Pembuat Laporan :
Menu Help
Per Bulan Per Tanggal
Laporan Per Tanggal
u.Halaman Ganti Password
Halaman ini digunakan untuk ganti password untuk petugas laboratorium.
Gambar 3.73: Halaman Ganti Password
v. Halaman about
Halaman ini berisi informasi tentang pembuat aplikasi.
Gambar 3.74: Halaman about Username :
Password :
Username baru : Password baru :
Re password :
Menu Help
OK
SISTEM INFORMASI LABORATORIUM FARMASI
Oleh : Ari T Christanto
3.3.3. Desain Output
a.Laporan Master Barang
Gambar 3.75: Laporan Master Barang
b.Laporan Barang Masuk
Gambar 3.76: Laporan Barang Masuk LABORATORIUM FARMASI
Nama Jenis Satuan Jumlah
Total
LAPORAN BARANG MASUK LABORATORIUM
Laboratorium:_____________
Peroide : /
Kode barang Nama
Barang
Jumlah Sisa Tgl Masuk Tgl Kadaluarsa Jumlah Ambil
Mengetahui
Yogyakarta,26/06/2008
Kepala Laboratorium Petugas
( ) ( )
c.Laporan Distribusi Barang
s
Gambar 3.77: Laporan Distribusi Barang LABORATORIUM FARMASI
UNIVERSITAS SANATA DHARMA
LAPORAN BARANG DISTRIBUSI BARANG LABORATORIUM
Laboratorium:_____________
Periode : /
Kode Barang Nama Barang Jumlah Tanggal Pemakaian
Mengetahui
Yogyakarta,26/06/2008
Kepala Laboratorium Petugas
( ) ( )
80
4.2. Karakteristik Sistem
Sistem ini menggunakan arsitektur 2-Tier yaitu terdiri dua bagian yaitu sistem yang berada pada ruang kepala laboratorium yaitu sebagai server dan sistem yang berada pada laboratorium sebagai client aplikasi. Sehingga implementasinya server pada ruang kepala laboratorium memiliki tiga client
aplikasi yaitu laboratorium Kimia Analisi, Kimia Organik dan Kimia Analisis Instrument.
Dari sisi server akan menginputkan master barang yang secara fisik menambah stok barang digudang, menginputkan data laboratorium dan menginputkan data pegawai. Sedangkan dari sisi laboratorium menginputkan data barang masuk laboratorium dan pendistribusian barang-barang tersebut.
4.3. Spesifikasi Perangkat lunak
Spesifikasi perangkat lunak yang digunakan dalam pembuatan sistem yaitu: a. Sistem Operasi : Sistem Operasi Wndows Service Pack 2 b. Tools Pemrograman : NetBeans 5.5.1
4.3.1.Kebutuhan Perangkat Keras
1.Spesifikasi perangakat keras sisi server
a.Processor Intel Pentium IV 2.4 GHz. b.Memory 1024 MB.
c.Hardisk berkapasitas 40 GB. d.Kartu Jaringan
2.Spesifikasi perangkat keras sisi client
a.Processor Intel Pentium IV 1.8 GHz. b.Memory 512 MB.
c.Hardisk berkapasitas 40 GB. d.Kartu Jaringan
4.3.2. Kebutuhan Perangkat Lunak
1. Spesifikasi perangakat lunak sisi server
a.Sistem Operasi Windows XP. b.Database Server MySQL 5.
2. Spesifikasi perangkat lunak sisi client
4.4. Implementasi Database
Database Server yang digunakan pada sistem ini adalah MySQL 5.0 dengan Database Tool SQLyog 5.14. Database yang dibuat adalah Laboratorium dengan tabel-tabel berikut :
1.Tabel Master Barang 2.Tabel Kadaluarsa 3.Tabel Barang Masuk 4.Tabel Detil Barang Masuk 5.Tabel Distribusi Barang 6.Tabel Detil Distribusi Barang 7.Tabel Laboratorium
8.Tabel Pegawai
4.5. Koneksi Java ke MySQL
Untuk melakukan koneksi antara Java dengan MySQL server, maka harus digunakan suatu driver JDBC ( Java DataBase Connectivity ) yang berisi kelas – kelas untuk mengakses database server. Driver yang digunakan pada sistem ini adalah mysql-connector-java-5.0.4-bin.jar.
Berikut ini adalah langkah-langkah untuk koneksi dari Java ke MySQL : 1.Melakukan load driver
Dimulai dengan pemanggilan method
Class.forName(“com.mysql.jdbc.Driver”).newI nstance;
Parameter yang digunakan adalah
url = "jdbc: mysql: / / localhost/ database";
user = "root";
password = "";
Sedangkan method yag dipanggil adalah
DriverManager.getConnection(url,user,password);
Script progam untuk melakukan koneksi dari Java ke MySQl:
public static String url = "jdbc: mysql: / / localhost/ laboratorium";
public static String user = "root";
public static String password = "";
public DBUtil() throws Exception { / / membuka koneksi
conn = DBConector.getI nstance(url,user,password);
st = conn.createStatement(); }
public void closeConn()throws Exception{ / / menutup koneksi
if(conn!= null){
public Connection getConnection(){
return conn;
4.6Implementasi Antar Muka
4.6.1. Halaman Login
Gambar 4.1 : Halaman Login
Halaman login adalah form yang pertama kali muncul, yang digunakan user untuk masuk kedalam sistem. Disini user harus mengisikan username dan password untuk dapat mengakses sistem selanjutnya. Terdapat dua macam user dalam sistem ini yaitu kepala laboratorium dan petugas laboratorium. Akan dilakukan pengecekan terhadap username dan password dalam database, jika tidak cocok maka akan sistem menampilkan pesan:
Gambar 4.2 : Halaman peringatan Login Gagal
Maka proses login gagal, namun jika username dan password
tersebut cocok maka akan kembali dilakukan pengecekan terhadap jabatan
laboratorium. Hal ini akan mempengaruhi terhadap menu-menu dan fasilitas pada halaman utama.
Script progam untuk pengecekan login:
public void masuk( )
String sql = "select kode_pegawai,username,password,jabatan from pegawai where username =
'"+ v_username+ "'
and password = '"+ v_password+ "'";
ResultSet rs = st.executeQuery(sql);
rs.next();
if((rs.getString("password").equalsI gnoreCase(txt_password.getText())= = true))
{
if(rs.getString("jabatan").equalsI gnoreCase("Kepala Laboratorium")= = true)
{
this.setVisible(false);
JOptionPane.showMessageDialog(this," SI STEM I NFORMASI LABORATORI UM FARMASI "+ "\ n
Username " + user,"SI LF",JOptionPane.I NFORMATI ON_MESSAGE);