Anda di halaman 1dari 172

LAPORAN PROYEK

SISTEM INFORMASI KLINIK DOKTER GIGI DAN UMUM SAMITA

Disusun Oleh:
Muhammad Sasmito A W 15/380439/SV/08246
Dandy Ary R 15/386054/SV/09440
Bahari Bastian 15/380420/SV/08227
Desgracia Rumapea 15/380424/SV/08231
Nugraheni Rizky P 15/380442/SV/08249

Dosen Pembimbing:
Anindita Suryarasmi, S.Kom., M.Cs

PROGRAM STUDI D3 ILMU KOMPUTER DAN SISTEM INFORMASI


DEPARTEMEN TEKNIK ELEKTRO DAN INFORMATIKA
SEKOLAH VOKASI UNIVERSITAS GADJAH MADA
YOGYAKARTA
2018

i
KATA PENGANTAR

Puji syukur kami ucapkan kepada Allah SWT yang telah melimpahkan rahmat serta
hidayah-Nya sehingga penulis dapat melaksanakan proyek sistem informasi serta dapat
menyelesaikan penulisan laporan dalam tepat waktu dan tanpa adanya halangan yang berarti.

Laporan ini disusun berdasarkan apa yang telah kami kerjakan dan kami selesaikan tentang
proyek klinik yang kami dapatkan dari klien pemilik Klinik Gigi dan Umum Samita. Proyek
Sistem Informasi ini merupakan salah satu syarat wajib yang harus ditempuh dalam Program Studi
Diploma III Ilmu Komputer dan Sistem Informasi. Selain itu, proyek sistem informasi ini banyak
memberikan manfaat baik dari segi akademik maupun untuk pengalaman yang tidak dapat kami
temukan saat berada di bangku perkuliahan.

Dalam penyusunan laporan hasil pengerjaan Proyek Sistem Informasi ini kami banyak
mendapatkan bantuan dari berbagai pihak. Oleh sebab itu, kami ingin mengucapkan rasa terima
kasih kepada banyak pihak, terutama kepada:

1. Wikan Sakarinto, S.T., M.Sc., Ph.D selaku Dekan Sekolah Vokasi.


2. Anindita Suryarasmi, S.Kom., M.Cs. selaku dosen pembimbing yang telah banyak
memberikan arahan dan masukan kepada penulis dalam melaksanakan dan juga
menyelesaikan laporan ini.
3. Pihak klien yang juga telah banyak memberikan bimbingan dengan baik secara langsung
maupun tidak secara langsung sehingga penulis dapat menyelesaikan proyek dengan baik.
4. Tak lupa pula kami mengucapkan terima kasih kepada pihak-pihak yang membantu dalam
pelaksanaan Proyek Sistem Informasi maupun dalam menyelesaikan laporan
Penulis menyadari bahwa penulisan laporan ini tidaklah sempurna. Apabila terdapat
banyak kesalahan dan kekeliruan dalam penulisan laporan ini, penulis mengharapkan saran dan
kritik agar dalam penulisan selanjutnya menjadi lebih baik.

Yogyakarta, 15 Januari 2018

Penulis

ii
DAFTAR ISI
KATA PENGANTAR .................................................................................................................... ii
DAFTAR ISI.................................................................................................................................. iii
DAFTAR GAMBAR ...................................................................................................................... v
DAFTAR TABEL ........................................................................................................................... x
BAB I PENDAHULUAN .............................................................................................................. 2
1.1 Latar Belakang ................................................................................................................. 2
1.2 Rumusan masalah ............................................................................................................. 3
1.3 Batasan masalah ............................................................................................................... 3
1.4 Tujuan............................................................................................................................... 4
1.5 Manfaat............................................................................................................................. 4
1.6 Metodologi Penelitian ...................................................................................................... 4
1.7 Sistematika Penulisan....................................................................................................... 6
BAB II TINJAUAN PUSTAKA .................................................................................................... 8
BAB III LANDASAN TEORI...................................................................................................... 12
3.1 Konsep Dasar Sistem ..................................................................................................... 12
3.2 Konsep Dasar Informasi ................................................................................................. 15
3.3 Konsep Dasar Sistem Informasi ..................................................................................... 17
3.4 Basis Data....................................................................................................................... 20
3.5 Diagram Use Case .......................................................................................................... 25
3.6 Web ................................................................................................................................. 26
3.7 Software Framework ...................................................................................................... 26
3.8 Konsep MVC (Model, View, Controler) ....................................................................... 27
3.9 Bahasa Pemrograman ..................................................................................................... 28
3.10 Perangkat Lunak Sistem ................................................................................................. 30
BAB IV ANALISIS DAN PERANCANGAN SISTEM .............................................................. 33
4.1 Analisis Sistem ............................................................................................................... 33
4.2 Perancangan Sistem........................................................................................................ 36
BAB V IMPLEMENTASI SISTEM ............................................................................................ 89
5.1 Spesifikasi Sistem ............................................................................................................... 89
5.2 Implementasi Basis Data ..................................................................................................... 89
5.3 Implementasi Sistem ........................................................................................................... 98

iii
BAB VI HASIL PENGUJIAN DAN PEMBAHASAN ............................................................ 144
6.1 Skenario Pengujian ............................................................................................................ 144
6.2 Hasil Pengujian ................................................................................................................. 145
6.3 Hasil Pengujian Pengguna ................................................................................................. 160
DAFTAR PUSTAKA ................................................................................................................. 161
LAMPIRAN ................................................................................................................................ 163

iv
DAFTAR GAMBAR
Gambar 3.1 Siklus Sistem Informasi (Jogiyanto, 2005) ............................................................... 17
Gambar 3.2 Simbol-simbol Use case............................................................................................ 25
Gambar 3.3 Konsep MVC ............................................................................................................ 28
Gambar 3.4 Struktur dasar HTML ................................................................................................ 28
Gambar 3.5 Struktur dasar PHP .................................................................................................... 29
Gambar 3.6 Contoh syntax CSS ................................................................................................... 30
Gambar 3.7 Contoh scipt javascript .............................................................................................. 30
Gambar 4.1 ERD sistem infomasi Klinik Gigi dan Umum Samita .............................................. 38
Gambar 4.2 Hubungan relasi antar tabel dalam sistem informasi Klinik Gigi dan Umum Samita
....................................................................................................................................................... 50
Gambar 4.3 Diagram use case sistem infomasi Klinik Gigi dan Umum Samita .......................... 52
Gambar 4.4 DAD Level Konteks.................................................................................................. 53
Gambar 4.5 DAD Level 1 ............................................................................................................. 54
Gambar 4.6 DAD Level 2 Proses manajemen akun (proses 1.0) ................................................. 55
Gambar 4.7 DAD Level 2 Proses pemeriksaan (proses 4.0) ........................................................ 56
Gambar 4.8 DAD Level 2 Proses pendaftaran (proses 5.0) .......................................................... 57
Gambar 4.9 Rancangan struktur menu pemilik ............................................................................ 58
Gambar 4.10 Rancangan struktur menu petugas .......................................................................... 59
Gambar 4.11 Rancangan struktur menu dokter ............................................................................ 59
Gambar 4.12 Rancangan antarmuka masuk / login ...................................................................... 60
Gambar 4.13 Rancangan antarmuka dashboard pemilik .............................................................. 61
Gambar 4.14 Rancangan antarmuka dashboard petugas .............................................................. 61
Gambar 4.15 Rancangan antarmuka dashboard dokter ................................................................ 62
Gambar 4.16 Rancangan antarmuka halaman profil pemilik ....................................................... 63
Gambar 4.17 Rancangan antarmuka halaman profil petugas ....................................................... 63
Gambar 4.18 Rancangan antarmuka halaman profil dokter ......................................................... 64
Gambar 4.19 Rancangan antarmuka ubah data pemilik ............................................................... 64
Gambar 4.20 Rancangan antarmuka ubah data petugas ............................................................... 65
Gambar 4.21 Rancangan antarmuka ubah data dokter ................................................................. 65
Gambar 4.22 Rancangan antarmuka antrian pendaftaran diakses oleh pemilik ........................... 66
Gambar 4.23 Rancangan antarmuka antrian pendaftaran diakses oleh petugas ........................... 67
Gambar 4.24 Rancangan antarmuka antrian pembayaran diakses oleh pemilik .......................... 68
Gambar 4.25 Rancangan antarmuka antrian pembayaran diakses oleh petugas .......................... 68
Gambar 4.26 Rancangan antarmuka rekam medis terakhir diakses oleh pemilik ........................ 69
Gambar 4.27 Rancangan antarmuka rekam medis terakhir diakses oleh dokter .......................... 70
Gambar 4.28 Rancangan antarmuka catatn pemeriksaan terakhir diakses oleh pemilik .............. 71
Gambar 4.29 Rancangan antarmuka catatan pemeriksaan terakhir diakses oleh dokter .............. 71
Gambar 4.30 Rancangan antarmuka manajemen obat .................................................................. 72
Gambar 4.31 Rancangan antarmuka tambah obat ........................................................................ 73
Gambar 4.32 Rancangan antarmuka manajemen tindakan ........................................................... 73
Gambar 4.33 Rancangan antarmuka tambah tindakan ................................................................. 74

v
Gambar 4.34 Rancangan antarmuka manajemen akun ................................................................. 75
Gambar 4.35 Rancangan antarmuka tambah user......................................................................... 75
Gambar 4.36 Rancangan antarmuka daftar pasien ....................................................................... 76
Gambar 4.37 Rancangan antarmuka lihat detail pasien ................................................................ 77
Gambar 4.38 Rancangan antarmuka Daftar Obat ......................................................................... 78
Gambar 4.39 Rancangan antarmuka Daftar Pasien lama.............................................................. 79
Gambar 4.40 Rancangan antarmuka Daftar Pasien baru .............................................................. 79
Gambar 4.41 Rancangan antarmuka tahap pemeriksaan umum pada klinik umum ..................... 80
Gambar 4.42 Rancangan antarmuka tahap analisa pemeriksaan pada klinik umum .................... 81
Gambar 4.43 Rancangan antarmuka pemeriksaan tahap 3 (Resep Obat) pada klinik umum ....... 82
Gambar 4.44 Rancangan antarmuka pemeriksaan tahap 4 (tindakan) pada klinik umum............ 83
Gambar 4.45 Rancangan antarmuka pemeriksaan tahap 1 pada klinik Gigi ................................ 84
Gambar 4.46 Rancangan antarmuka pemeriksaan tahap 2 pada klinik Gigi ................................ 85
Gambar 4.47 Rancangan antarmuka pemeriksaan tahap 3 pada klinik Gigi ................................ 86
Gambar 4.48 Rancangan antarmuka pemeriksaan tahap 4 (Resep Obat) pada klinik Gigi .......... 87
Gambar 4.49 Rancangan antarmuka pemeriksaan tahap 5 (Tindakan) pada klinik Gigi ............. 88
Gambar 5.1 Implementasi Tabel Alergi........................................................................................ 90
Gambar 5.2 Implementasi Tabel Dokter ....................................................................................... 90
Gambar 5.3 Implementasi Tabel Jobs........................................................................................... 90
Gambar 5.4 Implementasi Tabel Klinik........................................................................................ 91
Gambar 5.5 Implementasi Tabel Obat .......................................................................................... 91
Gambar 5.6 Implementasi Tabel Odontogram.............................................................................. 92
Gambar 5.7 Implementasi Tabel Pasien ....................................................................................... 92
Gambar 5.8 Implementasi Tabel Pembayaran .............................................................................. 93
Gambar 5.9 Implementasi Tabel Pemeriksaan ............................................................................. 93
Gambar 5.10 Implementasi Tabel Pendaftaran ............................................................................. 94
Gambar 5.11 Implementasi Tabel Penyakit .................................................................................. 94
Gambar 5.12 Implementasi Tabel periksa_tindakan .................................................................... 94
Gambar 5.13 Implementasi Tabel Resep ...................................................................................... 95
Gambar 5.14 Implementasi Tabel riwayat_penyakit .................................................................... 95
Gambar 5.15 Implementasi Tabel Status ...................................................................................... 96
Gambar 5.16 Implementasi Tabel Tindakan ................................................................................. 96
Gambar 5.17 Implementasi Tabel trx_alergi ................................................................................ 96
Gambar 5.18 Implementasi Tabel trx_status ................................................................................ 97
Gambar 5.19 Implementasi Tabel Users ....................................................................................... 98
Gambar 5.20 Source code untuk konfigurasi koneksi database mysql ......................................... 99
Gambar 5.21 Halaman utama petugas ........................................................................................ 100
Gambar 5.22 Source code daftar pasien lama yang telah terdaftar lanjutan ............................... 101
Gambar 5.23 Implementasi formulir pendaftaran pasien baru ................................................... 102
Gambar 5.24 Source code untuk menyimpan data pendaftaran pasien baru ke basis data ......... 103
Gambar 5.25 Implementasi pendaftaran pasien lama ................................................................. 104
Gambar 5.26 Source code untuk menyimpan data pendaftaran pasien lama ke basis data. ....... 105

vi
Gambar 5.27 Pemberitahuan data berhasil ditambah ................................................................. 106
Gambar 5.28 Antrian pemeriksaan pada halaman utama dokter ................................................ 107
Gambar 5.29 Source code untuk menampilkan data antrian pemeriksaan pada dashboard dokter
..................................................................................................................................................... 107
Gambar 5.30 Source code untuk menampilkan data antrian pemeriksaan pada dashboard dokter
lanjutan........................................................................................................................................ 108
Gambar 5.31 Implementasi formulir pemeriksaan pada klinik umum ....................................... 108
Gambar 5.32 Source code Rekam_medis untuk menampilkan halaman formulir pemeriksaan
pasien unit layanan umum .......................................................................................................... 109
Gambar 5.33 Implementasi pemeriksaan umum pada pemeriksaan umum ............................... 109
Gambar 5.34 Implementasi analisa pemeriksaan pada pemeriksaan umum............................... 110
Gambar 5.35 Implementasi tahap pemberian resep pada pemeriksaan umum ........................... 110
Gambar 5.36 Implementasi tahap tindakan pada pemeriksaan umum ....................................... 110
Gambar 5.37 Implementasi tahap pemeriksaan Gigi .................................................................. 111
Gambar 5.38 Source code rekam medis untuk menyimpan data pemeriksaan umum ............... 112
Gambar 5.39 Source code rekam medis untuk menyimpan data pemeriksaan gigi ................... 113
Gambar 5.40 Implementasi rekam medis pasien ........................................................................ 114
Gambar 5.41 Source code daftar rekam medis terakhir .............................................................. 114
Gambar 5.42 Source code daftar rekam medis terakhir lanjutan ................................................ 115
Gambar 5.43 Implementasi daftar obat yang tersedia pada klinik.............................................. 116
Gambar 5.44 Source code daftar obat pada controller Obat ...................................................... 117
Gambar 5.45 Implementasi halaman untuk menambah obat ...................................................... 118
Gambar 5.46 Implementasi halaman untuk mengubah data obat ............................................... 118
Gambar 5.47 Source code tambah dan ubah obat pada controller Obat .................................... 119
Gambar 5.48 Source code tambah dan ubah obat pada controller lanjutan ................................ 120
Gambar 5.49 Implentasi modal mengahapus data obat .............................................................. 121
Gambar 5.50 Source code untuk hapus data obat ....................................................................... 121
Gambar 5.51 Implementasi halaman pemilik untuk memilih akun pengguna ........................... 122
Gambar 5.52 Implementasi halaman daftar pengguna ............................................................... 122
Gambar 5.53 Implementasi form tambah pengguna ................................................................... 123
Gambar 5.54 Source code Tampil daftar pengguna dan tambah data pengguna baru ................ 123
Gambar 5.55 Source code menyimpan data pengguna ............................................................... 124
Gambar 5.56 Source code menyimpan data pengguna lanjutan ................................................. 125
Gambar 5.57 Source code menyimpan data pengguna lanjutan ................................................. 126
Gambar 5.58 Implementasi form ubah data pengguna ............................................................... 127
Gambar 5.59 Source code untuk mengubah data akun pengguna .............................................. 127
Gambar 5.60 Source code untuk mengubah data akun pengguna lanjutan ................................ 128
Gambar 5.61 Implementasi konfirmasi menghapus akun pengguna .......................................... 129
Gambar 5.62 Source code hapus akun pengguna ....................................................................... 129
Gambar 5.63 Impelementasi menuju ke halaman manajemen tindakan..................................... 130
Gambar 5.64 Implementasi halaman manajemen tindakan ........................................................ 130
Gambar 5.65 Source code untuk tampil daftar tindakan............................................................. 131

vii
Gambar 5.66 Implementasi form tambah tindakan ..................................................................... 132
Gambar 5.67 Source code untuk tambah tindakan ..................................................................... 132
Gambar 5.68 Source code untuk tambah tindakan lanjutan ....................................................... 133
Gambar 5.69 Implementasi konfirmasi hapus tindakan ............................................................. 133
Gambar 5.70 Source code hapus tindakan .................................................................................. 134
Gambar 5.71 Menu navigasi daftar pasien pada halaman petugas ............................................. 134
Gambar 5.72 Implementasi daftar pasien ................................................................................... 135
Gambar 5.73 Source code tampil daftar pasien .......................................................................... 136
Gambar 5.74 Implementasi form tambah data pasien baru......................................................... 137
Gambar 5.75 Source code tambah pasien baru ........................................................................... 138
Gambar 5.76 Implementasi form tambah pasien lama................................................................ 139
Gambar 5.77 Source code tambah pasien lama .......................................................................... 139
Gambar 5.78 Source code tambah pasien lama lanjutan ............................................................ 140
Gambar 5.79 Implementasi konfirmasi hapus data pasien ......................................................... 140
Gambar 5.80 Source code hapus data pasien .............................................................................. 141
Gambar 5.81 Implementasi antrian pembayaran pada halaman petugas .................................... 141
Gambar 5.82 Source code tampilan pembayaran pasien ............................................................ 142
Gambar 5.83 Implementasi cetak pembayaran ........................................................................... 143
Gambar 5.84 Implementasi cetak pembayaran pada halaman pembayaran pasien .................... 143
Gambar 6.1 Tampilan halaman login.......................................................................................... 145
Gambar 6.2 Tampilan verifikasi gagal........................................................................................ 146
Gambar 6.3 Halaman Utama untuk petugas ............................................................................... 147
Gambar 6.4 Tampilan utama untuk dokter ................................................................................. 147
Gambar 6.5 Tampilan Utama Pemilik ........................................................................................ 148
Gambar 6.6 Formulir untuk tambah akun baru ........................................................................... 149
Gambar 6.7 Pesan data yang dimasukkan salah ......................................................................... 149
Gambar 6.8 Tampilan data yang dimasukkan benar ................................................................... 150
Gambar 6.9 Tampilan untuk ubah data akun .............................................................................. 150
Gambar 6.10 Pesan konfirmasi menonaktifkan akun ................................................................. 151
Gambar 6.11 Tombol tambah pasien baru .................................................................................. 152
Gambar 6.12 Tampilan formulir masukan pendaftaran pasien baru........................................... 152
Gambar 6.13 Antrian pada kolom daftar antrian beserta status .................................................. 153
Gambar 6.14 Tombol daftar pasien lama .................................................................................... 153
Gambar 6.15 Halaman Pendaftaran pasien lama ........................................................................ 154
Gambar 6.16 Pencarian dan pemilihan pada data pasien lama ................................................... 154
Gambar 6.17 Notifikasi data kurang lengkap ............................................................................. 155
Gambar 6.18 Antrian pemeriksaan pada halaman dokter ........................................................... 156
Gambar 6.19 Halaman progress dari pemeriksaan pasien .......................................................... 156
Gambar 6.20 Empat tahap yaitu mengisi data pemeriksaan umum ............................................ 156
Gambar 6.21 Analisa pemeriksaan/SOAP .................................................................................. 157
Gambar 6.22 Tahap pengisian resep obat ................................................................................... 157
Gambar 6.23 Tahap Tindakan..................................................................................................... 157

viii
Gambar 6.24 Formulir elemen gigi pada pemeriksaan gigi ........................................................ 158
Gambar 6.25 Antrian Pembayaran .............................................................................................. 159
Gambar 6.26 Daftar tagihan pasian yang harus dibayar ............................................................. 159
Gambar 6.27 Kolom bayar untuk membantu menghitung jumlah uang kembalian ................... 159
Gambar 6.28 Tombol cetak tagihan pembayaran ....................................................................... 160
Gambar 6.29 Kotak dialog cetak oleh browser ........................................................................... 160

ix
DAFTAR TABEL
Tabel 2.1 Perbandingan tinjauan pustaka penelitian..................................................................... 10
Tabel 3.1 Simbol diagram ERD .................................................................................................... 22
Tabel 4.1 Rancangan tabel klinik.................................................................................................. 39
Tabel 4.2 Rancangan tabel jobs .................................................................................................... 39
Tabel 4.3 Rancangan tabel obat .................................................................................................... 40
Tabel 4.4 Rancangan tabel dokter ................................................................................................. 41
Tabel 4.5 Rancangan tabel odomtogram ...................................................................................... 41
Tabel 4.6 Rancangan tabel pasien ................................................................................................. 42
Tabel 4.7 Rancangan tabel pembayaran ....................................................................................... 42
Tabel 4.8 Rancangan Table penyakit ............................................................................................ 43
Tabel 4.9 Rancangan tabel periksa_tindakan................................................................................ 43
Tabel 4.10 Rancangan tabel resep ................................................................................................ 44
Tabel 4.11 Rancangan tabel riwayat_penyakit ............................................................................. 44
Tabel 4.12 Rancangan tabel status ................................................................................................ 45
Tabel 4.13 Rancangan tabel tindakan ........................................................................................... 45
Tabel 4.14 Rancangan tabel trx_alergi ......................................................................................... 46
Tabel 4.15 Rancangan tabel trx_status ......................................................................................... 46
Tabel 4.16 Rancangan tabel trx_alergi ......................................................................................... 47
Tabel 4.17 Rancangan tabel pemeriksaan ..................................................................................... 47
Tabel 4.18 Rancangan tabel users ................................................................................................ 48
Tabel 4.19 Rancangan tabel pendaftaran ...................................................................................... 49
Tabel 6.1 Skenario Pengujian Sistem ......................................................................................... 144

x
2

BAB I
PENDAHULUAN

1.1 Latar Belakang


Di era globalisasi saat ini, ilmu pengetahuan dan teknologi berkembang dengan sangat
pesat, khususnya di bidang informasi dan komunikasi. Salah satunya adalah kemajuan di bidang
komputer. Perkembangan teknologi ini memberikan banyak manfaat dalam kehidupan manusia.
Karena dapat mempermudah pekerjaan sehari-hari sehingga lebih efektif dan efisien. Peranan
teknologi informasi ini berpengaruh terhadap perkembangan daya saing suatu organisasi untuk
memberikan layanan yang terbaik. Berdasarkan hal tersebut di berbagai instansi dan perusahaan
terus diupayakan untuk meningkatkan sumber daya manusia secara sistematis dan terarah agar
mampu mengimbangi sekaligus menguasai sains dan teknologi pada masa kini dan masa yang
akan datang.

Sistem pengolahan data dan informasi menggunakan sistem komputerisasi sudah dikenal
sejak dahulu, namun belum mencapai pada tahap yang benar-benar maju dan berkembang. Saat
ini, sistem komputerisasi lebih dikenal dengan sistem informasi yang secara umum dipergunakan
sebagai sistem pengolahan data dalam sebuah proses bisnis usaha. Data-data yang diperoleh dari
proses bisnis kemudian diolah oleh sistem sehingga nilai data output yang didapatkan dari sistem
tersebut akan lebih terlihat manfaatnya dan dapat dijadikan salah satu bahan pengambil keputusan.
Sistem informasi sendiri dapat dibangun dengan bermacam-macam basis teknologi perangkat
lunak, mulai dari berbasis desktop, web, sampai mobile. Dengan adanya sistem informasi, data
yang diolah menjadi valid dan benar dibanding menggunakan tenaga manual serta dapat
meningkatkan kinerja karyawan maupun pegawai dalam mengolah data.

Klinik adalah salah satu fasilitas pelayanan kesehatan yang menyelenggarakan pelayanan
kesehatan, menyediakan pelayanan medis dasar atau spesialistis, yang diselenggarakan oleh lebih
dari satu jenis tenaga kesehatan dan dipimpin oleh seorang tenaga medis. Klinik sebagai salah satu
fasilitas pelayanan masyarakat di bidang kesehatan sangat penting keberadaannya dan semakin
berkembang. Hal ini menuntut klinik harus dikelola dengan manajemen yang baik.

Klinik Samita merupakan sebuah klinik pribadi yang dibuat lulusan dokter di kota
Bandung. Dengan menggantikan penggunaan kertas dengan sebuah sistem informasi untuk
3

mengolah proses bisnis mereka dalam menjalankan klinik umum dan gigi. Mereka sadar dengan
penerapan sistem informasi pada klinik mereka akan menghemat penggunaan sumber daya,
pengolahan yang cepat, praktis dan dapat dipantau secara aktual. Adapun proses bisnis yang
dilakukan dalam menjalankan klinik memuat pendaftaran pasien, pencatatan pemeriksaan pasien,
pembayaran pasien, pendataan obat, tindakan, akun petugas, dokter hingga pelaporan pendapatan.
Maka diperlukan sebuah sistem informasi klinik untuk menyediakan pengelolaan data pasien, data
obat, akun petugas, akun dokter, transaksi pendaftaran, transaksi pemeriksaan, transaksi
pembayaran hingga pelaporan pendapatan.

Sistem Informasi Klinik Gigi dan Umum Samita ini adalah suatu sistem yang dibuat untuk
menyediakan kebutuhan informasi dan memenuhi proses bisnis pada klinik Samita. Sistem
informasi klinik gigi dan umum Samita ini terdiri dari fitur pendataan pasien, dokter, petugas,
pemilik, obat, tindakan, pencatatan data pendaftaran, pemeriksaan, pembayaran hingga pelaporan
pendapatan setiap bulan maupun tahun. Diharapkan dengan penggunaan sistem informasi klinik
dan gigi Samita ini akan mempermudah, mengefisiensi kinerja klinik dan membantu dalam proses
bisnis klinik Samita.

1.2 Rumusan masalah


Dengan penjelasan latar belakang yang telah dikemukakan, dapat diperoleh rumusan
masalah bagaimana membangun Sistem Informasi Klinik Gigi dan Umum Samita ini dapat
membantu proses bisnis yang berjalan pada klinik mulai dari pendaftaran pasien baru maupun
pasien lama, pendataan pasien, pencatatan data pemeriksaan pasien, mengolah pembayaran,
menyimpan dan menampilkan informasi yang berguna untuk menunjang operasional serta kinerja
klinik ini.

1.3 Batasan masalah


Adapun batasan-batasan masalah yang membatasi cakupan penelitian, yaitu:
1. Sistem informasi ini berbasis web.
2. Sistem informasi ini tidak benar-benar menghapus beberapa data dengan alasan data
berhubungan satu dengan lainnya serta sebagai riwayat penting sehingga sistem ini
menggunakan teknik penyembunyian data yang ingin dianggap terhapus.
3. Sistem informasi ini tidak merekam jejak stok persediaan obat dari waktu ke waktu.
Sehingga sistem hanya memungkinkan melakukan pengubahan stok obat.
4

4. Sistem informasi ini tidak memiliki kemampuan menyediakan akun yang dapat berjalan
pada semua peran dengan alasan mengganggu proses penyimpanan data.
5. Sistem informasi ini dibuat untuk menyesuaikan kebutuhan di Klinik Samita.
6. Sistem informasi ini tidak mengelola penggajian karyawan dan dokter.
7. Sistem informasi ini tidak menggunakan CID untuk melakukan diagnosa penyakit sebab
belum mendukungnya klinik untuk menangani BPJS.

1.4 Tujuan
Tujuan penelitian ini adalah membangun sistem informasi klinik gigi dan umum di Klinik
Samita yang sesuai dengan kebutuhan pengguna agar membantu pencatatan, penyimpanan dan
pengelolaan data klinik dalam menangani pasien serta menyediakan informasi yang berguna untuk
menunjang kinerja klinik.

1.5 Manfaat
Adapun manfaat dari penelitian proyek sistem informasi ini adalah :
1. Meningkatkan proses pencarian untuk mengetahui informasi data pasien, riwayat pasien,
data obat dan tindakan.
2. Menampilkan informasi data pendapatan per waktu tertentu, statistik kunjungan pasien dan
pelaporan pendapatan/penjualan obat dan tindakan.
3. Menampilkan informasi yang dapat mendukung keputusan pemilik klinik dalam mengolah
persediaan dan harga untuk tindakan serta obat.

1.6 Metodologi Penelitian


Metodologi penelitian ini dibagi menjadi tiga bagian utama yaitu wawancara, studi
literatur, dan pengembangan sistem.

1. Wawancara
Wawancara dilakukan dengan pemilik dari Klinik Umum dan Gigi Samita yang akan
menerapkan sistem informasi ini pada kliniknya. Wawancara dilakukan dengan tujuan untuk
memenuhi setiap kebutuhan sistem yang diinginkan oleh pemilik. Sekaligus untuk memperolah
data dan informasi yang berkaitan dengan proses bisnis dari Sistem Informasi Klinik Gigi dan
Umum Samita yang akan kami buat.

2. Studi Literatur
5

Studi literatur dilakukan dengan mengumpulkan data dan mempelajari informasi yang
berkaitan dengan sistem informasi Klinik Umum dan Gigi Samita, termasuk dalam perancangan,
analisa, dan juga implementasi sistem.

3. Perancangan dan Pengembangan Sistem


Metode ini dilakukan dalam penerapan dari tujuan penelitian, yang terdiri dari beberapa
tahap, yaitu:
a. Analisis Sistem
Analisis sistem berisi tentang permasalahan yang ada dalam proses bisnis pada Klinik Gigi
dan Umum Samita. Hasil dari analisis ini kemudian akan menjadi kebutuhan data, kebutuhan
fungsional dan juga kebutuhan non fungsional sistem yang akan dibangun.

b. Perancangan Sistem
Perancangan Sistem berisi tentang sistem informasi Klinik Gigi dan Umum yang akan
dibangun dan dirancang berdasarkan analisis yang telah dilakukan sebelumnya. Perancangan
sistem meliputi perancangan basis data, perancangan menu, dan perancangan halaman muka.

c. Implementasi Sistem
Implementasi sistem berisi tentang sistem yang akan diimplementasikan dari perancangan
yang telah dilakukan. Sistem Informasi Klinik Gigi dan Umum Samita menggunakan bahasa
pemrograman Hypertext Prepocessor (PHP), Framework Codeigniter, basis data MySQL dan
server Apache.

d. Pengujian Sistem
Pengujian sistem berisi tentang pembahasan dan pengujian sistem informasi Klinik Gigi
dan Umum Samita yang telah dibangun. Tujuannya adalah untuk mengetahui kesesuaian sistem
yang akan dibuat dengan perancangan yang disusun sebelumnya, serta untuk memastikan bahwa
sistem dapat digunakan dan bekerja dengan baik.

e. Dokumentasi dan Pelaporan


Dokumentasi dan Pelaporan berisi tentang dokumentasi dan pelaporan yang merupakan
bahasan tentang pembuatan laporan dan dokumentasi dari Sistem Informasi Klinik Gigi dan
Umum Samita yang telah dibangun.
6

1.7 Sistematika Penulisan


Sistematika penulisan laporan proyek sistem informasi ini merupakan gambaran secara
menyeluruh mengenai masalah yang akan dibahas dalam penelitian maupun bentuk penulisan
laporan ini, yaitu terdiri dari:

BAB I PENDAHULUAN
Membahas tentang latar belakang masalah, rumusan masalah, batasan masalah, tujuan
penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA


Membahas tentang tinjauan secara umum sebagai dasar penelitian. Pada bagian ini
menjelaskan informasi-informasi yang digunakan sebagai bahan acuan penulis maupun tim. Dapat
berupa penelitian-penelitian yang dilakukan sebelumnya.

BAB III LANDASAN TEORI


Menjelaskan mengenai teori-teori yang menjadi landasan dalam tahap analisis dan
perancangan sistem. Selain itu, pada bab ini juga berisi penjelasan tentang komponen-komponen
yang digunakan dalam membangun sistem.

BAB IV ANALISIS DAN PERANCANGAN SISTEM


Membahas tentang analisis dan perancangan sistem pada penelitian ini. Bagian analisis
meliputi analisis permasalahan, kebutuhan fungsional dan non fungsional sistem, Gambaran
umum sistem, analisis kebutuhan data, analisis basis data, dan analisis model sistem.
Perancangan sistem meliputi perancangan struktur menu sistem dan perancangan antarmuka
pengguna yang digunakan dalam penelitian ini.

BAB V IMPLEMENTASI SISTEM


Membahas tentang implementasi sistem beserta hal-hal yang mendukung dalam
pembangunan sistem. Pada bab ini menjelaskan beberapa kode program yang digunakan dalam
membangun sistem dan menampilkan tampilan antarmuka yang digunakan dalam sistem.

BAB VI PENGUJIAN DAN PEMBAHASAN SISTEM


7

Membahas tentang pengujian dan pembahasan sistem yang menguji kesesuaian sistem
dengan perancangan yang sudah dibuat. Pengujian sistem bertujuan untuk mengevaluasi kinerja
sistem, mengurangi adanya kesalahan serta memastikan sistem dapat digunakan dengan baik.

BAB VII KESIMPULAN DAN SARAN


Memuat tentang kesimpulan dari proyek sistem informasi ini dan saran terhadap seluruh
kegiatan proyek yang telah dilakukan. Saran diperlukan sebagai upaya pengembangan sistem
selanjutnya.

DAFTAR PUSTAKA
Memuat tentang sumber referensi yang digunakan dalam penyusunan laporan proyek
sistem informasi.

LAMPIRAN
8

BAB II
TINJAUAN PUSTAKA

Penelitian mengenai sistem informasi yang berkaitan dengan masalah klinik telah banyak
dilakukan oleh peneliti sebelumnya. Dari setiap penelitian didapat informasi yang berbeda-beda,
oleh sebab itu dalam menyelesaikan permasalahan yang terjadi dilakukan metode-metode yang
berbeda pula.

Dalam pengerjaan proyek sistem informasi ini, kami melakukan tinjauan pada beberapa
sumber pustaka yang berkaitan dengan Sistem Informasi Klinik yang kami gunakan sebagai
referensi. Berikut uraian singkat beberapa studi pustaka tentang penelitian dan pengembangan
sistem informasi klinik.

Zulaikha Siti (2013) mengembangkan sistem informasi klinik Istiazah berbasis web.
Sistem ini digunakan untuk menangani proses pengolahan data pasien ,data hasil pemeriksaan
atau rekam medis, data obat, data tindakan dan pelayanan medis, data pembayaran, data diagnosa
serta pembuatan laporan dalam bentuk tabel. Sistem informasi klinik ini dibangun dengan
menggunakan web server Apache, basis data MySQL, dan bahasa pemrograman Framework PHP
Laravel.

Santika Mutiara (2014) membangun sistem informasi klinik Fachri Oemran. Sistem ini
dibangun menggunakan Apache sebagai web server, basis data MySQL ,dan bahasa pemrograman
Codeigniter. Sistem informasi ini menangani proses pengolahan data yang berupa data pasien, data
pemeriksaan atau rekam medis, data obat, diagnosa dan detail diagnosa, data pembayaran, data
gudang obat serta pembuatan laporan dalam bentuk tabel.

Hafis (2015) membuat sistem informasi klinik sehat berbasis web yang dapat mengelola
data pasien, data obat, data pembayaran serta data laporan. Sistem ini dilengkapi dengan fitur
cetak data laporan pembayaran. Sistem ini dikembangkan dengan menggunakan bahasa
pemograman PHP, MySQL dan framework Codeigniter.

Muslicah (2017) merancang sistem informasi klinik Podo Moro berbasis web. Sistem
informasi klinik ini diharapkan dapat mempermudah pelayanan dan penyebaran informasi di
Klinik Podo Moro serta membantu masyarakat dalam pembelian produk dan pemesanan tempat
9

tanpa harus datang ke klinik tersebut. Sistem ini dibuat menggunakan Framework Codeigniter,
bahasa pemrograman PHP dan basis data MySQL.

Pada penelitian ini penulis mengambil judul Sistem Informasi Klinik Gigi dan Umum
Samita. Sistem ini dibuat untuk menyediakan kebutuhan informasi dan memenuhi proses bisnis
pada klinik Samita. Sistem Informasi 9Klinik 9Gigi dan Umum Samita ini terdiri dari fitur
pendataan pasien, dokter, petugas, pemilik, obat, tindakan, pencatatan data pendaftaran,
pemeriksaan, pembayaran hingga pelaporan pendapatan setiap bulan maupun tahun. Dalam
pengembangan sistem ini menggunakan Framework Codeigniter, bahasa pemrograman PHP serta
basis data MySQL.

Untuk melihat perbandingan yang mendasar dari penelitian sebelumnya dengan penelitian
yang dilakukan saat ini dapat dilihat pada Tabel 2.1.

2. Table 2
Tabel 2.1 Perbandingan tinjauan pustaka penelitian

No. Nama Penulis Kriteria


Judul Penelitian Development Tools Basis Data Kelebihan Kekurangan
1 Siti Sistem Informasi Framework Laravel MySQL Proses pembayaran, Belum ada pengelolaan
Zulaika(2013) Klinik Istiazah pengelolaan obat, stok obat data gudang obat
dan juga pemeriksaan tanpa
input manual
2 Mutiara Sistem Informasi Framework MySQL Pengelolaan data, Belum ada pengeloaan
Santika(2014) Klinik Fachri Codeigniter pendaftaran, proses laporan dengan grafik.
Oerman pemeriksaan, pembayaran,
pengelolaan data gudang
obat, dan data pengelolaan
petugas .
3 Hafis(2015) Sistem Informasi Framework MySQL Dapat mengelola data pasien, Keamanan sistem
Klinik Sehat di Codeigniter data obat, data laporan dan belum ada, tampilan
Sleman data pembayaran sistem masih belum
responsif.
4 Muslicah(2017 Sistem Informasi Framework MySQL Pengelolaan data pasien, Tidak dapat
Klinik Podo Codeigniter dokter, petugas, pemilik, menampilkan rekam
Moro obat, tindakan, pencatatan medis, tidak ada

10
data pendaftaran, pengelolaan data obat,
pemeriksaan, pembayaran tidak dapat cetak kartu
hingga pelaporan pendapatan pasien.dapat cetak
setiap bulan maupun tahun, kartu pasien.
menampilkan
5 Sasmito dkk. Sistem Informasi Framework MySQL Pengelolaan data pasien, Pasien tidak dapat
Klinik Samita Codeigniter dokter, petugas, pemilik, memesan pendaftaran
obat, tindakan, pencatatan terlebih dahulu
data pendaftaran,
pemeriksaan, pembayaran
hingga pelaporan pendapatan
setiap bulan maupun tahun,
menampilkan grafik dari
diagnosa penjualan obat,
statistik kunjungan dan juga
statistik tindakan serta dapat
cetak kartu pasien.
3. m

11
12

BAB III
LANDASAN TEORI

3.1 Konsep Dasar Sistem


Suatu sistem pada dasarnya adalah sekelompok unsur yang berhubungan satu sama lain
untuk mencapai suatu tujuan tertentu. Secara sederhana, suatu sistem dapat diartikan sebagai
suatu kumpulan atau himpunan dari unsur, komponen, atau variabel yang terorganisir, saling
berinteraksi, saling tergantung satu sama lain, dan terpadu. Menurut Warren D. Stallings, Jr
dkk. (Jogiyanto, 2005) suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur yang
saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk
menyelesaikan suatu sasaran tertentu.

Sistem terdiri dari sekelompok elemen yang terdiri dari orang, prosedur, perangkat
keras, perangkat lunak, basis data, jaringan komputer dan komunikasi data. Semua elemen ini
merupakan komponen fisik dari sebuah sistem.

3.1.1 Elemen Sistem


Sistem terdiri dari sekelompok elemen yang terdiri dari orang, prosedur, perangkat
keras, perangkat lunak, basis data, jaringan komputer dan komunikasi data. Semua elemen ini
merupakan komponen fisik dari sebuah sistem.

3.1.2 Karakteristik Sistem


Suatu sistem mempunyai karakteristik atau sifat-sifat yang tertentu, yaitu mempunyai
komponen-komponen (components), batas sistem (boundary), lingkungan luar sistem
(environments), penghubung (interface), masukan (input), keluaran (output), pengolah
(process) dan sasaran (objective) atau tujuan (goal) (Jogiyanto, 2005).

1. Memiliki komponen
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, bekerja sama
membentuk satu kesatuan. Komponen-komponen sistem dapat berupa suatu sub sistem atau
bagian-bagian dari sistem.

2. Lingkungan luar sistem (Enviroment)


Lingkungan luar sistem adalah segala sesuatu di luar sistem yang dapat mempengaruhi
sistem tersebut. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga bersifat
merugikan sistem. Lingkungan luar yang menguntungkan merupakan energi dari sistem dan
dengan demikian harus tetap dijaga dan dipelihara. Sedangkan lingkungan luar yang
13

merugikan harus ditahan dan dikendalikan agar tidak mengganggu kelangsungan hidup dari
sistem.

3. Penghubung sistem (Interface)


Penghubung sistem merupakan media perantara antar sub sistem. Melalui penghubung
ini memungkinkan sumber daya mengalir dari satu sub sistem ke sub sistem lainnya. Output
dari satu sub sistem akan menjadi input untuk sub sistem yang lainnya. Dengan penghubung
tersebut, satu sub sistem dapat berinteraksi dengan sub sistem yang lainnya membentuk satu
kesatuan.

4. Masukan sistem (Input)


Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukan dapat
berupa maintenance input dan sinyal input. Maintenance input adalah energi yang dimasukkan
supaya sistem tersebut dapat beroperasi. Sinyal input adalah energi yang diproses untuk
mendapatkan keluaran.

5. Keluaran sistem (Output)


Keluaran sistem adalah hasil dari energi yang diolah dan diklasifikasikan menjadi
keluaran yang berguna. Keluaran merupakan masukan untuk subsistem yang lain.

6. Pengelolaan sistem (Process)


Suatu sistem memiliki bagian pengolahan sistem atau sistem tersebut memiliki
kemampuan untuk mengolah sistemnya sendiri. Suatu sistem produksi akan mengolah
masukan berupa bahan baku dan bahan-bahan yang lain menjadi keluaran berupa barang jadi.

7. Tujuan dan sasaran sistem


Suatu sistem mempunyai tujuan atau sasaran. Jika suatu sistem tidak mempunyai
sasaran, maka operasi sistem tidak memiliki kegunaan. Sasaran dari sistem sangat menentukan
masukan yang dibutuhkan sistem dan keluaran yang akan dihasilkan sistem. Suatu sistem
dikatakan berhasil bila mengenai sasaran atau tujuannya.

3.1.3 Klasifikasi Sistem


Sistem dapat diklasifikasikan dari beberapa sudut pandang, diantaranya adalah sebagai
berikut. Sistem diklasifikasikan sebagai sistem abstrak (abstrack sistem) dan sistem fisik
(physical sistem) (Jogiyanto, 2005). Sistem abstrak adalah sistem yang berupa pemikiran atau
ide-ide yang tidak nampak secara fisik. Sistem fisik adalah sistem yang ada secara fisik. Sistem
diklasifikasikan sebagai sistem alamiah (natural sistem) dan sistem buatan manusia (human
14

made sistem). Sistem alamiah adalah sistem yang terjadi melalui proses alam, tidak dibuat oleh
manusia. Sistem buatan manusia adalah sistem yang dirancang oleh manusia. Sistem buatan
manusia melibatkan interaksi antara manusia dengan mesin disebut dengan human-machine
sistem, karena menyangkut penggunaan komputer yang berinteraksi dengan manusia. Sistem
diklasifikasikan sebagai sistem tertentu (deterministic sistem) dan sistem tak tentu
(probabilistic sistem). Sistem tertentu merupakan sistem yang beroperasi dengan tingkah laku
yang sudah dapat diprediksi, interaksi diantara bagian-bagiannya dapat dideteksi dengan pasti
sehingga keluaran dari sistem dapat diprediksi. Sistem tak tentu merupakan sistem yang
kondisimasa depannya tidak dapat diprediksi karena mengandung unsur probabilitas. Sistem
diklasifikasikan sebagai sistem tertutup (closed sistem) dan sistem terbuka (open sistem).
Sistem tertutup merupakan sistem yang tidak berhubungan dan tidak terpengaruh dengan
lingkungan luarnya. Sistem ini bekerja secara otomatis tanpa adanya turut campur tangan dari
pihak luar. Sistem terbuka adalah sistem yang berhubungan dan terpengaruh dengan
lingkungan luarnya. Sistem ini menerima masukan dan menghasilkan keluaran untuk
lingkungan atau subsist lainnya

Tujuan pengujian umumnya adalah verifikasi atau validasi perangkat lunak (Kossiakof
dkk, 2002). Verifikasi adalah proses untuk menentukan perangkat lunak menerapkan
fungsionalitas dan fitur dengan benar dan akurat. Sedangkan validasi adalah proses penentuan
kesesuaian perangkat lunak dengan kepuasan dan kebutuhan pengguna. Pengujian sistem
menurut Kossiakof, dkk. (2004) memiliki beberapa jenis yang berbeda, yaitu uji path,
interfaces, abstractions, changes, uji kegagalan, uji integrasi, uji regresi dan uji validasi.
Pengujian validasi sistem memiliki beberapa jenis pengujian yang berbeda, yaitu pengujian
whitebox, pengujian blackbox, serta pengujian alpha dan pengujian beta

1. Pengujian Whitebox
Pengujian sistem dengan metode whitebox adalah metode yang menguji logika internal
program. Metode ini berfokus pada struktur kontrol program untuk memastikan semua
pernyataan dalam program telah dilaksanakan setidaknya sekali selama pengujian dan
memastikan bahwa semua logika internal telah dieksekusi. Pengujian ini menggunakan grafik
program atau matriks untuk mendapatkan himpunan linear pada tes sistem yang bersifat
independent. Metode ini memiliki berbagai derajat kompleksitas (Pressman, 2001).

2. Pengujian Blackbox
Pengujian sistem dengan metode blackbox dirancang untuk menguji validasi
persyaratan fungsional tanpa memperhatikan kerja internal sebuah program. Pengujian ini
15

menggunakan uji kasus dengan memberi masukan (input) dan menerima (output) pada program
(Pressman, 2001). Pengujian dengan metode blackbox memiliki beberapa jenis, yaitu
pengujian array orthogonal, pengujian sistematis, pengujian khusus, pengujian antarmuka,
pengujian dokumentasi dan bantuan fasilitas dan pengujian sistem real time. Pengujian
blackbox termasuk dalam pengujian validasi sistem. Metode ini menguji fungsi perpindahan
keluaran tanpa asumsi kerja internal perangkat lunak. Dengan demikian, pengujian blackbox
adalah pelengkap pengujian whitebox (Kossiakof dkk, 2002).

3. Pengujian Alpha dan Beta


Pengujian alpha dan beta digunakan untuk perangkat lunak yang dibangun dengan
banyak pengguna. Pengujian alpha biasanya dilakukan pada lingkungan yang terkendali. Pada
pengujian ini, pengembang mencatat kesalahan dan masalah yang ada pada perangkat lunak.
Pengujian beta digunakan untuk perangkat lunak dengan asumsi tanpa kehadiran pengembang.
Pengguna melakukan uji perangkat lunak kemudian mencatat kesalahan dan masalah
operasional pada perangkat lunak. Catatan kesalahan perangkat lunak ini dilaporkan kepada
pengembang. Keuntungan pengujian ini bagi pengguna adalah kesempatan pengguna
berkenalan dengan perangkat lunak yang canggih. Sedangkan keuntungan untuk pengembang
adalah menghindari risiko perangkat lunak yang memiliki kekurangan sehingga menurunkan
nilai jual (Kossiakof dkk, 2002).

3.2 Konsep Dasar Informasi


Secara umum informasi dapat didefinisikan sebagai hasil dari pengolahan data dalam
bentuk yang lebih berguna dan lebih berarti bagi penerimanya. Informasi menggambarkan
suatu kejadian yang nyata yang digunakan untuk pengambilan keputusan. Informasi adalah
data yang telah diklasifikasikan atau diolah yang digunakan dalam proses pengambilan
keputusan. Informasi memiliki kegunaan untuk mengurangi ketidakpastian dalam proses
pengambilan keputusan tentang suatu keadaan (Sutabri, 2004). Dalam prosesnya, suatu
informasi tidak hanya digunakan oleh satu pihak saja melainkan oleh beberapa pihak.

3.2.1 Siklus Informasi


Data merupakan bentuk yang masih mentah sehingga perlu diolah lebih lanjut. Data diolah
untuk menghasilkan informasi menggunakan suatu Model proses tertentu. Data yang diolah
melalui suatu Model menjadi informasi, penerima kemudian menerima informasi tersebut,
membuat suatu keputusan dan melakukan suatu tindakan, yang berarti menghasilkan suatu
tindakan yang lain yang akan membuat sejumlah data kembali. Data tersebut akan ditangkap
sebagai masukan, untuk kemudian diproses kembali lewat suatu Model dan seterusnya membentuk
16

suatu siklus tertentu. Siklus ini disebut sebagai siklus informasi (information cycle) dan siklus
pengolahan data (data processing cycle) (John & Grudnitski, 1986).

3.2.2 Kualitas Informasi


Kualitas dari suatu informasi (quality of information) tergantung dari hal, yaitu
informasi harus akurat (accurate), tepat pada waktunya (timeliness) dan relevan (relevance).
Kualitas dari sebuah informasi dapat digambarkan dengan bentuk bangunan yang ditunjang
oleh tiga buah pilar (John & Grudnitski, 1986).

1. Akurat
Akurat dapat diartikan informasi harus bebas dari kesalahan-kesalahan dan tidak bisa
atau menyesatkan. Akurat juga berarti informasi yang disampaikan harus jelas mencerminkan
maksud yang ingin disampaikan. Informasi harus akurat karena dari sumber informasi sampai
ke penerima kemungkinan informasi mengalami gangguan (noise), yang mengakibatkan
informasi menjadi berubah atau informasi tersebut menjadi rusak.

2. Tepat pada waktunya


Tepat pada waktunya berarti informasi yang datang pada penerima tidak boleh
terlambat. Informasi yang sudah usang akan mengakibatkan informasi menjadi tidak bernilai
lagi. Karena informasi merupakan landasan di dalam pengambilan keputusan. Keterlambatan
dalam pengambilan keputusan akan berdampak fatal untuk organisasi.

3. Relevan
Relevan berarti informasi tersebut mempunyai manfaat untuk pemakainya. Relevansi
suatu informasi bagi masing-masing individu tentunya berbeda oleh karean itu relevansi
bersifat relatif (relative). Sebagai contoh informasi mengenai kerusakan mesin produksi
kepada seorang akuntan perusahaan adalah kurang relevan dan akan menjadi lebih relevan
apabila diitujukan kepada ahli teknik perusahaan.

3.2.3 Nilai Informasi


Nilai dari informasi (value of information) ditentukan oleh dua hal, yaitu manfaat dan
biaya untuk mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif
dibandingkan dengan biaya mendapatkannya. Akan tetapi perlu diperhatikan bahwa informasi
yang digunakan pada suatu sistem informasi umumnya digunakan untuk beberapa kegunaan.
Sehingga tidak memungkinkan dan sulit untuk menghubungkan suatu bagian informasi pada
suatu masalah yang tertentu dengan biaya untuk memperolehnya, karena sebagian besar
17

informasi dinikmati tidak hanya oleh satu pihak didalam suatu perusahaan saja. Informasi dapat
dijelaskan dalam sebuah siklus, yaitu siklus informasi seperti terlihat pada Gambar 3.1.

Gambar 3.1 Siklus Sistem Informasi (Jogiyanto, 2005)


3.3 Konsep Dasar Sistem Informasi
Sistem Informasi merupakan sistem yang mempunyai kemampuan untuk
mengumpulkan informasi dari semua sumber dan menggunakan berbagai media untuk
menampilkan informasi (Mcleod, 2001). Sistem informasi adalah kombinasi antara prosedur
kerja, informasi, orang dan teknologi informasi yang diorganisasikan untuk mencapai tujuan
dalam sebuah organisasi (Alter, 1992). Berdasarkan dua pengertian tersebut, dapat disimpulkan
bahwa sistem informasi adalah komponen atau kelompok elemen yang mempunyai
kemampuan untuk mengumpulkan informasi dari berbagai sumber untuk mencapai suatu
tujuan tertentu. Sistem informasi terdiri dari beberapa komponen (Turban, 2006). Diantaranya
adalah sebagai berikut :

1. Hardware (Perangkat Keras)


Perangkat keras bagi suatu sistem informasi terdiri atas komputer (pusat pengolah, unit
masukan/keluaran), peralatan penyimpanan data, dan terminal masukan/keluaran. Contoh
perangkat keras adalah Monitor, CPU, Keyboard, Mouse, dll.

2. Software ( Perangkat Lunak )


Perangkat lunak dapat dibagi dalam 3 jenis utama :
a) Sistem perangkat lunak umum, seperti sistem pengoperasian dan sistem manajemen
data yang memungkinkan pengoperasian sistem komputer.
b) Aplikasi perangkat lunak umum, seperti Model analisis dan keputusan.
18

c) Aplikasi perangkat lunak yang terdiri atas program yang secara spesifik dibuat untuk
setiap aplikasi.
3. Basis data
Basis data adalah sekumpulan file, tabel relasi dan lain-lain yang saling berkaitan dan
menyimpan data serta berbagai hubungan diantaranya.

4. Jaringan
Jaringan adalah informasi dan data bergerak melalui kabel-kabel atau tanpa kabel
sehingga memungkinkan pengguna jaringan komputer dapat saling bertukar dokumen dan
data.

5. Prosedur
Prosedur adalah serangkaian instruksi mengenai bagaimana menggabungkan beberapa
komponen diatas agar dapat memproses informasi dan menciptakan sistem yang diinginkan.

6. Orang
Orang adalah individu yang bekerja, berinteraksi atau menggunakan sistem informasi
secara langsung.

3.3.1 Komponen Sistem Informasi


Sistem informasi terdiri dari komponen-komponen yang disebut blok bangunan atau
building block (Jogiyanto, 2005). Terdiri dari komponen input, komponen Model, komponen
output, komponen teknologi, komponen hardware, komponen software, komponen basis data,
dan komponen kontrol. Semua komponen tersebut saling berinteraksi satu dengan yang lain
membentuk suatu kesatuan untuk mencapai sasaran.

1. Komponen Input
Input mewakili data yang masuk kedalam sistem informasi. Input disini termasuk
metode dan media untuk menangkap data yang dimasukkan, yang dapat berupa dokumen dasar.

2. Komponen Model
Komponen ini terdiri dari kombinasi prosedur, logika, dan Model matematik yang akan
memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah
ditentukan untuk menghasilkan keluaran yang diinginkan.

3. Komponen Output
Hasil dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas
dan dokumentasi yang berguna untuk semua pemakai sistem.
19

4. Komponen Teknologi
Teknologi merupakan “tool box” dari sebuah sistem informasi. Teknologi digunakan
untuk menerima input, menjalankan Model, menyimpan, dan mengakses data, menghasilkan,
dan mengirimkan keluaran, dan membantu pengendalian dari sistem secara keseluruhan.

5. Komponen Hardware
Hardware atau perangkat keras sebagai suatu media penting bagi sistem informasi.
Berfungsi sebagai tempat untuk menampung basis data atau lebih mudah dikatakan sebagai
sumber data dan informasi untuk memperlancar dan mempermudah kerja sistem informasi.

6. Komponen Software
Software atau perangkat lunak digunakan sebagai tempat mengolah, menampilkan dan
memanipulasi data yang diperoleh dari hardware untuk menciptakan sebuah informasi.

7. Komponen Basis Data


Kumpulan data yang tersimpan dan saling berhubungan satu sama lain yang diolah
perangkat lunak serta disimpan oleh perangkat keras.

8. Komponen Kontrol
Banyak hal yang akan merusak sebuah sistem informasi seperti bencana alam,
kegagalan kegagalan sistem itu sendiri, ketidakefisienan, dan lain lain. Beberapa pengendalian
perlu dirancang agar meyakinkan bahwa hal hal yang akan merusak sistem dapat dicegah.

3.3.2 Klasifikasi Sistem Informasi


Sistem informasi dalam organisasi mencatat/merekam file yang permanen dan
mengelola data untuk menghasilkan informasi berguna yang mendukung sebuah organisasi.
Sistem informasi datang dalam sebuah bentuk dan ukuran, yang diklasifikasikan berdasarkan
fungsi yang dimiliki. Bentuk klasifikasi sistem informasi berupa (Supriyanto, 2005) :
1. Sistem pemrosesan transaksi, yaitu memproses transaksi bisnis seperti pemesanan,
pembayaran, reservasi, dan sebagainya.
2. Sistem informasi manajemen, yaitu menghasilkan informasi untuk kebutuhan manajer.
3. Sistem pendukung keputusan, yaitu digunakan untuk membantu pengambilan keputusan
atau mengidentifikasi atau memilih antara pilihan dan keputusan.
4. Sistem informasi eksekutif, yaitu untuk kebutuhan eksekutif dalam merencanakan bisnis
dan menilai performa terhadap rancangan tersebut.
20

5. Sistem pakar, meng-capture dan menghasilkan kembali pengetahuan pemecahan


masalah ahli atau pengambilan keputusan kemudian menyimulasikan “pemikiran” ahli
tersebut.
6. Sistem komunikasi dan kolaborasi, yaitu untuk meningkatkan komunikasi dan
kolaborasi antara orang-orang dalam dan luar organisasi.
7. Sistem otomatisasi kantor, yaitu membantu karyawan untuk membuat dan berbagi
dokumen yang mendukung aktivitas kantor sehari-hari.
3.4 Basis Data
Basis data merupakan sekumpulan dari data yang saling terkait satu sama lain secara
logis dan menggambarkan hubungan antara suatu tabel dengan tabel lainnya yang dirancang
untuk memenuhi kebutuhan informasi dari suatu organisasi (Connolly & Carolyn, 2002).

Beberapa alasan penggunaan basis data ke dalam tiga hal (Date, 2000). Padat, artinya
tidak perlu membuat arsip kertas dalam ukuran yang besar. Kemudian basis data memiliki
kecepatan, artinya sistem dapat mendapatkan kembali dan mengubah data jauh lebih cepat dari
pada yang dapat dilakukan oleh manusia. Aktual, artinya informasi yang terbaru selalu akurat
dan tersedia setiap waktu pada saat yang dibutuhkan. Terdapat delapan keuntungan
menggunakan basis data, yaitu mengurangi redudansi, konsisten, data dapat dibagikan, sesuai
dengan bentuk standar,membatasi keamanan, integritas terjaga, keperluan yang bertentangan
dapat diseimbangkan dan tersedianya dukungan untuk transaksi (Date, 2000).

3.4.1 Konsep Basis Data


Basis Data adalah kumpulan dari data-data yang saling terhubung dan tersimpan secara
bersama-sama pada suatu media. Disimpan dengan cara-cara tertentu sehingga mudah untuk
digunakan atau ditampilkan kembali (Sutanta, 2004). James Martin dalam bukunya
mengatakan ada 2 kelompok yang menjadi tujuan dari dibentuknya sebuah basis data yaitu
tujuan primer dan tujuan sekunder (Sutanta, 2004). Tujuan primer adalah tujuan utama yang
ingin dicapai dalam perancangan dan pengembangan basis data sedangkan tujuan sekunder
adalah tujuan tambahan yang dimaksud untuk mencapai tujuan primer.

3.4.2 Perancangan Basis Data


Dalam proses perancangan basis data, awalnya dibuat berdasarkan Diagram Alir Data
atau DAD. DAD adalah salah satu alat yang paling mudah dan cepat dalam menggambarkan
sistem. Terdapat beberapa macam diagram yang digunakan dalam merancang sebuah sistem
yang sedang dianalisa atau sistem yang sedang dibuat diantaranya Diagram Konteks dan
Diagram Alir Data.
21

Diagram Konteks digunakan untuk menjelaskan prosedur secara garis besar dan
mendetail berdasarkan entitas dan atau prosesnya. Diagram Konteks juga memberikan
pandangan sistem yang bersifat perangkat lunak secara keseluruhan baik input maupun output
yang dihasilkan oleh sistem. Sebuah DAD adalah representasi grafis dari aliran data melalui
sistem informasi dan dapat juga digunakan untuk visualisasi dari pengolahan data. Sebuah
DAD tidak memberikan informasi operasi secara berurutan dan paralel, oleh karena itu sangat
berbeda dari suatu flowchart.

3.4.3 Model Basis Data


Model basis data menyatakan hubungan antar rekaman yang tersimpan dalam basis data
(Kadir, 1999). Berikut ini adalah macam-macam Model basis data:

1. Model hirarkis
Model hirarkis biasa disebut Model pohon. Model ini menggunakan pola hubungan
orang tua–anak (parent-child). Simpul yang terhubung ke simpul pada level dibawahnya
disebut orang tua (parent). Setiap orang tua bisa memiliki lebih dari satu anak, tetapi anak
hanya memiliki satu orang tua. Simpul yang dibawah oleh simpul orang tua disebut anak
(child). Simpul orang tua yang tidak memiliki orang tua disebut akar (root). Simpul yang tidak
memiliki anak disebut daun. Adapun hubungan antara orang tua dan anak disebut cabang.

2. Model jaringan (Network Model)


Model ini menyerupai Model hirarkis, dengan perbedaan suatu simpul anak bisa
memiliki lebih dari satu orang tua.

3. Model keterhubungan entitas (Entity-Relationship Model)


Model ini berisi komponen-komponen himpunan entitas dan relasi yang masing-
masing dilengkapi dengan atribut-atribut, dan dapat digambarkan dengan menggunakan
Diagram Entity-Relationship (Diagram E-R). Perancangan basis data seringkali diasosiasikan
pembuatan Model Entity-Relationship (Model E-R), dimana kelompok-kelompok data dan
relasi antar kelompok tersebut diwujudkan dalam bentuk diagram. Diagram E-R merupakan
suatu Model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek
dasar data yang mempunyai hubungan atau relasi antara objek-objek tersebut. Diagram E-R
digunakan untuk memodelkan struktur data dan hubungan antara data. Diagram E-R
menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antar
data. Terdapat beberapa simbol yang digunakan dalam pembuatan sebuah Diagram E-R
ditunjukan pada Tabel 3.1.
22

Tabel 3.1 Simbol diagram ERD

4. Model relasional
Model ini menggunakan sekumpulan tabel berdimensi dua (yang disebut relasi atau
tabel). Berikut Model data relasional menurut (Kadir, 1999) : Struktur data, data-data
diorganisasikan dalam bentuk tabel dengan barisbaris dan kolom-kolom. Manipulasi data,
operasi yang sangat berdaya-guna (menggunakan Structured Query Languange) digunakan
untuk memanipulasi data-data yang disimpan direlasi-relasi. Integritas data, fasilitas-fasilitas
untuk menspesifikasi aturan bisnis yang memelihara integritas data saat mereka dimanipulasi.

3.4.4 Relasi
Relasi adalah tabel data dua dimensi, dengan ketentuan-ketentuan sebagai berikut
(Kadir,1999) :
1. Setiap baris data (record) memiliki beberapa atribut (fields)
23

2. Setiap tipe record membentuk tabel dan relasi


3. Derajat relasi suatu tabel dinyatakan dengan jumlah atribut yang terdapat di dalam tabel
yang bersangkutan. Suatu tabel yang hanya memiliki satu atribut disebut memiliki
relasi binary dan suatu tabel yang memiliki dua atribut disebut tabel dengan relasi
binary, sedangkan tabel dengan sejumlah n-atribut disebut tabel relasin-nya.

3.4.5 Derajat Relasi (Kardinalitas)


Kardinalitas merupakan spesifikasi dari sejumlah peristiwa dari satu objek yang dapat
dihubungkan ke sejumlah peristiwa dari objek yang lain. Kardinalitas menunjukkan jumlah
maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Entitas
merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang
lain (Pressman, 2001). Kardinalitas dapat terjadi antara dua himpunan entitas (Pressman,
2001), berupa:
1. Satu ke satu (one to one), terjadi apabila entitas himpunan pertama berelasi hanya
dengan satu entitas di himpunan kedua dan sebaliknya.
2. Satu ke banyak (one to many), terjadi apabila entitas himpunan pertama berelasi dengan
lebih dari satu entitas di himpunan kedua, tetapi entitas di himpunan kedua berelasi
hanya satu entitas di himpunan pertama.
3. Banyak ke satu (many to one), terjadi apabila entitas himpunan pertama berelasi hanya
dengan satu entitas di himpunan kedua, tetapi entitas di himpunan kedua berelasi
dengan lebih dari satu entitas di himpunan pertama.
4. Banyak ke banyak (many to many), terjadi apabila entitas himpunan pertama berelasi
dengan lebih dari satu entitas di himpunan kedua dan sebaliknya.

3.4.6 Kunci
Ada beberapa kunci yang dapat diterapkan pada tabel dalam Model basis data relasional
(Kadir, 1999), yaitu:
1. Superkey, satu atau lebih atribut yang dapat membedakan setiap baris data dalam sebuah
tabel secara unik.
2. Candidate-key, kumpulan atribut minimal yang dapat membedakan setiap baris data
sebuah tabel secara unik.
3. Primary-key, kunci yang diambil dari beberapa candidate-key yang unik.
4. Foreign-key, kunci tamu atau kunci asing dari suatu tabel dimana kunci ini juga terdapat
pada tabel lain sebagai primary-key.
24

3.4.7 Query
Query adalah bahasa yang dipergunakan untuk melakukan proses permintaan yang
diberikan oleh user atau pengguna untuk mengambil informasi yang terdapat pada basis data
dengan memberikan suatu kriteria tertentu untuk penyaringan data. Secara umum query terbagi
menjadi 3 komponen, yaitu :

1. Data Definion Language (DDL)


DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan
objek-objek yang diperlukan dalam basis data. DDL yang sering digunakan adalah create yang
digunakan untuk membuat objek baru, alter yang digunakan untuk mengubah objek yang sudah
ada, use digunakan untuk menggunakan objek tersebut, dan drop yang digunakan untuk
menghapus objek tersebut. DDL digunakan untuk pembuatan sebuah aplikasi basis data.

2. Data Manipulation Language (DML)


DML digunakan untuk memanipulasi data yang sudah ada dalam tabel.DDL yang
digunakan secara umum yaitu:
a) Select : Untuk menampilkan data yang sudah ada.
b) Insert : Untuk memasukkan data yang baru.
c) Update : Untuk mengubah data yang sudah ada.
d) Delete : Untuk menghapus data yang sudah ada.
e) Data Control Language (DCL)
DCL digunakan untuk pemberian otoritas, konfirmasi penyimpanan basis data,
mengubah perubahan dan menghapus otoritas yang telah diberikan. Namun, tidak semua basis
data dapat melakukan pengotrolan data seperti pembuatan otoritas.

3. UML (Unified Modeling Language)


UML (Unified Modeling Language) adalah bahasa peModelan untuk sistem atau
perangkat lunak yang berparadigma berorientasi objek (Nugroho, 2006). PeModelan
(Modeling) sesungguhnya digunakan untuk penyederhanaan permasalahan-permasalahan yang
kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami. UML berorientasi
objek menerapkan banyak level abstraksi, tidak bergantung proses pengembangan, tidak
bergantung bahasa dan teknologi. Pemaduan beberapa notasi di beragam metodologi usaha
bersama dari banyak pihak, di dukung oleh kakas- kakas yang di integrasikan lewat XML..
25

3.5 Diagram Use Case


Diagram use case menggambarkan fungsionalitas yang diharapkan dari sebuah sistem.
Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Use case
merepresentasikan interaksi antara aktor dengan sistem. Use case menggambarkan pekerjaan
tertentu, misalnya login ke sistem, membuat daftar belanja, dan sebagainya. Aktor adalah
sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan
pekerjaan-pekerjaan tertentu. Diagram use case dapat sangat membantu ketika sedang
menyusun analisis kebutuhan sebuah sistem, mengkomunikasikan rancangan dengan client,
dan merancang test case untuk semua fitur yang ada pada sistem. Use case dapat memasukkan
(include) fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum
diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-
include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use
case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar
fungsionalitas yang sejenis.

Use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri.
Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu
merupakan spesialisasi dari yang lain. Terdapat beberapa simbol yang digunakan dalam
pembuatan sebuah diagram use case ditunjukan pada Gambar 3.2.

Gambar 3.2 Simbol-simbol Use case


3.7 Internet
Internet (inter-network) adalah istilah untuk sekumpulan jaringan komputer yang
mengembangkan berbagai situs. Internet menyediakan akses layanan telekomunikasi dan
sumber daya informasi untuk seluruh pengguna di dunia (Ramadhani, 2003). Layanan Internet
meliputi komunikasi langsung melalui email, chatting, diskusi menggunakan mailing list,
26

sumber daya informasi yang terdistribusi melalui situs web, remote login, kegiatan bertukar
file dan dokumen menggunakan telnet maupun FTP (file transfer protocol).

Jaringan yang membentuk Internet bekerja berdasarkan suatu set protokol standar yang
digunakan untuk menghubungkan jaringan komputer dan menyediakan alamat jaringan
(Ramadhani, 2003). Protokol digunakan untuk mengatur format data yang diizinkan melalui
standar komunikasi dan lintas pesan. Protokol berjalan diberbagai jenis komputer dan platform
serta bekerja dengan domain dan alamat Internet protokol yang biasa disebut dengan IP.

3.6 Web
World wide web atau yang lebih sering disebut dengan web merupakan aplikasi Internet
yang paling popular. Web adalah sebuah sistem dimana terdapat informasi berupa teks,
Gambar, suara atau multimedia yang tersimpan dalam web server dan diterjemahkan dalam
bentuk hypertext. Web dapat diakses menggunakan web browser (Ramadhani, 2003).

3.6.1 Web Browser


Web browser adalah perangkat lunak dari sisi client. Web browser membaca halaman-
halaman yang tersimpan dalam web server melalui protokol yang disebut dengan HTTP
(Hypertext Transfer Protocol) (Ramadhani, 2003). Dengan memasukkan alamat web pada web
browser, maka penggun dapat mendapatkan informasi dengan mudah. Saat ini ada beberapa
jenis web browser, diantaranya adalah Microsoft Internet Explorer, Google Chrome, Mozilla
Firefox, Opera dan Safari.

3.6.2 Web Server


Web server adalah alat yang menerima permintaan dari client kemudian merespon
kembali dengan halaman hypertext (Pearson Higher Education, 1999). Tujuan utama web
server adalah menyediakan dokumen web untuk client. Web server memungkinkan dokumen-
dokumen web dihasilkan dengan cepat dan tidak perlu disimpan dalam disk pada komputer
client. Web server menggunakan protokol HTTP dan web browser sehingga client bisa
mengaksesnya dengan mudah.

3.7 Software Framework


Software framework adalah sekumpulan kode program yang merupakan sebuah
landasan dan bersifat universal yang digunakan oleh para programmer untuk membangun
sebuah aplikasi. Software framework merupakan sebuah struktur konseptual dasar yang
digunakan untuk memecahkan sebuah permasalahan atau isu-isu kompleks (Daqiqil, 2011).
Keuntungan menggunakan Software framework (Daqiqil, 2011), diantaranya :
27

1. Menghemat waktu pengembangan karena software framework telah menyediakan


library dan struktur sehingga hanya fokus kepada bisnis yang akan dikerjakan.
2. Rouse of Code, dengan menggunakan software framework maka pekerjaan yang dibuat
akan memiliki struktur yang baru sehingga dapat diterapkan pada proyek-proyek
lainnya.
3. Bantuan Komunitas, terdapat banyak komunitas pengguna software framework yang
siap membantu bila ada kesulitan dalam pengerjaan proyek.
4. Kumpulan best practice, sebuah framework merupakan kumpulan best practice yang
sudah teruji sehingga dapat meningkatkan kualitas kode yang akan digunakan.

3.8 Konsep MVC (Model, View, Controler)


MVC adalah konsep dasar yang harus diketahui sebelum menggunakan sebuah
software framework. MVC adalah sebuah pattern / teknik pemograman yang memisahkan
antara desain, data dan proses (Daqiqil, 2011). Adapun komponen-komponen MVC,
diantaranya:

1. Model
Di dalam Model terdapat class dan fungsi untuk mengambil, melakukan update, dan
menghapus data yang digunakan dalam pembuatan sebuah website. Sebuah aplikasi website
biasanya menggunakan basis data dalam menyimpan data, maka pada bagian Model biasanya
akan berhubungan dengan perintah-perintah query SQL.

2. View
View berhubungann dengan segala sesuatu yang akan ditampilkan kepengguna. View
berisi data-data berupa HTML, CSS, dan Javascript. Bagian ini hanya menampilkan data data
hasil dari Model dan controller.

3. Controller
Controller merupakan bagian penghubung antara view dan Model. Terdapat class dan
fungsi yang memproses permintaa dari view ke dalam struktur data yang ada pada Model.
Tugas Controller adalah menyediakan variabel data yang akan ditampilkan di view, memanggil
Model untuk mengakses basis data, menyediakan penanganan untuk error/kesalahan,
mengerjakan proses logika dan melakukan validasi/cek terhadap input. Konsep MVC dapat
dilihat di Gambar 3.3.
28

Gambar 3.3 Konsep MVC


3.9 Bahasa Pemrograman
Bahasa pemrograman adalah perangkat lunak atau software yang dapat digunakan
dalam proses pembuatan program yang melalui beberapa tahapan-tahapan penyelesaian
masalah (Indrajani, 2007). Bahasa pemrograman desktop salah satunya adalah yaitu Visual
Basic (VB), C++ dan C sharp. Sedangkan pemrograman web dibagi 3 yaitu PHP, ASP dan
HTML. Dan untuk pemrograman mobile adalah J2ME.

3.9.1 HTML (Hyper Text Markup Language)


HTML merupakan bahasa markup yang digunakan untuk membuat halaman web dan
menampilkan berbagai informasi di dalam sebuah browser (Karim, 2012). HTML memiliki
struktur dasar, adapun struktur dasar dari HTML dapat dilihat pada Gambar 3.4.

Gambar 3.4 Struktur dasar HTML


Bahasa pemrograman web terus mengalami perkembangan. Versi yang terbaru adalah
HTML5. Dalam HTML5 terdapat kelas-kelas di dalam web sehingga aplikasi yang dibuat
menjadi terlihat lebih nyata (Kessin, 2012). HTML5 didukung dengan javascript, API browser,
dan AJAX sehingga memudahkan dalam membuat aplikasi. HTML5 membuat aplikasi web
menjadi lebih interaktif pada browser dari sisi pengguna dengan adanya fitur-fitur multimedia
dan grafis
29

3.9.2 PHP (Hypertext Preprocessor)


PHP merupakan salah satu bahasa pemograman untuk web yang bekerja dari sisi server.
Hampir semua website menggunakan bahasa pemograman PHP dan sangat populer karena
menawarkan kemudahan dalam mengembangkan aplikasi Internet, terutama dengan dukungan
luar biasa keberbagai basis data server (Karim, 2012) Keunggulan bahasa pemograman PHP
adalah :
1 Cepat, karena disisipkan diantara tag HTML maka proses pembuatannya bisa
dilakukan dengan cepat dan mudah.
2 Mudah digunakan, kode program yang dimiliki oleh Bahasa pemograman PHP sangat
sederhana sehingga mudah dipahami dan digunakan.
3 Serba guna, dapat dijalankan di semua sistem operasi.
4 Dukungan teknis yang luas.
5 Aman, selama website di desain dengan benar, pengguna tidak akan melihat kode PHP
yang dibuat.
6 Bisa dimodifikasi sesuai dengan kebutuhan
Struktur PHP dapt dilihat pada Gambar 3.5

<?php
.........
?>

Gambar 3.5 Struktur dasar PHP


3.9.3 CSS (Cascading Style Sheet)
CSS merupakan style yang digunakan untuk mengatur tampilan dari halaman web.
Dengan menggunakan CSS, maka akan menghasilkan tampilan web yang indah dan menarik
jauh lebih mudah dan ringkas dibandingkan atribut ditiap tag html. Selain itu bisa membuat
tampilan web yang dinamis dan fleksibel baik tampilan di web browser ataupun ketika halaman
web tersebut dicetak. (Karim, 2012) Struktur CSS terdiri dari 2 komponen yaitu :

Selector berfungsi memberi tahu web browser bahwa pada elemen mana css akan
diterapkan. Selector dapat berupa nama tag, selector class atau selector id. Declaration
merupakan aturan css yang diterapkan yang mana terdiri dari property dan value. Contoh
syntax CSS dapat dilihat pada Gambar 3.6.
30

Gambar 3.6 Contoh syntax CSS


3.9.4 Javascript
Javascript merupakan bahasa scripting yang didesain untuk membuat halaman web
menjadi lebih interaktif. Javascript bekerja secara client-side (disisi client) sehingga javascript
bergantung kepada browser yang digunakan untuk menampilkan web yang mengandung
javascript (Karim, 2012). Terdapat contoh script javascript pada Gambar 3.7.

Gambar 3.7 Contoh scipt javascript


3.10 Perangkat Lunak Sistem
Pengembangan sistem aplikasi ini menggunakan beberapa perangkat lunak, di
antaranya bahasa pemrograman HTML5, PHP, CSS3, javascript, MySQL dan framework
CodeIgniter.

3.10.1 MySQL
MySQL adalah basis data yang paling banyak digunakan dalam pemrograman web
dengan bahasa pemrogrman PHP (Nixon, 2009). SQL pada MySQL adalah Structured Query
Language, yaitu bahasa terstruktur yang menjelaskan permitaan untuk mengakses dan
mengelola basis data. MySQL sangat scalable, yang berarti dapat berkembang sesuai aplikasi
web yang dibuat. Tujuan MySQL dibuat adalah untuk memungkinkan permintaan sederhana
dari basis data melalui perintah DDL maupun DML.
31

3.10.2 CodeIgniter
Sebuah web application framework yang bersifat open source, yang digunakan untuk
membangun aplikasi PHP dinamis. Tujuan utama pengembangan CodeIgniter adalah untuk
membantu developer untuk mengerjakan aplikasi lebih cepat daripada menulis semua code dari
awal. CodeIgniter menyediakan berbagai macam library yang dapat mempermudah dalam
pengembangan.

CodeIgniter diperkenalkan pada publik pada tanggal 28 Februari 2006. CodeIgniter


dibangun menggunakan konsep MVC (Model-View-Controller) development pattern (Basuki,
2010). Dalam CodeIgniter, browser berinteraksi melalui controller yang bertugas menerima
dan membalas semua request dari browser. Untuk data maka controller akan meminta ke
Model dan untuk bagian antarmuka akan meminta ke view. Ketika browser meminta sebuah
halaman web maka router akan mencarikan controller mana yang harus menangani request
tersebut. Setelah itu barulah controller menggunakan Model untuk mengakses data dan view
untuk menampilkan data tersebut.

3.10.3 XAMPP
XAMPP merupakan perangkat lunak yang mendukung banyak sistem operasi dan
merupakan kombinasi dari berbagai program. XAMPP merupakan singkatan dari X, yaitu
menunjukan empat sistem operasi (Windows, Linux, Mac OS dan Solaris), A yaitu
menunjukan Apache, M yaitu menunjukan MySQL, P menunjukan PHP dan P menunjukan
Perl. Fungsi dari XAMPP adalah server yang berdiri sendiri (localhost) yang terdiri atas HTTP
server, basis data MySQL dan bahasa penerjemah menggunakan PHP. XAMPP dapat diunduh
secara gratis pada situs resmi Apache.

3.10.4 Sublime Text


Sublime text merupakan editor teks yang menggunakan users interface customer toolkit
yang mengoptimalkan kecepatan. Sublime text merupakan editor teks yang canggih untuk
mengelola prosa dan kode program. Antarmuka editor ini sangat responsif dengan kinerja yang
baik. Keunggulan dari sublime text adalah memiliki beberapa fitur, yaitu go to anything, yaitu
fitur yang memungkinkan seleksi pada teks, command pallete, distraction free mode, split
editing, instant project switch, plugin API, customize anything dan memungkinkan untuk lintas
platform.
32

3.10.5 StarUML
StarUML adalah software peModelan yang mendukung UML (Unified Modeling
Language). StarUML merupakan proyek open source untuk pengembangan secara cepat,
fleksibel, extensible, featureful, dan bebas-tersedia. Tujuan dari proyek StarUML adalah untuk
membangun sebuah alat peModelan perangkat lunak dan juga platform yang menarik.

3.10.6 Dia Portabel


DIA adalah sebuah software yang bersifat free dan open source yang berfungsi untuk
membantu pembuatan dan perencanaan diagram agar lebih terstruktur. Aplikasi ini memiliki
kelebihan, salah satunya adalah dapat dijalankan di berbagai platform seperti Windows, Mac
OS dan Linux. Aplikasi ini dibuat menggunakan bahasa pemrograman C.

DIA dapat dimanfaatkan oleh para analisis untuk membuat diagram antar entitas,
diagram UML, diagram alur, diagram logic bahkan diagram networking Cisco. Ekstensi yang
tersedia dapat disimpan sebagai *.jpg, *.png, *.wmf, *.cgm, *.vdx, dsb. Selain itu, Dia juga
mendukung untuk bisa membuka dan mengolah file gambar dengan berbagai format XML.
Karena bersifat open source, dapat pula menambah bentuk atau objek baru dengan membuat
file XML sederhana berformat .SVG atau umumnya dibuat dengan Inkscape.
33

BAB IV
ANALISIS DAN PERANCANGAN SISTEM

4.1 Analisis Sistem


Pengembangan sebuah sistem informai memerlukan sebuah proses pemahaman
mengenai sistem yang akan dikembangkan. Proses pemahaman tersebut merupakan tahapan
analisis pada sebuah sistem. Tahapan analisis berfungsi untuk mengidentifikasi masalah-
masalah yang terdapat pada sistem dan juga menentukan kebutuhan dari sistem yang akan
dibangun. Berdasaran tahapan penelitian yang telah dilakukan, maka didapatkan beberapa
analisis Sistem Infomasi Klinik Gigi dan Umum Samita yang dibutuhkan , yaitu sebagai
berikut.

4.1.1. Analisis Masalah


Klinik Samita merupakan sebuah klinik pribadi yang dibuat lulusan dokter bersama
temannya di kota Bandung. Dalam menjalankan menjalankan klinik dilakukan pendaftaran
pasien, pencatatan pemeriksaan pasien, pembayaran pasien, pendataan obat, tindakan, akun
petugas, dokter hingga pelaporan pendapatan maih dengan cara manual. Dimana semua
kegiatan dilakukan tanpa sistem bantuan sistem komputer. Namun mash menggunakan sistem
pencatatan. Hal ini dapat mengakibatkan hilangnya berbagai data klinik atau rusak karna hanya
dicatat di kertas. Sehingga membutuhkan tempat atau ruang khusus untuk menyimpannya.
Dengan adanya Sistem Informasi Klinik ini diharapkan mampu mengatasi masalah-
masalah di klinik Samita tersebut dan mampu meningkatkan pelayanan klinik terhadap pasien
serta petugas yang menggunakan sistem ini dapat bekerja lebih efektif dan efisien.

4.1.2 Analisis Pengguna Sistem


Berdasarkan analisis yang telah dilakukan, entitas yang berkaitan dengan sistem
Informasi Klinik ini terdiri dari 4 komponen ,yaitu pemilik ,petugas, dokter, dan apoteker.
Pemilik, petugas, dokter dan apoteker memerlukan login untuk dapat mengakses sistem.
1. Pemilik
Entitas pemilik dapat melakukan pengolahan seluruh data yang terdapat pada sistem,
seperti pengolahan data petugas, data dokter, data pasien, data obat, data pembayaran oleh
pasien.
34

2. Petugas
Entitas petugas dapat melakukan pengolahan data pada pasien seperti pendaftaran,
antrian dan juga pembayaran.

3. Dokter
Entitas dokter dapat melakukan pengolahan data pemeriksaan, riwayat penyakit dan
juga rekam medis.

4.1.2. Analisis Kebutuhan Fungsional


Berdasarkan penjelasan permasalahan yang ada,sistem ini memiliki kebutuhan
fungsional berdasarkan dengan entitas-entitasnya, yaitu sebagai berikut:
1. Pemilik
Kemampuan sistem yang dapat diakses oleh pemilik adalah sebagai berikut:
1) Melihat daftar antrian pemeriksaan pasien, farmasi sampai pembayaran
2) Melakukan pencarian pasien berdasarkan nama, alamat dan tanggal lahir
3) Melakukan pencarian obat
4) Melihat detail data diri pasien
5) Melihat daftar dan detail pembayaran/invoice
6) Melihat daftar pemeriksaan pasien
7) Melihat daftar tindakan dan melakukan pencarian tindakan
8) Melihat detail riwayat pemeriksaan/rekam medis pasien
9) Melihat daftar obat
10) Mengubah data obat
11) Mengubah data pasien
12) Mengubah data pemeriksaan pasien
13) Mengubah data pengecekan kondisi pemeriksaan pasien
14) Mengubah data tindakan pemeriksaan pasien
15) Mengubah data resep obat hasil pemeriksaan pasien
16) Mengubah data riwayat penyakit pasien
17) Mengubah data riwayat alergi pasien
18) Mendaftarkan akun bagi pemilik, petugas, dokter dan apoteker
35

19) Menonaktifkan akun petugas, dokter dan apoteker


20) Mengubah data akun pemilik,petugas dan apoteker
21) Menambah tindakan baru
22) Menambah data obat
23) Mencetak transaksi pembayaran
24) Melihat grafik kunjungan pasien
25) Melihat laporan pendapatan,laporan penjualan obat dan tindakan pada waktu tertentu
26) Melihat dan mengubah data diri pemilik

2. Petugas
Kemampuan sistem yang dapat diakses oleh petugas adalah sebagai berikut:
1) Menambah data pasien baru yang belum terdaftar di klinik kemudian ditambahkan ke
dalam antrian pemeriksaan.
2) Mendaftarkan pasien lama yang sudah terdaftar di klinik menuju poli tujuan.
3) Melihat daftar antrian pemeriksaan pasien.
4) Melakukan pencarian pasien berdasarkan nama,alamat dan tanggal lahir.
5) Melihat detail data diri pasien.
6) Mengubah data pasien.
7) Melihat daftar antrian pembayaran.
8) Memproses antrian pembayaran.
9) Melihat daftar dan detail pembayaran/invoice.
10) Mencetak transaksi pembayaran.
11) Melihat dan mengubah data diri petugas

3. Dokter
Kemampuan sistem yang dapat diakses oleh pemilik adalah sebagai berikut:
1) Melihat daftar pasien.
2) Melihat detail data diri pasien.
3) Melihat daftar antrian pemeriksaan.
4) Memproses antrian pemerikaan pasien.
5) Menambah data pengecekan kondisi pemerikaan pasien.
6) Menambah data tindakan pemerikaan pasien.
36

7) Menambah data resep obat pemerikaan pasien.


8) Menambah data pemeriksaan pasien.
9) Menambah data riwayat penyakit pasien.
10) Menambah data riwayat alergi pasien.
11) Mengubah data pengecekan kondisi pemerikaan pasien.
12) Mengubah data tindakan pemerikaan pasien.
13) Mengubah data resep obat pemerikaan pasien.
14) Mengubah data diagnosa pemeriksaan pasien.
15) Mengubah data riwayat penyakit pasien.
16) Mengubah data riwayat alergi pasien.
17) Melihat daftar pemeriksaan terakhir
18) Melihat detail riwayat pemeriksaan pasien.
19) Menambah pemeriksaan gigi saat pemeriksaan pasien di poli gigi.
20) Mengubah pemeriksaan gigi saat pemeriksaan pasien di poli gigi.
21) Melihat dan mengubah data diri dokter

4.1.4 Analisis Kebutuhan non-fungsional


Selain kebutuhan fungsional sistem dibutuhkan juga kebutuhan non-fungsional sistem.
Kebutuhan non-fungsional merupakan kebutuhan di luar kebutuhan fungsional atau kebutuhan
pendukung sistem. Sistem informasi klinik Samita ini juga memiliki kebutuhan non-fungsional
sebgai berikut.

1 Sistem berbasis web


2 Sistem menggunakan bahasa pemograman PHP framework CodeIgniter,basis data MySQL
dan server apache.
3 Sistem berbahasa Indonesia
4 Pemilik, Petugas, Dokter tidak dapat masuk dalam sistem tanpa login terlebih dahulu
4.2 Perancangan Sistem
Perancangan sistem ini merupakan suatu gambaran sketsa sistem atau pengaturan dari
beberapa elemen yang terpisah ke dalam kesatuan yang utuh dan berfungsi. Penelitian ini
menggunakan 4 perancangan sistem diantaranya perancangan basis data, perancangan
37

proses,perancangan struktur menu,dan perancangan antarmuka pengguna. Pada perancangan


proses terdapat 2 diagram yaitu, diagram use case dan activity diagram.

4.2.1 Perancangan Basis Data


Perancangan basis data pada sistem informasi klinik Samita dibuat menggunakan Entity
Relationship Diagram (ERD) yang nantinya dapat diimplementasikan dalam pembuatan tabel-
tabel basis data. Entity Relationship Diagram (ERD) merupakan perangkat yang digunakan
untuk menggambarkan diagram yang berisi entitas maupun relasi yang ada dalam basis data
sistem tersebut. ERD pada sistem inforasi klinik Samita ini menggambarkan hubungan antar
entitas yang kemudian dapat dijadikan acuan dalam pembuatan tabel-tabel basis data. ERD
Sistem informasi klinik Samita dapat dilihat pada Gambar 4.1.

4.
38

Gambar 4.1 ERD sistem infomasi Klinik Gigi dan Umum Samita

38
39

Dari hasil ERD yang yang telah dibuat padagambar 4.1 maka dapat dirancang menjadi 19
tabel,yaitu tabel klinik, tabel jobs, tabel dokter, tabel obat, tabel odontogram, tabel pasien, tabel
pembayaran, tabel pemeriksan, tabel pendaftaran, tabel penyakit, tabel_alergi, tabel
periksa_tindakan, tabel resep, tabel riwayat_penyakit, tabel status, tabel tindakan, tabel trx_alergi,
tabel trx_status, dan juga tabel users.

1. Tabel klinik
Tabel klinik merupakan tabel yang menyimpan data admin yang melakukan update dan
create pada sistem.
Tabel 4.1 Rancangan tabel klinik

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30
Created_at Timestamp
Updated_at Timestamp
On_delete Enum(“0”,”1”)

2. Tabel jobs
Tabel jobs merupakan tabel yang menyimpan tentang jobs setiap users, dimana setiap jobs
memiliki peran dan batasan masing-masing pada sistem.

Tabel 4.2 Rancangan tabel jobs

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30
Created_at Timestamp
Update_at Timestamp

3. Tabel Obat
Tabel obat merupakan tabel yang digunakkan untuk menyimpan semua atribut yang
dimiliki oleh obat.
40

Tabel 4.3 Rancangan tabel obat

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama_generik Varchar 30
Merk Timestamp
Tanggal_kadaluarsa Date
Tanggal_beli Date
Harga_beli Integer 255
Harga_jual Varchar 255
Stok Integer 11
Golongan Enum(“0”,”1”
Keterangan Varchar 255
Created_at Timestamp
Updated_at Timestamp
Created_by Integer 255
On_delete Enum(“0”,”1”)
Update_by Integer 11

4. Tabel Dokter
Tabel dokter merupakan tabel yang digunakkan untuk menyimpan beberapa atribut yang
dimiliki oleh dokter seperti id_users, id_klinik, dan no_sip untuk transaksi kegiatan dokter. Untuk
id_user merupakan foreign key dari tabel user. Begitu pula dengan id_klinik mengambil dari tabel
klinik.
41

Tabel 4.4 Rancangan tabel dokter

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_users Integer 30
Id_klinik Integer
No_sip Varchar
Created_at Timestamp
Update_at Timestamp
On_delete Enum(“0”,”1”)

5. Tabel Odontogram
Tabel odontogram merupakan tabel yang digunakkan untuk menyimpan semua atribut dari
hasil pemeriksaan gigi pasien yang dilakukkan oleh dokter gigi. Attribut id_pemeriksaan
merupakan foreign key dari tabel pemeriksaan.

Tabel 4.5 Rancangan tabel odomtogram

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_pemeriksaan Integer 11
Kode_gigi Varchar 255
Keterangan Varchar 255
Diagnosa Varchar 255
Created_at Timestamp
Updated_at Timestamp
Is_delete Enum(“0”,”1”)

6. Tabel Pasien
Tabel pasien merupakan tabel yang digunakkan untuk menyimpan semua atribut yang
dimiliki oleh pasien terutama identitas lengkapnya. Id untuk tabel pasien ini merupakan nomor
rekam medis yang dipakai.
42

Tabel 4.6 Rancangan tabel pasien

Atribut Tipe Data Panjang Keterangan


Id Integer 11
Nama Varchar 255
Nama_lengkap Varchar 255
Tanggal_lahir Date
Tempat_lahir Varchar 255
Jenis kelamin Enum(“L”,”P”)
Alamat Varchar 255
Nomor_telepon Varchar 255
Nik Varchar 255
Created_at Timestamp
Update_at Timestamp
Created_by Integer 11
On_delete Enum(“L”,”P”)
Updated_by Integer 11

7. Tabel pembayaran
Tabel pembayaran merupakan tabel yang digunakkan untuk menyimpan semua atribut
pada saat transaksi pembayaran.

Tabel 4.7 Rancangan tabel pembayaran

Atribut Tipe Data Panjang Keterangan


Id Integer 11
Id_pendaftaran Integer 255
Uang_dibayar Integer 255
Id_petugas Integer 11
Created_at Timestamp
Update_at Timestamp

8. Tabel Penyakit
43

Tabel penyakit merupakan tabel yang digunakan untuk menyimpan jenis-jenis penyakit.

Tabel 4.8 Rancangan Table penyakit

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30

9. Tabel periksa_tindakan
Tabel periksa_tindakan merupakan tabel yang digunakkan untuk menyimpan berapa
banyak di tindakan yang diberikan oleh dokter pada saat pemeriksaan.

Tabel 4.9 Rancangan tabel periksa_tindakan

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_pemeriksaan Integer 11
Id_tindakan Integer 11
Is_delete Enum(“0”,”1”)
Created_at Timestamp
Update_at Timestamp
Keterangan Varchar 255
Jumlah Decimal

10. Tabel resep


Tabel resep merupakan tabel yang digunakkan untuk menyimpan hasil pemeriksaan yang
di lakukan oleh dokter berupa resep.
44

Tabel 4.10 Rancangan tabel resep

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_pemeriksaan Integer 11
Id_obat Integer 11
Jumlah Decimal(10,0)
Sinna Varchar 255
Ditebus Enum(‘0’,’1’)
Is_delete Enum(‘0’,’1’)
Created_at Timestamp
Update_at Timestamp

11. Tabel riwayat_penyakit


Tabel riwayat_penyakit merupakan tabel yang digunakkan untuk menyimpan penyakit
pasien pada saat permeriksaan yang di lakukan oleh dokter.

Tabel 4.11 Rancangan tabel riwayat_penyakit

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_pemeriksaan Integer 11
Id_penyakit Integer 11
Is_delete Enum(‘0’,’1’)
Created_at Timestamp
Updated_at Timestamp

12. Tabel status


Tabel status merupakan tabel yang digunakkan untuk menyimpan status pasien.
45

Tabel 4.12 Rancangan tabel status

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30
Created_at Timestamp
Updated_at Timestamp

13. Tabel Tindakan


Tabel tindakan merupakan tabel yang digunakkan untuk menyimpan semua atribut
tindakan yang dibuat oleh admin.

Tabel 4.13 Rancangan tabel tindakan

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30
Harga Integer 11
Id_klinik Integer 11
Created_at Timestamp
Updated_at Timestamp
Created_at Integer 11
On_delete Enum(‘0’,’1’)
Updated_by Integer 11

14. Tabel trx_alergi


Tabel trx_alergi merupakan tabel yang digunakkan untuk menyiimpan alergi pada saat
transaksi pemeriksaan.
46

Tabel 4.14 Rancangan tabel trx_alergi

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_alergi Integer 11
Id_pemeriksaan Integer 11
Is_delete Enum(‘0’,’1’)
Created_at Timestamp
Updated_at Timestamp

15. Tabel trx_status


Tabel trx_status merupakan tabel yang digunakkan untuk menyimpan status pasien. Untuk
id_tahap merupakan foreign key dari id pada tabel pendaftaran. id_status merupakan status yang
diambil dari tabel status. Sedangkan untuk atribut tahap merupakan enum menentukan jejak proses
status dari tahap pendaftaran, pemeriksaan atau pembayaran.

Tabel 4.15 Rancangan tabel trx_status

Atribut Tipe Data Panjang Keterangan


Id Integer 11
Id_tahap Integer 11
Enum(‘pendaftaran’,’
Tahap pemeriksaan’,
’pembayaran’)
Id_status Integer 11
Antrian_ke Integer 5
Created_at Timestamp
Update_at Timestamp

16. Tabel Alergi


Tabel alergi merupakan tabel yang digunakan untuk menyimpan alergi-alergi yang diderita
oleh pasien.
47

Tabel 4.16 Rancangan tabel trx_alergi

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Nama Varchar 30

17. Tabel pemeriksaan


Tabel pemeriksaan merupakan tabel yang digunakan untuk menyimpan hasil dari
pemeriksaan secara umum pasien yang dilakukan oleh dokter.

Tabel 4.17 Rancangan tabel pemeriksaan

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_dokter Integer 11
Denyut_nadi Integer 255
Tekanan_darah Integer 255
Suhu_badan Integer 255
Respiration_rate Integer 255
Keluhan_utama Text
Tinggi_badan Integer 255
Berat_badan Integer 255
Subjektif Text
Objektif Text
Assestment Text
Plan Text
Kel_usia Enum(‘dewasa’,’anak’)
Created_at Timestamp
Updated_at Timestamp
Id_pendaftaran Integer 11

18. Tabel Users


48

Tabel users merupakan tabel yang digunakan untuk menyimpan semua atribut yang
dimiliki oleh setiap users yang terdapat pada sistem.

Tabel 4.18 Rancangan tabel users

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_job Integer 11
Nama Varchar 50
Nama_lengkap Varchar 255
Tanggal_lahir Date
Tempat_lahir Varchar 50
No_telepon Varchar 20
Email Varchar 255
Alamat Text
Nik Varchar 50
Username Varchar 255
Password Varchar 30
Created_at Timestamp
Updated_at Timestamp
Created_by Integer 11
Updated_by Integer 11
On_delete Enum(‘0,’1’)

19. Tabel pendaftaran


Tabel pendaftaran merupakan tabel yang digunakan untuk menyimpan pasien yang
melakukan pendaftaran.
49

Tabel 4.19 Rancangan tabel pendaftaran

Atribut Tipe Data Panjang Keterangan


Id Integer 11 Primary key
Id_pasien Integer 255
Id_klinik Integer 11
Created_at Timestamp
Updated_at Timestamp
Id_petugas Integer 255

Tabel-tabel yang telah dirancang diatas memiliki relasi antar tabel yang menjelaskan atau
menggambarkan hubungan antar objek di dunia nyata.Relasi antar tabel tersebut berfungsi untuk
mengatur operasi-operasi basis data yang dibutuhkan pada saat sistem digunakan. Hubungan relasi
antar tabel dalam sistem informasi Klinik Gigi dan Umum Samita dapat dilihat pada Gambar 4.2.
Gambar 4.2 Hubungan relasi antar tabel dalam sistem informasi Klinik Gigi dan Umum Samita

50
51

4.2.2 Perancangan Proses


Perancangan proses menjelaskan gambaran proses-proses atau alur berjalannya sistem
informasi Klinik Gigi dan Umum Samita yang akan dibangun.Perancangan proses dalam
pembangunan sistem informasi Klinik Gigi dan Umum Samita dibuat menggunakan Unified
Modelling Language (UML) yang dapat digambarkan dengan diagram use case, dan activity
diagram.

1. Diagram use case


Diagram use case digunakan untuk menggambarkan scenario sistem dari sisi pengguna
yang akan menggunakan sistem tersebut. Masing-masing users memiliki kegiatan dan interaksi
yang berbeda-beda sesuai dengan posisinya. Berdasarkan hasil analisis kebutuhan users, diagram
3 aktor, yaitu pemilik, petugas dan dokter. Diagram use case dapat dilihat pada Gambar 4.3.
52

Gambar 4.3 Diagram use case sistem infomasi Klinik Gigi dan Umum Samita
2. DAD (Diagam Alir Data)
Diagram Alir Data digunakan untuk menggambarkan arus dari data sistem, yang
penggunaannya sangat membantu untuk memahami sistem secara logika, dan tersruktur. Diagram
konteks menunjukan kesuruhan proses pada sebuah sistem informasi, serta menggambarkan
hubungan antara sistem dengan kesatuan luar yang terdapat pada sebuah sistem informasi.

DAD Level Konteks


53

Gambar 4.4 DAD Level Konteks


DAD Level 1
Pada Diagram Alir Data (DAD) Level 1 ini menjabarkan setiap proses yang terdapat pada
diagram konteks pada Gambar 4.4. Pada level ini terdapat proses manajemen akun,manajemen
obat,proses tindakan,proses pemveriksaan. DAD level 1 dijabarkan pada gambar 4.5
Gambar 4.5 DAD Level 1

54
DAD Level 2
DAD level 2 Proses Manajemen akun (Proses 1.0)
Proses ini merupakan proses pendaftaran akun untuk pemilik, petugas dan dokter yang akan dilakukan oleh pemilik. Dimana
akun tersebut nantinya akan digunakan untuk login ke sistem.Pada proses ini akun pemilik dan petugas akan disimpan dalam database
user, sedangkan untuk dokter akan disimpan dalam database dokter sendiri. Proses manajement akun ini dapat dilihat pada Gambar 4.6.

Gambar 4.6 DAD Level 2 Proses manajemen akun (proses 1.0)

55
DAD level 2 Proses Pemeriksaan (Proses 4.0)
Proses pemeriksaan merupakan proses yang dilakukan oleh dokter. Proses ini meliputi pemeriksaan tindakan,input riwayat
penyakit, input alergi, trx_alergi, input penyakit, Odontogram, dan input resep obat. Proses pemeriksaan dapat dilihat pada Gambar 4.7.

Gambar 4.7 DAD Level 2 Proses pemeriksaan (proses 4.0)


DAD level 2 Proses Pendaftaran (Proses 5.0)

56
Proses ini merupakan proses pendaftaran data diri bagi pasien baru dan pasien lama. Bagi pasien lama, maka dilakukan pencarian
data diri dari sistem ketika saat ini melakukan antrian pemeriksaan.Proses pendaftaran dapat dilihat pada Gambar 4.8.

Gambar 4.8 DAD Level 2 Proses pendaftaran (proses 5.0)

57
58

4.2.3 Perancangan Struktur Menu


Sistem informasi Klinik Gigi dan Umum Samita memiliki 3 jenis pengguna,yaitu
pemilik, petugas, dan dokter. Masing-masing memiliki kebutuhan akan proses yang berdeda-
beda.

Untuk rancangan struktur menu pemilik, pmilik dapat mengakses menu tentang akun,
dashboard, antrian, pemeriksaan, manajemen, data pasien, invoice, dan laporan pendapatan.
Untuk lebih jelasnya dapat dilihat pada Gambar 4.9.

Gambar 4.9 Rancangan struktur menu pemilik


Untuk petugas rangcangan struktur menu yang dapat diakses adalah menu tentang akun,
menu dashboard, menu antrian, menu daftar pasien, dan menu invoice. Untuk lebih jelasnya
dapat dilihat pada Gambar 4.10
59

Gambar 4.10 Rancangan struktur menu petugas


Pada rancangan menu dokter, dokter dapat mengakses menu tentang akun, menu
dashboard, menu antrian pemeriksaan, menu daftar pasien dan juga menu daftar obat. Untuk
lebih jelasnya dapat dilihat pada Gambar 4.11

Gambar 4.11 Rancangan struktur menu dokter


4.2.4 Perancangan Antarmuka Pengguna
Perancangan antarmuka sangat diperlukan dalam pembuatan sebuah sistem informasi.
Antar muka merupakan media yang akan menghubungkan interaksi antara sistem dengan
pengguna. Rancangan antarmuka akan menunjukkan bagaimana komunikasi antara pengguna
sistem dengan komputer. Komunikasi tersebut dapat berupa aktivitas memasukkan data ke
sistem, menampilkan informasi atau meminta keluaran dari sistem.
60

1. Perancangan antar muka sistem masuk / login


Pada halaman masuk yang akan diisi oleh pemilik, petugas dan dokter, terdapat kolom
usersname, password dan button login.Perancangan antar muka sistem masuk . login dapat
dilihat pada Gambar 4.12.

Gambar 4.12 Rancangan antarmuka masuk / login


2. Perancangan antarmuka dashboard
Halaman ini merupakan halaman pertama kali muncul saat pemilik masuk ke sistem.
Setiap halaman dashboard user memiliki tampilan dan menu – menu serta icon yang berbeda.
Halaman dashboard pemilik dapat dilihat pada Gambar 4.13, halaman dashboard petugas dapat
dilihat pada Gambar 4.14 serta halaman dashboard dokter dapat dilihat pada Gambar 4.15.
61

Gambar 4.13 Rancangan antarmuka dashboard pemilik

Gambar 4.14 Rancangan antarmuka dashboard petugas


62

Gambar 4.15 Rancangan antarmuka dashboard dokter


3. Perancangan antarmuka profil
Pada halaman profil ini akan muncul data dari pemilik, petugas, dan juga dokter.
Dibawah profil user terdapat button ubah untuk melakukan perubahan pada data diri dari user.
Rancangan antarmuka halaman profil pemilik dapat dilihat pada Gambar 4.16. Untuk
rancangan antarmuka halaman profil petugas pada Gambar 4.17,rancangan antarmuka halaman
profil dokter pada Gambar 4.18, rancangan antarmuka ubah data pemilik pada Gambar 4.19,
rancangan antarmuka ubah data petugas pada Gambar 4.20, serta rancangan antarmuka ubah
data dokter pada Gambar 4.21
63

Gambar 4.16 Rancangan antarmuka halaman profil pemilik

Gambar 4.17 Rancangan antarmuka halaman profil petugas


64

Gambar 4.18 Rancangan antarmuka halaman profil dokter

Gambar 4.19 Rancangan antarmuka ubah data pemilik


65

Gambar 4.20 Rancangan antarmuka ubah data petugas

Gambar 4.21 Rancangan antarmuka ubah data dokter


66

4. Perancangan antarmuka antrian


a. Perancangan antarmuka antrian pendaftaran
Halaman ini dapat diakses oleh pemilik dan juga petugas. Pada halaman ini terdapat list
dari antrian pendaftaran pasien yang akan melakuakan pemeriksaan. Berikut perancangan
antarmuka antrian pendaftaran yang dapat diakses pemilik pada Gambar 4.22 dan juga
perancangan antarmuka antrian pendaftaran yang dapat diakses oleh petugas pada Gambar 4.23.

Gambar 4.22 Rancangan antarmuka antrian pendaftaran diakses oleh pemilik


67

Gambar 4.23 Rancangan antarmuka antrian pendaftaran diakses oleh petugas


b. Perancangan antarmuka antrian pembayaran
Sama halnya dengan antrian pendaftaran, antrain pembayaran juga dapat diakses oleh
pemilik dan juga petugas. Berikut perancangan antarmuka antrian pembayaran yang dapat
diakses pemilik pada Gambar 4.24 dan juga perancangan antarmuka antrian pembayaran yang
dapat diakses oleh petugas pada Gambar 4.25.
68

Gambar 4.24 Rancangan antarmuka antrian pembayaran diakses oleh pemilik

Gambar 4.25 Rancangan antarmuka antrian pembayaran diakses oleh petugas


69

5. Perancangan antarmuka pemeriksaan


a. Perancangan antarmuka Rekam medis
Halaman ini dapat diakses oleh pemilik dan juga dokter . Halaman ini berisikan rekam
medis terakhir dari pasien. Berikut perancangan antarmuka rekam medis yang dapat diakses
pemilik pada Gambar 4.26 dan juga perancangan antarmuka rekam medis yang dapat diakses
oleh dokter pada Gambar 4.27.

Gambar 4.26 Rancangan antarmuka rekam medis terakhir diakses oleh pemilik
70

Gambar 4.27 Rancangan antarmuka rekam medis terakhir diakses oleh dokter
b. Perancangan antarmuka Catatan terakhir dokter
Halaman ini dapat diakses oleh pemilik dan juga dokter . Halaman ini berisikan catatan
terakhir dokter. Berikut perancangan antarmuka catatan terakhir dokter yang dapat diakses
pemilik pada Gambar 4.28 dan juga perancangan antarmuka catatan terakhir dokter yang dapat
diakses oleh dokter pada Gambar 4.29.
71

Gambar 4.28 Rancangan antarmuka catatn pemeriksaan terakhir diakses oleh pemilik

Gambar 4.29 Rancangan antarmuka catatan pemeriksaan terakhir diakses oleh dokter
72

6. Perancangan antarmuka Manajemen Obat


Halaman ini di kelola oleh pemilik.Disini pemilik dapat melakukan penambahan obat,
ubah dan juga hapus pada obat.Untuk lebih jelasnya dpat dilihat pada Gambar 4.30.

Gambar 4.30 Rancangan antarmuka manajemen obat


7. Perancangan antarmuka tambah Obat
Halaman ini diakses dari halaman manajemen obat saat di klik tambah obat. Pada
halaman ini pemilik dapat melakukan data obat baru. Untuk lebih jelasnya dapat dilihat pada
Gambar 4.31.
73

Gambar 4.31 Rancangan antarmuka tambah obat


8. Perancangan antarmuka Manajemen Tindakan
Halaman ini di kelola oleh pemilik. Disini pemilik dapat melakukan penambahan
tindakan, ubah dan juga hapus pada tindakan. Untuk lebih jelasnya dpat dilihat pada Gambar
4.32.

Gambar 4.32 Rancangan antarmuka manajemen tindakan


74

9. Perancangan antarmuka tambah tindakan


Halaman ini diakses dari halaman manajemen tindakan saat di klik tambah tindakan.
Pada halaman ini pemilik dapat melakukan data tindakan baru. Untuk lebih jelasnya dapat
dilihat pada Gambar 4.33.

Gambar 4.33 Rancangan antarmuka tambah tindakan


10. Perancangan antarmuka manajemen akun pengguna
Halaman ini di kelola oleh pemilik. Disini pemilik dapat melakukan penambahan akun
yaitu pemilik, petugas maupun dokter, ubah dan juga hapus pada user. Untuk lebih jelasnya
dapat dilihat pada Gambar 4.34.
75

Gambar 4.34 Rancangan antarmuka manajemen akun


11. Perancangan antarmuka tambah User
Halaman ini diakses dari halaman manajemen user saat di klik tambah user. Pada
halaman ini pemilik dapat melakukan tambah data user baru. Untuk lebih jelasnya dapat dilihat
pada Gambar 4.35.

Gambar 4.35 Rancangan antarmuka tambah user


76

12. Perancangan antarmuka daftar pasien


Halaman ini dapat diakses oleh pemilik dan juga petugas. Pada halaman ini terdapat
daftar seluruh pasien yang terdaftar di klinik. Daftar pasien yang di akses oleh petugas dapat
dilihat pada Gamabr 4.36.

Gambar 4.36 Rancangan antarmuka daftar pasien


13. Perancangan antarmuka lihat detail Pasien
Halaman ini berisi data detail dari pasien yang terdiri dari profil pasien, data diri pasien,
statistic pemeriksaan pasien sampai riwayat pasien. Untuk lebih jelasnya dapat dilihat pada
Gambar 4.37.
77

Gambar 4.37 Rancangan antarmuka lihat detail pasien


14. Perancangan antarmuka Daftar Obat
Halaman ini berisi data daftar obat yang tersedia di klinik. Dapat dilihat pada Gambar
4.38.
78

Gambar 4.38 Rancangan antarmuka Daftar Obat


15. Perancangan antarmuka pendaftaran pasien
Halaman ini akan muncul saat di klik daftar pasien lama pada dashboard petugas. Pada
halaman ini petugas dapat melakukan pendaftaran pasien lama dengan melakukan pencarian
pada pasien.Untuk lebih jelasnya dapat dilihat pada Gambar 4.39.
79

Gambar 4.39 Rancangan antarmuka Daftar Pasien lama


16. Perancangan antarmuka pendaftaran pasien baru
Halaman ini akan muncul saat di klik daftar pasien baru pada dashboard petugas. Pada
halaman ini petugas dapat melakukan pendaftaran bagi pasien baru dengan mengisi data diri
dari pasian yang natinya akan tersimpan di database klinik. Pada pendaftaran pasien baru ini,
perugas juga akan melakukan pemilihan klinik yang akan dituju oleh pasien. Untuk lebih
jelasnya dapat dilihat pada Gambar 4.40.

Gambar 4.40 Rancangan antarmuka Daftar Pasien baru


80

17. Perancangan antarmuka Tahap pemeriksaan pasien


Dalam pemeriksaan pasien ada 2 jenis, yaitu pemeriksaan pada klinik umum dan juga
pemeriksaan pada klinik gigi. Pemeriksaan tersebut memiliki tahapan –tahapan.

a. Perancangan antarmuka tahapan pemeriksaan pada klinik umum


Dalam pemeriksaan ini, terdiri dari 4 tahap. Mulai dari pemeriksaan umum, analisa
pemeriksaan, resep obat dan juga tindakan. Untuk lebih jelasnya dilihat pada Gambar 4.41,
Gambar 4.42, Gambar 4.43, Gambar 4.44.

Gambar 4.41 Rancangan antarmuka tahap pemeriksaan umum pada klinik umum
81

Gambar 4.42 Rancangan antarmuka tahap analisa pemeriksaan pada klinik umum
82

Gambar 4.43 Rancangan antarmuka pemeriksaan tahap 3 (Resep Obat) pada klinik
umum
83

Gambar 4.44 Rancangan antarmuka pemeriksaan tahap 4 (tindakan) pada klinik umum
b. Perancangan antarmuka tahapan pemeriksaan pada klinik gigi
Pemeriksaan pada klinik gigi memiliki 5 tahap yaitu pemeriksaan 1, pemeriksaan 2,
pemeriksaan gigi, resep obat dan juga tindakan. Untuk lebih jelasnya dilihat pada Gambar 4.44,
Gambar 4.45, Gambar 4.46, Gambar 4.47 dan juga Gambar 4.48.
84

Gambar 4.45 Rancangan antarmuka pemeriksaan tahap 1 pada klinik Gigi


85

Gambar 4.46 Rancangan antarmuka pemeriksaan tahap 2 pada klinik Gigi


86

Gambar 4.47 Rancangan antarmuka pemeriksaan tahap 3 pada klinik Gigi


87

Gambar 4.48 Rancangan antarmuka pemeriksaan tahap 4 (Resep Obat) pada klinik
Gigi
88

Gambar 4.49 Rancangan antarmuka pemeriksaan tahap 5 (Tindakan) pada klinik Gigi
89

BAB V
IMPLEMENTASI SISTEM

Tahapan implementasi sistem merupakan tahap penerapan dari tahapan analisis dan
perancangan sistem. Hasil analisis dan rancangan sistem diterjemahkan ke dalam bahasa
pemograman dan beberapa perangkat lunak untuk membangun sistem pada lingkungan yang
sebenarnya. Tahapan implementasi pada penelitian ini meliputi implementasi perangkat lunak
pembangun, implementasi perangkat keras pembangun, implementasi basis data, dan
implementasi antarmuka.

5.1 Spesifikasi Sistem


Dalam perancangan dan implementasi Sistem Informasi Klinik ini menggunakan
spesifikasi software dan hardware sebagai berikut :
1. Codeigniter sebagai framework PHP
2. PHP 7 sebagai server side scripting.
3. HTML, CSS dan Javascript sebagai client side scripting.
4. MariaDB 10 sebagai server basis data.
5. Mozilla Firefox sebagai web browser.
5.2 Implementasi Basis Data
Implementasi basis data merupakan implementasi hasil analisis rancangan basis data.
Implementasi basis data meliputi rancangan ERD, rancangan struktur tabel dan rancangan relasi
tabel pada tahapan sebelumnya.

Penelitian ini menggunakan sebuah basis data yang bernama klinik. Basis data klinik
mempunyai 19 tabel yang terdiri dari atribut dan relasi di dalamnya. Adapun implementasi
pembuatan basis data sistem infomasi Klinik Gigi dan Umum meliputi sebagai berikut:
1. Tabel alergi
Tabel alergi berfungsi untuk menyimpan data alergi-alergi yang mungkin di derita
pasien. Tabel ini memiliki primary key yaitu key. Implementasinya dapat dilihat pada Gambar
5.1 berikut :

5.
90

Gambar 5.1 Implementasi Tabel Alergi


2. Tabel dokter
Tabel dokter berfungsi untuk menyimpan data dokter. Tabel ini memiliki primary key
yaitu id. Memiliki foreign key yaitu id_users yang berelasi dengan primary key tabel users dan
id_klinik yang berelasi dengan primary key tabel klinik. Implementasinya dapat dilihat pada
Gambar 5.2 berikut :

Gambar 5.2 Implementasi Tabel Dokter


3. Tabel jobs
Tabel jobs berfungsi untuk menyimpan data jobs yang ada pada sistem informasi klinik.
Tabel ini memiliki primary key yaitu id. Implementasinya dapat dilihat pada Gambar 5.3
berikut:

Gambar 5.3 Implementasi Tabel Jobs


4. Tabel klinik
Tabel klinik berfungsi untuk menyimpan data jenis klinik yang ada pada sistem
informasi klinik. Tabel ini memiliki primary key yaitu id. Implementasinya dapat dilihat pada
Gambar 5.4 berikut:
91

Gambar 5.4 Implementasi Tabel Klinik


5. Tabel obat
Tabel obat berfungsi untuk menyimpan data detail lengkap dari obat. Tabel ini memiliki
primary key yaitu id. Implementasinya dapat dilihat pada Gambar 5.5 berikut.

Gambar 5.5 Implementasi Tabel Obat


6. Tabel odontogram
Tabel odontogram berfungsi untuk menyimpan data diagnosa gigi yang dilakukan oleh
dokter. Tabel ini memiliki primary key yaitu id. Memiliki foreign key yaitu id_pemeriksaan
yang berelasi dengan primary key tabel pemeriksaan. Implementasinya dapat dilihat pada
Gambar 5.6 berikut:
92

Gambar 5.6 Implementasi Tabel Odontogram


7. Tabel pasien
Tabel obat berfungsi untuk menyimpan data pasien. Tabel ini memiliki primary key
yaitu id. Implementasinya dapat dilihat pada Gambar 5.7 berikut:

Gambar 5.7 Implementasi Tabel Pasien


8. Tabel pembayaran
Tabel pembayaran berfungsi untuk menyimpan data transaksi pembayaran. Tabel ini
memiliki primary key yaitu id. Memiliki foreign key yaitu id_pendaftaran yang berelasi dengan
primary key tabel pendaftaran dan id_petugas yang berelasi dengan primary key tabel users.
Implementasinya dapat dilihat pada Gambar 5.8 berikut:
93

Gambar 5.8 Implementasi Tabel Pembayaran


9. Tabel pemeriksaan
Tabel pemeriksaan berfungsi untuk menyimpan data pemeriksaan umum pada pasien
yang dilakukan oleh dokter. Tabel ini memiliki primary key yaitu id. Memiliki foreign key yaitu
id_dokter yang berelasi dengan primary key tabel dokter dan id_pendaftaran yang berelasi
dengan primary key tabel pendaftaran. Implementasinya dapat dilihat pada Gambar 5.9 berikut:

Gambar 5.9 Implementasi Tabel Pemeriksaan


10. Tabel pendaftaran
Tabel pendaftaran berfungsi untuk menyimpan data pasien yang melakukan pendaftaran
pemeriksaan. Tabel ini memiliki primary key yaitu id. Memiliki foreign key yaitu id_pasien
yang berelasi dengan primary key tabel pasien, id_klinik yang berelasi dengan primary key tabel
klinik dan id_petugas yang berelasi dengan primary key tabel users. Implementasinya dapat
dilihat pada Gambar 5.10 berikut.
94

Gambar 5.10 Implementasi Tabel Pendaftaran


11. Tabel penyakit
Tabel penyakit berfungsi untuk menyimpan data nama-nama penyakit. Tabel ini
memiliki primary key yaitu id. Implementasinya dapat dilihat pada Gambar 5.11 berikut:

Gambar 5.11 Implementasi Tabel Penyakit


12. Tabel periksa_tindakan
Tabel periksa_tindakan berfungsi untuk menyimpan data tindakan apa saja yang telah
diberikan pada suatu pemeriksaan. Tabel ini memiliki primary key yaitu id. Memiliki foreign
key yaitu id_pemeriksaan yang berelasi dengan primary key tabel pemeriksaan dan id_tindakan
yang berelasi dengan primary key tabel tindakan. Implementasinya dapat dilihat pada Gambar
5.12 berikut:

Gambar 5.12 Implementasi Tabel periksa_tindakan


13. Tabel resep
Tabel resep berfungsi untuk menyimpan data petunjuk resep yang diberiksan oleh dokter
kepada pasien setelah kegiatan pemeriksaan. Tabel ini memiliki primary key yaitu id. Memiliki
95

foreign key yaitu id_pemeriksaan yang berelasi dengan primary key tabel pemeriksaan dan
id_obat yang berelasi dengan primary key tabel obat. Implementasinya dapat dilihat pada
Gambar 5.13 berikut.

Gambar 5.13 Implementasi Tabel Resep


14. Tabel riwayat_penyakit
Tabel riwayat_penyakit berfungsi untuk menyimpan data penyakit apa saja yang
diderita oleh pasien setelah kegiatan pemeriksaan. Tabel ini memiliki primary key yaitu id.
Memiliki foreign key yaitu id_pemeriksaan yang berelasi dengan primary key tabel pemeriksaan
dan id_penyakit yang berelasi dengan primary key tabel penyakit. Implementasinya dapat
dilihat pada Gambar 5.14 berikut.

Gambar 5.14 Implementasi Tabel riwayat_penyakit


15. Tabel status
Tabel status berfungsi untuk menyimpan data nama-nama status fase seorang pasien
mulai dari antri sampai dengan pembayaran. Tabel ini memiliki primary key yaitu id.
Implementasinya dapat dilihat pada Gambar 5.15 berikut:
96

Gambar 5.15 Implementasi Tabel Status


16. Tabel tindakan
Tabel tindakan berfungsi untuk menyimpan data tindakan-tindakan yang ditetapkan oleh
admin klinik. Tabel ini memiliki primary key yaitu id. Memiliki foreign key yaitu id_klinik yang
berelasi dengan primary key tabel klinik. Implementasinya dapat dilihat pada Gambar 5.16
berikut:

Gambar 5.16 Implementasi Tabel Tindakan


17. Tabel trx_alergi
Tabel trx_alergi berfungsi untuk menyimpan data alergi apa saja yang diderita oleh
pasien setelah kegiatan pemeriksaan. Tabel ini memiliki primary key yaitu id. Memiliki foreign
key yaitu id_alergi yang berelasi dengan primary key tabel alergi dan id_pemeriksaan yang
berelasi dengan primary key tabel pemeriksaan. Implementasinya dapat dilihat pada Gambar
5.17 berikut:

Gambar 5.17 Implementasi Tabel trx_alergi


18. Tabel trx_status
97

Tabel trx_status berfungsi untuk menyimpan data. Tabel ini memiliki primary key yaitu
id. Memiliki foreign key yaitu id_klinik yang berelasi dengan primary key tabel klinik. Untuk
id_tahap merupakan foreign key dari id pada tabel pendaftaran. id_status merupakan status yang
diambil dari tabel status. Sedangkan untuk atribut tahap merupakan enum menentukan jejak
proses status dari tahap pendaftaran, pemeriksaan atau pembayaranImplementasinya dapat
dilihat pada Gambar 5.18 berikut:

Gambar 5.18 Implementasi Tabel trx_status


19. Tabel users
Tabel users berfungsi untuk menyimpan data users yang berperan dalam sistem
informasi klinik, mulai dari pendaftaran sampai dengan pembayaran. Tabel ini memiliki
primary key yaitu id. Memiliki foreign key yaitu id_job yang berelasi dengan primary key tabel
jobs. Implementasinya dapat dilihat pada Gambar 5.19 berikut:
98

Gambar 5.19 Implementasi Tabel Users


5.3 Implementasi Sistem
Hasil implementasi sistem yang terkait dengan tampilan dan juga potongan kode
program pada sistem yang telah dibangun akan dibahas pada bagian antarmuka berikut ini.

5.3.1 Koneksi Basis Data


Pada framework Codeigniter terdapat sebuah file yang digunakan untuk mengatur
koneksi dari aplikasi ke basis data, file tersebut bernama database.php. Source code untuk
konfigurasi koneksi database mysql tersebut dapat dilihat pada Gambar 5.20:
99

$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => 'root',
'database' => 'klinik',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);

Gambar 5.20 Source code untuk konfigurasi koneksi database mysql


5.3.2 Halaman Pendaftaran Pasien
Halaman pendaftaran pasien merupakan halaman untuk melakukan pendaftaran pasien
lama dan pasien baru. Implementasi tampilan pendaftaran pasien terdapat pada halaman utama
petugas yang dapat dilihat pada Gambar 5.21 dan Gambar 5.22 merupakan kode program pada
controller Dashboard yang menampilkan halaman utama petugas. Implementasi formulir
pendaftaran pasien baru dapat dilihat pada Gambar 5.23 dan Gambar 5.24 adalah kode program
100

pada controller Pasien untuk menyimpan data pendaftaran pasien baru ke basis data.
Implementasi pendaftaran pasien lama dapat dilihat pada Gambar 5.25 dan Gambar 5.26
merupakan kode program pada controller Pasien untuk menyimpan data pendaftaran pasien
lama ke basis data.

Gambar 5.21 Halaman utama petugas


101

public function petugas()


{
$title = "Dashboard";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 1;
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->
output($title,'');
$data['klinik'] = $this->klinik_model->get_klinik();

$data['pasien_today'] = $this->pendaftaran_model->get_today();
$data['pendaftaran'] = $this->pendaftaran_model->
get_list_klinik_status();
$data['pembayaran'] = $this->pendaftaran_model->
get_list_pembayaran();
$data['daftar_pasien'] = $this->pasien_model->
get_list_pasien();

$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
$this->load->view('template/sidebar_ptgs',$data);
$this->load->view('template/page_header',$data);
$this->load->view('petugas/dashboard',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.22 Source code daftar pasien lama yang telah terdaftar lanjutan
102

Gambar 5.23 Implementasi formulir pendaftaran pasien baru


103

public function store() {


$nama_lengkap = $this->input->post('nama_lengkap');
$jenis_kelamin = $this->input->post('jenis_kelamin');
$tanggal_lahir = $this->input->post('tanggal_lahir');
$tempat_lahir = $this->input->post('tempat_lahir');
$alamat = $this->input->post('alamat');
$no_hp = $this->input->post('no_hp');
$nomor_identitas = $this->input->post('no_identitas');
$klinik = $this->input->post('klinik');

$data = array(
'on_delete' => '0',
'nama_lengkap' => $nama_lengkap,
'jk' => $jenis_kelamin,
'tanggal_lahir' => $tanggal_lahir,
'tempat_lahir' => $tempat_lahir,
'alamat' => $alamat,
'nomor_telepon' => $no_hp,
'nik' => $nomor_identitas,
'created_at' => date('Y-m-d H:i:s'),
'created_by' => $this->session->userdata('id')
);
$this->db->insert('pasien', $data);
//get id pasien
$id_pasien = $this->pendaftaran_model->
get_id_nama($nama_lengkap);
if (!empty($klinik)) {
# code...
$this->entri_pendaftaran_pasien($id_pasien,$klinik);
$data = array ('notify' => 'pendaftaran sukses');
$this->session->set_userdata($data);

redirect('dashboard');
}

$data = array ('notify' => 'tambah pasien sukses');


$this->session->set_userdata($data);
redirect('pasien');
}

Gambar 5.24 Source code untuk menyimpan data pendaftaran pasien baru ke basis data
104

Gambar 5.25 Implementasi pendaftaran pasien lama


105

public function daftar_pasien_lama() {


$id_pasien = $this->input->post('nama_pasien');
$klinik = $this->input->post('klinik');
$this->entri_pendaftaran_pasien($id_pasien,$klinik);
$data = array ('notify' => 'pendaftaran sukses');
$this->session->set_userdata($data);
redirect('dashboard');
}
public function entri_pendaftaran_pasien($id_pasien,$klinik)
{
//tambah ke tabel pendaftaran
$daftar = array (
'id_pasien' => $id_pasien,
'id_klinik' => $klinik,
'created_at' => date('Y-m-d H:i:s'),
'id_petugas' => $this->session->userdata('id')
);
$this->pendaftaran_model->get_insert($daftar);
//get id pendaftaran
$id_pendaftaran = $this->pendaftaran_model->
get_id($id_pasien);
//antrian
$antrian = $this->trx_status_model->antrian('pemeriksaan');
//tambah ke tabel trx_status
$daftar_trx = array (
'id_tahap' => $id_pendaftaran,
'antrian_ke' => $antrian,
'id_status' => '1',
'tahap' => 'pemeriksaan',
'created_at' => date('Y-m-d H:i:s')
);
$this->trx_status_model->get_insert($daftar_trx);
}

Gambar 5.26 Source code untuk menyimpan data pendaftaran pasien lama ke basis
data.
Ketika data-data berhasil ditambahkan, pesan pemberitahuan akan tampil bahwa data
berhasil ditambahkan seperti pada Gambar 5.27.
106

Gambar 5.27 Pemberitahuan data berhasil ditambah


5.3.3 Halaman Pemeriksaan Pasien
Halaman pemeriksaan pasien merupakan halaman untuk memasukkan data pemeriksaan
pasien yang diakses setelah melakukan proses pada antrian yang muncul pada halaman utama
dokter yang dapat dilihat pada Gambar 5.28, untuk Gambar 5.29 dan Gambar 5.30 adalah kode
program pada controller Dashboard yang menampilkan halaman utama dokter. Implementasi
formulir pemeriksaan pasien untuk unit layanan umum dapat dilihat pada Gambar 5.31 yang
baru menampilkan pada formulir tahap pemeriksaan umum. Gambar 5.32 adalah kode program
pada controller Rekam_medis untuk menampilkan halaman formulir pemeriksaan pasien unit
layanan umum. Halaman formulir pemeriksaan pasien untuk unit layanan umum dipecah
menjadi 4 tahapan yaitu tahap pemeriksaan umum seperti pada Gambar 5.33, tahap analisa
pemeriksaan yang ditunjukkan pada Gambar 5.34, tahap resep obat ditunjukkan pada Gambar
5.35 dan tahap tindakan yang ditunjukkan pada Gambar 5.36. Sedangkan pada unit layanan gigi
memiliki tahapan yang sama seperti unit layanan umum hanya saja terdapat tahapan
pemeriksaan gigi yang terdapat setelah tahap analisa pemeriksaan dan sebelum resep obat,
untuk tampilan tahap pemeriksaan gigi dapat dilihat pada Gambar 5.37.
107

Gambar 5.28 Antrian pemeriksaan pada halaman utama dokter

public function catatan()


{
$title = "Catatan Pemeriksaan Dokter";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb('Pemeriksaan');
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 41;
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');
if($this->session->userdata('job') == 'dokter'){
$name = $this->session->userdata('username');
$id_users = $this->dokter_model->get_id($name);
$id_dokter= $this->dokter_model->get_dokter($id_users);
$klinik_dokter = $this->dokter_model->get_klinik($id_users);
$data['list_terakhir'] = $this->pendaftaran_model->
get_list_terakhir($klinik_dokter);

Gambar 5.29 Source code untuk menampilkan data antrian pemeriksaan pada
dashboard dokter
108

}else{
$data['list_terakhir'] = $this->pendaftaran_model->
get_list_terakhir('pemilik');
}

$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
//jika dokter || pemilik || petugas
if($this->session->userdata('job') == 'pemilik') {
$this->load->view('template/sidebar_owner',$data);
}
else if($this->session->userdata('job') == 'dokter'){
$this->load->view('template/sidebar_dokter',$data);
} else {
$this->login();
}
$this->load->view('template/page_header',$data);
$this->load->view('dokter/pemeriksaan/terakhir',$data);
$this->load->view('template/footer',$data);
}
Gambar 5.30 Source code untuk menampilkan data antrian pemeriksaan pada
dashboard dokter lanjutan

Gambar 5.31 Implementasi formulir pemeriksaan pada klinik umum


109

public function rekam(){


$title = "Antrian Pemeriksaan";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb('Pemeriksaan');
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 41;
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');
$name = $this->session->userdata('username');
$id_users = $this->dokter_model->get_id($name);
$klinik_dokter = $this->dokter_model->get_klinik($id_users);
$id_dokter = $this->dokter_model->get_id_dokter($id_users);
$data['list_terakhir'] = $this->pendaftaran_model->
get_list_terakhir($klinik_dokter,$id_dokter);
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
$this->load->view('template/sidebar_dokter',$data);
$this->load->view('template/page_header',$data);
$this->load->view('dokter/pemeriksaan/terakhir',$data);
$this->load->view('template/footer',$data);
}}
Gambar 5.32 Source code Rekam_medis untuk menampilkan halaman formulir
pemeriksaan pasien unit layanan umum

Gambar 5.33 Implementasi pemeriksaan umum pada pemeriksaan umum


110

Gambar 5.34 Implementasi analisa pemeriksaan pada pemeriksaan umum

Gambar 5.35 Implementasi tahap pemberian resep pada pemeriksaan umum

Gambar 5.36 Implementasi tahap tindakan pada pemeriksaan umum


111

Gambar 5.37 Implementasi tahap pemeriksaan Gigi


Gambar 5.38 adalah kode program pada controller Rekam_medis untuk menyimpan
data pemeriksaan pasien pada unit layanan umum ke basis data. Sedangkan untuk menyimpan
data pemeriksaan pasien pada unit layanan gigi, kode program untuk menyimpan data tersebut
pada controller Rekam_medis ditunjukkan pada Gambar 5.39. Setelah data pemeriksaan pasien
tersimpan di basis data, pengguna dapat melihat data pemeriksaan pasien tersebut sebagai
riwayat pemeriksaan pasien yang dapat diakses melalui pemeriksaan terakhir pada halaman
utama dokter, data detail pasien melalui pencarian pada menu daftar pasien, maupun melalui
melalui menu pemeriksaan oleh dokter maupun pemilik. Gambar 5.40 adalah implementasi
tampilan dari riwayat pasien atau yang disebut bentuk rekam medis pasien. Sedangkan pada
Gambar 5.41 dan Gambar 5.42 adalah kode program untuk menampilkan daftar rekam medis
terakhir
112

public function entri_umum($id){


$title = 'Entri Pemeriksaan Umum Baru';
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb('Rekam Medis',
base_url().'rekam_medis/');
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
if($this->session->userdata('job') == 'pemilik') {
$data['active'] = 44;
} else if($this->session->userdata('job') == 'dokter'){
$data['active'] = 4;
}else{
redirect('login');
}
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,' ');
$data['pasien'] = $this->pendaftaran_model->get_pasien($id);
$data['tindakan'] = $this->tindakan_model->
get_tindakan('1');
$data['alergi'] = $this->alergi_model->get_item();
$data['penyakit'] = $this->penyakit_model->get_item();
$data['obat'] = $this->obat_model->get_list_obat();
$data['id_pendaftaran'] = $id;
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($this->session->userdata('job') == 'dokter') {
$this->load->view('template/sidebar_dokter',$data);
} else {
$this->login();
}
$this->load->view('template/page_header',$data);
$this->load->view('dokter/rekam/entri_umum',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.38 Source code rekam medis untuk menyimpan data pemeriksaan umum
113

public function entri_gigi($id){


$title = 'Entri Pemeriksaan Gigi Baru';
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb('Rekam Medis',
base_url().'rekam_medis/');
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
if($this->session->userdata('job') == 'pemilik') {
$data['active'] = 44;
} else if($this->session->userdata('job') == 'dokter'){
$data['active'] = 4;
}else{ redirect('login'); }
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'
');
$data['pasien'] = $this->pendaftaran_model->
get_pasien($id);
$data['tindakan'] = $this->tindakan_model->
get_tindakan('2');
$data['alergi'] = $this->alergi_model->get_item();
$data['penyakit'] = $this->penyakit_model->get_item();
$data['obat'] = $this->obat_model->get_list_obat();
$data['id_pendaftaran'] = $id;
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($this->session->userdata('job') == 'dokter') {
$this->load->view('template/sidebar_dokter',$data);
} else {
$this->login();
}
$this->load->view('template/page_header',$data);
$this->load->view('dokter/rekam/entri',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.39 Source code rekam medis untuk menyimpan data pemeriksaan gigi
114

Gambar 5.40 Implementasi rekam medis pasien

public function daftar()


{
$title = "Daftar Rekam Medis Terakhir";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
if($this->session->userdata('job') == 'pemilik') {
$data['active'] = 44;
} else if($this->session->userdata('job') == 'dokter'){
$data['active'] = 4;
}else{
redirect('login'); }
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');

Gambar 5.41 Source code daftar rekam medis terakhir


115

if($this->session->userdata('job') == 'dokter'){
$name = $this->session->userdata('username');
$id_dokter = $this->dokter_model->get_id($name);
$klinik_dokter = $this->dokter_model->
get_klinik($id_dokter);
$data['list_terakhir'] = $this->pemeriksaan_model->
get_list($klinik_dokter);
}else{
$data['list_terakhir'] = $this->pemeriksaan_model-
>get_list('pemilik');
}
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($this->session->userdata('job') == 'pemilik') {
$this->load->view('template/sidebar_owner',$data);
} else if($this->session->userdata('job') == 'dokter'){
$this->load->view('template/sidebar_dokter',$data);
}
$this->load->view('template/page_header',$data);
$this->load->view('dokter/rekam/daftar',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.42 Source code daftar rekam medis terakhir lanjutan


5.3.4 Halaman Manajemen Obat
Halaman ini diakses oleh pemilik, dimana pada halaman ini pemilik dapat melihat daftar
obat yang tersedia pada klinik yang dapat dilihat pada Gambar 5.43 dan kode program daftar
obat pada controller pada Gambar 5.44. Pemilik juga dapat melakukan penambahan obat seperti
pada Gambar 5.45 dan juga melakukan ubah data obat seperti pada Gambar 5.46. Untuk kode
program menyimpan data ke basis data dari implementasi tersebut ada pada controller Obat
yang ditunjukan pada Gambar 5.47 dan Gambar 5.48.
116

Gambar 5.43 Implementasi daftar obat yang tersedia pada klinik


117

public function index()


{
$title = "Daftar Obat";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');
$data['obat'] = $this->obat_model->get_list_obat();
if($this->session->userdata('job') == 'pemilik'){
$data['active'] = 2;
}else{
$data['active'] = 6;
}
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($this->session->userdata('job') == 'pemilik'){
$this->load->view('template/sidebar_owner', $data);
}else{
$this->load->view('template/sidebar_dokter',$data);
}
$this->load->view('template/page_header',$data);
if($this->session->userdata('job') == 'pemilik'){
$this->load->view('owner/obat/obat',$data);
} else{
$this->load->view('dokter/obat',$data);
}
$this->load->view('template/footer',$data);
}

Gambar 5.44 Source code daftar obat pada controller Obat


118

Gambar 5.45 Implementasi halaman untuk menambah obat

Gambar 5.46 Implementasi halaman untuk mengubah data obat


119

public function store() {


$id = $this->input->post('id');
$nama = $this->input->post('nama_generik');
$merk = $this->input->post('merk');
$tgl_kadaluarsa = $this->input->post('tanggal_kadaluarsa');
$tgl_beli = $this->input->post('tanggal_beli');
$harga_beli = $this->input->post('harga_beli');
$harga_jual = $this->input->post('harga_jual');
$stok = $this->input->post('stok');
$golongan = $this->input->post('golongan');
$keterangan = $this->input->post('keterangan');
$cek = $this->obat_model->id_exists($id);
if($cek > 0) {
$data = array(
'nama_generik' => $nama,
'merk' => $merk,
'tanggal_kadaluarsa' => $tgl_kadaluarsa,
'tanggal_beli' => $tgl_beli,
'harga_beli' => $harga_beli,
'harga_jual'=> $harga_jual,
'stok' => $stok,
'golongan' => $golongan,
'keterangan'=> $keterangan,
'updated_at'=> date('Y-m-d H:i:s'),
'updated_by'=> $this->session->userdata('id'));

Gambar 5.47 Source code tambah dan ubah obat pada controller Obat
120

$this->db->where('id',$id);
$this->db->update('obat',$data);
$data = array ('notify' => 'ubah obat sukses');
$this->session->set_userdata($data);
redirect('obat');
} else {
$data = array(
'id' => null,
'nama_generik'=> $nama,
'merk'=> $merk,
'tanggal_kadaluarsa' => $tgl_kadaluarsa,
'tanggal_beli'=> $tgl_beli,
'harga_beli'=> $harga_beli,
'harga_jual'=> $harga_jual,
'stok' => $stok,
'golongan' => $golongan,
'keterangan' => $keterangan,
'created_at' => date('Y-m-d H:i:s'),
'created_by' => $this->session->userdata('id')
);
$this->obat_model->get_insert($data);
$data = array ('notify' => 'tambah obat sukses');
$this->session->set_userdata($data);
redirect('obat');
}
}

Gambar 5.48 Source code tambah dan ubah obat pada controller lanjutan
Untuk menghapus data obat, pemilik dapat mengklik hapus pada daftar obat sehingga
akan muncul kotak konfirmasi haps seperti pada Gambar 5.49 serta kode program hapus obat
pada controller seperti pada Gambar 5.50.
121

Gambar 5.49 Implentasi modal mengahapus data obat

public function delete_obat($id) {


$this->obat_model->delete_obat($id);
$data = array ('notify' => 'hapus obat sukses');
$this->session->set_userdata($data);
redirect('obat');
}

Gambar 5.50 Source code untuk hapus data obat


5.3.5 Halaman Manajemen Akun
Manajemen akun merupakan menu untuk membuat data pengguna baru, melihat daftar
pengguna, mengubah data pengguna dan menghapus data pengguna . Untuk dapat melihat daftar
pengguna, terlebih dahulu memilih menu akun pengguna yang ditampilkan seperti Gambar 5.51
terletak pada halaman utama pemilik. Implementasi halaman pengguna ditunjukkan pada
Gambar 5.52, untuk menambah pengguna dapat dilihat pada Gambar 5.53. Untuk Gambar 5.54
adalah kode program pada controller Users untuk menampilkan halaman manajemen akun.
Sedangkan pada Gambar 5.55, Gambar 5.56 dan Gambar 5.57 merupakan kode program untuk
menyimpan data akun ke basis data.
122

Gambar 5.51 Implementasi halaman pemilik untuk memilih akun pengguna

Gambar 5.52 Implementasi halaman daftar pengguna


123

Gambar 5.53 Implementasi form tambah pengguna

public function index(){


$title = "Akun Pengguna";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 4;
$data['title'] = "Klinik Samita | Users";
$data['title_head'] = $this->pageheader->output($title,'');
$data['jobs'] = $this->users_model->get_list_jobs();
$data['users'] = $this->users_model->get_list_users();
$data['klinik'] = $this->klinik_model->get_klinik();
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
$this->load->view('template/sidebar_owner',$data);
$this->load->view('template/page_header',$data);
$this->load->view('owner/users/users',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.54 Source code Tampil daftar pengguna dan tambah data pengguna baru
124

public function add_user() {


$id = $this->input->post('id');
$username = $this->input->post('username');
$nama = $this->input->post('surename');
$nama_lengkap = $this->input->post('fullname');
$bod = $this->input->post('bod');
$pod = $this->input->post('pod');
$phone = $this->input->post('phone');
$email = $this->input->post('email');
$address = $this->input->post('address');
$role = $this->input->post('role');
$identity = $this->input->post('identity');
$password = $this->input->post('password');
$klinik = $this->input->post('jenisklinik');
$no_sip = $this->input->post('no_sip');
$jenis_klinik = $this->input->post('jenis_klinik');
$cek = $this->users_model->id_exists($id);
if($cek > 0) {
// UPDATE AKUN // UPDATE ke tabel users
$data_users = array(
'nama' => $nama,
'nama_lengkap' => $nama_lengkap,
'tanggal_lahir' => $bod,
'tempat_lahir' => $pod,
'no_telepon' => $phone,
'email' => $email,
'alamat' => $address,
'id_job' => $role,
'nik' => $identity,
'username' => $username,
'updated_at' => date('Y-m-d H:i:s'),
'updated_by' => $this->users_model->
get_username_id($this->session->userdata('username')));
$this->db->where('id',$id);
$this->db->update('users',$data_users);

Gambar 5.55 Source code menyimpan data pengguna


125

if ($password != null) {
# jika password diganti saat password tidak kosong
$data_users = array('password' => $password);
$this->db->where('id',$id);
$this->db->update('users',$data_users);
}
# jika rolenya adalah dokter maka update ke dokter
if ($role == '3') {
// cek jika sblmnya bukan dokter maka buat baru
$cek_dokter = $this->db->get_where('dokter',array('id_users' =>
$id))->num_rows();
if ($cek_dokter > 0) {
// update ke tabel dokter
$data_dokter = array(
'id_klinik' => $klinik,
'no_sip' => $no_sip,
'updated_at' => date('Y-m-d H:i:s')
);
$this->db->where('id_users',$id);
$this->db->update('dokter',$data_dokter);
}else{
$dokter_data = array(
'id_users'=> $this->users_model->get_username_id($username),
'id_klinik'=> $klinik,
'no_sip'=> $no_sip,
'created_at'=> date('Y-m-d H:i:s')
);
$this->dokter_model->get_insert($dokter_data);
}}
$this->dokter_model->get_insert($dokter_data);}
$data = array ('notify' => 'tambah akun sukses');
$this->session->set_userdata($data);
redirect('users');
}
}

Gambar 5.56 Source code menyimpan data pengguna lanjutan


126

// INSERT AKUN @ USERS TABLE


$data = array(
'nama' => $nama,
'nama_lengkap' => $nama_lengkap,
'tanggal_lahir' => $bod,
'tempat_lahir' => $pod,
'no_telepon' => $phone,
'email' => $email,
'alamat' => $address,
'id_job' => $role,
'nik' => $identity,
'username' => $username,
'password' => $password,
'created_at' => date('Y-m-d H:i:s'),
'created_by' => $this->users_model->
get_username_id($this->session->userdata('username'))
);
$this->users_model->get_insert($data);
// INSERT DOKTER @ DOKTER TABLE
if($role == '3') {
$dokter_data = array(
'id_users' => $this->users_model->get_username_id($username),
'id_klinik'=> $klinik,
'no_sip' => $no_sip,
'created_at' => date('Y-m-d H:i:s')
);
$this->dokter_model->get_insert($dokter_data);}

$data = array ('notify' => 'tambah akun sukses');


$this->session->set_userdata($data);
redirect('users');
}}

Gambar 5.57 Source code menyimpan data pengguna lanjutan


Untuk mengubah data akun pengguna, pemilik dapat mengklik tombol ubah pada daftar
pengguna. Maka akan muncul form data pengguna ynag akan diubah. Untuk lebih jelasnya
127

dapat dilihat pada Gambar 5.58 serta source code ubah data pengguna pada Gambar 5.59 dan
Gambar 5.60.

Gambar 5.58 Implementasi form ubah data pengguna

$data_users = array(
'nama' => $nama, 'nama_lengkap' => $nama_lengkap,
'tanggal_lahir' => $bod, 'tempat_lahir' => $pod,
'no_telepon' => $phone, 'email' => $email,
'alamat' => $address, 'id_job' => $role,
'nik' => $identity, 'username' => $username,
'updated_at' => date('Y-m-d H:i:s'),
'updated_by' => $this->users_model->get_username_id($this-
>session->
userdata('username')));
$this->db->where('id',$id);
$this->db->update('users',$data_users);
if ($password != null) {
# jika password diganti saat password tidak kosong
$data_users = array('password' => $password);
$this->db->where('id',$id);
$this->db->update('users',$data_users);
}
Gambar 5.59 Source code untuk mengubah data akun pengguna
128

# jika rolenya adalah dokter maka update ke dokter


if ($role == '3') {
// cek jika sblmnya bukan dokter maka buat baru
$cek_dokter = $this->db->get_where('dokter',array('id_users' =>
$id))->num_rows();
if ($cek_dokter > 0) {
// update ke tabel dokter
$data_dokter = array(
'id_klinik' => $klinik,
'no_sip' => $no_sip,
'updated_at' => date('Y-m-d H:i:s')
);
$this->db->where('id_users',$id);’
$this->db->update('dokter',$data_dokter);
}else{
$dokter_data = array(
'id_users' => $this->users_model->get_username_id($username),
'id_klinik' => $klinik,
'no_sip' => $no_sip,
'created_at' => date('Y-m-d H:i:s')
);
$this->dokter_model->get_insert($dokter_data);
}}
$data = array ('notify' => 'ubah akun sukses');
$this->session->set_userdata($data);
redirect('users');

Gambar 5.60 Source code untuk mengubah data akun pengguna lanjutan
Pemilik juga dapat menghapus atau menonaktifkan akun pengguna, apabila pengguna
tersebut sudah tidak bekerja pada klinik. Untuk menghapus, pemilik hanya perlu mengklik
tombol hapus yang dapat dilihat pada Gambar 5.61 serta kode program hapus akun pengguna
pada controller pada Gambar 5.62.
129

Gambar 5.61 Implementasi konfirmasi menghapus akun pengguna

public function delete_user($id) {


$this->users_model->delete_user($id);
$data = array ('notify' => 'hapus akun sukses');
$this->session->set_userdata($data);
redirect('users');
}

Gambar 5.62 Source code hapus akun pengguna


5.3.6 Halaman Manajemen Tindakan
Manajemen tindakan merupakan menu untuk membuat data tindakan baru, melihat
daftar tindakan, mengubah data tindakan dan menghapus data tindakan. Untuk dapat melihat
daftar tindakan, terlebih dahulu memilih menu navigasi manajemen atau klik tanda anak panah
pada kotak biru berlogo stetoskop yang ditampilkan seperti Gambar 5.63 terletak pada halaman
utama pemilik. Implementasi halaman manajemen tindakan ditunjukkan pada Gambar 5.64 dan
Gambar 5.57 merupakan kode program pada controller Tindakan..
130

Gambar 5.63 Impelementasi menuju ke halaman manajemen tindakan

Gambar 5.64 Implementasi halaman manajemen tindakan


131

public function index(){


$title = "Daftar Tindakan";
$session = "Owner";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 3;
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');
$data['tindakan'] = $this->tindakan_model->get_list_tindakan();
$data['klinik'] = $this->klinik_model->get_klinik();
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($session == "Owner")
$this->load->view('template/sidebar_owner', $data);
else
$this->load->view('template/sidebar_dokter',$data);
$this->load->view('template/page_header',$data);
if($session == "Owner")
$this->load->view('owner/tindakan/tindakan',$data);
else
$this->load->view('dokter/obat',$data);
$this->load->view('template/footer',$data);
}

Gambar 5.65 Source code untuk tampil daftar tindakan


Pemilik juga dapat melakukan tambah tindakan dengan cara klik tombol tambah
tindakan. Maka form untuk tambah tindakan akan muncul seperti pada Gambar 5.66. Untuk
kode program yang ada di controller dapat dilihat pada Gambar 5.67 dan Gambar 5.68.
132

Gambar 5.66 Implementasi form tambah tindakan

public function store() {


$id = $this->input->post('id');
$nama_tindakan = $this->input->post('nama_tindakan');
$harga = $this->input->post('harga');
$id_klinik = $this->input->post('id_klinik');
$cek = $this->tindakan_model->id_exists($id);
// UPDATE
if($cek > 0) {
$data = array(
'nama' => $nama_tindakan,
'id_klinik' => $id_klinik,
'harga' => $harga,
'updated_at' => date('Y-m-d H:i:s'),
'updated_by' => $this->session->userdata('id')
);
$this->db->where('id',$id);
$this->db->update('tindakan',$data);
$data = array ('notify' => 'ubah tindakan sukses');
$this->session->set_userdata($data);
redirect('tindakan');
}

Gambar 5.67 Source code untuk tambah tindakan


133

else {
// INSERT
$data = array(
'id' => null,
'nama' => $nama_tindakan,
'id_klinik' => $id_klinik,
'harga' => $harga,
'created_at' => date('Y-m-d H:i:s'),
'created_by'=> $this->users_model->get_id($this->session-
>userdata('name'))
);
echo $this->session->userdata('name');
$this->tindakan_model->get_insert($data);
$data = array ('notify' => 'tambah tindakan sukses');
$this->session->set_userdata($data);
redirect('tindakan');
}
}

Gambar 5.68 Source code untuk tambah tindakan lanjutan


Untuk menghapus tindakan dapat dilakukan dengan mengklik tombol hapus pada daftar
tindakan, maka akan muncul kotak konfirmasi hapus seperti pda Gambar 5.69. Kode program
pada hapus tindakan pada controller dapat dilihat pada Gambar 5.70.

Gambar 5.69 Implementasi konfirmasi hapus tindakan


134

public function delete_tindakan($id) {


$this->tindakan_model->delete_tindakan($id);
$data = array ('notify' => 'hapus tindakan sukses');
$this->session->set_userdata($data);
redirect('tindakan');
}

Gambar 5.70 Source code hapus tindakan


5.3.7 Daftar Pasien
Daftar pasien merupakan menu untuk membuat data pasien baru, melihat daftar pasien,
mengubah data pasien dan menghapus data pasien . Untuk dapat melihat daftar pasien, terlebih
dahulu memilih menu navigasi Daftar Pasien yang ditampilkan seperti Gambar 5.71 terletak
pada halaman utama petugas. Implementasi halaman daftar pasien ditunjukkan pada Gambar
5.72 dan Gambar 5.73 merupakan kode program pada controller Pasien.

Gambar 5.71 Menu navigasi daftar pasien pada halaman petugas


135

Gambar 5.72 Implementasi daftar pasien


136

public function index(){


$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb('Daftar Pasien');
$data['bread'] = $this->breadcrumb->output();
$data['active'] = 5;
$data['title'] = "Klinik Samita | Daftar Pasien";
$data['title_head'] = $this->pageheader->output('Daftar
Pasien','');
$data['daftar_pasien'] = $this->pasien_model->get_list_pasien();
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
if($this->session->userdata('job') == 'pemilik') {
$this->load->view('template/sidebar_owner',$data);
$this->load->view('template/page_header',$data);
$this->load->view('petugas/pasien/daftar',$data);
} else if($this->session->userdata('job') == 'dokter') {
$this->load->view('template/sidebar_dokter',$data);
$this->load->view('template/page_header',$data);
$this->load->view('dokter/pasien/daftar',$data);
} else if($this->session->userdata('job') == 'petugas'){
$data['active'] = 4;
$this->load->view('template/sidebar_ptgs',$data);
$this->load->view('template/page_header',$data);
$this->load->view('petugas/pasien/daftar',$data);
} else {
$this->login();
}
$this->load->view('template/footer',$data);
}

Gambar 5.73 Source code tampil daftar pasien


Tambah pasien dilakukan pada pasien baru dan juga pasien lama. Untuk pasien baru
dilakukan dengan mengklik tombol tambah pasien baru pada halaman daftar pasien maupun
dashboard petugas sehingga akan muncul form data diri pasien baru seperti pada Gambar 5.74
dan untuk kode program pada controllernya dapat dilihat pada Gambar 5.75. Untuk tambah
137

pasien lama dilakukan dengan mengklik tombol tambah pasien lama seperti Gambar 5.76.
Gambar 5.79 dan Gambar 7.80 adalah kode program tambah pasien lama pada controller.

Gambar 5.74 Implementasi form tambah data pasien baru


138

public function store() {


$nama_panggilan = $this->input->post('nama_panggilan');
$nama_lengkap = $this->input->post('nama_lengkap');
$jenis_kelamin = $this->input->post('jenis_kelamin');
$tanggal_lahir = $this->input->post('tanggal_lahir');
$tempat_lahir = $this->input->post('tempat_lahir');
$alamat = $this->input->post('alamat');
$no_hp = $this->input->post('no_hp');
$nomor_identitas = $this->input->post('no_identitas');
$klinik = $this->input->post('klinik');
$data = array(
'nama' => $nama_panggilan,
'on_delete' => '0',
'nama_lengkap' => $nama_lengkap,
'jk' => $jenis_kelamin,
'tanggal_lahir' => $tanggal_lahir,
'tempat_lahir' => $tempat_lahir,
'alamat' => $alamat,
'nomor_telepon' => $no_hp,
'nik' => $nomor_identitas,
'created_at' => date('Y-m-d H:i:s'),
'created_by' => $this->session->userdata('id')
);
$this->db->insert('pasien', $data);
$id_pasien = $this->pendaftaran_model->get_id_nama($nama_lengkap);
if (!empty($klinik)) {
$this->entri_pendaftaran_pasien($id_pasien,$klinik);
$data = array ('notify' => 'pendaftaran sukses');
$this->session->set_userdata($data);
redirect('dashboard');
}

Gambar 5.75 Source code tambah pasien baru


139

Gambar 5.76 Implementasi form tambah pasien lama

public function store_lama() {


$no_rekmed = $this->input->post('no_rekmed');
$nama_lengkap = $this->input->post('nama_lengkap');
$jenis_kelamin = $this->input->post('jenis_kelamin');
$tanggal_lahir = $this->input->post('tanggal_lahir');
$tempat_lahir = $this->input->post('tempat_lahir');
$alamat = $this->input->post('alamat');
$no_hp = $this->input->post('no_hp');
$nomor_identitas = $this->input->post('no_identitas');
$klinik = $this->input->post('klinik');
$data = array(
'id' => $no_rekmed, 'on_delete' => '0',
'nama_lengkap' => $nama_lengkap, 'jk' => $jenis_kelamin,
'tanggal_lahir' => $tanggal_lahir,
'tempat_lahir' => $tempat_lahir, 'alamat' => $alamat,
'nomor_telepon' => $no_hp, 'nik' => $nomor_identitas,
'created_at' => date('Y-m-d H:i:s'),
'created_by' => $this->session->userdata('id')
);

Gambar 5.77 Source code tambah pasien lama


140

$this->db->insert('pasien', $data);
$id_pasien= $this->pendaftaran_model->get_id_nama($nama_lengkap);
if (!empty($klinik)) {
$this->entri_pendaftaran_pasien($id_pasien,$klinik);
$data = array ('notify' => 'pendaftaran sukses');
$this->session->set_userdata($data);
redirect('dashboard');
}
$data = array ('notify' => 'tambah pasien sukses');
$this->session->set_userdata($data);
redirect('pasien');
}

Gambar 5.78 Source code tambah pasien lama lanjutan


Untuk menghapus data pasien, maka klik tombol hapus pada halaman detail pasien
seperti pada Gambar 5.79 dan Gambar 5.80 kode program hapus pada controller.

Gambar 5.79 Implementasi konfirmasi hapus data pasien


141

public function delete_pasien($id_pasien)


{
$this->pasien_model->delete_pasien($id_pasien);
$data = array ('notify' => 'hapus pasien sukses');
$this->session->set_userdata($data);
redirect('pasien');
}

Gambar 5.80 Source code hapus data pasien


5.3.8. Halaman Pembayaran Pasien
Halaman pembayaran pasien merupakan halaman untuk melihat daftar transaksi pasien
dalam pemeriksaan dengan dokter serta melakukan fungsi cetak struk kepada pasien. Untuk
dapat melihat halaman pembayaran pasien, terlebih dahulu memilih antrian pembayaran pada
halaman utama petugas. Implementasi halaman pembayaran pasien ditunjukkan pada Gambar
5.81 dan Gambar 5.82 merupakan kode program pada controller pembayaran. Implementasi
untuk mencetak halaman ditunjukkan pada Gambar 5.83 dan Gambar 5.84.

Gambar 5.81 Implementasi antrian pembayaran pada halaman petugas


142

public function bayar($id_pendaftaran) {


$title = "Invoice Pasien";
$this->breadcrumb->clear();
$this->breadcrumb->add_crumb('Beranda', base_url());
$this->breadcrumb->add_crumb($title);
$data['bread'] = $this->breadcrumb->output();
$data['title'] = "Klinik Samita | ".$title;
$data['title_head'] = $this->pageheader->output($title,'');
$data['active'] = 5;
$data['id_pendaftaran'] = $id_pendaftaran;
$data['pasien'] = $this->pembayaran_model->
get_pasien($id_pendaftaran);
$data['obat'] = $this->pembayaran_model->
get_obat($id_pendaftaran);
$data['tindakan'] = $this->pembayaran_model->
get_tindakan($id_pendaftaran);
$data['get_count'] = $this->pembayaran_model->get_count();
$this->load->view('template/head',$data);
$this->load->view('template/navbar',$data);
$this->load->view('template/sidebar_ptgs',$data);
$this->load->view('template/page_header',$data);
$this->load->view('petugas/pembayaran/bayar',$data);
$this->load->view('template/footer',$data); }

Gambar 5.82 Source code tampilan pembayaran pasien


143

Gambar 5.83 Implementasi cetak pembayaran

Gambar 5.84 Implementasi cetak pembayaran pada halaman pembayaran pasien


6.
144

BAB VI
HASIL PENGUJIAN DAN PEMBAHASAN

Hasil pengujian dan pembahasan adalah tahapan dalam pengembangan sistem yang
dibuat untuk diuji kelayakan sistem. Tujuan pada tahap ini untuk melakukan evaluasi kinerja
sistem, mengurangi adanya kesalahan dan memastikan sistem dapat dipakai dengan baik.
Pengujian sistem pada tahap ini berfokus pada pengujian fungsional sistem. Pengujian sistem
dilakukan dengan membuat skenario pengujian dan hasil pengujian berdasarkan skenario serta
hasil evaluasi dari pengguna sistem.
6.1 Skenario Pengujian
Skenario pengujian berisi tahapan-tahapan dan hal-hal yang menjadi materi saat
pengujian Sistem Informasi Klinik Umum dan Gigi Samita. Skenario pengujian yang dilakukan
dapat dilihat pada Tabel 6.1.
Tabel 6.1 Skenario Pengujian Sistem

Pengujian Materi

Masuk ke sistem Mengisi data masukan

Kelola manajemen akun Mengisi data masukan


pengguna, obat dan tindakan

Pendaftaran pasien baru Mengisi data masukan

Pendaftaran pasien lama Mengisi data masukan

Pengisian hasil pemeriksaan Mengisi data masukan


pasien unit layanan gigi

Pengisian hasil pemeriksaan Mengisi data masukan


pasien unit layanan umum

Pembayaran pemeriksaan -
pasien

Cetak struk pembayaran -


145

6.2 Hasil Pengujian


Hasil pengujian pada sistem ini sesuai dengan kebutuhan fungsional sistem dan diagram
alir data yang memperhatikan data masukan ke sistem dan keluaran masukan tersebut.
Pengujian ini akan menggunakan uji kasus sesuai dengan tahap skenario pengujian dan melihat
hasil pengujian dari masukan datanya.
6.2.1 Pengujian Masuk ke Sistem
Pengujian masuk ke sistem bertujuan untuk verifikasi pengguna merupakan pemilik,
dokter atau petugas yang dapat masuk ke sistem. Pengguna yang dapat masuk ke sistem adalah
akun yang terdaftar oleh pemilik dan terdapat pada basis data sistem. Setiap peran pemilik,
dokter dan petugas yang telah masuk ke sistem, akan ditampilkan halaman utama yang sesuai
dengan peran masing-masing. Namum jika verifikasi pengguna gagal, maka sistem akan
menampilkan halaman login beserta pesan gagal. Tampilan halaman login dibuat sederhana
sebab akses hanya digunakan dalam internal klinik. Tampilan halaman login dapat dilihat pada
Gambar 6.1.

Gambar 6.1 Tampilan halaman login


Peringatan saat verifikasi pengguna gagal akan muncul ketika nama pengguna dan kata
sandi yang dimasukkan tidak sesuai atau tidak ada dalam basis data. Tampilan verifikasi
pengguna gagal dapat dilihat pada Gambar 6.2
146

Gambar 6.2 Tampilan verifikasi gagal


Saat verifikasi pengguna telah benar dan sesuai, maka sistem menampilkan halaman
utama yang sesuai dengan peran pengguna masing-masing. Tampilan halaman utama untuk
petugas dapat dilihat pada Gambar 6.3. Tampilan halaman utama untuk dokter dapat dilihat
pada Gambar 6.4. Dan tampilan utama untuk pemilik dapat dilihat pada Gambar 6.5.
147

Gambar 6.3 Halaman Utama untuk petugas

Gambar 6.4 Tampilan utama untuk dokter


148

Gambar 6.5 Tampilan Utama Pemilik


6.2.2 Pengujian Kelola Manajemen Akun Pengguna, Obat dan Tindakan
Pengujian kelola manajemen akun pengguna bertujuan untuk memastikan fungsi pada
sistem ini dapat berjalan dengan baik. Pengujian dilakukan dengan menambahkan akun baru,
mengubah dan menghapus atau menonaktifkan akun. Tampilan untuk melihat daftar akun yang
telah terdata dapat dilihat pada Gambar 6.5 dengan mengakses menu “Manajemen” lalu ke
menu “Users”. Untuk uji coba menambahkan akun pengguna, tekan tombol “Tambah User”.
Kemudian muncul modal dengan formulir untuk masukan data akun pengguna baru seperti pada
Gambar 6.6. Apabila masukan data tidak benar maka muncul pesan seperti pada Gambar 6.7.
Jika masukan data benar maka akan tampil seperti pada Gambar 6.8. Untuk kasus pengubahan
data akun pengguna dapat dilakukan dengan menekan tombol “Ubah” pada baris akun mana
yang akan diubah. Tampilan formulir untuk mengubah data dapat dilihat pada Gambar 6.9. Dan
saat menghapus akun pengguna dapat dilakukan dengan menekan tombol “Hapus” pada baris
akun mana yang ingin dihapus. Karena tindakan menghapus akun membuat data akun menjadi
non aktif atau bahkan terhapus sehingga memungkinkan terjadi kesalahan data yang rumit,
maka saat benar-benar ingin menghapus/menonaktifkan akun akan muncul pesan konfirmasi
seperti pada Gambar 6.10.
149

Gambar 6.6 Formulir untuk tambah akun baru

Gambar 6.7 Pesan data yang dimasukkan salah


150

Gambar 6.8 Tampilan data yang dimasukkan benar

Gambar 6.9 Tampilan untuk ubah data akun


151

Gambar 6.10 Pesan konfirmasi menonaktifkan akun


Pada pengujian kelola manajeman obat dan tindakan hampir mirip dengan kelola
manajemen akun diatas, dengan tujuan agar fungsi dapat berjalan baik. Pada masing-masing
kelola manajemen akun, obat dan tindakan yang dibedakan hanya formulir masukan data yang
menyesuaikan dengan atribut masing-masing serta akses menu yang dikelompokan pada menu
“Manajemen”.
6.2.3 Pengujian Pendaftaran Pasien Baru
Pengujian pendaftaran pasien baru bertujuan untuk memastikan fungsi pendaftaran
pasien baru dapat berjalan dengan baik. Pengujian ini dilakukan dengan menambahkan data
pasien baru dan mendaftarkan ke unit layanan yang dituju. Terlebih dahulu masuk sebagai
petugas, untuk menambahkan pasien baru dapat dilakukan dengan menekan tombol “Pasien
Baru” pada halam utama seperti pada Gambar 6.11. data untuk Tampilan formulir masukan
pendaftaran pasien baru akan muncul seperti Gambar 6.12. Jika masukan data benar, maka akan
bertambah antrian pada kolom daftar antrian beserta status nya pada halaman utama seperti pada
Gambar 6.14.
152

Gambar 6.11 Tombol tambah pasien baru

Gambar 6.12 Tampilan formulir masukan pendaftaran pasien baru


153

Gambar 6.13 Antrian pada kolom daftar antrian beserta status


6.2.4 Pengujian Pendaftaran Pasien Lama
Pengujian pendaftar pasien lama bertujuan untuk memastikan fungsi pendaftaran pasien
lama yang telah terdaftar dapat ditemukan dan melakukan pendaftaran dengan baik. Pengujian
ini dilakukan dengan mencari pasien lama terlebih dahulu kemudian menentukan unit layanan
yang dikehendaki. Untuk melakukan pendaftaran pasien lama dapat dilakukan dengan menekan
tombol “Pasien Lama” pada halaman utama ditunjukan pada Gambar 6.14. Tampilan untuk
melakukan pendaftaran pasien lama ditunjukan pada Gambar 6.15. Pendaftaran terlebih dahulu
mencari data pasien dan dipilih yang ditunjukan pada Gambar 6.16. Apabila masukan data
kurang lengkap maka muncul pesan seperti pada Gambar 6.17. Jika masukan data benar, makan
akan bertambah antrian pada kolom daftar antrian pada halaman utama seperti saat pendaftaran
pasien baru.

Gambar 6.14 Tombol daftar pasien lama


154

Gambar 6.15 Halaman Pendaftaran pasien lama

Gambar 6.16 Pencarian dan pemilihan pada data pasien lama


155

Gambar 6.17 Notifikasi data kurang lengkap


6.2.5 Pengujian Pengisian Hasil Pemeriksaan Pasien Unit Layanan Umum dan Gigi
Pengujian pengisian hasil pemeriksaan pasien untuk unit layanan umum ditujukan untuk
memastikan dokter dapat memasukkan dengan baik data hasil pemeriksaan dalam bentuk
formulir rekam medis elektronik yang telah dibuat pada sistem informasi ini. Pada pengujian
ini dapat dilakukan setelah pasien sudah mendaftar ke unit layanan umum, sehingga akan
muncul antrian pemeriksaan pada halaman utama dokter seperti pada Gambar 6.18. Untuk dapat
mengisi formulir pemeriksaan dapat dilakukan dengan menekan tombol proses di antrian
pemeriksaan yang dapat dilihat pada Gambar 6.18. Untuk melakukan pengisian data
pemeriksaan pasien, dibagi menjadi 4 tahap yaitu mengisi data pemeriksaan umum dapat dilihat
pada Gambar 6.20, analisa pemeriksaan/SOAP dapat dilihat pada Gambar 6.21, tahap pengisian
resep obat dapat dilihat pada Gambar 6.22 dan tindakan dapat dilihat pada Gambar 6.23.

Sedangkan pada pengujian hasil pemeriksaan pasien pada unit layanan gigi hampir sama
seperti pemeriksaan pasien pada unit layanan umum hanya saja setelah tahap pengisian
pemeriksaan SOAP dan sebelum resep obat, ada formulir elemen gigi seperti ditampilkan pada
Gambar 6.24.
156

Gambar 6.18 Antrian pemeriksaan pada halaman dokter

Gambar 6.19 Halaman progress dari pemeriksaan pasien

Gambar 6.20 Empat tahap yaitu mengisi data pemeriksaan umum


157

Gambar 6.21 Analisa pemeriksaan/SOAP

Gambar 6.22 Tahap pengisian resep obat

Gambar 6.23 Tahap Tindakan


158

Gambar 6.24 Formulir elemen gigi pada pemeriksaan gigi


6.2.6 Pengujian Pembayaran Pemeriksaan Pasien
Pengujian pembayaran hasil dari pemeriksaan pasien bertujuan untuk memastikan
fungsi pembayaran seperti melihat harga yang perlu dibayar pasien untuk menebus obat dan
tindakan yang dilakukan dapat sesuai dengan seharusnya. Untuk melakukan pembayaran
pasien, pasien harus dalam kondisi selesai pemeriksaan dari dokter dan akan muncul antrian
pembayaran di halaman utama petugas. Sehingga petugas akan melakukan proses pembayaran
dengan melihat detail transaksi yang telah dilakukan saat pemeriksaan dengan menekan tombol
“Proses” pada baris antrian pembayaran yang dikehendaki yang dapat dilihat seperti pada
Gambar 6.25. Kemudian akan muncul daftar tagihan pasien yang harus dibayar seperti pada
Gambar 6.26. Terdapat kolom bayar berguna untuk membantu menghitung jumlah uang
kembalian yang dicontohkan pada Gambar 6.27..
159

Gambar 6.25 Antrian Pembayaran

Gambar 6.26 Daftar tagihan pasian yang harus dibayar

Gambar 6.27 Kolom bayar untuk membantu menghitung jumlah uang kembalian
6.2.7 Pengujian Cetak Struk Pembayaran
Pada saat memproses pembayaran terdapat pula fitur cetak struk. Maka pengujian cetak
struk pembayaran perlu dilakukan untuk memastikan fitur dapat berjalan dan sesuai dengan
yang dikehendaki pengguna. Untuk memulai mencetak cukup dengan menekan tombol “Cetak”
pada halaman pembayaran yang dapat dilihat juga pada Gambar 6.28. Kemudian akan muncul
dialog cetak oleh browser yang dapat dilihat pada Gambar 6.29. Dengan demikian pengguna
dapat mengatur kertas cetak dan hasil cetak yang diinginkan.
160

Gambar 6.28 Tombol cetak tagihan pembayaran

Gambar 6.29 Kotak dialog cetak oleh browser


6.3 Hasil Pengujian Pengguna
Pada tahap ini akan dilakukan pengujian hasil oleh pengguna dengan tujuan untuk
mengetahui apakah sistem sudah memenuhi kebutuhan yang pengguna sistem kehendaki serta
mendapatkan masukan agar sistem dapat dikembangan sesuai dengan keinginan pengguna.
Pengujian dilakukan oleh stakeholder/pengguna dengan mencoba fitur dan fungsi-fungsi yang
mereka butuhkan kemudian secara real-time berkomunikasi dengan pihak pengembang aplikasi
agar dapat dilakukan revisi sistem. Setelah stakeholder/pengguna selaku pemilik klinik telah
melakukan pengujian, maka sebagai yang menandai pengujian dan pemasangan telah berhasil
serta berjalan sesuai kebutuhan pengguna ditunjukkan dengan adanya surat pernyataan dari
stakeholder/pengguna yang akan dilampirkan bersama dengan laporan proyek ini.
161

DAFTAR PUSTAKA

Zulaika, Siti (2013). Laporan Tugas Akhir Sistem Informasi klinik Istiazah Berbasis Web Tahun
2013). Yogyakarta: Universitas Gadjah Mada.

Mutiara, Santika. (2014). Laporan Tugas Akhir Sistem Informasi klinik Fachri Oemran. Tahun
2014). Yogyakarta: Universitas Gadjah Mada.

Hafis. (2015). Laporan Tugas Akhir Sistem Informasi klinik Sehat. Tahun 2015). Yogyakarta:
Universitas Gadjah Mada.

Muslicah. (2017). Laporan Tugas Akhir Sistem Informasi klinik Podo Moro Berbasis Web .
Tahun 2017). Yogyakarta: Universitas Gadjah Mada.

Jogiyanto, H.M., 2005, Analisa dan Desain Sistem Informasi, ANDI, Yogyakarta.

Supriyanto, Aji, 2005, Pengantar Teknologi Informasi, Salemba Infotek, Jakarta.

Kossiakof dkk., 2002, System Engineering Principles and Practice, Second Edition.
Washington, DC: John Wiley and Sons, Inc.

Sutabri, Tata. S.Kom, MM. 2004, Analisa Sistem Informasi, Edisi Pertama. Yogyakarta

Burch, John & Grudnitski, Gary. 1986. Information System Theory and Practice. John Wiley &
Sons, New York.

McLeod, Jr Raymond, 2001. Sistem Informasi, Edisi Tujuh Jilid Dua. Prenhallindo, Jakarta

Alter, S. 1992. Information System: A Management Perspective. The Benjamin/Cummings


Publishing Company, Inc.

Turban, E., King, D., Viehland, D. & Lee, J. 2006, Electronic Commerce 2006: A Managerial
Perspective, International edn, Prentice Hall, Upper Saddle River, NJ.

Connolly, Thomas & Begg, Carolyn, 2002. Database System. Addision Wesley, England.
162

Data, C.J., 1995. An Introduction to Database Systems, 6th ed. Addison Willey Publishing
Wesley Publishing Wesley Company, Inc. Reading Massachusetts.

Edhy, Sutanta. 2004. Sistem Basis Data. Graha Ilmu, Yogyakarta.

Kadir, Abdul. 1999. Konsep dan Tuntunan Praktis Basis Data. Andi, Yogyakarta.

Pressman, Roger, S. 2001. Software Engineering: A Practitioner’s Approach. 5th Ed., McGraw-
Hill Book Company, New York.

Ramadhani, Graifhan. 2003. “Modul Pengenalan Internet”.

Nugroho, Adi. 2005. “Unified Modelling Language”.

Daqiqil, Ibnu. 2011. Framework CodeIgniter: Sebuah Panduan dan Best Practice. Pekanbaru.
163

LAMPIRAN

Anda mungkin juga menyukai