BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Perangkat Lunak (Software) Perangkat keras komputer tidak akan dapat beroperasi tanpa adanya perangkat lunak. Teknologi yang canggih dari perangkat keras akan berfungsi apabila instruksi-instruksi tertentu telah diberikan kepada perangkat keras komputer. Instruksi-instruksi ini disebut perangkat lunak. Instruksi-instruksi perangkat lunak ditulis oleh manusia untuk mengaktifkan fungsi dari perangkat keras komputer. Perangkat lunak dikategorikan kedalam tiga bagian yaitu: 1. Perangkat lunak sistem operasi (operating system), yaitu program yang digunakan untuk mengendalikan, mengkoordinasi kegiatan dari sistem. 2. Perangkat lunak bahasa ( language software ), yaitu program yang digunakan untuk menterjemahkan instruksi-instruksi yang ditulis dalam bahasa pemrograman kedalam bahasa mesin agar dapat dimengerti oleh komputer. 3. Perangkat lunak aplikasi (application software), yaitu program yang ditulis dan diterjemahkan oleh bahasa pemrograman untuk menyelesaikan suatu masalah tertentu. Adapun perangkat lunak yang digunakan penulis untuk membuat Aplikasi Rancang Bangun Aplikasi Administrasi Penghasil Laporan pada Linux Ubuntu : Studi Kasus RSUD XYZ adalah : 1. Sistem operasi Linux versi 9.0 2. Bahasa Pemrograman (Application software) GAMBAS 2.0 3.2 ANALISA SISTEM YANG SEDANG BERJALAN Saat ini pencatatan registrasi pasien IGD menggunakan aplikasi microsoft office yaitu MS excel. Petugas rekam medis mencatat pasien yang masuk ke IGD ke MS excel kemudian di MS excel dibuat rumus formula untuk menjumlahkan datadata yang mereka perlukan seperti: jumlah pasien masuk perhari, diagnosa- 29
30 diagnosa pasien terbanyak, jumlah pasien laki-laki dan perempuan, jumlah pasien perdokter. Proses registrasi pasien IGD diilustrasikan secara sederhana seperti gambar dibawah ini : Mulai Buka Aplikasi Pasien Baru Tidak Ya Input Data Pasien Baru Registrasi Pasien Dirawat Inap Tidak Pendaftaran Rawat Inap Ya Selesai Gambar 3.1 Flowchart Alur Pasien IGD
31 Dalam proses registrasi pasien, terdapat 2 jenis kategori pasien yang masuk ke IGD yaitu : 1. Pasien Baru : pasien yang baru pertama kali datang berobat ke RSUD XYZ dan belum pernah berobat dirawat jalan dan di IGD 2. Pasien Lama : pasien yang sudah pernah berobat di RSUD XYZ. Bukti pasien tersebut pasien lama adalah adanya kartu berobat yang diterbitkan oleh unit rekam medis. Untuk proses pulangnya pasien di IGD terbagi menjadi 4 jenis : 1. Pulang : Pasien yang dinyatakan sembuh oleh dokter 2. Rawat Inap : Pasien yang dinyatakan oleh dokter harus ada pengobatan lebih lanjut. 3. Meninggal : Pasien yang kondisinya kritis dan meninggal di ruang IGD 4. D.O.A : Pasien yang datang ke IGD RSUD XYZ dengan kondisi sudah meninggal 3.3 ANALISIS TEKNOLOGI 1. Bahasa pemograman yang di gunakan yaitu GAMBAS versi 2.0 2. Teknologi yang di gunakan yaitu Mysql untuk di gunakan sebagai pemrosesan database. 3.4 ANALISIS HAK PENGGUNA Sistem ini memiliki dua kategori pengguna seperti tabel dibawah ini : Tabel 3.1 Analisis hak pengguna
32 3.5 Analisis webbrowser1 pada tools Gambas Linux sebagai alat reporting Webbrowser1 adalah tools yang ada pada Gambas linux. Fungsi dari Webbrowser1 adalah sebagai sarana reporting. Untuk menggunakan tools ini, komponen gb.report pada Gambas harus diaktifkan. Komponen tersebut ada pada Project-Component lalu pilih tab component, beri tanda ceklist pada gb.report untuk mengaktifkan tools Webbrowser1. Proses menampilkan data dalam bentuk report adalah dengan menterjemahkan script-script html. Script-Script HTML berfungsi untuk mendesain bentuk dari laporan misalnya garis, tinggi header, kolom, baris dan lain-lain sesuai dengan desain laporan yang diinginkan pengguna. Script-script html tersebut akan diterjemahkan ke dalam sebuah variable dengan coding gambas agar dikenali di area project, hasil report berupa sebuah file. File tersebut akan disimpan dalam sebuah directory. Untuk menampilkan ke layar file report tersebut akan ditampilkan didalam objek browser. 3.6 Perancangan Sistem Rancangan sistem merupakan langkah multi proses yang memutuskan kerja pada struktur data, arsitektur perangkat lunak, prosedur rinci serta karakteristik antar muka. Rancangan sistem dapat juga di definisikan sebagai penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah kedalam kesatuan-kesatuan yang utuh dan berfungsi. Rancangan sistem akan mengubah kebutuhan-kebutuhan sistem menjadi sebuah representasi perangkat lunak. 3.7 Perancangan Data Flow Diagram (DFD) Untuk mendukung perancangan sistem aplikasi Rancang Bangun Aplikasi Administrasi Penghasil Laporan pada Linux Ubuntu : Studi Kasus RSUD XYZ, penulis menggambarkan data flow diagram ini untuk dijadikan sebagai model yang nantinya akan digunakan dalam membuat program. Adapun data flow diagram yang telah penulis rancang adalah sebagai berikut:
33 3.7.1 Context Diagram Context diagram mengambarkan suatu proses yang akan mewakili proses dari seluruh sistem serta hubungan- hubungan masukan dan keluaran antara sistem dengan kesatuan luar. Adapun diagram konteks yang telah penulis rancang pada aplikasi ini adalah seperti pada Gambar 3.2 berikut. Gambar 3.2 Context Diagram Sistem
34 3.7.2 Data Flow Diagram Level 1 aplikasi Untuk DFD Level 1 ditunjukan pada gambar 3.3 berikut : Gambar 3.3 Data Flow Diagram Level 1 Aplikasi
35 3.7.3 Data Flow Diagram Level 2 data konfigurasi (Proses 1.0) Untuk DFD Level 2 data konfigurasi ditunjukan pada gambar 3.4 berikut : Gambar 3.4 DFD level 2 data konfigurasi 3.7.4 Data Flow Diagram Level 2 Login (Proses 2.0) Untuk DFD Level 2 pengguna ditujukan pada Gambar 3.5 berikut : Gambar 3.5 DFD level 2 login
36 3.7.5 Data Flow Diagram Level 2 data pasien (Proses 3.0) Untuk DFD level 2 data pasien ditujukan pada gambar 3.6 berikut : Gambar 3.6 DFD level 2 data pasien 3.7.6 Data Flow Diagram Level 2 proses registrasi pasien (Proses 4.0) Untuk DFD Level 2 ditunjukan pada gambar 3.7 berikut Gambar 3.7 DFD level 2 registasi pasien
37 3.7.7 Data Flow Diagram Level 2 proses validasi registrasi (Proses 5.0) Untuk DFD Level 2 ditujukan pada gambar 3.8 berikut Gambar 3.8 DFD level 2 validasi registrasi 3.7.8 Data Flow Diagram Level 2 report (Proses 6.0) Untuk DFD Level 2 ditujukan pada gambar 3.9 berikut Gambar 3.9 DFD level 2 report
38 3.8 Perancangan Sistem Basisdata Basis data adalah kelompok data yang saling berhubungan yang dikelola sedemikian rupa agar kelak dapat di manfaatkan kembali dengan cepat dan mudah. Perancangan basis data merupakan salah satu tahap yang paling penting dalam proses pembuatan program aplikasi. Tujuan dirancangnya basis data adalah untuk mendefinisikan data-data yang ada dalam suatu file. File-file ini berisi data yang mengalir, baik yang masuk maupun yang keluar dari suatu sistem. Basis data yang digunakan oleh penulis adalah basis data yang dibuat melalui Mysql. 3.8.1 Rancangan Logikal Dari analisa sistem yang ada saat ini, maka penulis melakukan perancangan model logical untuk memetakan proses kedalam sebuah model database. Model database yang akan dipergunakan adalah sebagai berikut : 1. Asuransi, Berfungsi menyimpan data asuransi pasien. 2. Diagnosa, Berfungsi menyimpan data diagnosa pasien. 3. Dokter, Berfungsi menyimpan data nama-nama dokter jaga IGD. 4. Keterangan, Berfungsi menyimpan data penyelesaian tindakan ke pasien. 5. Login, Berfungsi menyimpan data pengguna aplikasi. 6. Pasien, Berfungsi menyimpan data-data pasien. 7. Register, Berfungsi menyimpan data pasien yang berobat ke IGD. 8. Ruangan, Berisi data ruangan tempat pasien IGD dirawat inap. Asuransi Diagnosa Dokter Keterangan Login Pasien Register Ruangan Gambar 3.10 Entity pada sistem informasi IGD
39 Atribut setiap entity beserta primary keynya Dalam entity asuransi, attribut dari entity tersebut, seperti : Idasuransi * Asuransi Alamat Marketing Telp Validasi Dalam entity diagnosa, attribut dari entity tersebut, seperti : Iddiagnosa * Diagnosa Validasi Dalam entity dokter, attribut dari entity tersebut, seperti : Iddokter * Dokternama Spesialis Telp Validasi Dalam entity keterangan, attribut dari entity tersebut, seperti : Idketerangan * Keterangan Validasi Dalam entity login, attribut dari entity tersebut, seperti Idlogin * Full_name Login Password Level Validasi
40 Dalam entity pasien, attribut dari entity tersebut, seperti : Idpasien * Nomr Pasiennama Tanggal_lahir Jk Usia Alamat Telp Validasi Dalam entity register, attribut dari entity tersebut, seperti : Idregister * Tanggal Catatan Lama/baru Waktu Tanggal_2 Final Validasi Dalam entity ruangan, attribut dari entity tersebut, seperti : Idruangan * Ruangan Kelas Lantai Validasi
41 Berikut daftar attribut dan kunci dari entity asuransi, diagnosa, dokter, keterangan, login, pasien, register, ruangan Gambar 3.11 Daftar atribut beserta kuncinya
42 Penggambaran relasi tabel sistem informasi IGD Gambar 3.12 Entity Relationship Diagram (ERD) sistem informasi IGD Keterangan : * : Primary key ** : Foreign key Penjelasan relasi tabel lengkap Tabel dokter adalah tabel yang digunakan untuk menyimpan data namanama dokter yang praktek di IGD. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci iddokter. Hal ini berarti bahwa satu dokter bisa menangani banyak pasien yang berobat di IGD. Tabel asuransi adalah tabel yang digunakan untuk menyimpan data namanama perusahaan asuransi yang sudah bekerja sama dengan RSUD XYZ. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci idasuransi.
43 Hal ini berarti setiap pasien yang berobat ke IGD mempunyai jenis asuransi yang berbeda-beda. Tabel login adalah tabel yang digunakan untuk menyimpan data nama-nama pengawai unit Rekam Medis yang berhak menggunakan aplikasi sistem informasi IGD. Tabel keterangan adalah tabel yang digunakan untuk menyimpan data keterangan tentang pasien yang sudah selesai dilakukan tindakan oleh dokter di IGD. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci idketerangan. Hal ini berarti bahwa satu keterangan bisa ada untuk setiap pasien yang registrasi ke IGD. Tabel diagnosa adalah tabel yang digunakan untuk menyimpan data-data diagnosa pasien. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci iddiagnosa. Setiap pasien yang berobat ke IGD pasti memiliki diagnosa penyakit. Hal ini berarti bahwa satu diagnosa bisa dimiliki oleh satu pasien atau lebih. Tabel pasien adalah tabel yang digunakan untuk menyimpan data namanama pasien. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci idpasien. Hal ini berarti bahwa satu pasien bisa melakukan registrasi berkali-kali di IGD. Tabel ruangan adalah tabel yang digunakan untuk menyimpan data namanama ruang perawatan tempat pasien IGD yang akan dirawat inap. Tabel ini memiliki jenis relasi one to many ke tabel register dengan field kunci idruangan. Hal ini berarti bahwa satu ruangan bisa ditempat oleh banyak pasien yang berobat ke IGD. 3.8.2 Perancangan fisik Suatu database di definisikan sebagai kumpulan data yang di satukan dalam suatu entitas. Maksud dari database ini yaitu untuk menyimpan semua data yang diinginkan kepada suatu komponen, sehingga penyimpanan data dapat redundant. Pada perancangan database secara fisikal sistem ini terdiri dari satu database dan terdiri dari 8 tabel yaitu tabel asuransi, diagnosa, dokter, keterangan,login, pasien,
44 register dan ruangan. Rancangan field-field untuk tiap tabel dapat di lihat pada Gambar table-tabel berikut beserta tipe data dan ukurannya. Tabel Asuransi Nama Field Tipe Data Ukuran Idasuransi * Auto_increment 11 Asuransi Varchar 50 Alamat Varchar 100 Marketing Varchar 50 Telp Varchar 50 Validasi Binary 1 Tabel Diagnosa Nama Field Tipe Data Ukuran Iddiagnosa * Auto_increment 11 Diagnosa Varchar 200 Validasi Binary 1 Tabel Dokter Nama Field Tipe Data Ukuran Iddokter * Auto_increment 11 DokterNama Varchar 50 Spesialis Varchar 30 Telp Varchar 50 Validasi Binary 1 Tabel Keterangan Nama Field Tipe Data Ukuran IdKeterangan * Auto_increment 11 Keterangan Varchar 30 Validasi Binary 1
45 Tabel Login Nama Field Tipe Data Ukuran IdLogin * Auto_increment 11 Full_Name Varchar 100 Login Varchar 20 Password Varchar 20 Level Varchar 5 Validasi Binary 1 Tabel Pasien Nama Field Tipe Data Ukuran IdPasien * Auto_increment 11 NoMr Varchar 8 PasienNama Varchar 50 Tanggal_Lahir Date - JK Varchar 1 Usia Varchar 8 Alamat Varchar 100 Telp Varchar 20 Validasi Binary 1 Tabel Ruangan Nama Field Tipe Data Ukuran Idruangan * Auto_increment 11 Ruangan Varchar 20 Kelas Varchar 10 Lantai Varchar 8 Validasi Binary 1
46 Tabel Register Nama Field Tipe Data Ukuran IdRegister * Auto_increment 11 Tanggal Timestamp - Idpasien ** Integer 11 IdAsuransi ** Integer 11 Iddokter ** Integer 11 Iddiagnosa ** Integer 11 Idketerangan ** Integer 11 IdRuangan ** Integer 11 Catatan Varchar 100 Lama/Baru Varchar 1 Waktu Varchar 5 Tanggal_2 Date - Final Binary 1 Validasi Binary 1 3.9 Perancangan Program Langkah-langkah perancangan dalam program aplikasi ini dijelaskan sebagai berikut : 1. Pembuatan basis data yang diperlukan dalam hal ini penulis menggunakan Mysql sebagai pendukung. 2. Perancangan dan pembuatan tampilan aplikasi. 3.10 Struktur Program Struktur dari aplikasi yang penulis buat ini disusun atau dibuat secara modular. Yaitu dimana program dibentuk dari kumpulan modul kecil agar dalam tahap pengecekan, modifikasi dan pemeriksaan penulis tidak mengalami kesulitan. Penulis membuat perancangan dari struktur program seperti pada gambar dibawah ini.
47 Gambar 3.13 Diagram Dekomposisi sistem informasi IGD Keterangan: - Huruf (F) = kependekan dari form. - Huruf (M) = kependekan dari Menu. - = simbol form atau menu yang dapat di akses oleh user. 3.11 Rancangan Tampilan Program Rancangan tampilan awal dari aplikasi sistem informasi IGD ini, masih dibuat secara sederhana, tanpa menggunakan banyak motif, tapi penulis berusaha untuk merancang tampilan utama ini sehingga dapat mewakili seluruh aspek aspirasi penulis, adapun rancangan tampilan awalnya adalah sebagai berikut:
48 1. Rancangan Halaman Login Halaman pertama yang diakses oleh user adalah halaman login. Halaman login ini terdiri dari dua data inputan yaitu user name dan password. Gambar 3.14 berikut adalah rancangan dari halaman login. Gambar 3.14 Rancangan Halaman Login 2. Rancangan Halaman Utama Halaman ini adalah halaman yang akan dijalankan oleh sistem pada saat pertama kali pengguna mengeksekusi. Halaman ini menampilkan semua menu yang ada pada aplikasi. Gambar 3.15 di bawah ini adalah rancangan menu utama dengan login user dengan tingkat level admin. Gambar 3.15 Rancangan Halaman Awal
49 3. Rancangan form input data pasien Pada form input data pasien terdapat beberapa jenis input inputan diantaranya nomor rekam medis, nama pasien, jenis kelamin, usia, tanggal lahir, alamat dan telpon. Berikut adalah rancangan dari form input data pasien. Gambar 3.16 Input data pasien 4. Rancangan form pencarian Pada form pencarian terdapat dua kotak input inputan dan dua tombol aksi. Kotak inputan terdiri dari kotak inputan untuk nama dan satu lagi untuk tanggal lahir. Untuk tombol aksi terdiri dari tombol cari dan tombol tutup. Berikut adalah rancangan dari form pencarian. Gambar 3.17 Rancangan Halaman Pencarian Pasien
50 5. Rancangan form pendaftaran Pada form pendaftaran terdapat tiga kotak inputan dan tiga combobox (kotak pilihan). Tiga kotak inputan terdiri dari tanggal, no MR dan nama pasien.untuk combobox (kotak pilihan) terdiri dari lama/baru, asuransi dan dokter.berikut adalah rancangan dari form pendaftaran 3.18 Rancangan Halaman pendaftaran 6. Rancangan form validasi Form validasi terdiri dari dua kotak inputan, satu kotak label dan kita tiga combobox (kotak pilihan). Kotak inputan terdiri dari no MR dan keterangan. Kotak label berisi nama pasien dan combobox (kotak pilihan) terdiri dari diagnose, keterangan serta pilihan ruangan. Berikut rancangan dari form validasi. 3.19 Rancangan Halaman validasi
51 7. Rancangan form daftar validasi Form daftar validasi hanya menampilkan daftar pasien yang sedang dilakukan tindakan di dalam ruangan IGD oleh dokter. Field-field yang ditampilkan adalah no, MR, nama pasien, asuransi, umur, jenis kelamin dan lain-lain.berikut adalah rancangan form daftar validasi 3.20 Rancangan Halaman daftar validasi 8. Rancangan form daftar pasien masuk Form ini menampilkan daftar pasien yang masuk di IGD dan sudah selesai dilakukan tindakan oleh dokter. Field-field yang ditampilkan diantaranya no, MR, Nama Pasien, Asuransi, Umur, Jenis Kelamin, Diagnosa, Shift dan lain-lain. Berikut rancangan adalah form nya. 3.21 Rancangan halaman daftar pasien masuk
52 9. Rancangan form grafik kunjungan Form ini menampilkan grafik kunjungan pasien dengan periode 10 terakhir dari tanggal sekarang. Berikut rancangan form grafik kunjungan. 3.22 Rancangan Halaman grafik kunjungan 10. Rancangan form rekapitulasi Form ini menampilkan jumlah pasien laki-laki dan perempuan. Data-data yang ditampilkan adalah tanggal kunjungan, laki-laki dan perempuan serta terdapat dua tombol pada form diantaranya tampilkan dan tutup. Berikut adalah rancangannya : 3.23 Rancangan halaman rekapitulasi
53 11. Rancangan form cetak laporan Pada form cetak laporan terdapat dua pilihan diantara dua pilihannya yaitu preview dan cetak serta tombol proses dan batal. Berikut rancangannya: 3.24 Rancangan halaman cetak laporan 12. Rancangan form Asuransi Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat empat kotak isian diantara nama perusahaan, alamat, marketing, telp marketing serta tiga tombol aksi yaitu simpan, hapus, dan tutup. Berikut ini adalah rancangannya. 3.25 Rancangan halaman konfigurasi asuransi
54 13. Rancangan form dokter Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat tiga kotak inputan diantara dokter, spesialis, telepon serta tiga tombol aksi yaitu simpan, hapus, dan tutup. Berikut ini adalah rancangannya. Gambar 3.26 Rancangan form konfigurasi dokter 14. Rancangan form ruangan Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat tiga kotak inputan yaitu ruangan, lantai, kelas serta tiga tombol aksi yaitu simpan, hapus, tutup. Berikut ini adalah rancangannya. Gambar 3.27 Rancangan form konfigurasi ruangan
55 14. Rancangan form diagnosa Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat satu kotak tempat inputan yaitu tempat inputan diagnose serta terdapat tiga tombol yaitu simpan, hapus, tutup. Berikut ini adalah rancangannya. Gambar 3.28 Rancangan form konfigurasi diagnosa 15. Rancangan form keterangan Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat satu kotak tempat inputan yaitu kotam inputan keterangan serta tiga tombol aksi yaitu simpan, hapus, tutup. Berikut ini adalah rancangannya Gambar 3.29 Rancangan form konfigurasi keterangan
56 16. Rancangan form pengguna Form ini digunakan oleh pengguna dengan level administrator. Pada form ini terdapat tiga kotak inputan yaitu nama, login, password serta kotak pilihan yaitu level dan juga terdapat dua tombol aksi yaitu proses dan tutup. Berikut ini adalah rancangannya. Gambar 3.30 Rancangan form konfigurasi pengguna 17. Rancangan form daftar pengguna Form ini digunakan oleh pengguna dengan level administrator. Field-field yang ditampilkan adalah no, nama lengkap, login, password, level. Berikut ini adalah rancangannya Gambar 3.31 Rancangan form daftar pengguna