49 BAB 3
ANALIS IS DAN PERANCANGAN
3.1 Analisis
Berikut ini merupakan analisis pada Klinik M edikarya yang meliputi:
3.1.1 Riwayat Klinik
Klinik M edikarya terletak di Jalan Summagung III Blok PB Unit 1 Kelapa Gading, Jakarta Utara 14240. Pada awal keberadaannya, Klinik M edikarya didirikan atas keinginan seorang kerabat dekat dari Dr. Lucy Irliani selaku Direktur Utama yang menginginkan adanya kesejahteraan kesehatan untuk dirinya serta masyarakat di lingkungan sekitar. Berdasarkan keinginan Beliau, Dr. Lucy beserta tujuh rekan sesama profesinya sepakat untuk mendirikan sebuah yayasan independent sebagai pusat kesehatan masyarakat yang diberi nama Klinik M edikarya. Klinik M edikarya resmi disahkan oleh Gubernur Kepala Daerah Khusus Ibu Kota Jakarta, Bapak R. Soeprapto pada tanggal 22 Desember 1984 dengan hak izin No. PBDS.038/2.41.12.09 dan pada waktu itu hanya memiliki pelayanan medis dokter umum dan dokter jaga.
Seiring dengan berjalannya waktu, kebutuhan masyarakat akan pelayanan medis pun semakin meningkat sehingga menyebabkan Klinik M edikarya pada akhirnya menambah bagian pelayanannya, tidak hanya dalam hal Bagian M edis melainkan dalam Bagian Keperawatan serta subbagian lainnya yang saling terkait dalam melakukan kegiatan operasional. Penambahan pelayanan medis yang dilakukan adalah seperti penambahan dokter spesialis dan rumah apotek yang bekerja sama dengan Pedagang Besar Farmasi (PBF) sebagai pemasok obat.
Dalam menjalankan fungsinya sebagai pusat kesehatan masyarakat, diharapkan agar semua bagian dan sub bagian yang ada di Klinik M edikarya mampu bekerja dengan maksimal dan dituntut untuk menjadi profesional. Sesuai dengan fungsinya, maka Klinik M edikarya berada di bawah Departemen Kesehatan Republik Indonesia yang fungsinya diatur dalam peraturan perundang-undangan yang berlaku.
3.1.1.a Visi
M emiliki penanganan medis yang berkualitas dan profesional, serta mampu bersaing secara global.
3.1.1.b Misi
1. M emberikan pelayanan kesehatan kepada masyarakat sekitar dengan pelayanan yang profesional.
2. M eningkatkan kualitas pelayanan kesehatan yang bermutu dengan ditunjang sarana dan prasarana yang memadai dan sumber daya manusia yang berkualitas.
3. Turut serta dalam meningkatkan taraf kesehatan masyarakat sekitar dengan melayani sepenuh hati.
3.1.1.c Tujuan
1. M engembangkan dan memberikan pelayanan dalam bidang kesehatan masyarakat sekitar.
51 3.1.2 S truktur Organisasi
Stuktur organisasi Klinik M edikarya disusun berdasarkan tugas dan tanggung jawab tiap bagian dan sub bagian yang ada agar dapat memudahkan pencarian data yang diperlukan dan transparansi laporan maupun informasi sehingga dapat dipertanggungjawabkan dan akurat. Semuanya difokuskan untuk produktivitas dan kesejahteraan Klinik M edikarya, serta kepuasaan pengguna jasa.
3.1.3 Pembagian Tugas dan Tanggung Jawab
Berdasarkan struktur organisasi di atas, setiap bagian dan subbagian telah memiliki tugas dan tanggung jawabnya masing-masing dengan rincian sebagai berikut:
1. Direktur Utama
M emimpin, menyusun kebijaksanaan, membina, mengoordinasi, dan mengawasi pelaksanaan keseluruhan tugas-tugas pada tiap bagian dan sub bagian yang berada di Klinik M edikarya.
2. Rumah Apotek
Sarana farmasi yang melaksanakan peracikan, pengubahan bentuk, dan pencampuran dan penyerahan obat atau bahan obat dengan dibantu tenaga Bagian Apotek/Apoteker.
3. Wakil Direktur Umum
M embantu tugas direktur utama dalam hal mengoordinasi kegiatan urusan umum dan perlengkapan kebutuhan klinik yang terbagi menjadi beberapa bagian-bagian sebagai berikut:
a. Bagian Administrasi / Tata Usaha
M emberikan pelayanan admistrasi kepada seluruh unit di lingkungan klinik, menghimpun data karyawan, dokter dan pasien, melakukan audit dan ketatausahaan.
b. Bagian Perencanaan dan Evaluasi
M enyusun rencana anggaran pendapatan yang diperoleh pasien, menyusun rencana anggaran belanja sesuai kebutuhan klinik, menyusun program kegiatan
53 klinik, dan mengevaluasi keseluruhan anggaran yang sudah berjalan dari perencanaan.
c. Bagian Kepegawaian
M empunyai tugas melaksanakan urusan kepegawaian, seperti mengoordinasi dan melakukan pencatatan jadwal praktek dokter, jadwal kerja karyawan, absensi dokter dan karyawan.
4. Wakil Direktur Keuangan
M embantu tugas direktur utama dalam hal mengoordinasi kegiatan urusan anggaran serta laporan keuangan klinik yang terbagi menjadi beberapa bagian-bagian sebagai berikut:
a. Bagian Anggaran dan Belanja
M elaksanakan penyusunan rencana pelaksanaan anggaran pendapatan dan belanja, revisi rencana anggaran dan belanja, pemantauan rencana anggaran dan belanja, penilaian dan penyusunan laporan pelaksaan anggaran dan belanja. b. Bagian Akutansi
M elakukan audit meliputi pembukuan keuangan dan menilai pendapatan dan belanja dari klinik.
c. Bagian Kasir
M enangani pendapatan dari hasil pembayaran pasien dan bertanggung jawab atas pencatatan pendapatan ke wakil direktur keuangan.
5. Wakil Direktur Pelayanan
M embantu tugas direktur utama dalam hal pelaksanaan, mengoordinasikan dan mengawasi pelaksanaan tugas pada bidang-bidang berikut:
a. Bidang Medis
Pelayanan medis yang diberikan dalam bentuk jasa, berikut adalah rincian Bidang M edis pada Klinik M edikarya:
1. Dokter Umum
M emberikan pelayanan jasa medis kepada pasien tidak dibatasi golongan usia, jenis kelamin, sistem organ, jenis penyakit, dan status sosial.
2. Dokter Jaga
M emberikan pelayanan jasa sebagai pertolongan pertama apabila ada tanda-tanda kegawatan medis pada pasien, serta melakukan tindakan pencatatan sebelum ada penanganan lebih lanjut oleh dokter ahli.
3. Dokter Gigi
M empunyai tugas untuk mengidentifikasi, merencanakan, dan memecahkan masalah serta mengevaluasi program kesehatan gigi dan mulut, serta bertanggung jawab dalam pencatatan dan pelaporan pelaksanaan program dan pelayanan kesehatan gigi.
4. Dokter Ahli
M empunyai tugas untuk mengobati masyarakat sesuai dengan keahlian yang dimiliki oleh dokter seperti dokter spesialis THT, dokter spesialis gizi, dokter spesialis mata, fisioterapi, dan konsultasi psikologi.
b. Bidang Keperawatan
Perawat mempunyai tugas pelayanan tindakan medis yang hanya dapat dilakukan berdasarkan permintaan tertulis dari dokter.
55 3.1.4 Gambaran Umum Sistem yang Sedang Berjalan
Prosedur sistem yang sedang berjalan pada Klinik M edikarya masih diakses secara manual dan sistem basis datanya belum terintegrasi satu sama lain karena Klinik M edikarya masih menggunakan M icrosoft Office Excel 2003 untuk memasukkan data dan juga dalam penyimpanan data administrasinya masih disimpan di rak pembukuan. Kegiatan operasional terbentuk karena adanya proses bisnis dalam suatu organisasi itu sendiri seperti yang terjadi pada Klinik M edikarya, dimana proses bisnis tersebut menjelaskan prosedur sistem yang sedang berjalan.
3.1.4.a Proses Bisnis dan Diagram Aliran Dokumen
Kegiatan operasional terbentuk karena adanya proses bisnis dalam suatu organisasi itu sendiri seperti yang terjadi pada Klinik M edikarya, dimana proses bisnis tersebut menjelaskan sistem operasional yang sedang berjalan dan digambarkan melalui sebuah Diagram Aliran Dokumen sebagai berikut:
1. Prosedur Pendaftaran Pasien
Pasien yang akan berobat pada Klinik M edikarya harus mendaftar terlebih dahulu ke Bagian Adminisrasi/Tata Usaha. Bagian Administrasi/Tata Usaha menanyakan kepada pasien, Bagian M edis apa yang dibutuhkan pasien.
Jika pasien belum terdaftar, Bagian Administrasi/Tata Usaha akan memberikan form pendaftaran yang harus diisi pasien. Jika pasien tidak bisa mengisi form pendaftaran tersebut, maka form pendaftaran dapat diisi oleh pihak keluarga atau siapa saja yang mengantar pasien ke klinik. Setelah diisi, form selanjutnya diberikan pada Bagian Administrasi/Tata Usaha. Bagian Administrasi/Tata Usaha memeriksa kelengkapan isi
form pendaftaran. Setelah semua telah diisi dengan lengkap, Bagian Administrasi/Tata Usaha membuat kartu berobat dan memberikan kartu berobat kepada pasien. Lalu pasien menunggu giliran untuk berobat setelah mendapat kartu berobat pasien, kemudian Bagian Adminstrasi/Tata Usaha membuat rekam medis.
Jika pasien sudah terdaftar, Bagian Administrasi/Tata Usaha akan menanyakan kepada pasien membawa kartu berobat atau tidak. Apabila pasien membawa kartu berobat, maka pasien memberikan kartu berobat pada Bagian Administrasi/Tata Usaha untuk dicarikan rekam medis pasien berdasarkan abjad nama pasien. Jika rekam medis sudah ditemukan, maka Bagian Administrasi/Tata Usaha akan mencocokkan nomor induk pasien (NIP) yang ada di rekam medis dengan kartu berobat pasien. Namun apabila pasien tidak membawa kartu berobat, maka Bagian Administrasi/Tata Usaha akan menanyakan nama dan alamat pasien lalu mencari rekam medis berdasarkan identitas pasien pada rak buku penyimpanan rekam medis.
Bagian Administrasi/Tata Usaha mencatat data pasien dan data dokter yang dituju pada buku daftar hadir pasien. Kemudian rekam medis dibawa oleh Bagian Administrasi/Tata Usaha untuk diletakkan di meja dokter yang dituju sementara pasien menunggu giliran untuk berobat.
2. Prosedur Pengobatan Pasien
Pasien yang sudah mendapatkan giliran untuk berobat memasuki ruang pemeriksaan. Dokter akan menanyakan keluhan yang dirasakan oleh pasien sebelum dilakukan pemeriksaan fisik terhadap pasien. Setelah melakukan pemeriksaan fisik, dokter
57 menuliskan hasil pemeriksaan fisik pasien pada rekam medis pasien dan menuliskan resep obat sesuai dengan keluhan pasien dan hasil analisa dokter.
Setelah itu, dokter memberikan resep obat tersebut kepada pasien dan mencatat keluhan, hasil pemeriksaan, tindakan, dan resep obat pasien di rekam medis pasien dan memberikan rekam medis pasien tersebut kepada Bagian Keperawatan untuk diserahkan kepada Bagian Kasir agar pasien dapat mengetahui jumlah yang harus dibayar.
3. Prosedur Penjualan Obat
Pasien yang hendak menebus obat membawa resep obat dari dokter ke Bagian Apotek/Apoteker. Kemudian Bagian Apotek/Apoteker yang bertugas akan memeriksa resep tersebut dengan kelengkapan obat yang tersedia di Rumah Apotek Klinik M edikarya. Bila obat tidak tersedia di Rumah Apotek maka Bagian Apotek/Apoteker akan mengembalikan resep dengan menganjurkan pasien untuk menebus obat di apotek lain. Ketidaktersediaan obat akan dicatat Bagian Apotek/Apoteker pada buku catatan persediaan obat, dimana buku tersebut akan diberikan kepada Bagian Anggaran dan Belanja yang akan menentukan berapa besar anggaran yang diperlukan untuk membeli obat yang habis.
Bila obat tersedia seluruhnya, maka Bagian Apotek/Apoteker akan memberikan obat yang sesuai dengan resep obat lalu mencatat obat-obat yang ditebus pasien dalam buku catatan persediaan Rumah Apotek. Kemudian Bagian Apotek/Apoteker memberikan resep obat beserta obat ke Bagian Kasir. Lalu Bagian Kasir memanggil pasien untuk membayar obat yang ditebus dan memberikan struk pembayaran kepada pasien dan
menyerahkan copy struk pembayaran tersebut kepada Bagian Akutansi untuk dilakukan pencatatan dalam bentuk laporan yang diserahkan kepada Wakil Direktur Keuangan.
4. Prosedur Pembayaran Pasien
Bagian Kasir menerima rekam medis pasien dari Bagian Keperawatan untuk dihitung total yang harus dibayar pasien. Setelah dihitung total biaya tersebut, rekam medis pasien dikembalikan ke Bagian Administrasi/Tata Usaha. Kemudian pasien dipanggil oleh Bagian Kasir untuk melunasi pembayaran. Setelah pasien melunasi pembayaran ke Bagian Kasir, pasien diberikan obat beserta struk pembayaran sebagai tanda terima pelunasan. Kemudian Bagian Kasir menyerahkan copy struk pembayaran tersebut ke Bagian Akutansi untuk dicatat sebagai pemasukan dalam buku catatan pemasukan keuangan untuk dijadikan laporan yang harus diserahkan nantinya kepada Wakil Direktur Keuangan.
5. Prosedur Pembelian Obat
Bagian Apotek/Apoteker membuat daftar persediaan obat yang telah habis dan akan dibeli. Kemudian daftar tersebut diberikan ke Bagian Anggaran dan Belanja untuk diolah agar dapat diketahui jumlah anggaran yang perlu dikeluarkan untuk membeli obat. Setelah mengetahui anggaran yang perlu dikeluarkan, maka Bagian Anggaran dan Belanja akan membelikan semua kebutuhan obat yang dibutuhkan klinik ke Pedagang Besar Farmasi (PBF) sebagai pemasok obat. Kemudian PBF membuatkan sebuah Faktur Pembelian dalam bentuk dua slip, satu slip asli pembayaran untuk PBF dan satu slip copy Faktur Pembelian yang diberikan pada Bagian Anggaran dan Belanja. Kemudian, Pemasok menerima pembayaran atas Faktur Pembelian tersebut dari Bagian Anggaran dan Belanja, dan pemasok memberikan tanda lunas kepada Bagian Anggaran dan
59 Belanja. Kemudian Bagian Anggaran dan Belanja menyerahkan slip copy faktur pembelian dan tanda lunas tersebut kepada Bagian Akutansi untuk dicatat dan disimpan sebagai pengeluaran anggaran dalam bentuk pembukuan keuangan untuk dijadikan laporan keuangan Klinik M edikarya yang akan diberikan kepada Wakil Direktur Keuangan. Lalu, Bagian Apotek/Apoteker menerima obat dari pemasok yang telah dibayar oleh Bagian Anggaran dan Belanja.
6. Retur Pembelian Obat
Bagian Apotek/Apoteker mengecek dan mencatat seluruh obat yang rusak untuk dikembalikan kepada pemasok. Kemudian Bagian Apotek/Apoteker membuat daftar obat yang akan dikembalikan dan meminta faktur pembelian dari Bagian Akutansi sebagai bukti pembelian. Setelah itu, Bagian Akutansi memberikan berkas yang diperlukan kepada Bagian Apotek/Apoteker. Bagian Apotek/Apoteker mengembalikan obat kepada pemasok beserta faktur pembelian sebagai tanda pelunasan. Lalu pemasok mencatat dan mengganti obat kepada Bagian Apotek/Apoteker. Kemudian Bagian Apotek/Apoteker mencatat obat yang telah ditukar ke buku catatan persediaan obat.
7. Penjadwalan Praktek Dokter
Bagian Kepegawaian klinik membuat jadwal untuk para dokter berdasarkan shift kerja dalam satu minggu. Kemudian Bagian Kepegawaian menyerahkan rancangan jadwal praktek kepada dokter. Bila jadwal tersebut disetujui oleh para dokter, maka jadwal itu yang akan dipergunakan klinik. Tetapi bila jadwal tersebut tidak disetujui oleh dokter, maka Bagian Kepegawaian dengan para dokter membuat kesepakatan jadwal. J ika ada dokter berhalangan hadir, maka dokter harus menghubungi Bagian Administrasi/Tata Usaha untuk dibuatkan laporan di buku catatan ketidakhadiran bahwa dokter yang
bersangkutan berhalangan hadir dan mempertanyakan ketidakhadiran dokter tersebut. Kemudian Bagian Kepegawaian bertugas mencari pengganti dokter dengan dokter pengganti dalam shift dan jam kerja yang sama.
8. Penjadwalan Karyawan
Bagian Kepegawaian klinik membuat jadwal karyawan berdasarkan shift kerja dalam satu minggu. Kemudian Bagian Kepegawaian menyerahkan perancangan jadwal kerja kepada karyawan. Jika ada karyawan yang berhalangan hadir, maka karyawan tersebut harus menghubungi Bagian Administrasi/Tata Usaha untuk dibuatkan laporan di buku catatan ketidakhadiran bahwa karyawan yang bersangkutan berhalangan hadir dan mempertanyakan ketidakhadiran karyawan tersebut.
9. Pembuatan Laporan
Setiap bagian dan subbagian diwajibkan untuk membuat laporan kepada Direktur Utama secara berkala, baik per bulan maupun per tahun melalui wakil direktur bagian masing-masing. Laporan yang dibuat berupa laporan obat, laporan keuangan, laporan pasien, laporan jadwal praktek dokter, laporan absensi dokter, laporan jadwal kerja karyawan, dan laporan absensi karyawan.
61 10. Diagram Konteks
Berikut ini merupakan diagram konteks dari prosedur sistem yang sedang berjalan pada Klinik M edikarya:
11. Diagram Nol
Berikut merupakan diagram nol dari prosedur sistem yang sedang berjalan pada Klinik M edikarya:
63 12. Diagram Aliran Dokumen Prosedur Pendaftaran Pasien
M eliputi Proses Pendaftaran Pasien Pelayanan Bagian M edis
13. Diagram Aliran Dokumen Pengobatan Pasien
M eliputi Proses Pencatatan Rekam M edis dan Tindakan Dokter
65 14. Diagram Aliran Dokumen Penjualan Obat
M eliputi Proses Pencatatan dan Penjualan Obat
15. Diagram Aliran Dokumen Prosedur Pembayaran Pasien M eliputi Proses Pembayaran Pasien
67 16. Diagram Aliran Dokumen Prosedur Pembelian Obat
M eliputi Proses Pembelian Obat ke Pemasok
17. Diagram Aliran Dokumen Retur Pembelian Obat M eliputi Proses Retur Pembelian Obat
69 18. Diagram Aliran Dokumen Penjadwalan Dokter
M eliputi Proses Penjadwalan Dokter
19. Diagram Aliran Dokumen Penjadwalan Karyawan M eliputi Proses Penjadwalan Karyawan
71 20. Diagram Aliran Dokumen Pembuatan Laporan
M eliputi Proses Pembuatan Laporan
3.1.4.b Kebutuhan Pengguna
Berikut ini merupakan kebutuhan pengguna pada Klinik M edikarya, sebagai berikut:
1. Kebutuhan Informasi
Data dan informasi yang dibutuhkan oleh Klinik M edikarya, yaitu: a. Pasien
Pasien yang terdaftar pada Klinik M edikarya harus memiliki kelengkapan identitas seperti kode yang unik, nama, alamat, dan lain-lain. Setelah identitas yang dimiliki lengkap, pasien dapat mendaftar pada beberapa pelayanan medis yang terdapat pada Klinik M edikarya seperti dokter umum, dokter ahli, dan dokter gizi. Jika pasien belum terdaftar, maka Bagian Administrasi/Tata Usaha akan mendata identitas dari pasien tersebut.
b. Dokter
Dokter pada Klinik M edikarya memiliki kode yang unik, nama, alamat, dan lain-lain. Dokter yang terdapat pada Klinik M edikarya dispesialisasikan berdasarkan Bagian M edis. Urutan pemeriksaan sudah disesuaikan dengan jadwal dan jam praktek setiap dokter oleh Bagian Kepegawaian berdasarkan kesepakatan yang telah dibuat sebelumnya.
c. Karyawan
Karyawan yang terdapat pada Klinik M edikarya harus memiliki kode yang unik, nama, alamat, dan lain-lain. Karyawan terdiri beberapa bagian dan sub bagian yang memiliki tugas dan wewenangnya masing-masing.
73 d. Obat
Obat yang terdapat di rumah apotek Klinik M edikarya memiliki kode yang unik pada setiap item, nama, dan lain-lain. Obat yang terdapat di klinik didapatkan dengan cara pembelian pada Pedagang Besar Farmasi (PBF) selaku pemasok obat yang pertama disetujui oleh Bagian Anggaran dan Belanja serta dilakukan pencatatan oleh Bagian Akutansi. Apabila ada kerusakan pada obat tersebut akan diretur pada pemasok.
e. Resep
Setiap resep di klinik memiliki kode yang unik, tanggal, dan lain-lain. Resep hanya dikeluarkan dokter untuk pasien yang dapat ditebus di rumah apotek dan melunasi pembayaran pada Bagian Administrasi/Tata Usaha. Apabila tidak ada ketersediaan obat yang terdapat pada daftar resep, maka pasien dapat menebusnya di apotek lain.
f. Pasien Berobat
Setiap pasien yang akan berobat didata oleh Bagian Administrasi/Tata Usaha baik itu data identitas pasien sewaktu melakukan pendaftaran dan tindakan medis yang pernah dilakukan pasien di klinik ke dalam data pasien berobat, data pasien berobat masing-masing memiliki kode yang unik.
g. Rekam M edis
Setiap pasien memilik satu rekam medis dan setiap rekam medis tersebut memiliki kode unik, tanggal rekam, hasil periksa, penyakit, dan lain-lain. Data pada rekam medis pasien digunakan sebagai catatan kesehatan pasien setelah malakukan pelayanan medis pada klinik.
h. Pemasok
Pemasok adalah selaku pihak yang mensuplai obat ke klinik yang memiliki kode unik, nama, alamat, dan lain-lain.
i. Pembelian Obat
Setiap pembelian obat yang terjadi di klinik memiliki kode unik, nama obat, tanggal pembelian, harga beli obat, jumlah pembelian, dan lain-lain. Pembelian tersebut berfungsi untuk mengetahui dan merekam transaksi pembelian obat yang terjadi di klinik.
j. Penjualan Obat
Setiap penjualan obat yang terjadi di klinik memiliki kode yang unik, nama obat, tanggal penjualan, harga jual obat, jumlah penjualan, dan lain-lain. Penjualan obat berfungsi untuk mengetahui dan merekam transaksi penjualan obat yang terjadi di klinik.
k. Retur Pembelian Obat
Retur pembelian obat yang terjadi di klinik dikarenakan ada keterangan obat dalam keadaan rusak pada saat transaksi pembelian obat. M asing-masing memiliki kode unik, nama obat, tanggal retur, jumlah retur, dan lain-lain. Retur berfungsi untuk mengetahui dan merekam transaksi retur pembelian obat yang terjadi di klinik.
l. Pembayaran Pasien
Pembayaran pasien terjadi di klinik sebagai memiliki kode unik, tanggal pembayaran, total biaya dari baik dari segi pelayanan medis yang dilakukan ataupun
75 transaksi biaya lainnya. Pembayaran pasien berfungsi untuk mengetahui dan merekam transaksi pembayaran yang dilakukan oleh pasien.
m. Jadwal Praktek Dokter
Setiap dokter di klinik memiliki jadwal prakteknya masing-masing, berdasarkan kode unik. Fungsi jadwal praktek dokter tersebut untuk mengetahui hari dan jam praktek dokter.
n. Jadwal Kerja Karyawan
Setiap karyawan di klinik memiliki jadwal kerja masing-masing, berdasarkan kode unik. Fungsi jadwal kerja karyawan tersebut untuk mengetahui hari dan jam kerja karyawan.
o. Absensi Dokter
Setiap dokter klinik memiliki absensi untuk melihat daftar kehadiran dokter, absensi dokter dihitung berdasarkan jadwal praktek dokter dan memiliki kode unik.
p. Absensi Karyawan
Setiap karyawan klinik memiliki absensi untuk melihat daftar kehadiran karyawan, absensi karyawan dihitung berdasarkan jadwal kerja karyawan dan memiliki kode unik.
q. Laporan
Laporan adalah daftar kumpulan dari data-data transaksi maupun data master yang berfungsi untuk menganalisis kebutuhan informasi untuk mendukung kegiatan operasional klinik.
2. Kebutuhan Keamanan Data
Kemanan data merupakan hal yang sangat penting keberadaannya, terlebih diharapkan agar nantinya dapat terbentuk sebuah sistem keamanan data yang memadai baik dari dari segi pencegahan kehilangan data dan hak kewenangan akses yang bersifat autentifikasi dimana hanya pihak-pihak tertentu yang dapat mengakses data tersebut. Hal tersebut dikarenakan data pada Klinik M edikarya masih tersimpan dalam rak-rak pembukuan dimana siapa saja dapat mengaksesnya. Dengan terbentuknya suatu sistem keamanan data tersebut menjadikan data yang terdapat pada Klinik M edikarya terjaga kerahasiaannya.
3. Kebutuhan Integrasi Data
Klinik M edikarya membutuhkan sebuah sistem basis data manajemen rumah sakit berbasiskan aplikasi agar data yang ada dapat terintegrasi dengan baik, sehingga mempermudah dalam mendapatkan data dan informasi yang dibutuhkan. Integrasi data juga merupakan hal yang penting untuk menghasilkan dokumen-dokumen yang dibutuhkan klinik menjadi lebih efektif dan akurat, seperti laporan obat, laporan keuangan, laporan pasien, laporan jadwal praktek dokter, laporan absensi dokter, laporan jadwal kerja karyawan dan laporan absensi karyawan.
4. Kebutuhan Kecepatan Akses Data
Semua bagian pada Klinik M edikarya memerlukan informasi dan data yang dapat diakses secara cepat, efektif, dan efisien. Bagian-bagian tersebut juga diharapkan untuk membuat suatu arsip data dalam bentuk yang ringkas dan mudah dicari sehingga tidak perlu bergelut dengan lemari-lemari penyimpanan berisi tumpukan kertas dan memudahkan pencarian data-data yang diperlukan.
77 5. Kebutuhan Transaksi
Klinik membutuhkan suatu sistem basis data manajemen berbentuk aplikasi yang dapat mendukung proses transaksi untuk memasukkan, mengubah, memperoleh, menghapus data dan informasi dengan cepat dan mudah, dan menganalisis kebutuhan informasi untuk mendukung kegiatan operasional klinik.
3.1.5 Permasalahan yang Dihadapi
Adapun permasalahan yang dihadapi oleh Klinik M edikarya saat ini, antara lain sebagai berikut:
1. Penyimpanan data pasien, dokter, karyawan, obat pada rumah apotek, transaksi serta kartu berobat pasien yang berisi rekam medis dari dokter ataupun Bagian Administrasi/Tata Usaha masih menggunakan rak-rak pembukuan sehingga dalam pencarian kartu berobat pasien membutuhkan waktu yang cukup lama.
2. Pengolahan data tiap bagian belum terintegrasi sehingga memperlambat proses penyusunan laporan.
3. Belum terdapatnya sistem keamanan data yang memadai dikarenakan penyimpanan data masih tersimpan dalam rak-rak pembukuan sehingga menyebabkan hilangnya data, kerusakan data, dan tidak terjaminnya kerahasiaan hak akses.
3.1.6 Usulan Pemecahan Masalah
Berdasarkan permasalahan yang ada, pemecahan masalah yang dapat dilakukan saat ini adalah dengan membangun rancangan sistem basis data di Klinik M edikarya. Rancangan sistem basis data yang diajukan harus memenuhi kebutuhan manajemen Klinik M edikarya sebagai berikut:
1. Proses pencarian data pasien, dokter, karyawan, obat pada rumah apotek, transaksi serta kartu berobat pasien tidak akan membutuhkan waktu yang lama dengan dibuatnya sebuah sistem basis data manajemen rumah sakit yang berbasiskan aplikasi.
2. Dibuat sistem komputerisasi yang dapat mengelola data transaksi, membuat laporan keuangan secara terperinci seperti laporan penjualan obat, laporan pembelian obat, laporan penggajian dokter dan karyawan, laporan pembayaran pasien, dan kegiatan operasional di klinik sehingga waktu pemrosesan akan berjalan cepat.
3. Dibuat sistem basis data dan aplikasi dengan tingkat keamanan yang lebih baik sehingga mengurangi kerusakan serta kehilangan data dan menjamin kerahasiaan data dengan adanya hak akses bagi pengguna.
3.2 Perancangan
Dalam perancangan basis data terdapat tiga fase utama, yaitu: Perancangan Basis Data Konseptual, Perancangan Basis Data Logikal, dan Perancangan Basis Data Fisikal.
3.2.1 Perancangan Basis Data Konseptual
Berikut ini merupakan langkah-langkah dalam perancangan basis data konseptual, yaitu sebagai berikut:
3.2.1.a Membangun Model Data Konseptual
Berikut ini merupakan langkah-langkah membangun model data konseptual, yaitu sebagai berikut:
79 1. Mengidentifikasi Tipe-Tipe Entitas
Tabel 3.1 Entitas Kebutuhan Informasi
Nama Entitas Deskripsi Alias Kejadian
MsLogin Berisi informasi mengenai IdLogin dan Password
- Setiap pengguna memiliki IdLogin dan Password
MsPasien Berisi informasi mengenai pasien yang berobat
- Pasien yang berobat pada dokter
MsDokter Berisi informasi mengenai dokter yang praktek
- Dokter yang praktek
MsSpesialis Berisi informasi mengenai spesialisasi dokter
- Spesialisasi dokter
MsKaryawan Berisi informasi mengenai karyawan yang bekerja
- Karyawan yang bekerja
MsJabatan Berisi informasi mengenai jabatan
- Jabatan dokter dan karyawan
MsObat Berisi informasi mengenai obat di rumah apotek
- Obat di rumah apotek
MsJenisObat Berisi informasi mengenai jenis obat di rumah apotek
- Jenis obat di rumah apotek
MsPemasok Berisi informasi mengenai pemasok obat
- Pemasok obat
resep obat pasien yang diberikan dokter
diberikan dokter
RekamM edis Berisi informasi mengenai rekam medis pasien
- Rekam medis pasien
PasienBerobat Berisi informasi mengenai daftar pasien yang berobat
- Daftar pasien yang berobat
Pembelian Berisi informasi mengenai transaksi pembelian obat
- Setiap transaksi pembelian obat
Penjualan Berisi informasi mengenai transaksi penjualan obat
- Setiap transaksi penjualan obat
PembayaranPasien Berisi informasi mengenai transaksi pembayaran pasien
- Setiap pasien, melakukan pembayaran setelah selesai berobat
FakturBeli Berisi mengenai faktur pembelian obat
- Setiap transaksi pembelian obat, klinik mendapat faktur pembelian obat
ReturPembelian Berisi informasi mengenai retur pembelian obat kepada pemasok
- Transaksi ketika melakukan retur pembelian obat
81 MsJdwlDokter Berisi informasi mengenai
jadwal praktek dokter
- Setiap dokter memiliki jadwal praktek yang berbeda
MsJdwlKaryawan Berisi informasi mengenai jadwal kerja karyawan
- Setiap karyawan memiliki jadwal kerja yang berbeda
AbsensiDokter Berisi informasi mengenai absensi dokter
- Absensi dokter
AbsensiKaryawan Berisi informasi mengenai absensi karyawan
- Absensi karyawan
2. Mengidentifikasi Tipe-Tipe Relasi Tabel 3.2 Kamus Data Relasi
Nama Entitas Multiplicity Hubungan Multiplicity Nama Entitas MsPasien 1..* M emiliki 0..* Resep
1..1 M empunyai 1..* RekamM edis 1..1 M elakukan 1..* PasienBerobat
1..1 M elunasi 1..* PembayaranPasien MsDokter 1..1 M emasukkan 1..1 MsLogin
1..* M empunyai 1..1 MsSpesialis 1..* M enerima 1..1 MsJabatan 1..1 M enulis 0..* Resep 1..1 Dimiliki 1..* RekamM edis
1..1 M enangani 1..* PasienBerobat 1..1 M endapatkan 1..* PembayaranPasien 1..* Diberikan 1..1 MsJdwlDokter
1..1 M emiliki 1..* AbsensiDokter MsKaryawan 1..1 M elakukan 1..1 MsLogin
1..* M enerima 1..1 MsJabatan
1..1 M encatat 1..* RekamM edis 1..1 M engelola 1..* Pembelian 1..1 M enangani 1..* Penjualan 1..1 M endapat 1..* FakturBeli 1..1 M embuat 1..* PembayaranPasien 1..1 M emiliki 1..* AbsensiKaryawan 1..* M emberikan 1..1 MsJdwlKaryawan MsObat 1..* M emiliki 1..1 MsJenisObat
1..* Dicatat 1..* RekamM edis 1..* Ditebus 0..* Resep 1..* Dibeli 0..* Pembelian 1..* Dijual 0..* Penjualan 1..1 Diberikan 1..* PembayaranPasien 1..* M endapat 1..* FakturBeli 1..* Diretur 0..* ReturPembelian MsPemasok 1..1 M emberikan 1..* FakturBeli
83 Resep 1..1 Dicatat 0..1 RekamM edis
1..* M elakukan 1..* Penjualan Pembelian 1..1 M emiliki 1..1 FakturBeli
1..1 M elakukan 0..* ReturPembelian Penjualan 1..1 M enjual 1..* MsObat
PembayaranPasien 1..1 M enebus 1..1 Resep 1..1 Dilakukan 1..1 PasienBerobat
84
85 3. Mengidentifikasi dan Menghubungkan Atribut dengan Tipe-Tipe Entitas,
Domain Atribut, Primary Key, dan Candidate Key
Berikut ini merupakan nama-nama entitas yang ada pada Klinik M edikarya, yaitu sebagai berikut:
Tabel 3.3 Kamus Data Atribut 1. Nama Entitas : MsLogin
Atribut Deskripsi Data Types
& Length Nulls Multivalue IdLogin Berisi IdLogin yang
digunakan pengguna
Char (8) No No
Password Berisi mengenai password yang digunakan pengguna
Varchar (10) No No
Status Status pengguna Varchar (15) No No
2. Nama Entitas: MsPasien
Atribut Deskripsi
Data Types
& Length Nulls Multivalue NIP Secara unik mengidentifikasi
pasien
Char (10) No No
Nama Nama pasien Varchar (30) No No NoIdentitas Nomor identitas pasien Varchar (20) Yes No TmptLhr Tempat lahir pasien Varchar (20) No No
TglLhr Tanggal lahir pasien Datetime No No JnsKlmn Jenis kelamin pasien Char (1) No No
Agama Agama pasien Varchar (10) No No GolDarah Golongan darah pasien Varchar (2) No No StatKawin Status perkawinan pasien Varchar (15) No No Alamat Alamat pasien Varchar (50) No No
KodePos Kode pos pasien Char (5) No No
Kota Kota pasien Varchar (20) No No TelpPasien Telepon pasien Varchar (15) No Yes Pekerjaan Pekerjaan pasien Varchar (15) No No
3. Nama Entitas: MsDokter
Atribut Deskripsi Data Types
& Length
Nulls Multivalue
KdDokter Secara unik mengidentifikasi dokter
Char (5) No No
NamaDok Nama dokter Varchar (30) No No TmptLhrDok Tempat lahir dokter Varchar (20) No No TglLhrDok Tanggal lahir dokter Datetime No No
JnsKlmnDok Jenis kelamin dokter Char (1) No No AgamaDok Agama dokter Varchar (10) No No StatKawinDok Status perkawinan dokter Varchar (15) No No
AlamatDok Alamat dokter Varchar (50) No No KodePos Kode pos dokter Char (5) No No Kota Kota dokter Varchar (20) No No TelpDok Telepon dokter Varchar (15) No Yes BiayaDok Biaya dokter Numeric No No
GajiDok Gaji dokter Numeric No No
4. Nama Entitas: MsS pesialis
Atribut Deskripsi
Data Types
& Length Nulls Multivalue KdSpesialis Secara unik mengidentifikasi
spesialis
Char (5) No No
87 5. Nama Entitas: MsKaryawan
Atribut Deskripsi Data Types
& Length Nulls Multivalue KdKary Secara unik mengidentifikasi
karyawan
Char (5) No No
NamaKary Nama karyawan Varchar (30) No No TmptLhrKary Tempat lahir karyawan Varchar (20) No No TglLhrKary Tanggal lahir karyawan Datetime No No JnsKlmnKary Jenis kelamin karyawan Char (1) No No AgamaKary Agama karyawan Varchar (10) No No StatKawinKary Status perkawinan karyawan Varchar (15) No No StatPendiKary Status pendidikan karyawan Varchar (10) No No AlamatKary Alamat karyawan Varchar (50) No No KodePos Kode pos karyawan Char (5) No No Kota Kota karyawan Varchar (20) No No TelpKary Telepon karyawan Varchar (15) No Yes
GajiKary Gaji karyawan Numeric No No
6. Nama Entitas: MsJabatan
Atribut Deskripsi Data Types
& Length Nulls Multivalue KdJabatan Secara unik mengidentifikasi
jabatan
Char (5) No No
7. Nama Entitas: MsObat
Atribut Deskripsi Data Types
& Length Nulls Multivalue KdObat Secara unik mengidentifikasi
obat
Char (8) No No
NamaObat Nama obat Varchar (30) No No Kemasan Kemasan obat Varchar (10) No No
Isi Banyak obat dalam kemasan Int No No QtyObatS Total obat yang tersedia Int Yes No HargaObat Harga satuan obat Numeric No No
8. Nama Entitas: MsJenisObat
Atribut Deskripsi Data Types
& Length Nulls Multivalue KdJenisObat Secara unik mengidentifikasi
jenis obat
Char (8) No No
JenisObat Jenis obat Varchar (30) No No
9. Nama Entitas: MsPemasok
Atribut Deskripsi Data Types
& Length
Nulls Multivalue
KdPemasok Secara unik mengidentifikasi pemasok
Char (8) No No
NamaPemasok Nama pemasok Varchar (30) No No Alamat Alamat pemasok Varchar (50) No No KodePos Kode pos pemasok Char (5) No No Kota Kota pemasok Varchar (20) No No TelpPemasok Telepon Pemasok Varchar (15) No Yes
89 10. Nama Entitas: Resep
Atribut Deskripsi Data Types & Length
Nulls Multivalue
KdResep Secara unik mengidentifikasi resep
Char (8) No No
TglResep Tanggal resep Datetime No No QtyObatResep Total obat yang ditebus Int No No DosisObat Dosis pemakaian obat Varchar (15) No No
BiayaResep Biaya resep Numeric No No
11. Nama Entitas : RekamMedis
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoRekam Secara unik mengidentifikasi rekam medis pasien
Char (8) No No
TglRekam Tanggal pencatatan rekam medis berdasarkan kunjungan
Datetime No No
JamRekam Jam rekam medis pasien Datetime No No
UmurPasien Umur pasien Int No No Keluhan Keluhan pasien Varchar (100) No No
Penyakit Penyakit pasien Varchar(30) No No Tindakan Tindakan yang diberikan Varchar(50) No No
12. Nama Entitas: PasienBerobat
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoBerobat Secara unik mengidentifikasi nomor pasien berobat
TglBerobat Tanggal melakukan pengobatan
Datetime No No
JamBerobat Jam melakukan pengobatan Datetime No No
UmurPasien Umur pasien Int No No Pelayanan Pelayanan M edis yang
dilakukan pada pasien
Varchar (15) No No
13. Nama Entitas: Pembelian
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoPembelian Secara unik mengidentifikasi nomor pembelian
Char (8) No No
TglPembelian Tanggal pembelian Datetime No No
Status Status pembayaran Varchar (15) No No
14. Nama Entitas: Penjualan
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoPenjualan Secara unik mengidentifikasi nomor penjualan
Char (8) No No
TglPenjualan Tanggal penjualan Datetime No No QtyObatK Total obat yang keluar Int Yes No
15. Nama Entitas : PembayaranPasien
Atribut Deskripsi Data Types
& Length
Nulls Multivalue
NoPembayaran Berisi mengenai nomor pembayaran
91 Tanggal Berisi mengenai tanggal
pembayaran
Datetime No No
Jam Berisi mengenai jam pada saat melakukan pembayaran
Datetime No No
BiayaAdmin Berisi mengenai biaya pembayaran administrasi yang dilakukan
Numeric No No
TotalBiaya Berisi mengenai total biaya pengobatan yang dilakukan
Numeric No No
16. Nama Entitas: FakturBeli
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoFaktur Nomor faktur pembelian obat
Char(8) No No
TglFaktur Tanggal faktur pembelian obat
Datetime No No
QtyObatB Total obat yang dibeli Int Yes No HargaObatB Harga beli obat Numeric No No
TtlHargaObat Total harga obat Numeric No No
PPN Pajak Varchar(5) No No
JthTempo Tanggal jatuh tempo pembayaran
Datetime No No
17. Nama Entitas: ReturPembelian
Atribut Deskripsi Data Types & Length
Nulls Multivalue
NoRetur Secara unik mengidentifikasi nomor retur pembelian
TglRetur Tanggal pembelian Datetime No No QtyObatR Total obat yang diretur Int Yes No KetR Keterangan retur Varchar (20) No No
18. Nama Entitas : MsJdwlDokter
Atribut Deskripsi Data Types
& Length
Nulls Multivalue
KdJdwlDokter Berisi mengenai kode jadwal praktek dokter
Char (5) No No
HariPraktek Berisi mengenai hari praktek dokter
Varchar (20) No No
JamPraktek Berisi mengenai jam praktek dokter
Varchar (11) No No
19. Nama Entitas : MsJdwlKaryawan
Atribut Deskripsi Data Types & Length
Nulls Multivalue
KdJdwlKary Berisi mengenai kode jadwal kerja karyawan
Char (5) No No
HariKerja Berisi mengenai hari kerja karyawan
Varchar (20) No No
JamKerja Berisi mengenai jam kerja karyawan
Datetime No No
20. Nama Entitas: AbsensiDokter
Atribut Deskripsi Data Types & Length
Nulls Multivalue
KdAbsenDok Secara unik mengidentifikasi absensi dokter
93 TglAbsenDok Tanggal absensi dokter Datetime No No JamPraktek Jam praktek dokter Datetime No No KehadiranDok Kehadiran dokter Varchar (10) No No
KetAbsenDok Keterangan absen dokter Varchar (20) No No
21. Nama Entitas: AbsensiKaryawan
Atribut Deskripsi Data Types &
Length Nulls Multivalue KdAbsenKary Secara unik mengidentifikasi
absensi karyawan
Char (8) No No
TglAbsenKary Tanggal absensi karyawan Datetime No No JamKerja Jam kerja karyawan Datetime No No KehadiranKary Kehadiran karyawan Varchar (10) No No KetAbsenKary Keterangan absen karyawan Varchar (20) No No
Dari hasil penentuan atribut maka ditentukan domain atribut sebagai berikut: Tabel 3.4 Domain Atribut
Atribut Domain Atribut
NIP Digit 1 sampai 3 diisi dengan NIP dan digit lainnya diisi dengan angka.
NoIdentitas Digit 1 sampai 20 diisi dengan digit angka.
KdDokter Digit 1 sampai 2 diisi dengan KD dan digit lainnya diisi dengan angka.
KdSpesialis Digit 1 sampai 3 diisi dengan KDS dan digit lainnya diisi dengan angka.
KdKary Digit 1 sampai 2 diisi dengan KK dan digit lainnya diisi dengan angka.
KdJabatan Digit 1 sampai 3 diisi dengan KKJ dan digit lainnya diisi dengan angka.
KdObat Digit 1 sampai 3 diisi dengan KOB dan digit lainnya diisi dengan angka.
KdJenisObat Digit 1 sampai 3 diisi dengan KJB dan digit lainnya diisi dengan angka.
KdPemasok Digit 1 sampai 3 diisi dengan KPM dan digit lainnya diisi dengan angka.
KdResep Digit 1 sampai 2 diisi dengan KP dan digit lainnya diisi dengan angka.
NoRekam Digit 1 sampai 3 diisi dengan NRM dan digit lainnya diisi dengan angka.
NoBerobat Digit 1 sampai 2 diisi dengan NB dan digit lainnya diisi dengan angka.
NoPembelian Digit 1 sampai 3 diisi dengan NPB dan digit lainnya diisi dengan angka.
NoPenjualan Digit 1 sampai 3 diisi dengan NPJ dan digit lainnya diisi dengan angka.
NoPembayaran Digit 1 sampai 2 diisi dengan NP dan digit lainnya diisi dengan angka.
NoFaktur Digit 1 sampai 2 diisi dengan NF dan digit lainnya diisi dengan angka.
NoRetur Digit 1 sampai 2 diisi dengan NR dan digit lainnya diisi dengan angka.
KdJdwlDokter Digit 1 sampai 3 diisi dengan KJD dan digit lainnya diisi dengan angka.
KdJdwlKary Digit 1 sampai 3 diisi dengan KJK dan digit lainnya diisi dengan angka.
95 KdAbsensiKary Digit 1 sampai 3 diisi dengan KAK dan digit lainnya diisi
dengan angka.
KdAbsensiDok Digit 1 sampai 3 diisi dengan KAD dan digit lainnya diisi dengan angka.
M engidentifikasi candidate key dan primary key dapat dilihat pada tabel sebagai berikut: Tabel 3.5 Penentuan Atribut Candidate Key, Primary Key dan Alternate Key
Nama Entitas Candidate Key Primary Key
MsLogin IdLogin IdLogin MsPasien NIP, NoIdentitas, TelpPasien NIP
MsDokter KdDokter, TelpDok KdDokter
MsSpesialis KdSpesialis KdSpesialis MsKaryawan KdKary, TelpKary KdKary MsJabatan KdJabatan KdJabatan MsObat KdObat KdObat
MsJenisObat KdJenisObat KdJenisObat MsPemasok KdPemasok, TelpPemasok KdPemasok
MsResep KdResep KdResep
RekamM edis NoRekam NoRekam
PasienBerobat NoBerobat NoBerobat Pembelian NoPembelian NoPembelian Penjualan NoPenjualan NoPenjualan PembayaranPasien NoPembayaran NoPembayaran
FakturBeli NoFaktur NoFaktur ReturPembelian NoRetur NoRetur MsJdwlDokter KdJdwlDokter KdJdwlDokter MsJdwlKaryawan KdJdwlKary KdJdwlKary AbsensiDokter KdAbsenDok KdAbsenDok
AbsensiKaryawan KdAbsenKary KdAbsenKary
4. Mengecek Redudansi pada Model
Bertujuan untuk memeriksa adanya redudansi pada model. Ada beberapa langkah yang perlu dipertimbangkan yaitu:
a. Re-examine one-to-one (1:1) relations
Setelah diperiksa, kami menemukan entitas dengan relasi one-to-one, yaitu:
Gambar 3.14 Relasi 1:1 antara M sDokter dengan M sLogin
97
Gambar 3.16 Relasi 1:1 antara Resep dengan RekamM edis
Gambar 3.17 Relasi 1:1 antara Pembelian dengan FakturBeli
Gambar 3.18 Relasi 1:1 antara PembayaranPasien dengan Resep
b. Hilangkan relasi redudansi
Setelah diperiksa, kami menemukan relasi redundansi yang bermasalah sehingga harus dihilangkan, yaitu:
Gambar 3.20 Relasi 1:1 antara Pembelian dengan FakturBeli
5. Menvalidasi Model Konseptual Lokal dengan Transaksi Pengguna
M odel konseptual lokal harus diuji apakah dapat menjalankan transaksi yang diinginkan oleh pengguna. Berikut adalah contoh-contoh transaksi yang dapat divalidasikan terhadap model konseptual lokal:
a. M emasukkan/ubah data M sLogin b. M emasukkan/ubah data M sPasien c. M emasukkan/ubah data M sDokter d. M emasukkan/ubah data M sSpesialis e. M emasukkan/ubah data M sKaryawan f. M emasukkan/ubah data M sJabatan g. M emasukkan/ubah data M sObat
99 h. M emasukkan/ubah data M sJenisObat
i. M emasukkan/ubah data M sPemasok j. M emasukkan/ubah data Resep k. Tampilkan rincian data Resep
l. M emasukkan/ubah data RekamM edis m. Tampilkan rincian data RekamM edis n. M emasukkan/ubah data PasienBerobat o. M emasukkan/ubah data Pembelian p. Tampilkan rincian data Pembelian q. M emasukkan/ubah data Penjualan r. Tampilkan rincian data Penjualan
s. M emasukkan/ubah data PembayaranPasien t. M emasukkan/ubah data FakturBeli
u. Tampilkan rincian data FakturBeli v. M emasukkan/ubah data ReturPembelian w. Tampilkan rincian data ReturPembelian x. M emasukkan/ubah data AbsensiDokter y. M emasukkan/ubah data AbsensiKaryawan z. M emasukkan/ubah data M sJdwlDokter aa. M emasukkan/ubah data M sJdwlKaryawan
Query yang dibutuhkan: • Pembuatan Laporan Obat • Pembuatan Laporan Pasien
• Pembuatan Laporan Keuangan • Pembuatan Laporan Absensi Dokter • Pembuatan Laporan Absensi Karyawan • Pembuatan Laporan Jadwal Praktek Dokter • Pembuatan Laporan Jadwal Kerja Karyawan • Tampilkan data pasien
• Tampilkan data dokter • Tampilkan data karyawan • Tampilkan data obat • Tampilkan data pemasok • Tampilkan data resep
• Tampilkan data rekam medis • Tampilkan data pembelian • Tampilkan data penjualan • Tampilkan data faktur beli • Tampilkan data retur pembelian
• Tampilakan data jadwal praktek dokter • Tampilkan data jadwal kerja karyawan • Tampilkan data absensi dokter
101
3.2.2 Perancangan Basis Data Logikal
Berikut ini merupakan langkah-langkah dalam perancangan basis data logikal, yaitu sebagai berikut:
3.2.2.a Membangun dan Memvalidasi Model Data Logikal
Berikut ini merupakan langkah-langkah membangun dan memvalidasi model data logikal, yaitu sebagai berikut:
1. Menghilangkan Fitur-Fitur yang Tidak Sesuai dengan Model Relational
Berikut ini merupakan tahap penyesuaian dari model data konseptual lokal agar bisa digunakan dengan lebih mudah oleh sistem, dengan melakukan aktivitas:
a. Menghilangkan many to many (*:*) binary relationship types
1. Relasi antara M sPasien dan M sResep membentuk entitas baru, yaitu DetailResep.
i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.22 Relasi many to many M sPasien dan Resep
103 2. Relasi antara M sObat dan RekamM edis membentuk entitas baru, yaitu
DetailRekamM edis. i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.23 Relasi many to many M sObat dan RekamM edis
3. Relasi antara M sObat dan Resep membentuk entitas baru, yaitu DetailResep. i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.24 Relasi many to many M sObat dan Resep
4. Relasi antara M sObat dan Pembelian membentuk entitas baru, yaitu DetailPembelian.
i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.25 Relasi many to many M sObat dan Pembelian
105 5. Relasi antara M sObat dan Penjualan membentuk entitas baru, yaitu
DetailPenjualan. i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.26 Relasi many to many M sObat dan Penjualan
6. Relasi antara M sObat dan FakturBeli membentuk entitas baru, yaitu DetailFakturBeli.
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.27 Relasi many to many M sObat dan FakturBeli
7. Relasi antara M sObat dan ReturPembelian membentuk entitas baru, yaitu DetailReturPembelian.
i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir
107 8. Relasi antara Resep dan Penjualan membentuk entitas baru, yaitu
DetailPenjualan. i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.29 Relasi many to many Resep dan Penjualan
b. Menghilangkan atribut multi-valued
MsPasien (NIP, Nama, NoIdentitas, TmptLhr, TglLhr, JnsKlmn, Agama, GolDarah, StatKawin, Alamat, KodePos, Kota, TelpPasien, Pekerjaan)
i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.30 Atribut Multi-valued pada M sPasien
MsDokter (KdDokter, NamaDok, TmptLhrDok, TglLhrDok, JnsKlmnDok, AgamaDok, StatKwinDok, AlamatDok, KodePos, Kota, TelpDok, BiayaDok, GajiDok)
Primary Key (KdDokter) i
109 ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.31 Atribut Multi-valued pada M sDokter
MsKaryawan (KdKary, NamaKary, TmptLhrKary, TglLhrKary, JnsKlmnKary, AgamaKary, StatKawinKary, StatPendiKary, AlamatKary, KodePos, Kota, TelpKary, GajiKary)
Primary Key (KdKary) i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.32 Atribut Multi-Valued pada M sKaryawan
MsPemasok (KdPemasok, NamaPemasok, Alamat, KodePos, Kota, TelpPemasok) Primary Key (KdPemasok)
i
ii
Keterangan: (i) Kondisi awal, (ii) Kondisi akhir Gambar 3.33 Atribut Multi-Valued pada M sPemasok
2. Menurunkan Relasi untuk Model Data Logikal a. Identifikasi Strong Entity
MsLogin (IdLogin, Password, Status) Primary Key (IdLogin)
MsPasien (NIP, Nama, NoIdentitas, TmptLhr, TglLhr, JnsKlmn, Agama, GolDarah, StatKawin, Alamat, KodePos, Kota, Pekerjaan)
111 MsDokter (KdDokter, NamaDok, TmptLhrDok, TglLhrDok, JnsKlmnDok, AgamaDok, StatKawinDok, AlamatDok, KodePos, Kota, BiayaDok, GajiDok) Primary Key (KdDokter)
MsS pesialis (KdSpesialis, Spesialis) Primary Key (KdSpesialis)
MsKaryawan (KdKary, NamaKary, TmptLhrKary, TglLhrKary, JnsKlmnKary, AgamaKary, StatKawinKary, StatPendiKary, AlamatKary, KodePos, Kota, GajiKary)
Primary Key (KdKary)
MsJabatan (KdJabatan, Jabatan) Primary Key (KdJabatan)
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat) Primary Key (KdObat)
MsJenisObat (KdJenisObat, JenisObat) Primary Key (KdJenisObat)
MsPemasok (KdPemasok, NamaPemasok, Alamat, KodePos, Kota) Primary Key (KdPemasok)
Resep (KdResep, TglResep, BiayaResep) Primary Key (KdResep)
RekamMedis (NoRekam, TglRekam, JamRekam, UmurPasien) Primary Key (NoRekam)
PasienBerobat (NoBerobat, TglBerobat, JamBerobat, UmurPasien, Pelayanan) Primary Key (NoBerobat)
Pembelian (NoPembelian, T glPembelian) Primary Key (NoPembelian)
Penjualan (NoPenjualan, TglPenjualan) Primary Key (NoPenjualan)
PembayaranPasien (NoPembayaran, Tanggal, Jam, BiayaAdmin, TotalBiaya) Primary Key (NoPembayaran)
FakturBeli (NoFaktur, TglFaktur, HargaObatB, TtlHargaObat, PPN, JthTempo) Primary Key (NoFObat)
ReturPembelian (NoRetur, TglRetur, KetR) Primary Key (NoRetur)
113 MsJdwlDokter (KdJdwlDokter, HariPraktek, JamPraktek)
Primary Key (KdJdwlDokter)
MsJdwlKaryawan (KdJdwlKary, HariKerja, JamKerja) Primary Key (KdJdwlKary)
AbsensiDokter (KdAbsenDok, TglAbsenDok, JamPraktek, KehadiranDok, KetAbsenDok)
Primary Key (KdAbsenDok)
AbsensiKaryawan (KdAbsenKary, TglAbsenKary, JamKerja, KehadiranKary, KetAbsenKary)
Primary Key (KdAbsenKary)
b. Identifikasi Weak Entity
DetailResep (DosisObat, QtyObatResep) Primary Key belum ada (untuk saat ini)
DetailPembelian (Status)
Primary Key belum ada (untuk saat ini)
DetailPenjualan (QtyObatK)
DetailFakturBeli (QtyObatB)
Primary Key belum ada (untuk saat ini)
DetailReturPembelian (QtyObatR) Primary Key belum ada (untuk saat ini)
DetailRekamMedis (Keluhan, Penyakit, Tindakan) Primary Key belum ada (untuk saat ini)
TelpPasien (TelpPasien) Primary Key (TelpPasien)
TelpDok (TelpDok) Primary Key (TelpDok)
TelpKary (TelpKary) Primary Key (TelpKary)
TelpPemasok (TelpPemasok) Primary Key (TelpPemasok)
115 c. One-to-Many (1:*) binary relationship types
1. Hubungan M sPasien dengan RekamM edis
2. Hubungan M sPasien dengan PasienBerobat
4. Hubungan M sPasien dengan TelpPasien
5. Hubungan M sDokter dengan M sSpesialis
117 7. Hubungan M sDokter dengan Resep
8. Hubungan M sDokter dengan RekamM edis
10. Hubungan M sDokter dengan PembayaranPasien
11. Hubungan M sDokter dengan M sJdwlDokter
119 13. Hubungan M sDokter dengan TelpDok
14. Hubungan M sKaryawan dengan M sJabatan
16. Hubungan M sKaryawan dengan Pembelian
17. Hubungan M sKaryawan dengan Penjualan
121 19. Hubungan M sKaryawan dengan PembayaranPasien
20. Hubungan M sKaryawan dengan AbsensiKaryawan
22. Hubungan M sKaryawan dengan TelpKary
23. Hubungan M sObat dengan M sJenisObat
123 25. Hubungan M sPemasok dengan FakturBeli
26. Hubungan M sPemasok dengan ReturPembelian
28. Hubungan Pembelian dengan ReturPembelian
29. Hubungan Penjualan dengan M sObat
d. One-to-One (1:1) binary relationship types 1. Hubungan M sDokter dengan M sLogin
125 2. Hubungan M sKaryawan dengan M sLogin
3. Hubungan Resep dengan RekamM edis
5. Hubungan PembayaranPasien dengan PasienBerobat
6. Hubungan Pembelian dengan FakturBeli
e. Many-to-Many (*:*) binary relationship types
1. Relasi antara M sPasien dengan Resep menghasilkan entitas baru, yaitu DetailResep yang menerima posting NIP dan KdResep.
127 MsPasien (NIP, Nama,
NoIdentitas, TmptLhr, TglLhr, JnsKlmn, Agama, GolDarah, StatKawin, Alamat, KodePos, Kota, Pekerjaan)
Primary Key (NIP)
Resep (KdResep, TglResep, BiayaResep, KdDokter)
Primary Key (KdResep)
Foreign Key (KdDokter) references M sDokter
DetailResep (NIP, KdResep, DosisObat) Primary Key (NIP, KdResep)
Foreign Key (NIP) references MsPasien Foreign Key (KdResep) references Resep
2. Relasi antara M sObat dengan RekamM edis menghasilkan entitas baru, yaitu DetailRekamM edis yang menerima posting KdObat dan NoRekam.
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
RekamMedis (NoRekam, TglRekam, JamRekam, UmurPasien, NIP, KdDokter, KdKary, KdResep)
Primary Key (NoRekam)
Foreign Key (NIP) references MsPasien Foreign Key (KdDokter) references M sDokter Foreign Key (KdKary) references MsKaryawan Foreign Key (KdResep) references Resep DetailRekamMedis (KdObat, NoRekam, Keluhan, Penyakit, Tindakan) Primary Key (KdObat, NoRekam)
Foreign Key (KdObat) references M sObat
3. Relasi antara M sObat dengan Resep menghasilkan entitas baru, yaitu DetailResep yang menerima posting KdObat dan KdResep.
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
Resep (KdResep, TglResep, BiayaResep, KdDokter)
Primary Key (KdResep)
Foreign Key (KdDokter) references MsDokter
DetailResep (NIP, KdResep, KdObat, DosisObat, QtyObatResep) Primary Key (NIP, KdResep, KdObat)
Foreign Key (NIP) references MsPasien Foreign Key (KdResep) references Resep Foreign Key (KdObat) references M sObat
4. Relasi antara M sObat dengan Pembelian menghasilkan entitas baru, yaitu DetailPembelian yang menerima posting posting KdObat dan NoPembelian.
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
Pembelian (NoPembelian, TglPembelian, KdKary, NoFaktur)
Primary Key (NoPembelian)
Foreign Key (KdKary) references MsKaryawan
Foreign Key (NoFaktur) references FakturBeli
DetailPembelian (KdObat, NoPembelian, Status) Primary Key (KdObat, NoPembelian)
Foreign Key (KdObat) references M sObat
129 5. Relasi antara M sObat dengan Penjualan menghasilkan entitas baru, yaitu
DetailPenjualan yang menerima posting KdObat dan NoPenjualan. MsObat (KdObat, NamaObat,
Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
Penjualan (NoPenjualan, TglPenjualan, KdKary)
Primary Key (NoFaktur)
Foreign Key (KdKary) references MsKaryawan
DetailPenjualan (KdObat, NoPenjualan, QtyObatK) Primary Key (KdObat, NoPenjualan)
Foreign Key (KdObat) references M sObat
Foreign Key (NoPenjualan) references Penjualan
6. Relasi antara M sObat dengan FakturBeli menghasilkan entitas baru, yaitu DetailFakturBeli yang menerima posting KdObat dan NoFaktur.
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
FakturBeli (NoFaktur, TglFaktur, HargaObatB, TtlHargaObat, PPN, JthTempo, KdKary, KdPemasok)
Primary Key (NoFaktur)
Foreign Key (KdKary) references MsKaryawan
Foreign Key (KdPemasok) references MsPemasok
DetailFakturBeli (KdObat, NoFaktur, QtyObatB) Primary Key (KdObat, NoFaktur)
Foreign Key (KdObat) references M sObat Foreign Key (NoFaktur) references FakturBeli
7. Relasi antara M sObat dengan ReturPembelian menghasilkan entitas baru, yaitu DetailReturPembelian yang menerima posting KdObat dan NoRetur.
MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat, KdJenisObat)
Primary Key (KdObat)
Foreign Key (KdJenisObat) references MsJenisObat
ReturPembelian (NoRetur, TglRetur, KetR, KdPemasok, NoPembelian)
Primary Key (NoRetur)
Foreign Key (KdPemasok) references MsPemasok
Foreign Key (NoPembelian) references Pembelian
DetailReturPembelian (KdObat, NoRetur, QtyObatR) Primary Key (KdObat, NoRetur)
Foreign Key (KdObat) references M sObat
Foreign Key (NoRetur) references ReturPembelian
8. Relasi antara Resep dengan Penjualan menghasilkan entitas baru, yaitu DetailPenjualan yang menerima posting KdResep dan NoPenjualan.
Resep (KdResep, TglResep, BiayaResep, KdDokter)
Primary Key (KdResep)
Foreign Key (KdDokter) references MsDokter
Penjualan (NoPenjualan, TglPenjualan, KdKary)
Primary Key (NoFaktur)
Foreign Key (KdKary) references MsKaryawan
Foreign Key (KdPemasok) references MsPemasok
DetailPenjualan (KdObat, KdResep, NoPenjualan, QtyObatK) Primary Key (KdObat, KdResep, NoPenjualan)
Foreign Key (KdObat) references M sObat Foreign Key (KdResep) references Resep
131 3. Validasi Relasi dengan Normalisai
MsLogin
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• MsLogin (IdLogin, Password, Status)
MsPasien
Validasi 1NF dan 2NF: sudah memenuhi 1NF dan 2NF karena sudah mempunyai primary key, tidak ditemukan repeating groups dan tidak ada hubungan partial dependency.
Validasi 3NF: tidak memenuhi 3NF karena ada hubungan transitive dependency pada KodePos yang ditunjukan oleh fd2. • MsPasien (NIP, Nama, NoIdentitas, TmptLhr, TglLhr, JnsKlmn, Agama, GolDarah, StatKawin, Alamat, KodePos,
Pekerjaan)
• KodePos (KodePos, Kota)
TelpPasien
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
133
MsDokter
Validasi 1NF dan 2NF: sudah memenuhi 1NF dan 2NF karena sudah mempunyai primary key, tidak ditemukan repeating groups dan tidak ada hubungannya dengan partial dependency.
Validasi 3NF: tidak memenuhi 3NF karena ada hubungan transitive dependency pada KodePos yang ditunjukan oleh fd2. • MsDokter (KdDokter, NamaDok, TmptLhrDok, TglLhrDok, JnsKlmnDok, AgamaDok, StatKawinDok, AlamatDok,
KodePos, BiayaDok, GajiDok, KdSpesialis, KdJabatan, KdJdwlDokter, IdLogin) • KodePos (KodePos, Kota)
TelpDok
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• TelpDok (TelpDok, KdDokter)
MsS pesialis
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
135
MsKaryawan
Validasi 1NF dan 2NF : sudah memenuhi 1NF dan 2NF karena sudah mempunyai primary key, tidak ditemukan repeating groups dan tidak ada hubungannya dengan partial dependency.
Validasi 3NF: tidak memenuhi 3NF karena ada hubungan transitive dependency pada KodePos yang ditunjukan oleh fd2.
• MsKaryawan (KdKary, NamaKary, TmptLhrKary, TglLhrKary JnsKlmnKary, AgamaKary, StatKawinKary, StatPendiKary, AlamatKary, KodePos, GajiKary, KdJabatan, KdJdwlKary, IdLogin)
• KodePos (KodePos, Kota)
TelpKary
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• TelpKary (TelpKary, KdKary)
MsJabatan
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• MsJabatan (KdJabatan, Jabatan)
137
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• MsObat (KdObat, NamaObat, Kemasan, Isi, QtyObatS, HargaObat KdJenisObat)
MsJenisObat
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• MsJenisObat (KdJenisObat, JenisObat)
Validasi 1NF dan 2NF: sudah memenuhi 1NF dan 2NF karena sudah mempunyai primary key, tidak ditemukan repeating groups dan tidak ada hubungan partial dependency.
Validasi 3NF: tidak memenuhi 3NF karena ada hubungan transitive dependency pada KodePos yang ditunjukan oleh fd2. • MsPemasok (KdPemasok, NamaPemasok, Alamat, KodePos)
• KodePos (KodePos, Kota)
TelpPemasok
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
139
Resep
Validasi 1NF: tidak memenuhi 1NF karena masih ada atribut yang didapat dari hasil perhitungan, yaitu BiayaResep. • Resep (KdResep, TglResep, KdDokter)
Validasi 2NF dan 3NF: sudah memenuhi persyaratan validasi 2NF dan 3NF, karena tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• Resep (KdResep, TglResep, KdDokter)
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• DetailResep (NIP, KdResep, KdObat, DosisObat, QtyObatResep)
RekamMedis
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
141
DetailRekamMedis
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.
• DetailRekamMedis (KdObat, NoRekam, Keluhan, Penyakit, Tindakan)
PasienBerobat
Semua sudah memenuhi 1NF, 2NF dan 3NF. Karena sudah mempunyai primary key, tidak ditemukan repeating groups, tidak ada hubungan partial dependency dan tidak ada hubungan transitive dependency.