BAB 3 ANALISIS MASALAH DAN PERANCANGAN PROGRAM APLIKASI
3.1.
Latar Belakang Rumah Sakit
3.1.1. Sejarah Rumah Sakit Rumah Sakit Satya Negara mulai beroperasi sejak Agustus 1991 dengan nama Rumah Sakit Sunter Agung, kemudian pada tahun 2004 nama tersebut berubah menjadi Rumah Sakit Satya Negara. Rumah sakit dengan 5 lantai ini berlokasi di Jl. Agung Utara Raya Blok A No.1, Sunter, Jakarta Utara, menempati lahan seluas 4.552 m2 dan memiliki luas bangunan 6.588 m2. Lokasinya mudah dijangkau dan strategis karena sangat dekat dengan perumahan mewah, perumahan karyawan, sekolah nasional dan internasional, perkantoran, pabrik, dan pusat belanja (mall, supermarket, hypermarket). Setelah bergabungnya beberapa dokter spesialis bedah saraf dan saraf pada Oktober 2003, pihak rumah sakit menambah pelayanan medis unggulan di bidang bedah saraf selain spesialis kebidanan dan penyakit kandungan, spesialis anak, spesialis penyakit dalam, spesialis jantung, dan spesialis bedah, serta membentuk unit stroke dan peristi. Dengan semakin banyak multi disiplin ilmu kedokteran yang bergabung, maka sistem pelayanan “One Stop Services” sudah mulai berjalan dan semakin berkembang. 3.1.2. Visi, Misi, Tujuan dan Motto Rumah Sakit Visi RS Satya Negara adalah menjadi rumah sakit kepercayaan di lingkungan wilayah Sunter khususnya dan Jakarta Utara umumnya. Sedangkan misinya adalah melaksanakan pelayanan dan perawatan kesehatan dengan penuh rasa kepeduliaan didukung kemampuan teknis medis yang berkualitas, dan peralatan yang optimal sesuai
32
kebutuhan serta tingkat profesional yang tinggi di segala bidang guna keselamatan dan kepentingan pasien. Tujuan RS Satya Negara adalah terwujudnya Rumah Sakit yang terpecaya dan mampu menjadi rujukan rumah sakit sekitarnya. Adapun motto RS Satya Negara adalah “Kesehatan Anda Kepedulian Kami”, yang berarti dalam situasi dan kondisi apapun, Rumah Sakit akan berusaha melayani pasien dan keluarganya serta mitra kerja Rumah Sakit dengan sempurna hingga merasa puas. 3.1.3. Fasilitas Pelayanan Kesehatan Sebagai rumah sakit yang menyediakan pelayanan “One Stop Services”, RS Satya Negara memiliki banyak fasilitas kesehatan di dalamnya, antara lain: • Rawat Jalan Bagian rawat jalan menempati lokasi tersendiri yang cukup luas dengan ruang tunggu pasien yang sejuk dan dilengkapi pesawat televisi, sehingga pasien yang berobat dapat merasa nyaman. Di bagian rawat jalan terdapat 24 ruangan poliklinik yang terdiri dari: poliklinik umum, poliklinik spesialis (kebidanan dan penyakit kandungan, penyakit dalam, jantung, anak, bedah, jiwa, saraf, THT, mata, kulit dan kelamin, paru, gigi dan orthodontik, gizi), poliklinik subspesialis (bedah saraf, bedah urologi, bedah anak, bedah thorak, bedah digestif, bedah tulang, bedah tumor, bedah plastik, bedah mulut, dan bedah vaskuler), rehabilitasi medik (Fisioterapi dan Okupasi), unit hemodialisa, pemeriksaan audiometrik, pemeriksaan spirometri, pemeriksaan treadmill, pemeriksaan EKG, instalasi radiologi, dan medical check up. • Penunjang Medis
33
Layanan penunjang medis yang tersedia antara lain: laboratorium, instalasi radiologi MRI, CT Scan dan Rontgen dengan dokter radiologi yang berpengalaman dan peralatan yang modern, instalasi farmasi dengan berbagai jenis obat yang berkualitas dan harga kompetitif, EKG (rekam jantung), treadmill, dan ultrasonografi empat dimensi. • Rawat Inap Ruang rawat inap yang tersedia terdiri dari beberapa kelas, yaitu kelas III, kelas II, kelas I, kelas utama, kamar VIP dan kamar Super VIP. • Ruang Perawatan Ruang perawatan yang tersedia antara lain ruang perawatan khusus ICU, ruang perawatan unit stroke, ruang perawatan anak, ruang inkubator dan ruang bayi. • Unit Stroke dan Peristi Unit stroke didirikan berdasarkan hasil penelitian bahwa cara penanganan stroke yang dapat menghasilkan hasil yang lebih baik adalah dengan perawatan yang dilakukan di tempat khusus dengan sarana dan fasilitas khusus, dirawat dengan tenaga perawat terlatih khusus untuk stroke, dan ditangani oleh tim dokter yang minimal terdiri dari dokter spesialis bedah saraf atau saraf serta dokter spesialis rehabilitasi medic yang program penanganan khusus strokenya dilaksanakan sedini mungkin. Unit Peristi (Perinatal Resiko Tinggi) merupakan pelayanan yang terintegrasi antara bagian kesehatan anak dan kebidanan. Adapun bayi yang disebut resiko tinggi, misalnya bayi berat badan rendah, gangguan pernafasan, gangguan saluran pencernaan, kejang, kuning yang berlebihan, dan lain-lain. Oleh karena itu, dengan adanya pelayanan peristi yang baik diharapkan terjadinya angka penurunan
34
kematian bayi yang signifikan, pelayanan peristi di RS Satya Negara sudah cukup memadai dari segi tenaga (baik dokter dan perawat) dan segi alat-alat.
3.2.
Analisis Sistem Berjalan
3.2.1. Penyusunan Menu Makanan Dalam pemberian makanan kepada para pasiennya, biasanya pihak rumah sakit telah menyediakan atau mempunyai menu-menu makanan yang dapat dipilih oleh para pasiennya. Menu-menu tersebut biasanya dibedakan antara menu makan pagi, menu makan siang, dan menu makan malam. Penentuan bahan makanan yang ada pada tiap menu biasanya dilakukan oleh dokter gizi pada pihak rumah sakit yang bersangkutan. Tiap menu makanan pada umumnya terdiri atas bahan sumber karbohidrat (nasi, kentang, jagung, gandum, ubi, singkong, dll), sumber protein (daging ayam, ikan, sosis, bakso, udang, telur, dll), sayur-sayuran, buah-buahan dan susu.. Tiap bahan makanan mengandung gizi yang berbeda-beda. Jenis kandungan gizi yang dimiliki mungkin sama, tapi nilai atau kadar gizinya pasti berbeda. Misalnya antara beras (nasi) dan jagung dengan berat masing-masing 100 gram. Pada beras 100 gram memiliki kandungan kalori 248 kkal, protein 8,0 gram, dan lemak 1,2 gram. Sedangkan pada jagung memiliki kandungan kalori 362 kkal, protein 10 gram, dan lemak 4 gram. Tiap bahan makanan juga memiliki ukuran rumah tangga (URT), yaitu saran jumlah penyajian, yang berbeda. Nasi/beras, misalnya, jumlah penyajiannya adalah sekitar 100 gram dalam tiap menu makanan. Pembagian menu makanan dilakukan menurut waktu makan pasien. Umumnya pasien diberikan 6 kali waktu makan, yaitu makan pagi, snack pagi, makan siang, snack siang, makan malam dan snack malam. Adapun kebutuhan gizi yang diberikan masing-
35
masing adalah 20%, 10%, 25%, 15%, 20% dan 10% dari kebutuhan gizi total per hari. Jadi misalnya bila kebutuhan gizi total pasien adalah kalori 2000 kal, protein 65 gram, lemak 60 gram dan karbohidrat 300 gram, maka untuk makan pagi menu makanan yang disusun harus memenuhi 20% dari kebutuhan gizi total, yaitu 400 kal, protein 13 gram, lemak 12 gram dan karbohidrat 60 gram. 3.2.2. Data Kandungan Gizi Bahan Makanan Data mengenai kandungan gizi yang terdapat dalam bahan-bahan makanan (dalam 100 gram) dapat dilihat pada bagian lampiran. (Sumber: Brosur Daftar Bahan Makanan Penukar Rumah Sakit Satya Negara). 3.2.3 Kebutuhan Gizi Pasien Stroke Seperti telah disebut sebelumnya, kebutuhan gizi tiap orang berbeda-beda. Beberapa faktor yang mempengaruhi seperti jenis kelamin, golongan umur, jenis penyakit yang diderita, berat badan dan tinggi badan, serta aktivitas yang dilakukan sehari-hari. Pasien stroke, pada umumnya, membutuhkan kalori lebih banyak dibandingkan orang normal, yaitu sebanyak 35 kal/kg.BB. Dimana pada orang normal biasanya membutuhkan kalori sebesar 30 kal/kg.BB. Dari kebutuhan kalori tersebut, protein menyumbang 4 kalori per gram, lemak 9 kalori per gram, dan karbohidrat 4 kalori per gram. Dari perbandingan tersebut, maka dapat ditentukan jumlah protein, lemak, dan karbohidrat yang dibutuhkan untuk memenuhi jumlah kalori. Jenis stroke yang diderita juga mempengaruhi kebutuhan gizi pasien. Pasien dengan stroke iskemik pada umumnya membutuhkan protein dengan jumlah yang lebih tinggi dan karbohidrat dengan jumlah yang lebih sedikit. Beberapa data pasien stroke yang telah dikumpulkan dari pihak rumah sakit dapat dilihat pada bagian lampiran.
36
3.3
Analisis Permasalahan Banyaknya jenis bahan makanan dan kandungan gizi yang ada, membuat sulitnya
penyusunan menu makanan baru yang memiliki kandungan gizi sesuai dengan yang dibutuhkan tubuh. Padahal, sangat penting bagi seseorang untuk dapat mengonsumsi makanan yang berbeda-beda atau bervariasi karena tidak semua bahan makanan mengandung zat gizi yang sejenis dan dalam kadar yang sama. Selain itu apabila pasien mengidap suatu alergi, maka ada beberapa bahan makanan yang tidak boleh diberikan pada pasien. Dalam pembelian bahan makanan pun, pihak rumah sakit pastinya ingin meminimalkan biaya tanpa mengurangi kebutuhan gizi para pasien. Jadi bisa disimpulkan bahwa untuk mendapatkan sebuah menu makanan yang optimal, maka komposisi bahan makanan yang ada haruslah mencukupi kebutuhan gizi yang diperlukan tubuh dan untuk menekan biaya pembelian bahan makanan tersebut, maka harga atau biaya tiap bahan makanan haruslah seminimal mungkin. Oleh karena itu, pihak rumah sakit membutuhkan saran dalam penyusunan menu makanan yang optimal.
3.4
Usulan Pemecahan Masalah Melihat dari permasalahan yang telah dianalisis sebelumnya, maka perlu
dirancang sebuah program aplikasi yang dapat memberikan saran mengenai variasi menu makanan yang optimal. Untuk memecahkan masalah optimalisasi ini maka digunakanlah metode criss-cross yang dapat memberikan nilai yang optimal pada fungsi tujuan, dimana tujuan dari permasalahan ini adalah meminimumkan biaya pembelian bahan makanan dengan kendala yaitu tiap bahan makanan harus memenuhi tiap zat gizi yang dibutuhkan. Metode criss-cross ini akan diterapkan pada sebuah program aplikasi sehingga pihak rumah sakit dapat dengan mudah menyelesaikan permasalahan ini.
37
Program aplikasi ini diharapkan dapat mempermudah pihak rumah sakit bila ingin menyusun menu makanan pasien yang baru. Program aplikasi ini juga dapat membantu bila ada pasien yang ingin memilih suatu bahan makanan yang disukainya ada dalam menu makanan, ataupun bila terdapat pasien yang alergi terhadap suatu jenis bahan makanan sehingga harus mencari bahan makanan pengganti yang tetap memenuhi kebutuhan gizi pasien. Sistem database juga dirasa perlu untuk dilakukan mengingat banyaknya jumlah bahan makanan dan kandungan gizi yang dimiliki tiap bahan makanan. Selain itu, dengan sistem database juga akan memudahkan pihak rumah sakit bila ingin menambahkan suatu bahan makanan dan gizinya atau mengganti bahan makanan yang telah ada.
3.5
Perancangan Program
3.5.1 Gambaran Umum Perancangan Perancangan program melibatkan perancangan basis data untuk mengumpulkan seluruh data-data yang diperlukan dalam menentukan kombinasi bahan makanan yang tepat dengan metode criss-cross. Input berasal dari dua sumber, yaitu yang pertama input dari database dan yang kedua input dari user. Input dari basis data adalah datadata yang berhubungan dengan proses perhitungan, yaitu data berupa jenis bahan makanan dan kandungan gizinya, serta data mengenai angka kebutuhan gizi manusia. Sedangkan untuk proses perhitungan tersebut diperlukan input dari user berupa jenis kelamin, usia, tinggi dan berat badan, serta jenis bahan makanan apa saja yang ingin dikombinasikan. Output program berupa saran mengenai jenis-jenis bahan makanan dan jumlahnya terkait menu makanan yang ingin dikonsumsi. Akan ditampilkan juga total biaya pembelian bahan makanan yang harus dikeluarkan.
38
3.5.2 Diagram Alir (Flowchart) Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut. Tujuan utama dari penggunaan flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurai, rapi dan jelas dengan menggunakan simbol-simbol standart. Pada perancangan program aplikasi ini, flowchartnya adalah:
Gambar 3.1 Flowchart Program Aplikasi
39
3 3.5.3 Use-Case Diagraam gram Use Case C adalah diagram yang y menunnjukkan fungsionalitas suatu Diag s sistem atau kelas dan bagaimana b sistem terseebut berinterraksi dengann dunia luarr dan m menjelaskan n sistem secara s funggsional yanng terlihat user. Usee case diaagram m menggamba arkan fungsioonalitas yanng diharapkaan dari sebuuah sistem. Yang ditekaankan a adalah “apaa” yang diiperbuat sistem, dan bukan b “baggaimana”. Sebuah S use case m merepresent tasikan sebuuah interaksii antara aktor dengan sistem. s Use case meruppakan s sebuah pekeerjaan tertenttu, misalnyaa login ke sisstem, meng--create sebuah daftar belanja, d sebagain dan nya. Seoranng/sebuah akktor adalah sebuah s entittas manusia atau mesin yang b berinteraksi dengan sisstem untuk melakukan pekerjaan-ppekerjaan teertentu. Use case d diagram pad da perancanggan program aplikasi ini adalah: Menyusun menu maakanan Mendaapat menu m makanan baru
Melihaat daftar bahaan makanan
Melihaat data kebutu uhan gizi
Ubah data bahan maakanan Ubah d data kebutuhan gizi Hapuss data bahan makanan
Hapuss data kebutu uhan gizi
Gam mbar 3.2 Usee Case Diagrram Program m Aplikasi
40
3.5.4 Sequence Diagram Sequence diagram merupakan sebuah diagram yang menggambarkan interaksi antar objek di dalam sebuah sistem. Interaksi tersebut berupa pesan yang digambarkan terhadap waktu. Sequence diagram terdiri dari dimensi horizontal (objek-objek) dan dimensi vertikal (waktu). Diagram ini hanya menggambarkan urutan kejadian yang terjadi dan tidak berhubungan dengan durasi tiap kejadian. Pada perancangan program aplikasi ini, ada 4 bagian utama yang terlibat di dalamnya, yaitu user, form pasien, dan form menu makanan, dan form makanan. Sequence diagram yang ada adalah: Halaman Utama
Form Tampilan
Database
Login Lihat jenis makanan / kebutuhan gizi / makanan Buka database Tambah, ubah, hapus Optimasi Pilih data pasien & makanan
Simpan ke database Simpan Log Out
Gambar 3.3 Sequence Diagram Program Aplikasi
41
3.5.5 Perancangan Basis Data Karena banyaknya data yang ada, maka data-data tersebut harus disimpan dalam sebuah database. Dengan adanya sistem database, pengguna juga dapat melakukan perubahan pada data yang telah ada ataupun melakukan penambahan data. Tabel-tabel yang digunakan adalah sebagai berikut: a. Tabel tblJenisMakanan Primary Key: JenisMakanan Nama JenisMakanan
Tipe Teks
Ukuran 10
Keterangan Jenis bahan makanan
Keterangan
Teks
50
Keterangan jenis makanan
Tabel 3.1 Struktur Tabel Jenis Makanan b. Tabel tblMakanan Primary Key: NamaMakanan Nama Tipe Ukuran Keterangan NamaMakanan Teks 20 Nama bahan makanan JenisMakanan Teks 10 Jenis bahan makanan kaloriTotal Double Kandungan kalori proteinTotal Double Kandungan protein lemakTotal Double Kandungan lemak karbohidratTotal Double Kandungan karbohidrat Harga Double Harga bahan makanan URT Double URT bahan makanan Tabel 3.2 Struktur Tabel Komposisi Gizi Bahan Makanan c. Tabel tblKebutuhanGizi Primary Key: kdKebutuhan Nama kdKebutuhan JenisStroke JenisKelamin Umur
Tipe Teks Number Number Integer
Ukuran 10
Keterangan Kode kebutuhan pasien 0= pendarahan, 1= iskemik 0 = pria, 1 = wanita Umur pasien
42
Tinggi badan Double Tinggi badan pasien Berat badan Double Berat badan pasien Aktivitas Teks 10 Jenis aktivitas pasien TotalKalori Float Nilai kebutuhan kalori TotalProtein Float Nilai kebutuhan protein TotalLemak Float Nilai kebutuhan lemak TotalKarbohidrat Float Nilai kebutuhan KH Tabel 3.3 Struktur Tabel Kebutuhan Gizi Pasien d. Tabel tblPengaturanMenuH Primary Key: kdPengaturanMenu Nama Tipe Ukuran Keterangan kdPengaturanMenu Teks 10 Kode pengaturan menu WaktuMakan Teks 10 Waktu makan pasien TotalHargaPokok Teks 10 Total harga menu makanan kdKebutuhan Teks 10 Kode kebutuhan pasien Tabel 3.4 Struktur Tabel Pengaturan Menu Pasien Header e. Tabel tblPengaturanMenuD Primary Key: kdPengaturanMenu Nama Tipe Ukuran Keterangan kdPengaturanMenu Teks 10 Kode pengaturan menu NamaMakanan Teks 20 Nama bahan makanan Jumlah Teks 10 Jumlah tiap makanan Tabel 3.5 Struktur Tabel Pengaturan Menu Pasien Detail f. Tabel tblLogin Primary Key: UserLogin Nama UserLogin Password
Tipe Ukuran Keterangan Teks 10 Nama sandi pengguna Teks 10 Password sandi pengguna Tabel 3.6 Struktur Tabel Login
Tabel tblJenisMakanan dan tblMakanan menyimpan data mengenai daftar bahan makanan, jenisnya, harga dan URT-nya. Sedangkan tabel tblKebutuhanGizi berisikan
43
data mengenai daftar pasien, jenis penyakitnya, dan kebutuhan gizi pasien tersebut. Tabel tblPengaturanMenuH dan tblPengaturanMenuD menghubungkan kedua daftar tersebut. Tabel tblPengaturanMenuH berisikan data mengenai menu makanan berdasarkan
waktu
makan
dan
kebutuhan
gizi
pasien,
sedangkan
tabel
tblPengaturanMenuD berisikan daftar bahan-bahan makanan yang terdapat pada menu tersebut beserta jumlahnya. Tabel tblLogin berisi data pengguna dan passwordnya. Tabel ini tidak berhubungan dengan tabel lainnya, hanya untuk menyimpan nama dan password pengguna. Hubungan antar tabel tersebut dapat dilihat pada EntityRelationship Diagram di bawah ini:
Gambar 3.4. Hubungan Antar Tabel dalam Basis Data
3.5.6 Struktur Menu Ada 4 menu utama yang akan tampil pada saat program aplikasi dijalankan. Berikut adalah struktur dari menu-menu dan submenu-submenu yang ada:
44
Halaman Utamaa
Menu Fille
Menu Databasee
L Logout
Halamann Jenis Makannan
Exit
Halaman Keebutuhan Gizi Paasien
Meenu Optimasi
Pengaturan Menu
Halaman Makanan M
Gambbar 3.5 Strukktur Menu 3 3.5.7 Pera ancangan Laayar Berik kut adalah raancangan layyar menu-meenu yang terrdapat pada program p apliikasi: User Namee
:
Password
:
Login
Exit
Gambar 3.6 3 Rancangaan Layar Loggin Padaa layar Logiin, penggunna akan dim minta untuk memasukkaan usernamee dan p password un ntuk dapat masuk m ke proogram utamaa. Hal ini unntuk menjagaa keamanan datad data yang tersimpan. t T Textfield useername berttipe teks dann textfield password p beertipe p password.
45 File
Menu Database
Menu Optimasi
‐
X
Program Optimalisasi Menu Makanan Pasien Stroke
<
>
Gambar 3.7 Rancangan Layar Menu Halaman Utama Ada tiga menu utama yang dapat dipilih. Pada menu ‘File’ pengguna dapat logout atau mengakhiri program. Menu ‘Database’ digunakan untuk melihat dan melakukan perubahan pada database yang ada. Menu ‘Optimasi’ digunakan untuk mendapatkan menu makanan yang optimal berdasarkan kebutuhan gizi pasien dan bahan makanan yang dipilih. File
Menu Database
Menu Optimasi
Form Jenis Makanan Jenis Makanan : Keterangan :
‐ <>
Add
Edit Cancel
Delete Save
Gambar 3.8 Rancangan Layar Menu Database Jenis Makanan
X
46 File
Menu Database
Menu Optimasi
Form Makanan Nama Makanan : Jenis Makanan : Kandungan gizi Kalori : Protein : Lemak : Karbohidrat : Harga : URT : Add
‐
X
‐
X
<>
Edit
Delete
Cancel
Save
Gambar 3.9 Rancangan Layar Menu Database Makanan
File
Menu Database
Form Kebutuhan Gizi Kode Kebutuhan : Jenis Stroke : Umur : Tinggi badan : Berat badan : Jenis Kelamin : Aktivitas : Kebutuhan Gizi Kalori : Protein : Lemak : Karbohidrat : Add
Edit
Menu Optimasi
<>
Delete
Cancel
Save
Gambar 3.10 Rancangan Layar Menu Database Kebutuhan Gizi Pada seluruh submenu yang terdapat pada menu ‘Database’ akan ditampilkan data-data yang terdapat dalam database seperti daftar makanan dan daftar kebutuhan gizi pasien berdasarkan jenis penyakitnya. Tiap data dapat ditambah, diubah, ataupun
47
dihapus. Untuk menambah data baru, klik tombol ‘Add’ dan isi field-field yang tersedia lalu klik tombol ‘Save’ untuk menyimpan data tersebut ke dalam database atau klik tombol ‘Cancel’ untuk membatalkan penambahan data. Untuk mengubah salah satu data yang telah ada, pilih satu data yang terdapat dalam tabel lalu klik tombol ‘Edit’. Ubah data yang terdapat pada field lalu klik tombol ‘Save’ untuk menyimpan data tersebut ke dalam database atau klik tombol ‘Cancel’ untuk membatalkan perubahan data. Untuk menghapus salah satu data yang telah ada, pilih satu data yang terdapat dalam tabel lalu klik tombol ‘Delete’. Akan muncul kotak dialog konfirmasi penghapusan data. Klik ‘Yes’ untuk menghapus data atau klik ‘No’ untuk membatalkan penghapusan data.
File
Menu Database
<