7 Contoh scipt javascript
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.
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 .
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.
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.
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
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.
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 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
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.
Gambar 4.1 ERD sistem infomasi Klinik Gigi dan Umum Samita
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
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
Created_at
Timestamp
Update_at
Timestamp
3. Tabel Obat Tabel obat merupakan tabel yang digunakkan untuk menyimpan semua atribut yang dimiliki oleh obat.
Tabel 4.3 Rancangan tabel obat
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
Nama_generik
Tanggal_kadaluarsa Date Tanggal_beli
Date
Harga_beli
Integer
Harga_jual
Created_at
Timestamp
Updated_at
Timestamp
Created_by
Integer
On_delete
Enum(“0”,”1”)
Update_by
Integer
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 .
Tabel 4.4 Rancangan tabel dokter
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
Id_users
Integer
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
Kode_gigi
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.
Tabel 4.6 Rancangan tabel pasien
Atribut
Tipe Data
Panjang Keterangan
Id Integer
Nama_lengkap
Varchar
Tanggal_lahir
Date
Tempat_lahir
Varchar
Jenis kelamin
Enum(“L”,”P”)
Nomor_telepon
Created_at
Timestamp
Update_at
Timestamp
Created_by
Integer
On_delete
Enum(“L”,”P”)
Updated_by
Integer
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
Id_pendaftaran
Integer
Uang_dibayar
Id_petugas
Integer
Created_at
Timestamp
Update_at
Timestamp
8. Tabel Penyakit
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
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
Id_tindakan
Integer
Is_delete
Enum(“0”,”1”)
Created_at
Timestamp
Update_at
10. Tabel resep Tabel resep merupakan tabel yang digunakkan untuk menyimpan hasil pemeriksaan yang di lakukan oleh dokter berupa resep.
Tabel 4.10 Rancangan tabel resep
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
Id_pemeriksaan
Integer
Id_obat
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
Id_penyakit
Integer
Is_delete
Enum(‘0’,’1’)
Created_at
Timestamp
Updated_at
Timestamp
12. Tabel status
Tabel status merupakan tabel yang digunakkan untuk menyimpan status pasien.
Tabel 4.12 Rancangan tabel status
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
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
Id_klinik
Integer
Created_at
Timestamp
Updated_at
Timestamp
Created_at
Integer
On_delete
Enum(‘0’,’1’)
Updated_by
Integer
14. Tabel trx_alergi Tabel trx_alergi merupakan tabel yang digunakkan untuk menyiimpan alergi pada saat transaksi pemeriksaan.
Tabel 4.14 Rancangan tabel trx_alergi
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
Id_alergi
Integer
Id_pemeriksaan
Integer
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
Id_tahap
Integer
Enum(‘pendaftaran’,’
Tahap
pemeriksaan’, ’pembayaran’)
Id_status
Integer
Antrian_ke
Integer
Created_at
Timestamp
Update_at
Timestamp
16. Tabel Alergi Tabel alergi merupakan tabel yang digunakan untuk menyimpan alergi-alergi yang diderita oleh pasien.
Tabel 4.16 Rancangan tabel trx_alergi
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
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
11 Primary key Id_dokter
Id Integer
Integer
Denyut_nadi
Integer
Tekanan_darah
Integer
Suhu_badan
Integer
Respiration_rate
Integer
Keluhan_utama
Text
Tinggi_badan
Integer
Berat_badan
Kel_usia
Enum(‘dewasa’,’anak’)
Created_at
Timestamp
Updated_at
Timestamp
Id_pendaftaran
Integer
18. Tabel Users
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
Nama_lengkap
Varchar
Tanggal_lahir
Date
Tempat_lahir
Varchar
No_telepon
Created_at
Timestamp
Updated_at
Timestamp
Created_by
Integer
Updated_by
Integer
On_delete
Enum(‘0,’1’)
19. Tabel pendaftaran Tabel pendaftaran merupakan tabel yang digunakan untuk menyimpan pasien yang melakukan pendaftaran.
Tabel 4.19 Rancangan tabel pendaftaran
Atribut
Tipe Data
Panjang Keterangan
Id Integer
11 Primary key
Id_pasien
Id_klinik
Integer
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
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.
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
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
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)
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)
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)
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
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.
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.
Gambar 4.13 Rancangan antarmuka dashboard pemilik
Gambar 4.14 Rancangan antarmuka dashboard petugas
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
Gambar 4.16 Rancangan antarmuka halaman profil pemilik
Gambar 4.17 Rancangan antarmuka halaman profil petugas
Gambar 4.18 Rancangan antarmuka halaman profil dokter
Gambar 4.19 Rancangan antarmuka ubah data pemilik
Gambar 4.20 Rancangan antarmuka ubah data petugas
Gambar 4.21 Rancangan antarmuka ubah data dokter
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
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.
Gambar 4.24 Rancangan antarmuka antrian pembayaran diakses oleh pemilik
Gambar 4.25 Rancangan antarmuka antrian pembayaran diakses oleh petugas
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
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.
Gambar 4.28 Rancangan antarmuka catatn pemeriksaan terakhir diakses oleh pemilik
Gambar 4.29 Rancangan antarmuka catatan pemeriksaan terakhir diakses oleh dokter
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.
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
Gambar 4.32 Rancangan antarmuka manajemen tindakan
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.
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
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.
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.
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.
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
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
Gambar 4.42 Rancangan antarmuka tahap analisa pemeriksaan pada klinik umum
Gambar 4.43 Rancangan antarmuka pemeriksaan tahap 3 (Resep Obat) pada klinik
umum
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.
Gambar 4.45 Rancangan antarmuka pemeriksaan tahap 1 pada klinik Gigi
Gambar 4.46 Rancangan antarmuka pemeriksaan tahap 2 pada klinik Gigi
Gambar 4.47 Rancangan antarmuka pemeriksaan tahap 3 pada klinik Gigi
Gambar 4.48 Rancangan antarmuka pemeriksaan tahap 4 (Resep Obat) pada klinik
Gigi
Gambar 4.49 Rancangan antarmuka pemeriksaan tahap 5 (Tindakan) pada klinik Gigi
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 :
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:
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:
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:
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.
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 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
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:
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
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:
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:
$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 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
Gambar 5.21 Halaman utama petugas Gambar 5.21 Halaman utama 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
Gambar 5.23 Implementasi formulir pendaftaran pasien baru Gambar 5.23 Implementasi formulir pendaftaran pasien baru
$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
Gambar 5.25 Implementasi pendaftaran pasien lama Gambar 5.25 Implementasi pendaftaran 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.
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.
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
}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 Gambar 5.31 Implementasi formulir pemeriksaan pada klinik umum
= $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
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
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 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
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 Gambar 5.38 Source code rekam medis untuk menyimpan data pemeriksaan umum
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
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 Gambar 5.41 Source code daftar rekam medis terakhir
= $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.
Gambar 5.43 Implementasi daftar obat yang tersedia pada klinik
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
Gambar 5.45 Implementasi halaman untuk menambah obat
Gambar 5.46 Implementasi halaman untuk mengubah data obat Gambar 5.46 Implementasi halaman untuk mengubah data obat
= $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
$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.
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.
Gambar 5.51 Implementasi halaman pemilik untuk memilih akun pengguna
Gambar 5.52 Implementasi halaman daftar pengguna
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
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 Gambar 5.55 Source code menyimpan data pengguna
} # 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
// 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 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
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
# 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.
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..
Gambar 5.63 Impelementasi menuju ke halaman manajemen tindakan
Gambar 5.64 Implementasi halaman manajemen tindakan Gambar 5.64 Implementasi halaman manajemen tindakan
$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.
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 Gambar 5.67 Source code untuk tambah tindakan
>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 Gambar 5.69 Implementasi konfirmasi hapus 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
Gambar 5.72 Implementasi daftar pasien
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 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
Gambar 5.74 Implementasi form tambah data pasien baru
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
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
$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 Gambar 5.79 Implementasi konfirmasi hapus data 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
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
Gambar 5.83 Implementasi cetak pembayaran
Gambar 5.84 Implementasi cetak pembayaran pada halaman pembayaran pasien
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
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
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.
Gambar 6.3 Halaman Utama untuk petugas
Gambar 6.4 Tampilan utama untuk dokter
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 dap at 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.
Gambar 6.6 Formulir untuk tambah akun baru
Gambar 6.7 Pesan data yang dimasukkan salah
Gambar 6.8 Tampilan data yang dimasukkan benar
Gambar 6.9 Tampilan untuk ubah data akun
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 menamba hkan 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.
Gambar 6.11 Tombol tambah pasien baru
Gambar 6.12 Tampilan formulir masukan pendaftaran pasien baru
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
Gambar 6.15 Halaman Pendaftaran pasien lama
Gambar 6.16 Pencarian dan pemilihan pada data pasien lama
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.
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
Gambar 6.21 Analisa pemeriksaan/SOAP
Gambar 6.22 Tahap pengisian resep obat
Gambar 6.23 Tahap Tindakan
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..
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.
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.