Program bantu pemilihan obat di Apotek Sanata Dharma - USD Repository
PROGRAM BANTU PEMILIHAN OBAT
DI APOTEK SANATA DHARMA
TUGAS AKHIR
Disusun oleh : Nama : Benediktus Puji Krismawan N I M : 995314061
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
THE SOFTWARE APPLICATION FOR DISPENSING AT SANATA DHARMA PHARMACY TUGAS AKHIR
Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree in Informatics Engineering Study Program
Disusun oleh : Nama : Benediktus Puji Krismawan N I M : 995314061
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
PROGRAM BANTU PEMILIHAN OBAT DI APOTEK SANATA DHARMA TUGAS AKHIR
Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika
Disusun oleh : Nama : Benediktus Puji Krismawan N I M : 995314061
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
HALAMAN PERSEMBAHAN
Aku persembahkan kepada Tuhan, Kepada Yesus,
Atas rahmat, berkat, anugerah, bimbingan dan segalanya Kepada orangtuaku, ayah dan ibuku,
Kepada kedua adikku Atas semua kasih sayang dan dukungan kalian
HALAMAN MOTTO
Kasihilah Tuhan, Allahmu,
dengan segenap hatimu dan
dengan segenap jiwamu dan
dengan segenap akal budimu.
Kasihilah sesamamu manusia seperti dirimu sendiri
Anugerah talenta dari Tuhan
digunakan dan kembangkan dengan baik
maka
Tuhan akan menambahkan tanpa disadari
Salam Damai Sejahtera dan Sukacita Bagimu
ABSTRAKSI
Program bantu ini mencakup proses identifikasi kebutuhan dan masalah terapi obat pasien mengacu pada standar kompetensi farmasis Indonesia. Program bantu ini membantu farmasis dalam pemilihan obat yang dilakukan pada pelayanan terapi obat kepada pasien. Program bantu ini membantu farmasis untuk membuat pemeriksaan ulang dan membuat opini farmasis atas diagnosis dokter.
Program bantu ini membantu farmasis menjalankan fungsinya yaitu menjamin proses terapi yang baik, identifikasi masalah dan mencegah timbulnya masalah dalam terapi obat, memecahkan masalah obat, dan menjamin kemajuan terapi. Program bantu ini memuat registrasi pasien, administrasi password, proses tanggal kunjung, proses bukti medis, proses diagnosis terapi, proses diagnosis indikasi, proses diagnosis kontraindikasi, proses pemilihan obat, proses interaksi obat, proses efek samping dan proses pembuatan dosis.
Program bantu ini membantu farmasis menjalankan kegiatan di apotek dalam menilai kelengkapan administrasi permintaan obat, dispensing, melakukan evaluasi dan tindak lanjut terapi obat.
ABSTRACT
This software application has its scope in both needs identification process and patient-related drug therapy problem which refer to pharmacist competent standard in Indonesia. This software application helps pharmacist in drug selecting processes which are done in drug therapy services to the patient. This software application helps pharmacist in doing necessary recheck and composing pharmacists opinion based on doctor diagnosis.
This software application helps pharmacists in carrying out their function in guarantee therapy process, problems identification and preventing the occurance problem in drugs therapy, solving drugs problems and guarantee the progress of the therapy. This software application include patients registration, password administration, visiting date process, medical evidence process, therapy diagnosis process, indication diagnosis process, contraindication diagnosis process, drug selection process, drug interaction process, side effect process and dose making process.
This software application helps pharmacist handling activities in pharmacy in evaluating drug request administration completion, dispensing and follow up drug therapy.
KATA PENGANTAR
Puji dan syukur penulis haturkan kepada Tuhan Yang Maha Esa yang telah memberikan anugerah dan bimbingannya sampai selesai penyusunan tugas akhir ini.
Namun dengan demikian perlu disadari bahwa tanpa bantuan dan kerjasama dari berbagai pihak, penyusun tidak dapat menyelesaikan laporan tugas akhir ini.Oleh karena itu, penyusun mengucapkan terima kasih kepada pihak-pihak yang telah membantu dalam bentuk bimbingan, petunjuk, kerjasama, kritikan, sumberdaya maupun saran antara lain kepada :
1 Bapak Albertus Agung Hadiatma, selaku Dosen Pembimbing I, yang telah memberikan dukungan, kesabaran dan bimbingan dalam penyusunan tugas akhir.
2 Bapak Edi Djoko Santoso, selaku apoteker pengelola apotek Sanata Dharma dan dosen pembimbing II yang telah memberikan ide, sumberdaya dan bimbingan kepada penyusun dalam mendukung penyelesaian tugas akhir.
3 Orangtua penyusun, yang telah memberikan dukungan secara penuh dalam penyelesaian tugas akhir.
4 Agung, Iwan Anar, Teddy, Dian dan teman-teman TI angkatan 99.
5 Teman-teman di Campus Ministry USD 2000-2005
6 Selsi, Don, Hendri, Yoyok, Aan, Jhon dan teman-teman PS Gaudeamus
7 Zendy, Kim, Ardi, Dedi, Joni,bang Willi, Putra, Beni, Komang, Joni, Putu, Hans,Yuli, Gatot, Gokong, mas Heston, mas Koko. Teman-teman kost yang telah mendukung, memberi semangat dan bermain bersama.
8 Saudara-saudaraku dari bapak dan ibu dan masih banyak lagi
9 Semua pihak yang telah memberikan peranan dalam membantu penyusun dalam menyelesaikan tugas akhir ini baik langsung dan tidak langsung.
Penyusun menyadari keterbatasan kemampuan dalam menyelesaikan laporan tugas akhir ini dan mohon maaf atas kesalahan dan kekurangan yang ada dalam penyusunan laporan ini. Penyusun mengharapkan kritikan dan saran yang membangun dari semua pihak.
Laporan ini kiranya berguna bagi siapa saja yang membutuhkan dan atas semua perhatian yang diberikan penyusun menyampaikan terima kasih.
Yogyakarta, Januari 2007 Penyusun
Daftar Isi
2
6
4 BAB II LANDASAN TEORI
1.6. Sistematika Penulisan
3
1.5. Metodologi Penelitian
2
1.4 Tujuan dan Manfaat Tugas Akhir
2
1.3. Rumusan Masalah
Halaman Judul i
Halaman Persetujuan ii
1
1.1 Latar Belakang Masalah
1
BAB I PENDAHULUAN
Daftar Gambar xvi
Daftar Isi x
Kata Pengantar viii
Abstract vii
Abstraksi vi
Halaman Pengesahan iii Halaman Persembahan iv Halaman Motto v
1.2 Batasan Masalah
2.1. Sistem
13 B.2 Behavioral Things
22 D.7 Diagram Komponen
21 D.6 Diagram State
20 D.5 Diagram Aktivitas
19 D.4. Diagram Kolaborasi
19 D.3 Diagram Sequence
18 D.2 Diagram Kelas
18 D.1 Diagram Use case
16 D.Diagram
16 C. Relationship
16 B.4 Annotational things
15 B.3 Grouping Things
13 B.1 Structural Things
6
12 B. Things
12 A. Blok Dasar Bangun UML
2.2.1. Konsep Model UML
12
2.2. Unified Modeling Language
10
2.1.4. Siklus Hidup Pengembangan Perangkat Lunak
9
6 2..1.3. definisi Sistem Informasi Berbasis Client Server
2.1.2. Definisi Berbasis Client-Server
6
2.1.1. Definisi Sistem dan Informasi
23 D.8 Diagram Deployment
23 E. Struktur Elemen
24
2.3. Perangkat Lunak yang digunakan
25
2.3.1 Microsoft Visual Basic 6.0 (VB 6)
25 A. Struktur Aplikasi
25
2.3.2. SQL Server 2000
31 A. Struktur Basis Data (Database Structure)
31 B. Penataan Keamanan
33
2.4. Farmasis (Apoteker)
33
2.4.1. Definisi Obat, Rekam Medis, Apotek dan Apoteker
33
2.4.2. Standar Operasi Prosedur Farmasi di Apotek
34 A. Tujuan
34 B. Ruang Lingkup
35 C. Kegiatan
35 D. Tanggung Jawab
39 BAB III ANALISIS DAN DESAIN SISTEM
40
3.1. Pemodelan Sistem
40
3.1.1 Diagram Use case
40
3.1.2 Skenario Use case
42 A. Skenario Masuk Login dalam Use case Login
42 B. Skenario Pengubahan Login use case Login
42 C. Skenario DataPribadiPasien use case DataPribadiPasien
43 D. Skenario DiagnosisPasien use case RekamMedis
44 E. Skenario PemilihanObat use case PemilihanObat
45 F. Skenario Pencarian InteraksiObat use case PemilihanObat
46 G. Skenario Pencarian Efek Samping use case PemilihanObat
46 H. Skenario PenghitunganDosis use case PenghitunganDosis
47 I. Skenario LookUp (Pancarian)
48 3..1.3. Diagram Kelas model Jacobson
48
3.1.4. Diagram Sequence
57
3.1.5. Rincian Diagram Kelas
92
3.2. Desain AntarMuka Pengguna 102
BAB IV IMPLEMENTASI 115
4.1. Diagram Komponen 115
4.1.1. Diagram Komponen untuk Paket use case Login 116
4.1.2. Diagram Komponen untuk Paket use case DataPribadiPasien 116
4.1.3. Diagram Komponen untuk Paket use case Diagnosis 116
4.1.4. Diagram Komponen untuk Paket use case PemilihanObat 117
4.1.5. Diagram Komponen untuk Paket use case Login 117
4.2. Diagram Deployment 117
4.3. Coding (Penulisan Kode) 118
4.3.1. Koneksi Database 119
4.3.2. Validasi Masukkan Karakter dan Masukkan yang Dibutuhkan 119
4.3.3. Form FrMain 122
4.3.4. Form Login dan kelas ProsesLogin 122
4.3.5. Form EditLogin 125
4.3.5. Form FrPasien 128
4.3.6. Form FrDiagnosis 134
4.3.7. Form FrDetailRM 147
4.3.8. Form-form Lookup 149
A. Form FrLookupBuktiMedis 149
B. Form FrLookupAsalBukti 153
C. Form FrLookupGejala 156
D. Form FrLookupTerapi 160
E. Form FrLookupIndikasi 163
F. Form FrLookupKontraindikasi 166
G. Form FrLookupCatatan 169
4.3.9. Form FrPemilihanObat 171
4.3.10. Form FrInteraksiObat 174
4.3.11. Form FrPencarianEfekSamping 176
4.3.12. Form FrPenghitunganDosis 178
4.3.13. Form FrKomposisi 184
BAB V ANALISA HASIL 187
5.1. Tinjauan Umum sistem 187
5.2. Kelebihan Sistem 188
5.3. Kekurangan Sistem 188
BAB VI PENUTUP 189
6.1. Kesimpulan 189
6.2. Saran 190
DAFTAR PUSTAKA LAMPIRAN
Daftar Gambar
15 Gambar 2.12. Contoh State Machine
18 Gambar 2.19. Contoh diagram kelas Customers membuat order terhadap produk 19
18 Gambar 2.18. Contoh diagram use case kelakuan trader membuat harga
17 Gambar 2.17. Contoh realisasi
17 Gambar 2.16. Contoh generalisasi
16 Gambar 2.15. Contoh asosiasi : nama, role, multipicity, aggregasi
16 Gambar 2.14. Contoh dependensi
16 Gambar 2.13. Contoh Note
Gambar 2.1 Arsitektur Hardware dan Software9 Gambar 2.2 Komponen-komponen Aplikasi
15 Gambar 2.10. Contoh interaksi
14 Gambar 2.9. Contoh node
14 Gambar 2.8. Contoh Komponen
14 Gambar 2.7. Contoh event
14 Gambar 2.6. Contoh use case
13 Gambar 2.5. Contoh Kolaborasi
13 Gambar 2.4. Contoh Interface
10 Gambar 2.3 Contoh kelas
15 Gambar 2.11. Contoh state machine
Gambar 2.20. Contoh diagram sequence trader memperoleh produk20 Gambar 2.21. Contoh diagram kolaborasi Trader memperoleh produk
21 Gambar 2.22. Contoh diagram aktivitas saat membeli coca cola
22 Gambar 2.23. Contoh diagram state permainan catur
22 Gambar 2.24. Contoh diagram komponen trader dan order
23 Gambar 2.25. Contoh diagram deployment jaringan LAN berhubungan dengan internet
24 Gambar
2.26. Contoh boundary
24 Gambar
2.27. Contoh control
24 Gambar
2.28. Contoh entity
25 Gambar 3.1. Penggambaran Aktor
41 Gambar 3.2.Diagram Paket untuk use case
41 Gambar 3.3. Diagram use case dalam Paket Login
41 Gambar 3.4 Diagram use case dalam Paket RekamMedis
42 Gambar 3.5 Diagram use case dalam Paket Pemilihan Obat
42 Gambar 3.6 Diagram Kelas Jacobson Masuk login use case Login
49 Gambar 3.7 Diagram Kelas Jacobson Pengubahan Login use case Login
49 Gambar 3.8 Diagram Kelas Jacobson use case DataPribadiPasien
50 Gambar 3.9. Diagram Kelas Jacobson Diagnosis Pasien use case RekamMedis
50 Gambar 3.10. Diagram Kelas Jacobson LookUp BuktiMedis use case RekamMedis
51 Gambar 3.11. Diagram Kelas Jacobson LookUp AsalBukti use case RekamMedis 51
Gambar 3.12. Diagram Kelas Jacobson LookUp Gejala use case RekamMedis52 Gambar 3.13. Diagram Kelas Jacobson LookUp Terapi use case RekamMedis
52 Gambar 3.14. Diagram Kelas Jacobson LookUp Indikasi use case RekamMedis 53
Gambar 3.15. Diagram Kelas Jacobson LookUp KontraIndikasi use case RekamMedis53 Gambar 3.16. Diagram Kelas Jacobson LookUp Catatan Pasien use case RekamMedis
54 Gambar 3.17. Diagram Kelas Jacobson use case PemilihanObat
54 Gambar 3.18. Diagram Kelas Jacobson InteraksiObat use case PemilihanObat
55 Gambar 3.19. Diagram Kelas Jacobson Pencarian Efek Samping use case PemilihanObat
55 Gambar 3.20. Diagram Kelas Jacobson Penghitungan Dosis use case PenghitunganDosis
56 Gambar 3.21. Diagram Kelas Jacobson Komposisi use case PenghitunganDosis
56 Gambar 3.22. Diagram Sequence Masuk Login untuk use case Login
57 Gambar 3.23. Diagram Sequence Validasi MasukLogin untuk use case Login
58 Gambar 3.24. Diagram Sequence Pengubahan Login untuk use case Login
59 Gambar 3.25. Diagram Sequence validasi PengubahanLogin untuk use case Login 60
Gambar 3.26. Diagram Sequence untuk use case DataPribadiPasien61 Gambar 3.27. Diagram Sequence validasi use case DataPribadiPasien
62 Gambar 3.28. Diagram Sequence Diagnosis Pasien use case Rekam Medis
63 Gambar 3.29 Diagram Sequence Diagnosis Pasien use case RekamMedis
64
Gambar 3.30 Diagram Sequence DiagnosisPasien use case RekamMedis65 Gambar 3.31 Diagram Sequence Diagnosis Pasien use case RekamMedis
66 Gambar 3.32. Diagram Sequence validasi Diagnosis Pasien use case DiagnosisPasien
67 Gambar 3.33 Diagram Sequence Lookup Bukti Medis use case RekamMedis
68 Gambar 3.34. Diagram Sequence validasi LookUp BuktiMedis use case RekamMedis
69 Gambar 3.35 Diagram Sequence Lookup Asal Bukti use case RekamMedis
70 Gambar 3.36. Diagram Sequence validasi LookUp AsalBukti use case RekamMedis
71 Gambar 3.37 Diagram Sequence Lookup Gejala use case RekamMedis
72 Gambar 3.38. Diagram Sequence validasi LookUp Gejala use case RekamMedis 73
Gambar 3.39 Diagram Sequence Lookup Terapi use case RekamMedis74 Gambar 3.40. Diagram Sequence validasi LookUp Terapi use case RekamMedis 75
Gambar 3.41 Diagram Sequence Lookup Indikasi use case RekamMedis76 Gambar 3.42. Diagram Sequence validasi LookUp Indikasi use case RekamMedis
77 Gambar 3.43 Diagram Sequence Lookup Kontraindikasi use case RekamMedis
78 Gambar 3.44. Diagram Sequence validasi LookUp KontraIndikasi use case RekamMedis
79 Gambar 3.45 Diagram Sequence Lookup CatatanPasien use case RekamMedis
80
Gambar 3.46. Diagram Sequence validasi LookUp CatatanPasien use case RekamMedis81 Gambar 3.47 Diagram Sequence Pemilihan Obat use case PemilihanObat
82 Gambar 3.48. Diagram Sequence validasi PemilihanObat use case PemilihanObat 83
Gambar 3.49 Diagram Sequence Interaksi Obat use case PemilihanObat84 Gambar 3.50 Diagram Sequence Pencarian Efek Samping use case PemilihanObat 85
Gambar 3.51. Diagram Sequence validasi PencarianEfekSamping use casePemilihanObat
86 Gambar 3.52 Diagram Sequence Penghitungan Dosis use case PenghitunganDosis 87
Gambar 3.53 Diagram Sequence PenghitunganDosis use case PenghitunganDosis 88Gambar 3.54. Diagram Sequence Validasi PenghitunganDosis use casePenghitunganDosis
89 Gambar 3.55 Diagram Sequence Komposisi use case PenghitunganDosis
90 Gambar 3.56. Diagram Sequence Validasi LookUp Komposisi use case PenghitunganDosis
91 Gambar 3.57. Rincian Diagram Kelas Form Utama, Kelas Koneksi dan Kelas Form Proses
92 Gambar 3.58 Rincian Diagram Kelas use case Login
93 Gambar 3.59 Rincian Diagram Kelas use case DataPribadiPasien
94 Gambar 3.60 Rincian Diagram Kelas use caseRekamMedis
95 Gambar 3.61 Rincian Diagram Kelas LookUp use case RekamMedis
96
Gambar 3.62 Rincian Diagram Kelas tabel data use case RekamMedis97 Gambar 3.63 Rincian Diagram Kelas use case PemilihanObat
98 Gambar 3.64 Rincian Diagram Kelas tabel data use case PemilihanObat
99 Gambar 3.65 Rincian Diagram Kelas use case PenghitunganDosis 100
Gambar 3.66 Rincian Diagram Kelas tabel data use case PenghitunganDosis 101Gambar 3.67 Desain FrMain dan FrLogin 102Gambar 3.68 Desain FrEditLogin103
Gambar 3.69 Desain FrPasien104
Gambar 3.70 Desain FrDiagnosis105
Gambar 3.71 Desain FrDetailRM106
Gambar 3.72 Desain FrLookUpBuktiMedis 106Gambar 3.73 Desain FrLookUpAsalBukti 107Gambar 3.74 Desain FrLookUpGejala 107Gambar 3.75 Desain FrLookUpTerapi 108Gambar 3.76 Desain FrLookUpIndikasi 108Gambar 3.77 Desain FrLookUpKontraIndikasi 109Gambar 3.78 Desain FrLookUpCatatan 109Gambar 3.79 Desain FrPemilihanObat 110Gambar 3.80. Desain FrInteraksiObat111
Gambar 3.81 Desain FrPencarianEfekSamping 112Gambar 3.82 Desain FrPenghitunganDosis 113Gambar 3.83 Desain FrKomposisi114
Gambar 4.1. Paket-paket Komponen use case 115Gambar 4.2. Diagram Komponen untuk Paket use case Login 116Gambar 4.3. Diagram Komponen untuk Paket use case DataPribadiPasien 116Gambar 4.4. Diagram Komponen untuk Paket use case Diagnosis 116Gambar 4.5. Diagram Komponen untuk Paket use case PemilihanObat 117Gambar 4.6. Diagram Komponen untuk Paket use case Penghitungan Dosis 117Gambar 4.7. Diagram Deployment di Jaringan Apotek 118BAB I PENDAHULUAN
1.1. Latar Belakang Apoteker berperan dalam pemberian obat kepada pasien. Dalam setiap konsultasi antara apoteker dan pasien seorang apoteker dapat memberikan penilaian atas diagnosa dokter dan pelayanan terapi obat kepada pasien. Pada situasi tersebut apoteker dapat membuat diagnosa dan membuat keputusan atas pelayanan terapi obat sesuai aturan dan etika profesi yang berlaku.
Kebutuhan rekam medis pasien diperlukan seorang apoteker untuk diagnosa dan pelayanan terapi obat. Rekam Medis ini menampung data yang diperlukan untuk memberikan pelayanan terapi obat. Kriteria data yang diinginkan dibuat apoteker untuk memperoleh informasi.
Komputerisasi dipilih sebagai alat untuk memperoleh informasi disamping alat-alat yang lain berupa jurnal, buku, dokumen dan media lain sebagai referensi. Program bantu ini dipilih sebagai salah satu bentuk komputerisasi dengan menggunakan perangkat lunak komputer. Apoteker berlaku sebagai administrator dan pengguna dalam program bantu ini. Program bantu ini akan memuat rekam medis pasien dan pengolahan data-data yang diinginkan apoteker untuk memperoleh informasi sehingga membantu membuat keputusan.
1.2. Batasan Masalah Batasan Masalah yang diambil sebagai berikut :
1. Pelayanan konsultasi terapi obat dilakukan oleh apoteker dan pasien 2. Data obat diperoleh dari referensi buku informasi obat di Indonesia.
3. Apoteker sebagai pengguna dan administrator.
4. Apoteker memberikan obat-obat bebas yang tidak memerlukan resep dokter.
5. Program bantu dapat melakukan pemeriksaan dan pemilihan obat.
6. Program bantu dapat bekerja secara personal dan client-server serta dapat dilakukan di jaringan intranet apotek.
1.3. Rumusan Masalah Rumusan Masalah yang diperoleh adalah bagaimana membuat aplikasi program bantu untuk pemilihan obat yang diperoleh dari konsultasi apoteker dan pasien untuk memberikan pelayanan terapi obat secara benar dan dapat berjalan di jaringan apotek.
1.4. Tujuan dan Manfaat Tugas Akhir Penulisan Tugas Akhir ini bertujuan mempermudah apoteker memperoleh informasi untuk memberikan pelayanan terapi obat dengan pemeriksaan dan pemilihan obat dari setiap konsultasi.
Manfaat penulisan Tugas Akhir ini adalah meminimalkan kesalahan pemberian obat dan apoteker memperoleh informasi dan saran-saran pelayanan terapi obat.
1.5. Metodologi Penulisan Tugas Akhir Untuk penulisan Tugas Akhir ini metodologi penelitian yang digunakan adalah metodologi penelitian studi kasus dengan urutan sebagai berikut :
1. Wawancara Wawancara dilakukan dengan apoteker apotek Sanata Dharma dan orang- orang yang kompeten di bidang farmasi untuk menentukan materi yang diperlukan dan penyajian materi.
2. Studi Pustaka Studi pustaka dilakukan untuk memperoleh informasi mengenai materi data obat-obat, rekam medis dan dasar-dasar pembuatan aplikasi
3. Analisis dan Desain Berorientasi Obyek.
Analisis dn desain berorientasi obyek menggunakan UML (Unified
Modeling Language ) yang akan memeodelkan aplikasi dalam use case, kelakuan sistem dan arsitektur.
4. Pembuatan Aplikasi Pembuatan aplikasi menggunakan aplikasi Microsoft Visual Basic 6.0 untuk membuat antarmuka dan program pengolahan data. Perangkat lunak database menggunakan Microsoft SQL Server 2000 untuk memperoleh
performance, konektivitas dan keamanan database
5. Implementasi dan simulasi Aplikasi
Implementasi dilakukan dengan simulasi aplikasi untuk menguji tingkat keberhasilan sistem informasi menggunakan perangkat keras berarsitektur
client-server dan perangkat lunak yang digunakan.
6. Evaluasi Evaluasi dilakukan dengan menganalisis hasil implementasi dan membuat kesimpulan atas keseluruhan pengembangan sistem.
1.6. Sistematika Penulisan
BAB I Pendahuluan Bab I berisi latar belakang masalah, batasan masalah, rumusan masalah, tujuan dan manfaat tugas akhir, metodologi penelitian, sistematika penulisan dan jadwal kegiatan.
BAB II Landasan Teori Bab II berisi kumpulan teori yang menjadi dasar untuk analisis, desain dan implementasi sistem. BAB III ANALISIS DAN DESAIN SISTEM Bab III berisi analisis yang memodelkan sistem program bantu dalam obyek-obyek, aliran method dan fungsi obyek, urutan proses dan aktivitas sistem serta desain yang meliputi desain kelas, desain atarmuka , desain basisdata dan desain perangkat keras.
BAB IV IMPLEMENTASI Bab IV berisi pembuatan kode aplikasi yang sudah diimplementasikan dan diuji untuk meihat tingkat keberhasilan sistem.
BAB V ANALISIS HASIL Bab V berisi analisis terhadap proses pembuatan aplikasi dan implementasi kelebihan dan kekurangan program bantu. BAB VI KESIMPULAN DAN SARAN Bab VI berisi kesimpulan dari keseluruhan proses pembuatan aplikasi dan saran atas pengembangan program bantu. DAFTAR PUSTAKA LAMPIRAN
2.1. Sistem
2.1.1. Definisi Sistem dan Informasi Sistem (Jogiyanto, 1990) didefinisikan pada elemen atau komponennya sebagai berikut :
“ Sistem adalah kumpulan elemen-elemen yang berinteraksi untuk mencapai tujuan tertentu.”
Informasi (Jogiyanto, 1990) didefinisikan sebagai berikut : “ Data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi
yang menerima.“
2.1.2. Definisi Berbasis Client-Server
Client-server merupakan arsitektur sistem hardware dan software atas elemen-
elemen client dan elemen-elemen server. Dalam sistem informasi sistem basisdata terlihat proses dan arsitektur client-server maka pembagian elemen
client dan server dapat dilakukan. Sistem basisdata berbasis client-server
terdiri dari beberapa hal berikut (Marcilina Garcia, dkk, 2000) :
a. Server. Server adalah kumpulan item data dan obyek-obyek yang mendukung, diorganisasikan dan dipresentasikan demi memudahkan layanan seperti pencarian data, pengurutan data, kombinasi ulang data, mendapatkan data, mendapatkan data setelah melakukan pencarian, pengubahan data dan menganalisis data. Basis data terdiri dari penyimpanan data fisik dan layanan-layanan basisdata. Semua pangaksesan data terjadi di server dan data fisik tidak pernah terakses langsung.
b. Client. Client adalah perangkat lunak yang mungkin digunakan secara interaktif oleh pengguna atau dapat berupa proses yang terotomisasi.
Client ini terdiri dari semua perangkat lunak yang berinteraksi dengan
server termasuk untuk permintaan data dari server atau menyimpan data ke dalam database.
c. Komunikasi antar client dan server. Komunikasi antara client dan server bergantung pada cara client dan server diimplementasikan. Kedua level komunikasi antara client dan server harus dapat diidentifikasi pada level komunikasi fisik dan komunikasi logis.
Berdasarkan arsitektur hardware client-server digambarkan pada gambar 2.1. (Alex Berson, 1994).
Proses yang kooperatif yang berkarakteristik kesepakatan maupun standar interaksi berbagai macam komponen aplikasi adalah dasar dan kekuatan yang menggerakkan arsitektur client-server (Alex Berson, 1994). Interaksi terjadi antara request dari client dan reaksi server atas request tersebut. Aplikasi yang mendukung hal tersebut terkandung komponen sebagai berikut : a. Presentation processing logic (logika pemrosesan penyajian). Hal ini merupakan kode aplikasi yang berinteraksi dengan end-user terminal antara lain keyboard, mouse handling, dan Graphical User Interface (GUI).
b. Businness processing logic (logika pemrosesan bisnis). Hal ini merupakan kode aplikasi input data (dari layer dan atau basisdata) untuk memenuhi permintaan bisnis.
d. Database processing logic (logika pemrosesan bisnis). Hal ini merupakan
kode aplikasi yang memanipulasi data dalam aplikasi. Data diatur oleh
Database Management System (DBMS) dan structured query language (SQL) merupakan salah satu bahasa manipulasi data.
e. Database processing (pemrosesan basisdata). Pemrosesan diatur oleh
DBMS dan pemrosesan database adalah bagian esensial pemrosesan kooperatif interaksi .
Komponen-komponen aplikasi tersebut dapat dilihat pada gambar 2.2.
Client Appl.
Client Client LAN Appl.
Appl. atau WAN
Server Appl.
Printer Data
Gambar 2.1. Arsitektur Hardware dan Software Client-Server2.1.3. Definisi Sistem Informasi Berbasis Client Server Berdasarkan definisi diatas maka Sistem Informasi Berbasis Client Server dapat didefinisikan sebagai berikut :
“ Suatu sistem yang menginteraksikan elemen-elemen untuk memberikan informasi yang dibutuhkan dalam bentuk yang berguna dan dikerjakan dalam suatu hubungan interaksi kooperatif client terhadap server. “
Screen
DBMS Database logic
SQL
Business logic If . then..
Else..
Presentation logic Application
Database Gambar 2.2. Komponen-komponen Aplikasi.
2.1.4. Siklus Hidup Pengembangan Sistem Perangkat Lunak Ada 4 (empat) fase pokok pengembangan sistem perangkat lunak sebagai berikut (Grady Booch, 1999):
1. Inception. Inception memuat kegiatan pencarian ide pengembangan sistem, analisis kebutuhan sistem dan menyimpan dalam poin-poin kejadian.
2. Elaboration. Elaboraton memuat kegiatan memproduksi visi dan arsitektur.
Kebutuhan sistem diperluas dari visi umum menjadi kriteria evaluasi tepat, juga menspesifikasi kelakuan fungsional atau nonfungsional dan memberikan suatu dasar testing.
3. Construction. Construction memuat kegiatan pembuatan perangkat lunak berdasarkan arsitektur terakhir disiapkan untuk keperluan pengguna.
Kebutuhan sistem dan criteria evaluasi diuji kembali dihadapkan dengan kebutuhan proyek dan sumber daya dialokasikan seperti mencegah resiko proyek.
4. Transition. Transition memuat kegiatan perangkat lunak disajikan ke pengguna. Pengembangan sistem terus berlanjut dan sistem terus dikembangkan, mengatasi bugs dan feature ditambahkan atau diganti.
Penggunaan UML sebagai alat pengembangan sistem memuat proses bebas dalam siklus hidup pengembangan sistem sebagai berikut : a. Use case driven. Proses ini menggunakan use case sebagai artifak utama untukmembangun kelakuan sistem, untuk verifikasi dan validasi arsitektur sistem arsitektur sistem, pengujian, dan komunikasi antara pembuat proyek.
b.Architecture-centric. Proses ini menggunakan arsitektur sistem sebagai artifak
utama untuk pengkonsepan, konstruksi, pengaturan, dan penyusun perancangan sistem.
c.
Iterative process dan incremental process. Iterative process melakukan kegiatan pengulangan dalam pengaturan aliran pengeluaran produksi.
Incremental process melakukan kelanjutan integrasi arsitektur sistem dan mewujudkan perkembangan bertambah. Secara bersamaam kedua proses ini merupakan risk-driven, setiap produksi difokuskan pada tujuan dan mengurangi resiko paling signifikan untuk kesuksesan proyek.
2.2. Unified Modeling Language Unified Modeling Language (UML) adalah suatu standar bahasa penulisan
blueprint perangkat lunak. UML dapat digunakan untuk visualisasi, spesifikasi,
konstruksi, dan dokumentasi artifak suatu sistem software-intensive (Grady Booch, 1999). Penggunaan UML adalah suatu proses bebas meskipun akan lebih optimal dipakai dalam suatu proses use case driven, architecture-centris, iterative dan
incremental .
2.2.1. Konsep Model UML Konsep model UML terdiri atas 3 elemen yaitu blok dasar bangun UML, aturan peletakan blok dasar bangun UML dan mekanisme pemakaian UML.
A. Blok dasar bangun UML Berdasarkan pengertian kata dalam UML dapat diarahkan pada 3 macam blok bangun yaitu Things, Relationships, dan Diagrams. Things adalah abstraksi dari anggota kelas pertama dari suatu model. Relationship adalah pengikat dari anggota-anggota model ini dan memiliki arti hubungan. Diagrams adalah suatu kelompok yang menghimpun anggota-anggota model dan ikatan.
B. Things Ada 4 (empat) macam Things dalam UML yaitu : Structural things, Behavioral
things, Grouping thing dan Annotational things. Keempat macam things ini adalah dasar blok bangun berorientasi obyek UML.
B.1. Structural Things.
Struktural thing adalah benda bahan untuk model UML dan merupakan bagian static
dari model yang menggambarkan elemen secara konseptual maupun fisikal. Ada 7 macam Structural things yaitu:
1. Class (kelas) adalah suatu penggambaran obyek dan terbagi dalam nama obyek, atribut, operasi, relasi, dan semantic.
Window Origin size Open() Close() Move() Display()
Gambar 2.3. Contoh Kelas2. Interface (antarmuka) adalah suatu kumpulan operasi yang spesifik atas kelas atau komponen dan juga dapat memperlihatkan kelakuannya.
ISpelling
Gambar 2.4. Contoh Interface3. Collaboration (kolaborasi) adalah suatu interaksi dan terdiri dari kelompok
roles (peran dan tugas) dan elemen. Keduanya saling bekerjasama
memberikan kelakuan bersama dan mengimplementasikan pola-pola tambahan pada sistem.
Chain of Responsibility
Gambar 2.5. Contoh Kolaborasi4. Use case adalah penggambaran satu set aksi berurutan pada pola permainan sistem yang menghasilkan suatu nilai (value) nyata kepada actor.
Place Order
Gambar 2.6. Contoh use case5. Active class (kelas aktif) adalah suatu kelas yang memiliki obyek sendiri dan terdiri dari proses-proses atau thread dan dapat menginisialisasi aktifitas
EventManager control dan bekerja bersamaan dengan elemen lain. Suspend() Flush()
Gambar 2.7. Contoh event6. Component (komponen) adalah bagian fisikal dan bagian sistem yang menyesuaikan, suatu set antarmuka, atau paket fisik software dari elemen- elemen logika.
orderform.java
Order
Gambar 2.8. Contoh komponen7. Node adalah elemen fisik, yang berupa alat-alat komputasi, yang secara umum memiliki memori dan kemampuan pemrosesan.
Server
Gambar 2.9. Contoh nodeB.2. Behavioral Things
Behavioral things adalah bagian dinamik dari UML dan menggambarkan kelakuan
atas ruang dan waktu. Ada 2 macam behavioral things yaitu :
1. Interaction (interaksi) adalah kelakuan yang terdiri dari pertukaran pesan suatu obyek dalam konteks nyata untuk mengerjakan satu maksud tertentu.
Interaksi terdapat sejumlah elemen termasuk pesan-pesan, aksi berurutan dikerjakan oleh suatu pesan, dan link yang menghubungkan obyek.
display
Gambar 2.10. Contoh interaksi2. State machine adalah kelakuan yang menentukan urutan state suatu obyek atau suatu interaksi yang berjalan selama waktu hidup state sebagai jawaban ke event. State machine terdapat sejumlah elemen termasuk state, transisi yang menalir dari state ke state, event yang memicu transisi dan aktifitas sebagai reaksi atas transisi.
Waiting
Gambar 2.11. Contoh state machine B.3. Grouping thingsGrouping things adalah organisasi bagian-bagian model UML. Untuk semua itu ada
satu macam grouping things yang disebut package (paket). Paket adalah mekanisme umum untuk mengorganisasi elemen-elemen menjadi grup-grup dan suatu konseptual. Structural things, behavioral things, dan banyak cara pengelompokan ditempatkan dalam satu paket.
B u s in e s s r u le s
B.4. Annotational things
Gambar 2.12. Contoh paketAnnotational things adalah bagian penjelasan model-model UML seperti komentar
untuk menggambarkan. menjelaskan, dan menandai. Note adalah simbol sederhana untuk komentar dan membuat batasan.
return copy of self
Gambar 2.13. Contoh NoteC. Relationships
Relationships (hubungan) dalam UML ada 4 (empat) macam yaitu : dependensi, asosiasi, generalisasi, realisasi.
1. Dependensi (ketergantungan) Dependensi adalah relasi ketergantungan antara dua obyek yang berakibat perubahan satu obyek bebas dapat berakibat pada obyek yang tergantung kepadanya.
Simbol :
Gambar 2.14. Contoh dependensi2. Asosiasi Asosiasi adalah relasi terstruktur yang memperlihatkan hubungan antar obyek- obyek. Ada 4 (empat) penulisan keterangan dalam asosiasi :
Works for 1. Nama.
Company Person
2. Role Person
Company employee employer
- 3. 1..
Multiplicity Person
Company employee employer
4. Aggregasi C o m p a n y D e p a rte m e n t
- 1 ..* 1 ..*
3. Generalisasi (penurunan) Generalisasi adalah sebuah relasi antar obyek elemen khusus (”anak”) sebagai bagian dari obyek elemen general (“induk”) sehingga elemen anak mewarisi struktur
S h a p e dan kelakuan elemen induk.
- o r ig in
- m o v e ( )
- r e s iz e ( )
Contoh :
- d is p la y ( )
R e c t a n g l e
- c o r n e r : f lo a t
4. Realisasi Realisasi adalah suatu relasi semantic antar obyek-obyek berbeda dengan cara satu obyek menentukan kontrak dengan obyek lain yang sesuai untuk membawanya.
Relasi realisasi dapat ditemukan antara interface dengan kelas atau komponen yang merealisasikan dan antara use case dengan kolaborasi yang merealisasikan.
Simbol :
Gambar 2.17. Contoh realisasiD. Diagrams D.1. Diagram Use case
Diagram use case menjelaskan manfaat sistem jika dilihat menurut pandangan orang yang berada di luar sistem (actor). Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem berinteraksi dengan dunia luar. Use- case diagram dapat digunakan selama proses analisis untuk menangkap semua kebutuhan sistem (system requirement) dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use-case diagram menetapkan perilaku sistem (system behavior) saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau beberapa use-case diagram.
Contoh : Kelakuan Trader membuat harga
<<include>> Analyze Risk Trader
Valuation
<<include>>Price Deal D.2. Diagram Kelas Diagram Kelas dapat digunakan untuk memvisualisasikan struktur kelas-kelas dari suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Class diagram ini memperlihatkan hubungan antarkelas dan penjelasan detail tiap-tiap kelas di dalam model desain dari suatu sistem.
Selama proses analisis, diagram Kelas memperlihatkan aturan-aturan dan tanggung jawab entitas yang menentukan perilaku sistem. Selama tahap desain, diagram Kelas berperan dalam menangkap struktur dari semua kelas yang membentuk arsitektur sistem uang dibuat. Diagram Kelas juga merupakan pondasi untuk diagram komponen dan diagram deployment.
Order
Contoh : Kelas-kelas pada Customers membuat order terhadap produk
Stock Item dateReceived Order Line Trader Isprepaid name quantity
Name number stock price price Address status isSatisfied
1 1..* 1..*
1
1
1
1 1 1..* 1..* 1..* 1..* dispatch() restock() payBill() cloce() checkItem() limit()
Gambar 2.19. Contoh diagram Kelas Customers membuat order terhadap produkD.3. Diagram Sequence Diagram Sequence menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use-case. Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu di dalam use case. Tipe diagram ini sebaiknya digunakan di awal tahap desain atau analisis karena kesederhanaannya dan mudah untuk dimengerti. Contoh : Diagram Sequence Trader mendapat Produk
: Stock Item : Trader : Order Line Order : Order give order prepareorder() check() [check==true] remove() needs_to_reorder()
Gambar 2.20. Contoh diagram Sequence Trader mendapat produkD.4. Diagram Kolaborasi
Diagram Kolaborasi mengacu pada interaksi dan hubungan terstruktur antar objek. Jika sequence diagram yang menekankan pada urutan kejadian, maka collaboration diagram ini menekankan pada hubungan (relationship) antarobjek yang ada. Dalam satu collaboration diagram terdapat terdapat beberapa object, link dan
message . Diagram kolaborasi digunakan sebagai alat untuk menggambarkan interaksi yang mengungkapkan keputusan mengenai perilaku sistem.
Contoh : Diagram Kolaborasi Trader memperoleh produk
give order Order : Order needs_to_reorder() : Trader prepareorder() check() remove()
: Stock Item : Order Line
Gambar 2.20. Contoh diagram Kolaborasi Trader mendapat produkD.5. Diagram Aktivitas Diagram Aktivitas memodelkan alur kerja (workflow) sebuah proses bisnis dan urutan aktivitas dalam suatu proses. Diagram ini sangat mirip dengan sebuah flowchart karena dapat memodelkan sebuah alur kerja dari satu aktivitas ke aktivitas lainnya atau dari satu aktivitas ke dalam keadaan sesaat (state). Diagram ini sering digunakan untuk membantu dalam memahami proses secara keseluruhan. Oleh karena itu, pembuatan activity diagram ini baik dilakukan pada tahap awal pemodelan sistem. Selain itu, diagram aktivitas ini juga sangat berguna pada saat menggambarkan perilaku paralel atau menjelaskan bagaimana perilaku dalam berbagai use case berinteraksi.
Contoh : Aktivitas saat membeli minuman Coca cola
Get Coca Cola Drink beverage
Gambar 2.21. Contoh diagram Aktivitas saat membeli Coca ColaD.6. Diagram State Diagram State ini digunakan untuk memodelkan perilaku dinamis suatu kelas atau objek. Diagram ini memperlihatkan urutan keadaan sesaat (state) yang dilalui sebuah objek, kejadian yang menyebabkan adanya transisi dari satu state atau aktivitas ke state atau aktivitas lainnya, dan aksi yang menyebabkan perubahan satu state atau aktivitas. Contoh : State-state pada permainan catur
Black win W hite turn Draw Black turn
White win
Gambar 2.22. Contoh diagram State Permainan Catur D.7. Diagram Komponen Diagram Komponen digunakan untuk menggambarkan alokasi semua kelas dan objek ke dalam komponen-komponen dalam desain fisik perangkat lunak.Diagram ini memperlihatkan pengaturan dan kebergantungan antar komponen- komponen perangkat lunak, seperti source code, binary code, dan komponen tereksekusi (executable components). Kebergantungan antar komponen menunjukkan bagaimana perubahan pada satu komponen akan menyebabkan perubahan pada komponen lainnya. Contoh : Diagram komponen dalam Trader dengan Order
Customer Order Service Database
Gambar 2.23. Contoh Komponen dalam Trader dan OrderD.8. Diagram Deployment Diagram Deployment menunjukkan pemetaan perangkat lunak terhadap perangkat kerasnya. Setiap model hanya memiliki satu deployment diagram. Diagram ini memperlihatkan koneksi (connection) antara processor dan device, dan alokasi proses-prosesnya pada processor.
Contoh : Pembuatan jaringan workstation dan server yang berhubungan internet
Internal P C Int ernal PC
Internal P C Internal P C
N T S erver W eb S pool er
Internet S erver P ool M anger
Gambar 2.24. Contoh diagram deployment jaringan LAN berhubungan dengan internet E. Struktur Elemen.Pada level analisis pengkategorian semua obyek ke dalam tiga stereotype kelas yaitu : <<boundary>>, <<control>>, dan <<entity>> seperti yang dianjurkan Ivar Jacobson.
1. Obyek boundary menghubungkan pengguna sistem ke sistem. Obyek ini memperlihatkan interaksi pengguna melalui user interface. Proses dalam method yang menunjukkan tindakan pengguna pada sistem dan tindakan sistem untuk berinteraksi dengan pengguna..
Gambar 3.25. Contoh bondary2. Obyek control memperlihatkan proses-proses yang mengelola sistem. Proses- proses ini tidak diperlihatkan kepada user sehingga proses-proses berupa method merupakan tindakan sistem dari boundary dan tindakan sistem atas entity yang dipergunakan sistem.
Gambar 3.26. Contoh control3. Obyek entity menunjukkan obyek tetap dalam sistem seperti database. Obyek ini berisikan data-data yang disimpan kemudian dipakai oleh sistem. Method yang terdapat dalam entity merupakan method dari control untuk dikerjakan oleh entity.