S K R I P S I
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains
Program Studi Ilmu Komputer
Oleh :
I Made Wira Adi Santika 043124030
PROGRAM STUDI ILMU KOMPUTER
JURUSAN MATEMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2008
A T H E S I S
Presented as Partial Fulfillment of the Requirements to Obtain Sarjana Sains Degree
in Computer Science
By :
I Made Wira Adi Santika 043124030
COMPUTER SCIENCE STUDY PROGRAM
FACULTY OF SAINS AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2008
Om Swastyastu
na hi jňānena sadrśam pavitram iha vidyate,
tat svayam yoga-samsiddhah
kālenātmani vindati
Tak ada sesuatupun di dunia ini yang dapat menyamai
kesucian ilmu pengetahuan; mereka yang sempurna
dalam yoga akan memenuhi dirinya sendiri
dalam jiwanya pada waktunya
Bhagawad Gītā : IV – 38
Om Śānti Śānti Śānti Om
Karya ini kupersembahkan untuk :
Ida Sang Hyang Widhi Wasa sumber dari segala kehidupan Para leluhur-ku yang senantiasa menuntun hidupku
Bapak & Ibu-ku sumber kasih sayang tiada banding Kakak & Adik-ku pendorong dan penyemangatku
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 24 Juli 2008 Penulis
I Made Wira Adi Santika
SMS (Short Message Service) adalah salah satu teknologi yang banyak digunakan oleh pengguna telepon selular saat ini karena tarif yang sangat terjangkau dan lebih praktis. Telah banyak diimplementasikan aplikasi-aplikasi yang berbasis SMS , misalnya quis, polling, forum, bahkan bisa juga untuk aplikasi bisnis seperti pemesanan barang.
Pada tulisan ini dibuat sebuah sistem layanan informasi untuk memudahkan pelayanan bagi pasien yang ingin berobat ke rumah sakit. Sistem ini terdiri dari tiga jenis layanan yaitu : layanan informasi registrasi pendaftaran pasien, layanan informasi jadwal praktek dokter serta layanan saran dan masukan untuk peningkatan layanan kesehatan di rumah sakit.
Dengan adanya sistem ini, pasien dapat melakukan registrasi pendaftaran tanpa harus datang langsung ke rumah sakit. Pasien cukup mengirim SMS untuk melakukan registrasi pendaftaran dan secara otomatis mereka akan mendapatkan informasi yang dibutuhkan. Prosedurnya sama seperti registrasi pada umumnya, perbedaannya adalah layanan informasi ini dapat dilakukan kapan saja dan dimana saja.
Kata kunci : SMS, Informasi layanan, Pasien
Nowadays, SMS (Short Message Service) is one of technology which is used in great quantities by cell phone customers because it is cheaper and easier. Now, there are so many implementation of some applications based on SMS, for instances, quiz, polling, forum, and even business applications such as the ordering of goods.
In this paper, an information services for patients is made to ease them for having services in the hospital. This system consists of three kinds of services that are: patients’ registration, doctors’ schedules, patients’ critics and opinions to improve the services in the hospital.
Through this system, patients do not need to come to the hospital. With sending SMS, patients can register themselves and they will have the information that they need automatically. The procedure is the same with common registration. The difference is these information services can be done anytime and anywhere.
Keywords: SMS, Information services, patients
Skripsi ini ditulis untuk memenuhi salah satu syarat untuk memperoleh gelar sarjana sains Program Studi Ilmu Komputer, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.
Dalam perjalanan penulisan skripsi ini penulis menyadari banyak pihak yang telah berperan besar dalam memberikan sumbangan pikiran, doa, semangat, maupun tenaga. Oeh karena itu dengan segala kerendahan hati, penulis menyampaikan ucapan terimakasih kepada :
1. Bpk. Iwan Binanto, S.Si selaku dosen pembimbing yang penuh semangat dan berjiwa muda, yang sangat membantu saya dalam menyelesaikan skripsi ini (Saya sangat bersyukur punya dosen pembimbing seperti Bapak).
2. Ibu A. Rita Widiarti, S.Si., M.kom. yang telah bersedia menjadi dosen penguji, terima kasih atas masukkannya.
3. Bpk. Y. Joko Nugroho, S.Si. yang telah bersedia untuk menjadi dosen penguji. 4. Romo Ir. Greg. Heliarko S.J., S.S, B.S.T., M.A., M.Sc selaku Dekan FST
Universitas Sanata Dharma.
5. Ibu P.H. Prima Rosa, S.Si, M.Sc selaku Kaprodi Ilmu Komputer yang telah banyak memberikan inspirasi dan dorongan kepada kami (mahasiswa ilmu komputer terakhir).
6. Bpk. Eko Hari Parmadi, S.Si, M.Kom, Selaku dosen pembimbing akademik kami, dan juga teman kami dalam study tour.
7. Bpk. Tukija dan Bu Linda di sekretariat. Terima kasih atas semua bantuan administrasinya.
8. Mas Susilo selaku laboran Ikom, terima kasih telah menemani dan membantu dalam segala urusan, baik urusan akademik maupun non akademik.
9. Pak Rizalt, Pak Agung, seluruh Staff Personalia dan keluarga besar Panti Rapih. Terima kasih telah memberikan kesempatan mengenal Panti Rapih lebih dekat.
terima kasih telah membantu mencarikan tempat kuliah terbaik di Jogja. 13. Pemilik hatiku ’Sinta’ yang selalu setia dan sabar menemani setiap langkahku.
Kamu telah mengajarkan aku banyak hal tentang arti sebuah kehidupan.
14. Sahabatku Ade, Sujad dan Ipung kalian selalu memberi dukungan dan semangat dalam setiap kegiatan baik kegiatan kampus maupun diluar kampus. 15. Teman hidup satu atapku Adit dan Steven, senang bisa tinggal bareng kalian. 16. Mas Ieus pembimbing spiritual Ikom’04 yang dengan sabar mendengar keluh
kesah kami, terima kasih atas semua bantuanmu. Jasamu sangat berarti bagi kelulusan Ikom’04.
17. Temanku yang polos dan lugu Hali, terima kasih banyak telah meminjamkan kabel data nokia yang asli. Tanpa kabelmu sistem-ku gak bakalan jalan.
18. Teman – teman seperjuangan Ikom’04 Yo, Willy, Kornel, Seto, Beni A, Beni C, Thomas, Henry, Agung, Debby, Fitria, Gita, Amel, Madya, Mia, Eka, Pak De, Desy, Dewi, Munik, Arum, Trivo, Elin, Via, Tina.
19. Teman teman Ikom atas B’li Agus (Ikom’02), Gondez, Fetso, Kelik, Hendro, Gurit, Wiwid , dan teman- teman Ilmu Komputer yang belum bisa saya sebutkan satu persatu.
20. Teman – teman yang pernah berjuang bersama di Ikom’04 Mita, Aga, Wenggo dan Wahyu senang bisa mengenal kalian.
21. Semua pihak yang belum sempat saya tuliskan namanya, namun jasa kalian akan selalu saya kenang.
Akhir kata, semoga karya tugas akhir ini dapat memberikan manfaat bagi penulis dan masyarakat banyak. Apabila terdapat beberapa kesalahan dalam penulisanmaupun implementasi penulis memohon maaf yang sebesar-besarnya.
Penulis
HALAMAN PENGESAHAN... iv
HALAMAN MOTTO DAN PERSEMBAHAN... v
PERNYATAAN KEASLIAN KARYA TULIS ... vi
ABSTRAK ... vii
PERNYATAAN PERSETUJUAN PUBLIKASI ... ix
KATA PENGANTAR ... x
2.1.1 Kualitas Informasi... 7
2.1.2 Nilai Informasi ... 9
2.2 Basis Data ... 9
2.2.1 MySQL... 9
2.2.2 Arsitektur Sistem... 11
1. Arsitektur two-tier... 12
2. Arsitektur three-tier... 13
3. Arsitektur n-tier... 14
2.8 Metode Perancangan Basis Data... 26
2.8.1 Diagram E-R (Entity Relationship)... 27
2.8.2 Normalisasi ... 28
2.9 Diagram Aliran Data ... 29
3. Prosedur pendaftaran pasien rawat jalan dengan perjanjian 36
3.2 Perancangan ... 39
3.2.1 Perancangan Umum Sistem ... 39
3.2.2 Pelayanan Registrasi Pasien... 41
3.2.3 Informasi Mengenai Jadwal Dokter ... 43
3.2.4 Menampung Saran Dari Pasien Atau Masyarakat ... 43
3.2.5 Perancangan Basis Data ... 45
1. ER-Diagram ... 45
2. Rincian Tabel ... 46
3. Kamus Data... 49
3.2.6 Perancangan Proses... 51
1. Diagram Konteks ... 51
2. Level 1... 51
3. Level 2... 53
4. Level 3... 54
3.2.7 Perancangan Struktur Menu... 56
3.2.8 Perancangan Antar Muka ... 57
1. Login Administrator... 57
2. Halaman Utama... 58
BAB IV IMPLEMENTASI DAN PENGUJIAN... 76
4.1 Perangkat Keras dan Perangkat Lunak ... 76
4.2 Implementasi Basis Data... 77
4.3 Implementasi Proses ... 82
4. Daftar Saran Kritik... 92
4.4.2 Pengguna atau Pasien... 113
1. SMS dari pengguna untuk daftar periksa ... 113
2. SMS dari sistem untuk daftar periksa ... 113
3. SMS dari pengguna untuk informasi jadwal dokter... 114
4. SMS dari sistem untuk informasi jadwal dokter ... 114
2. Gambar 2.1 Pilar Kualitas Informasi ... 7
3. Gambar 2.2 Arsitektur Two-Tier... 13
4. Gambar 2.3 Arsitektur Three-Tier... 14
5. Gambar 2.4 Arsitektur N-Tier... 15
6. Gambar 2.5 Elemen Jaringan Pendukung SMS ... 18
7. Gambar 2.6 Arsitektur Jariangan SMS ... 19
8. Gambar 2.7 Alur skenario pengiriman SMS MO dari MS ke ESME (SMS Originating) ... 22
9. Gambar 2.8 Alur skenario SMS yang diterima MS dari ESME (SMS Terminating) ... 23
10. Gambar 2.9 Arsitektur SMS Gateway ... 25
11. Gambar 2.10 Notasi DFD ... 30
12. Gambar 3.1 Flowchart registrasi pasien rawat jalan untuk pasien baru... 34
13. Gambar 3.2 Flowchart registrasi pasien rawat jalan pasien lama ... 36
14. Gambar 3.3 Flowchart registrasi pasien dengan perjanjian ... 38
15. Gambar 3.4 Perancangan Umum Sistem ... 39
16. Gambar 3.5 Gambaran sistem secara lebih lengkap ... 40
17. Gambar 3.6 Flowchart sistem registrasi pasien ... 43
18. Gambar 3.7 Flowchart informasi jadwal dokter ... 44
19. Gambar 3.8 Flowchart saran dan kritik dari pasien ... 45
20. Gambar 3.9 ER Diagram... 46
20. Gambar 3.10 Diagram Konteks... 52
21. Gambar 3.11 DFD Level 1... 52
22. Gambar 3.12 DFD Level 2 untuk user ... 53
23. Gambar 3.13 DFD level 2 untuk admin ... 54
24. Gambar 3.14 DFD level 3 admin untuk registrasi ... 55
25. Gambar 3.15 DFD level 3admin untuk informasi jadwal dokter... 56
26. Gambar 3.16 Struktur Menu Administrator ... 57
27. Gambar 3.17 Halaman login administrator... 58
28. Gambar 3.18 Halaman Utama... 59
29. Gambar 3.19 Halaman daftar pasien periksa ... 60
30. Gambar 3.20 Halaman daftar saran kritik ... 61
31. Gambar 3.21 Halaman daftar sms masuk ... 62
32. Gambar 3.22 Halaman daftar data pasien ... 63
33. Gambar 3.23 Halaman edit data pasien... 64
34. Gambar 3.24 Halaman tambah data pasien... 65
35. Gambar 3.25 Halaman daftar data dokter ... 66
36. Gambar 3.26 Halaman edit data dokter... 67
37. Gambar 3.27 Halaman tambah data dokter... 68
38. Gambar 3.28 Halaman daftar spesialis... 69
39. Gambar 3.29 Halaman edit data spesialis ... 70
45. Gambar 4.1 Aliran informasi web server... 82
46. Gambar 4.2 Halaman login administrator... 89
47. Gambar 4.3 Halaman Utama... 90
48. Gambar 4.4 Halaman daftar pasien periksa ... 91
49. Gambar 4.5 Halaman daftar saran kritik ... 92
50. Gambar 4.6 Halaman daftar sms masuk ... 93
51. Gambar 4.7 Halaman daftar data pasien ... 94
52. Gambar 4.8 Halaman edit data pasien... 95
53. Gambar 4.9 Halaman tambah data pasien... 96
54. Gambar 4.10 Halaman daftar data dokter ... 97
55. Gambar 4.11 Halaman edit data dokter... 98
56. Gambar 4.12 Halaman tambah data dokter... 99
57. Gambar 4.13 Halaman daftar spesialis... 100
58. Gambar 4.14 Halaman edit data spesialis ... 101
59. Gambar 4.15 Halaman tambah data spesialis ... 102
60. Gambar 4.16 Halaman daftar jadwal dokter ... 103
61. Gambar 4.17 Halaman edit jadwal dokter... 104
62. Gambar 4.18 Halaman tambah jadwal dokter... 105
63. Gambar 4.19 Halaman Daftar Admin ... 106
64. Gambar 4.20 Halaman Edit Data Admin ... 107
65. Gambar 4.21 Halaman Tambah Data Admin... 108
66. Gambar 4.22 Halaman Bantuan ... 109
67. Gambar 4.23 Halaman Proses SMS Gateway... 110
68. Gambar 4.24 Identify Gammu ... 111
69. Gambar 4.25 Proses Gammu... 112
70. Gambar 4.26 Tampilan SMS dari Pengguna untuk daftar periksa ... 113
71. Gambar 4.27 Tampilan SMS dari sistem untuk daftar periksa ... 113
72. Gambar 4.28 Tampilan SMS dari Pengguna untuk informasi jadwal dokter... 114
73. Gambar 4.29 Tampilan SMS ke-1 dari Sistem untuk informasi jadwal dokter... 114
74. Gambar 4.30 Tampilan SMS ke-2 dari Sistem untuk informasi jadwal dokter... 115
75. Gambar 4.31 Tampilan SMS dari Pengguna untuk saran ... 115
76. Gambar 4.32 Tampilan SMS dari Sistem untuk saran... 116
2. Tabel 2.2 Simbol ER Diagram ... 27
11. Tabel 3.9 Struktur Tabel Administrator ... 49
12. Tabel 4.1 Tabel administrator ... 77
23. Tabel 4.12 Tabel outbox_multipart... 80
24. Tabel 4.13 Tabel pbk... 80
25. Tabel 4.14 Tabel pbk_groups... 81
26. Tabel 4.15 Tabel phones ... 81
27. Tabel 4.16 Tabel sentitems ... 81
28. Tabel 4.17 Format SMS dari pasien... 84
BAB I PENDAHULUAN
1.1Judul
Layanan informasi untuk pasien Rumah Sakit Panti Rapih berbasis SMS
(Short Message Service).
1.2Latar Belakang
Faktor kesehatan merupakan salah satu faktor yang penting dalam kehidupan masyarakat. Terutama untuk mendapatkan layanan kesehatan ketika sakit atau membutuhkan pelayanan kesehatan karena hal lain. Untuk bisa mendapatkan layanan kesehatan biasanya seorang pasien harus melalui beberapa prosedur seperti datang kerumah sakit untuk mendaftar serta mengantri dan sebagainya. Belum lagi bila dokter yang bersangkutan yang sering menangani pasien tersebut sedang berhalangan tidak praktek atau sedang bertugas keluar kota. Hal ini tentu saja sangatlah merepotkan.
Oleh karena itulah pada tulisan ini, memuat sebuah sistem informasi yang berbasis SMS yang dapat melayani registrasi pendaftaran pasien dan informasi bagi pasien di suatu rumah sakit dengan harapan pendaftaran pasien bisa dilakukan dengan menggunakan sarana layanan sms sehingga memudahkan pasien untuk berobat serta dapat memperoleh informasi jadwal praktek dokter yang bersangkutan di Rumah Sakit Panti Rapih.
1.3Perumusan Masalah
Bagaimana membuat sebuah sistem informasi berbasis SMS, yang dapat melayani registrasi pasien di Rumah Sakit Panti Rapih.
1.4Batasan Masalah
Informasi yang dapat diberikan sistem ini kepada pengguna atau pasien antara lain :
1. Pelayanan registrasi pasien 2. Informasi jadwal dokter
3. Menampung saran/kritik dari pasien atau masyarakat
4. Pendaftaran pasien paling lambat 7 hari sebelum hari pemeriksaan.
1.5Tujuan Penelitian
Tulisan ini bertujuan untuk membuat sebuah sistem yang dapat membantu memberikan informasi yang tepat dan melayani registrasi pasien yang akan berobat ke Rumah Sakit Panti Rapih.
1.6 Manfaat Penelitian
Manfaat yang dapat dicapai dari penelitian ini yaitu :
1. Tersedianya suatu sistem yang dapat melayani registrasi pasien jarak jauh.
3. Informasi dokter yang bertugas dirumah sakit dapat diketahui dengan cepat.
4. Rumah Sakit Panti Rapih mendapat informasi kekurangan dan kelebihannya dari saran/kritik yang disampaikan masyarakat untuk memperbaiki pelayanan kepada masyarakat.
1.7 Metodologi Penelitian
Metode yang digunakan dalam pembuatan sistem informasi ini adalah metode 4-GT ( Fourth Generation Techniques ) yang terdiri dari 4 tahap
(Pressman, RS. ,2002), yaitu : 1. Analisa
Merupakan tahap untuk menentukan kebutuhan sistem yang diperlukan untuk membuat sebuah sistem informasi.
2. Desain
Membuat desain atau rancangan sistem yang akan dibangun. Hal yang nantinya akan dirancang berupa :
3. Implementasi
Mengimplementasikan hasil rancangan sistem ke dalam program atau query yang nantinya akan digunakan untuk membuat sistem informasi.
4. Pengujian
Mengadakan pengujian terhadap program atau sistem informasi yang telah dibuat apakah sudah layak atau belum.
Analisa
Desain
Implementasi
Pengujian
Gambar. 1.1 Paradigma 4-GT
yang sudah ada tidak cukup canggih untuk mengakomodasikan bahasa alami. Pada saat ini, dialog antara pelanggan dan pengembang yang ada pada metode sebelumnya tetap menjadi bagian penting dari teknik 4GT.
Implementasi menggunakan 4GL (Fourth-Generation Language)
dapat dihasilkan dari program kode yang sesuai. Tetapi struktur data dengan informasi lainnya harus ada dan dapat diakses oleh 4GL. Untuk aplikasi kecil, adalah mungkin untuk langsung berpindah dari pengumpulan kebutuhan ke implementasi menggunakan bahasa non-prosedural (Fourth-Generation Language - 4GL). Beberapa kelebihan dan kekurangan 4GT (Sutomo, A., 2005 ).
Kelebihan:
Karena 4GT menggunakan 4GL yang “notabene” merupakan bahasa pemrograman yang khusus dirancang dengan tujuan tertentu (spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula sangat tepat menggunakan 4GT. Bahkan ada 4GL yang bisa men-generate sistem dari output yang dihasilkan oleh CASE tools.
Kekurangan:
yang sama (kualitas dan pemeliharaan yang kurang baik, ketidakpuasan pelanggan) seperti dengan metode konvensional.
2. 4GL tidak selalu berhasil menghasilkan sistem yang diinginkan.
1.8 Sistematika Penulisan
Sistematika penulisan tugas akhir ini dibagi menjadi beberapa bab, sebagai berikut :
BAB I Pendahuluan
Membahas tentang latar belakang masalah, rumusan masalah, batasan masalah, tujuan, metodologi, sistematika penulisan.
BAB II Landasan Teori
Berisi landasan teori yang mendukung dalam proses menganalisis, perencanaan dan implementasi dari penulisan tugas akhir ini.
BAB III Analisa dan Perancangan Sistem
Berisi tentang rancangan sistem yang akan digunakan beserta dengan analisisnya.
BAB IV Implementasi
Berisi tentang implementasi dari sistem yang dibuat berdasarkan hasil analisa dan perancangan.
BAB V Penutup
BAB II
LANDASAN TEORI
2.1Sistem Informasi
Secara teknis sistem informasi dapat didefinisikan sebagai kumpulan berbagai komponen yang saling berinteraksi untuk mengumpulkan, memproses, menyimpan dan menyebarluaskan informasi demi lancarnya proses dan pengambilan keputusan dalam suatu organisasi (Pressman, RS., 1992).
2.1.1 Kualitas Informasi
Kualitas dari suatu informasi (quality of information) tergantung dari tiga hal, yaitu informasi harus akurat (accurate), tepat pada waktunya (timeliness)
dan relevan (relevance).
Kualitas Informasi
Akurat
Te
p
at Waktu
Relevan
Gambar. 2.1 Pilar kualitas informasi
1. Akurat
Informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan maksudnya. Informasi harus akurat karena dari sumber informasi sampai ke penerima informasi kemungkinan banyak terjadi gangguan (noise) yang dapat merubah atau merusak informasi tersebut.
2. Tepat pada waktunya
Informasi yang datang pada penerima tidak boleh terlambat. Informasi yang sudah usang tidak akan mempunyai nilai lagi. Karena informasi merupakan landasan di dalam pengambilan keputusan. Bila pengambilan keputusan terlambat, maka dapat berakibat fatal untuk organisasi. Dewasa ini mahalnya nilai informasi disebabkan harus cepatnya informasi tersebut didapat, sehingga diperlukan teknologi-teknologi mutakhir untuk mendapatkan, mengolah dan mengirimkannya.
3. Relevan
2.1.2 Nilai Informasi
Nilai dari informasi (value of information) ditentukan dari dua hal, yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Akan tetapi perlu diperhatikan bahwa informasi yang digunakan di dalam suatu sistem informasi umumnya digunakan untuk beberapa kegunaan. Sebagian besar informasi tidak dapat persis ditaksir keuntungannya dengan suatu nilai uang, tetapi dapat ditaksir nilai efektivitasnya.
2.2 Basis Data
Basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system).
2.2.1 MySQL
1. Open Source Software
MySQL tersedia via GNU/GPL (General Public License) untuk yang gratis. Dimana versi ini dapat diperoleh secara gratis.
2. Commercial License
MySQL tersedia dalam lisensi komersial. Jika pengembang ingin menggunakan MySQL sebagai bagian dari software produk baru dan ingin menjual produk, dibandingkan melepaskannya dibawah GPL, pengembang harus mendapatkan lisensi komersial dari MySQL.
MySQL merupakan sebuah software untuk database yang memiliki kecepatan tinggi dengan ukuran yang kecil, selain itu MySQL juga dapat diperoleh secara gratis.
Keuntungan dari MySQL seperti dibawah ini : 1. Cepat
Tujuan utama pengembangan MySQL adalah kecepatan, sebagai konsekwensi software yang dirancang dari awal untuk kecepatan.
2. Tidak Mahal
MySQL adalah software gratis dibawah lisensi GPL open-source, sementara pembiayaan untuk lisensi komersialnya sangatlah pantas.
3. Mudah digunakan
4. Kompatibel dengan beberapa sistem operasi
MySQL dapat berjalan pada sistem operasi beragam seperti Windows, linux, MacOS, kebanyakan variasi UNIX (Solaris, AIX dan DEC Unix), FreeBSD, OS/2, Irix, dll.
5. Dukungan teknis secara luas
MySQL menyediakan dukungan cuma-cuma untuk pengguna via mailing list.
6. Aman
MySQL memiliki otorisasi fleksibel yang mengijinkan beberapa previlege
database untuk membuat dan menghapus database. 7. Mendukung database yang besar
MySQL menangani database sampai 50 juta baris atau lebih. Batasan ukuran file secara default untuk tabel sebesar 4GB, tetapi anda dapat menaikkannya (jika OS anda dapat menangani) hingga 8 juta TB
(terrabytes).
8. Costumizable
Lisensi GPL open source mengijinkan pemrogram untuk memodifikasi software MySQL untuk mencocokkannya dengan lingkungan.
2.2.2 Arsitektur Sistem
kemajuan teknologi, arsitektur sistem semakin banyak variannya dan berubah dalam keunggulannya. Yang harus menjadi pertimbangan utamanya dalam menentukan arsitektur sistem yang cocok tentu saja bukan hanya keunggulan teknologi, namun faktor biaya juga sesuai dengan kebutuhan nyata sistem yang digunakan.
1. Arsitektur Two – Tier
Arsitektur Two Tier merupakan arsitektur yang disebut Client Server (Julistiono, IK. dan Hendra L., 2001), dimana terdapat komputer sebagai client dan server yang berinteraksi melalui protokol dan media komunikasi tertentu.
Ada 2 jenis arsitektur Two Tier yaitu : a). Thin Client-Thick Server
Pada arsitektur ini, client menjalankan satu fungsi, yaitu sebagai penyaji dari tampilan aplikasi dan data yang diakses dari server.
b). Thick Client-Thin Server
Arsitektur ini sedikitnya memberi dua peran bagi client, dimana client
`
Database Server Aplikasi & Tampilan
Database Tier Client Tier
Gambar.2.2 Arsitektur Two-Tier
2. Arsitektur Three – Tier
Pada arsitektur three-tier client server sudah dipisahkan antara database, aplikasi dan client. Pada bagian bawah aplikasi adalah database
tier yang terdiri dari sistem manajemen database yang berisi data dan
dilakukan perintah create, delete, modify dan query. Pada bagian atas
Gambar. 2.3 Arsitektur Three-tier
3. Arsitektur N- Tier
N-Tier adalah pengembangan dari model jaringan client server
lebih dari 2 tier. Istilah menunjukan banyaknya lapisan dalam sebuah aplikasi. Sebuah aplikasi terdiri dari beberapa komponen utama, yaitu lapisan presentation(Presentation Layer), lapisan aplikasi (Aplication Layer), atau logika bisni (Bisnis Logic Layer ), dan lapisan data (Data
Layer).Lapisan presentation berhubungan dengan antarmuka dengan
Huruf n dalam n-tier menunjukkan banyaknya level yang dimiliki oleh aplikasi tersebut bukan pada banyaknya komputer yang digunakan.
Gambar.2.4 Arsitektur N-Tier
2.3Apache
Untuk membangun sebuah web server diperlukan sebuah software server tertentu sebagai kendali web server tersebut. Salah satu software web server adalah Apache. Server Apache terdiri dari beberapa bagian, kode source apache asli dengan beberapa patch dan beberapa executable tambahan.
2.4PHP
PHP adalah singkatan dari "PHP: Hypertext Preprocessor", yang merupakan sebuah bahasa scripting yang terpasang pada HTML. Sebagian besar sintaks mirip dengan bahasa C, Java dan Perl, ditambah beberapa fungsi PHP yang spesifik. Tujuan utama penggunaan bahasa ini adalah untuk memungkinkan perancang web menulis halaman web dinamik dengan cepat.
Seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan yang paling utama PHP adalah pada konektivitasnya dengan sistem database di dalam web. Sistem database yang dapat didukung oleh PHP adalah
1. Oracle 2. MySQL 3. Sybase 4. PostgreSQL
PHP dapat berjalan di berbagai sistem operasi seperti windows 98/NT, UNIX/LINUX, solaris maupun macintosh.
Software ini juga dapat berjalan pada web server seperti PWS
(Personal Web Server), Apache, IIS, AOLServer, fhttpd, phttpd dan
sebagainya. PHP juga merupakan bahasa pemograman yang dapat kita kembangkan sendiri seperti untuk menambah fungsi-fungsi baru.
diperoleh jika menggunakan PHP sebagai modul dari apache (Galuh, P., 2007), di antaranya adalah:
1. Tingkat keamanan yang cukup tinggi
2. Waktu eksekusi yang lebih cepat dibandingkan dengan bahasa pemograman web lainnya yang berorientasi pada server-side scripting. 3. Akses ke sistem database yang lebih fleksibel. seperti MySQL. Dalam
modul ini kita akan mempelajari PHP sebagai server-side scripting yang menggunakan apache sebagai webserver.
2.5SMS
Short Message Sevice (SMS) adalah salah satu fasilitas dari teknologi GSM dan CDMA yang memungkinkan mengirim dan menerima pesan – pesan singkat berupa text dengan kapasitas maksimal 160 karakter dari Mobile Station (MS) (Rozidi, RI., 2007). Kapasitas maksimal ini tergantung dari alphabet yang digunakan, untuk alphabet Latin maksimal 160 karakter, dan untuk non – Latin misalnya alphabet Arab atau China maksimal 70 karakter.
2.5.1Elemen Pendukung SMS
SME
Gambar.2.5 Eleman Jaringan Pendukung SMS
Subsistem yang mutlak ada pada layanan SMS adalah:
1. SME (Short Message Entity), merupakan tempat penyimpanan dan
pengiriman message yang akan dikirimkan ke MS tertentu.
2. SC (Service Centre), bertugas untuk menerima message dari SME dan
melakukan forwarding ke alamat MS yang dituju.
3. SMS-GMSC (Short Message Service – Gateway SMC ), melakukan
penerimaan message dari SC dan memeriksa parameter yang ada. Selain itu GMSC juga mencari alamat MS yang dituju dangan bantuan HLR, dan mengirimkannya kembali ke MSC yang dimaksud.
4. SMS – IWMSC (Short Message Service – Interworking MSC ), berperan
dalam SMSMessage Origiating, yaitu menerima pesan dari MSC
2.5.2Prinsip Kerja SMS
1. Menyimpan dan meneruskan (store and forward fashion) pesan dari pengirim ke pelanggan tujuan.
2. Merupakan Interface antara PLMN (Public Land Mobile Network) GSM dengan berbagai sistem lainnya, seperti : elektronic mail, faximile, atau suatu content provider.
SC terhubung ke PLMN melalui BSC. Berdasarkan fungsinya dalam pengiriman SMS fungsi MSC dapat dibedakan menjadi dua:
1. SMS-GMSC (Gateway MSC for Short Message Service), yaitu fungsi dari MSC yang mampu menerima pesan dari SC, kemudian mencari informasi routing ke HLR selanjutnya mengirimkan ke VMSC dimana pelanggan tersebut berada SC
2. SMS-IWMMSC (Interworking MSC for Short Message Service), yaitu fungsi dari MSC yang mampu mengirim pesan dari PLMN dan meneruskannya ke SC.
Dengan SMS, kita dapat mentransmisikan pesan singkat dari dan ke Mobile
Subscriber (MS). Pengiriman pesan singkat ini (SMS) dimungkinkan dengan
adanya sebuah SMSC (Short Message Service Center). Secara umum SMSC berfungsi menerima SMS yang dikirim, menyimpannya untuk sementara, dan memforward (mengirimkan) SMS tersebut ke mobile subscriber (MS) ataupun ESME tujuan
External Short Message Entities (ESME) adalah device selain MS yang dapat berfungsi untuk menerima atau mengirim SMS. Pada umumnya ESME dipakai untuk menciptakan layanan yang lebih beragam kepada pelanggan ataupun untuk meningkatkan kemampuan jaringan telekomunikasi dari operator telekomunikasi wireless yang bersangkutan. ESME dapat berupa antara lain :
• Web. Dengan teknologi internet yang berkembang pesat, MS dapat mengirimkan SMS dan langsung ditampilkan dalam suatu halamanan web. • E-Mail. MS dapat juga mengirimkan SMS ke suatu alamat e-mail dan akan
diterima sebagai sebuah e-mail.
• Aplikasi content lainnya. Dengan perkembangan teknologi IT, terutama dibidang software, maka SMS dapat digunakan untuk berbagai macam tujuan, seperti : voting, reservasi tiket, registrasi anggota suatu komunitas, games/kuis, survey, bahkan memungkinkan juga untuk digunakan sebagai sarana PEMILU (Pemilihan Umum). Semua itu dimungkinkan karena adanya aplikasi-aplikasi content yang mendukung.
Bila sebuah SMS dikirimkan dari MS A ke MS B, maka SMS itu akan diteruskan oleh BSS ke MSC dan kemudian ke SMSC. SMSC berfungsi mengirimkan SMS tersebut ke MS B. Untuk keperluan ini, SMSC harus tahu bagaimana status subscriber (aktif/tidak aktif), dimana lokasi MS B berada. Informasi-informasi mengenai MS B ini didapat dari HLR.
Jika misalnya MS B dalam keadaan aktif, maka SMSC akan mengirimkan SMS ke MS B melalui MSC A, MSC B dan kemudian MS B. Bila misalnya MS B dan MS A adalah MS dari 2 operator yang berbeda, maka pada saat pengirman SMS dari A ke B, maka SMS tersebut hanya akan melalui SMSC A, tidak singgah lagi di SMSC B.
MS B. Bila suatu saat SMSC mendapatkan informasi dari HLR bahwa MS B aktif kembali, maka SMS akan diteruskan ke MSC A, MSCB, dan MS B.
Gambar 2.7 Alur skenario pengiriman SMS MO dari MS ke ESME (SMS Originating)
1. MS diaktifkan dan ter-register ke networknya. 2. MS mengirimkan SMS ke MSC.
3. MSC berkomunikasi dengan VLR untuk memverifikasi bahwa message yang dikirimkan sesuai dengan supplementary service yang ada dan tidak MS tidak sedang dalam keaddan diblok untuk mengirimkan SMS.
4. MSC mengirimkan SMS ke SMSC dengan menggunakan operasi
forwardShortMessage.
5. SMSC meneruskan SMS ke SME. Secara optional, SMSC dapat juga menerima laporan bahwa SMS telah diterima SME.
Gambar 2.8 Alur skenario SMS yang diterima MS dari ESME (SMS Terminating)
1. ESME mengirimkan SMS ke SMSC.
2. Setelah menerima SMS, SMSC akan berkomunikasi dengan HLR mengetahui status dan lokasi MS.
3. SMSC meneruskan SMS ke MSC.
4. MSC akan menghubungi VLR untuk mengetahui informasi dari MS. Dalam tahap ini termasuk juga proses autentikasi MS.
5. Jika MS dalam keadaan aktif dan tidak diblock, MSC mentransfer SMS ke MS.
6. MSC akan mengirimkan informasi delivery message ke SMSC.
2.6 SMS Gateway
SMS Gateway merupakan sebuah program aplikasi yang menghubungkan
antara semua SMS yang diterima maupun dikirim ke sebuah PC dengan menggunakan jaringan GSM (Utomo,PA., 2006). Bagian ini berfungsi membaca SMS dari MS dan mengembalikan SMS balasan. Dalam operator GSM setiap SMSC akan selalu berbeda dengan yang lainnya. Berikut daftar SMSC dari beberapa operator di Indonesia :
Tabel. 2.1 Daftar SMSC
OPERATOR GSM NOMOR SMSC
Telkomsel +62811000000 Satelindo +62816124
Excelcom +62818445009
Indosat +62855000000
SMS Gateway adalah penghubung antara handphone yang menggunakan fasilitas SMS dengan komputer. SMS Gateway bekerja dengan cara menghubungkan handphone yang memiliki fasilitas SMS dan komputer selaku operator otomatisnya. Keduanya dihubungkan oleh kabel data
handphone dari serial port pada komputer ke handphone. Komunikasi antara
Gambar. 2.9 Arsitektur SMS Gateway
Keterangan :
1. PC/Laptop (SMS Server), digunakan untuk meletakkan aplikasi SMS Gateway dan administrasi SMS yang akan dibangun.
2. Handphone (Receiver), digunakan untuk menerima SMS dan membalas SMS yang dikirmkan oleh Handphone user (Originatur). 3. Handphone (Originatur), digunakan untuk mengirimkan SMS ke
Handphone (Receiver).
2.7 Gammu
Gammu merupakan salah satu tool untuk mengembangkan aplikasi SMS
Gateway yang cukup mudah diimplementasikan (Acho, 2007). Pada awalnya
Gammu bernama MyGnokii2 (Sampai dangan versi 0.58).Gammu dapat bekerja
dengan handphone dari berbagai merk. Gammu dapat digunakan untuk daftar telepon, pesan singkat (SMS, EMS dan MMS), kalender, filesystem, radio, camera, dan SMS gateway (dengan MySQL yang didukung dengan PHP). Gammu juga didasari daemon mode untuk mengirim dan menerima SMS.
Kelebihan Gammu dari tools SMS Gateway lainnya adalah :
1. Gammu dapat di jalankan di Windows maupun Linux.
2. Gammu kompatibel dengan berbagai device, baik kabel data USB maupun serial.
3. Gammu menggunakan database MySql, sehingga dapat menggunakan
interface web-based
2.8Metode Perancangan Basis Data
2.8.1 Diagram E-R (Entity Relationship)
Adalah model bagaimana menggambarkan entitas dengan relasi (relasi secara logika). ER model adalah salah satu model dari perancangan basis data pada tahap Conceptual design.
a) Entitas (Entity)
Sebuah objek yang nyata dan ada dan dapat dibedakan dari sesuatu yang lain. Setipa entitas pasti memiliki atribut yang menggambarkan karakteristik dari entitas. Pemilihan atribut yang relevan bagi sebuah entitas adalah merupakan hal yang penting.
b) Relasi (Relationship)
Adalah hubungan antar entitas. Relasi-relasi yang terdapat dalam ER diagram adalah :
- Relasi one to one dengan simbol 1 to 1 - Relasi one to many dengan simbol 1 to M - Relasi many to many dengan simbol M to N
Lambang yang paling banyak dipakai dalam ER diagram adalah : Tabel 2.2 Simbol ER Diagram
Simbol Keterangan
Menunjukkan himpunan entitas
Menunjukkan atribut. Atribut yang berfungsi sebagai primary key digaris bawahi
Menghubungkan entitas dengan relasinya
2.8.2 Normalisasi
Normalisasi digunakan sebagai suatu metode untuk menciptakan struktur tabel kedalam basis data. Normalisasi terkadang hanya dipakai sebagai perangkat verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain (Misal : ER diagram). Normalisasi membantu pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel.
Normalisasi merupakan proses untuk mengubah suatu relasi yang memiliki masalah tertentu kedalam sebuah relasi atau lebih yang ridak memiliki masalah tersebut. Masalah ini dikenal dengan anomali. Sebuah tabel dikatakan berada dalam bentuk normal tertentu jika memenuhi kondisi-kondisi tertentu.
Bentuk normal ketiga (3NF) yaitu jika tabel tersebut telah berada pada bentuk normal yang kedua dan setiap kolom bukan kunci primer tidak memiliki ketergantungan secara transitif terhadap kunci primer. Bentuk-bentuk normal lain seperti Bentuk-bentuk normal ke empat (4NF) dan Bentuk-bentuk normal ke lima (5NF) digunakan untuk kasus-kasus khusus.
2.9 Diagram Aliran Data
Diagram aliran data (DFD) adalah sebuah teknik grafis yang menggambarkan aliran informasi dan transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output (Pressman, RS., 1992). DFD dapat dipartisi ke dalam tingkat-tingkat yang merepresentasikan aliran informasi yang bertambah dan fungsi ideal.
DFD tingkat 0, yang disebut juga dengan model system fundamental atau model konteks, merepresentasikan seluruh elemen sistem sebagai sebuah bubble tunggal dengan data input dan output yang ditunjukkkan oleh anak panah yang masuk dan keluar secara berurutan. Proses tambahan (bubble) dan jalur aliran informasi direpresentasikan pada saat DFD tingkat 0 dipartisi untuk mengungkap detail yang lebih.
Sebuah persegi panjang digunakan untuk merepresentasikan sebuah
entitas eksternal, yaitu sebuah elemen sistem ( misalnya perangkat keras,
mereprentasikan sebuah proses atau transformasi yang diaplikasikan ke data (atau kontrol) dan mengubahnya dengan berbagai macam cara. Anak panah melambangkan satu atau lebih data. Garis dobel merepresentasikan sebuah
penyimpanan data - informasi tersimpan yang digunakan oleh perangka
lunak. Penyingkatan notasi DFD merupakan satu alasan mengapa teknik analisis terstruktur banyak digunakan.
Prosedur atau consumer informasi yang ada diluar bound system yang dimodelkan.
Transfer informasi (fungsi) yang ada di dalam bound sistem untuk dimodelkan
Entiti Eksternal
Proses
Objek data; anak panah menunjukkan arah aliran data
Objek data
Penyimpanan data
Repositori data yang disimpan untuk digunakan oleh satu atau lebih proses
BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1 Analisa
Rumah Sakit Panti Rapih adalah salah satu Rumah Sakit Swasta besar di kota Jogjakarta yang tidak hanya mengandalkan kemampuan profesional medik saja, tetapi juga memberikan sentuhan ramah termasuk ramah lingkungan yang menentramkan. Dengan memadukan teknologi medik yang unggul, tersedianya tenaga dokter dan perawat yang profesional, perilaku staf yang berbela rasa dan lingkungan yang asri akan menjadikan para pasien merasa seperti dirumah.
3.1.1 Pelayanan Registrasi Pasien Rumah Sakit
Saat ini pelayanan registrasi pasien di Rumah Sakit Panti Rapih dapat dilkukan dengan dua cara, yaitu dengan datang langsung ke rumah sakit atau dengan melakukan perjanjian melalui telephone. Prosedur pendaftaran dibedakan menjadi 3 yaitu, pasien rawat jalan pasien baru, pasien rawat jalan lama, dan pasien rawat jalan dengan perjanjian.
1. Prosedur pendaftaran pasien rawat jalan pasien baru
Pengertian : Pendaftaran pasien yang baru pertama kali periksa / belum pemah periksa di RS Panti Rapih
Tujuan :
1. Semua pasien terekam data identitasnya untuk memperlancar dan mempermudah pelayanan selanjutnya. 2. Semua pasien mendapat nomor RM.
Kebijakan : Semua pasien baru diidentifikasi ,dibuatkan rekam medis, dan KlB untuk memperlancar.
Prosedur :
1. Pasien datang ke tempat Pcndaftaran Pasien Rawat Jalan (PPRJ).
2. Petugas menerima pasien.
3. Pesien atau keluarga pasien mengisi formulir RM Rawat Jalan pasien baru dengan lengkap.
4. Petugas memeriksa kelengkapan data paslen, kemudian memasukkan data terse but ke komputer.
5. Petugas menyiapkan dokumen RM baru.
6. Petugas memberi karcis periksa yang berisi nama dokter beserta keahliannya, nomor urut pasien, ruang periksa dan memberikan penjclasan seperlunya tcntang posisi ruang periksa dan jam prakteknya.
untuk pemeriksaan ulang.
8. Petugas mendistribuskan dokumen rekam medis ke ruang periksa.
9. Buku Registrasi + KIUP Pasien otomatis sudah tercatat di komputer.
Mulai/Pasien
Gambar 3.1 Flowchart registrasi pasien rawat jalan untuk pasien baru
2. Prosedur pendaftaran pasien rawat jalan pasien lama
Pengertian : Pendaftaran pasien yang sudah pernah berobat di RS Panti Rapih
Kebijakan : Pemberian pelayanan secara cepat, lancar dan mudah Prosedur :
1. Pasien datang ke tempat Pendaftaran Pasien Rawat Jalan (PPRJ).
2. Petugas menyiapkan KIB pasien, bila ada segera mendaftar pasien dengan memasukkan no. RM pasien ke komputer, bila data sudah benar maka segera didaftar ke dokter yang diminta. Kemudian diberikan karcis kepada pasien yang berisi nama dokter, no. urut dan ruang prakteknya. Trecer sudah otomatis akan tercetak langsung di ruang filing. 3. Bila pasien tidak membawa KIB, cari data pasien melalui
KIUP elekteronik dengan menggunakan nama dan alamat pasien atau dari tanggal terakhir periksa. Bila No. RM sudah ketemu urutan pendaftaran seperti item no. 2.
4. Petugas mendistribusikan dokumen rekam medis ke ruang periksa.
5. Buku reg sudah otomatis tercatat di komputer
Gambar 3.2 Flowchart registrasi pasien rawat jalan pasien lama
1. Prosedur pendaftaran pasien rawat jalan dengan perjanjian Pengertian : Suatu proses pendaftaran pasien bukan pada hari periksa,
baik datang langsung maupun melalui telepon.
Tujuan : Mengurangi kepadatan loket pendaftaran pada saat hari H.
Kebijakan : Untuk memperlancar dan mempercepat pelayanan setiap pasien dapat mengadakan perjanjian untuk periksa sampai dengan 7 hari ke depan
Prosedur :
2. Petugas pendaftaran menanyakan perihal keperluan periksa seperti dalam pendaftaran pasien biasa. 3. Untuk pasien baru petugas mencatat identitas
pasien dengan No. RM berkode “B” pada komputer, sesuai dengan dokter dan hari yang diminta, kemudian petugas memberikan informasi kepada pasien untuk melengkapi data dan mengambil KIBnya pada hari H, serta meyebutkan nomor urut periksa. Bila pasien datang langsung pasien dibuatkan karcis perjanjian.
4. Untuk pasien lama petugas meminta KIB pasien atau menanyakan nomor rekam medis. Petugas menulis identitas pasien pada komputer sesuai dengan dokter dan hari yang dikehendaki, kemudian petugas menyebutkan nomor urut periksa atau membuatkan karcis perjanjian untuk pasien yang datang langsung.
5. Pendaftaran pasien maksimal 7 hari sebelum hari pemeriksaan. Prosedur pendaftaran sama seperti pendaftaran rawat jalan.
Mulai/Pasien datang
Konfirmasi keperluan
Pasien baru
Catat Identitas no RM kode”B”
Get nama_dokter,
no_periksa
Get no RM
Get nama_dokter,
no_urut
Selesai y
n
3.2Perancangan
3.2.1 Perancangan Umum Sistem
Sistem yang dibangun memiliki tiga lapisan, yaitu lapisan database pada lapisan paling bawah, lapisan aplikasi pemroses yang berisi logika aplikasi dan komunikasi data antar tier, dan pada bagian atas adalah lapisan tampilan/client tier dalam hal ini berupa
web browser dan handphone.
Pada server terdapat berbagai aplikasi perangkat lunak yang bekerja mengatur alur kerja sistem. Berbagai perangkat lunak tersebut diharuskan untuk bekerja secara simultan dan terus-menerus setiap waktu karena server akan selalu menerima informasi (SMS) dari pasien/masyarakat secara terus menerus dan
real-time. Berikut gambaran sistem secara keseluruhan.
Gambar 3.5 Gambaran sistem secara lebih lengkap
Secara garis besar sistem melakukan 3 pekerjaan penting yang diproses secara simultan, yaitu :
1. Memantau semua sms yang masuk ke server.
2. Memproses sms yang masuk berdasarkan kode sms untuk kemudian dijadikan query dan disimpan di database.
3. Mengirim pesan yang berisi hasil query dari sms yang masuk.
Sistem yang dibuat memiliki format pesan sebagai berikut : Tabel 3.1 Format pesan (SMS) dari pasien
Kode Format Pesan Contoh
Daftar Daftar#no_rm_p#
nama dokter#hari
Daftar#123456# b sidarto#rabu
Jadwal Jadwal#nama dokter Jadwal#b sidarto
Tabel 3.2 Format pesan (SMS) dari sistem
KERTIA*Penyakit Rematik* RABU, 18/6/2008*15.30-16.30*Antrian:2
15.30-16.30*SABTU, 09.00-10.00
Saran Terimakasih atas saran anda Terimakasih atas saran anda
Jika terjadi kesalahan dalam penulisan format atau data yang dikirim tidak ada dalam database, sistem akan mengirim pesan “Format kata pertama salah” atau “Data tidak ada di database”. Admin dapat mengupdate data dan melihat pesan atau data yang ada di database dengan menggunakan web browser.
3.2.2 Pelayanan Registrasi Pasien
3.2.3 Informasi Mengenai Jadwal Dokter
Dalam sistem ini dibuat layanan informasi melalui sms untuk mengetahui jadwal praktek dokter. Adapun konsep layanan ini dapat dilihat pada flowchart dibawah ini :
Gambar 3.7 Flowchart informasi jadwal dokter
3.2.4 Menampung Saran Dari Pasien Atau Masyarakat
Gambar 3.8 Flowchart saran dan kritik dari pasien
Daftar singkatan :
daftar Æ kata pertama yang harus diinputkan untuk pelayanan registrasi melalui sms
jadwal Æ kata pertama yang harus diinputkan untuk pelayanan jadwal dokter melalui sms
saran Æ kata pertama yang harus diinputkan untuk pelayanan saran/kritik melalui sms
3.2.5 Perancangan Basis Data 1. E/R Diagram
2. Rincian Tabel
Tabel Pasien
Tabel 3.3 Struktur Tabel Pasien
NAMA FIELD JENIS PANJANG DESKRIPSI no rm p Varchar 6 Id Pasien nama Varchar 30 Namapasien alamat Varchar 50 Alamat pasien jenis_klmn Varchar 5 Jenis kelamin
umur Int Umur pasien
telp Varchar 30 No telp pasien
Tabel Dokter
Tabel 3.4 Struktur Tabel Dokter
NAMA FIELD JENIS PANJANG DESKRIPSI
kode_d Varchar 5 Id dokter
nama_d Varchar 30 Nama dokter
kode_sp varchar 2 Id spesialis dokter
Tabel Spesialis
Tabel 3.5 Struktur Tabel Spesialis
NAMA FIELD JENIS PANJANG DESKRIPSI
kode_sp Varchar 5 Id spesialis dokter
spesialis Varchar 50
Tabel Periksa
Tabel 3.6 Struktur Tabel Periksa
NAMA FIELD JENIS PANJANG DESKRIPSI kode_prks Integer Id periksa tgl_prks Varchar 10 Tanggal periksa kode_d Varchar 5 Id dokter no_rm_p Varchar 6 No pasien
no_urut Int No antrian
hari_periksa Varchar 10
Hari periksa pasien jam_periksa Varchar 30 Jam periksa
Tabel Jadwal
Tabel 3.7 Struktur Tabel Jadwal
NAMA FIELD JENIS PANJANG DESKRIPSI
Kode_j Int Id jadwal
Kode_d Varchar 5 Id dokter
Hari_praktek Varchar 10 Hari praktek dokter
Jam_mulai Varchar 6 Jam dokter mulai praktek
Jam_selesai Varchar 6 Jam dokter selesai praktek Jml_antrian Int Jumlah antrian
Maks_antrian Int Maksimal antrian dokter
Tabel Saran
Tabel 3.8 Struktur Tabel Saran
NAMA FIELD JENIS PANJANG DESKRIPSI Kode_saran Int Id saran
No_telp Varchar 30 No telp pengirim Isi_saran Varchar 160 Isi saran
waktu Varchar 10
Tanggal pesan dikirim
Tabel Administrator
Tabel 3.9 Struktur Tabel Administrator
NAMA FIELD JENIS PANJANG DESKRIPSI
Kode_a Int Kode admin
5. Jadwal = kode_j + kode_d + hari_prktk + jam_mulai + jam_selesai + jml_antrian + maks_antrian
kode_j = {numeric}11 kode_d = {legal-char}5 hari_prktk = {legal-char}10 jam_mulai = {legal-char} 6 jam_selesai = {legal-char} 6 jml_antrian = {numeric}11 maks_antrian = {numeric}11
6. Saran = kode_s + no_telp + isi_saran + waktu kode_s = {numeric}11
no_telp = {legal-char}30 isi_saran = {legal-char}160 waktu = {legal-char}10
7. Admin = kode_a + username + password kode_a = {numeric}11
3.2.6 Perancangan Proses
nama_d, spesialis, hari, jam, no_urut nama_d
nama_d, spesialis, hari, jam isi_saran
username, password data admin
no_rm_p, nama_p, alamat, jns_k, umur, telp kode_d, nama_d, kode_sp
kode_sp. spesialis
kode_j, kode_d, nama_d, hari, jam
tgl_prks, nama_d, no_rm_p, hari, jam, no_urut no_telp, waktu, isi_saran
1. Diagram Konteks
Gambar 3.10 Diagram Konteks
1
nama_d, spesialis, hari, jam, no_urut nama_d
nama_d, spesialis, hari, jam isi_saran
username, password data admin
no_rm_p, nama_p, alamat, jns_k, umur, telp kode_d, nama_d, kode_sp
kode_sp. spesialis
kode_j, kode_d, nama_d, hari, jam
no_telp, waktu, isi_saran
no_telp, waktu, isi_saran
tgl_prks, nama_d, no_rm_p, hari, jam, no_urut no_rm_p
tgl_prks, nama_d, no_rm_p,hari, jam
isi_saran hari, jam
username, password username, password
no_rm_p, nama_p, alamat, jns_k, umur, telp
kode_d, nama_d, kode_sp
kode_j, kode_d, nama_d, hari, jam
kode_sp. spesialis
tgl_prks, nama_d, no_rm_p, hari, jam, no_urut
2. Level 1
Gambar 3.11 DFD Level 1 Catatan :
berikutnya digunakan untuk proses yang berbeda, yaitu proses registrasi pasien dan proses informasi jadwal dokter.
pasien
nama_d, spesialis, hari, jam, no_urut
nama_d, spesialis, hari, jam hari, jam
admin us ername, pas sword
data admin
us ername, pas sword
data admin
no_telp, wak tu, isi_saran no_telp, waktu, isi_saran
tgl_prks, nama_d, no_rm_p, hari, jam, no_urut
tgl_prks , nama_d, no_rm_p, hari, jam, no_urut
kode_j, kode_d, nama_d, hari, jam kode_j, kode_d,
nama_d, hari, jam
kode_s p. s pesialis kode_sp. s pesialis
kode_d, nama_d, kode_sp kode_d, nama_d, kode_sp
no_rm_p, nama_p, alamat, jns_k, umur, telp
no_rm_p, nama_p, alamat, jns_k, umur, telp
data valid
Admin
4. Level 3
Registrasi 1. 1.1
Cek
no_rm_p, nama_d, hari no_rm _p
nama_d
hari, jam
no_urut no_rm_p, nama_d, hari
no_rm_p, nama_d, spes ialis, hari
no_rm_p, nama_d, spes ials, hari, tanggal_prks,jam
no_rm_p, nama_d, spes ialis, hari, tanggal_prks, jam, no_urut
no_rm_p, nama_d, spes ialis, hari, tanggal_prks, jam, no_urut
tanggal_prks
no_rm_p, nama_d, spes ialis, hari, tanggal_prks, jam, no_urut
spes ialis no_rm_p, nama_d, hari
no_rm_p, nama_d, spes ials, hari, tanggal_prks,jam
no_rm_p, nama_d, spes ialis, hari, tanggal_prks, jam, no_urut
Informasi Jadwal Dokter
nama_d, spes ialis, hari, jam
nama_d, spesialis, hari, jam
3.2.7 Perancangan Struktur Menu
3.2.8 Perancangan Antar Muka 1. Login Administrator
Masuk :
Nama User Kata Sandi
Masuk
Gambar 3.17 Halaman login administrator
2. Halaman Utama
BANNER
Logo RS Panti Rapih
Daftar pasien periksa Daftar saran/kritik Daftar sms masuk Ubah data pasien Ubah data dokter Ubah daftar spesialisasi
Ubah jadwal dokter
A d m i n
Keluar Ubah Data Admin
Tanggal
Proses Menjalankan SMS Getaway
Gambar 3.18 Halaman Utama
3. Daftar Pasien Periksa
BANNER
Logo RS Panti Rapih
Daftar Pasien yang Periksa
Kategori Kata kunci
(Tanggal/no RM/kode dokter/nama pasien /nama dokter/hari/jam)
Tanggal
Nama Dokter Nama Pasien Hari Periksa Jam Antrian Cari
Gambar 3.19 Halaman daftar pasien periksa
4. Daftar Saran Kritik
BANNER
Logo RS Panti Rapih
Daftar Saran / Kritik
(Tanggal/isi/no telp)
No Tanggal No Telp Isi Hapus
Cari
Gambar 3.20 Halaman daftar saran kritik
5. Daftar SMS Masuk
No Tanggal No Telp Isi Hapus
Cari
Halaman 3.21 Halaman daftar sms masuk
6. Daftar Data Pasien
NO NO RM Nama Alamat Jns Klmn Umur Telp Edit Hapus Tambah
Gambar 3.22 Halaman daftar data pasien
7. Edit Data Pasien
Gambar 2.23 Halaman edit data pasien
8. Tambah Data Pasien
Gambar 3.24 Halaman tambah data pasien
9. Daftar Data Dokter
NO Kode Nama Spesialis Edit Hapus
Tambah
Gambar 3.25 Halaman daftar data dokter
10.Edit Data Dokter
Gambar 3.26 Halaman edit data dokter
11.Tambah Data Dokter
Gambar 3.27 Halaman tambah data dokter
12.Daftar Spesialisasi
NO Kode Spesialis Edit Hapus
Tambah
Gambar 3.28 Halaman daftar spesialis
13.Edit Spesialisasi
BANNER
Logo RS Panti Rapih
Edit Data Spesialis
Kode
Spesialis
Simpan
Daftar pasien periksa Daftar saran/kritik Daftar sms masuk Ubah data pasien Ubah data dokter Ubah daftar spesialisasi
Ubah jadwal dokter
A d m i n
Keluar Ubah Data Admin
Tanggal
Gambar 3.29 Halaman edit data spesialis
14.Tambah Spesialisasi
Gambar 3.30 Halaman tambah data spesialis
15.Jadwal Dokter
BANNER
Logo RS Panti Rapih
Jadwal Dokter
(Kode J//Kode D/Nama D/ Hari/ Jam)
Cari
NO Kode D Edit Hapus
Tambah
Nama D Hari Jam Kategori
Gambar 3.31 Halaman daftar jadwal dokter
16.Edit Jadwal Dokter
Gambar 3.32 Halaman edit jadwal dokter
17.Tambah Jadwal Dokter
Gambar 3.33 Halaman tambah jadwal dokter
18.Tambah Administrator
Gambar 3.34 Halaman tambah administrator
19. Edit Administrator
Gambar 3.35 Halaman edit administrator
BAB IV
IMPLEMENTASI DAN PENGUJIAN
4.1 Perangkat Keras dan Perangkat Lunak
Pada pembuatan tugas akhir ini perangkat keras dan perangkat lunak yang digunakan adalah sebagai berikut :
1. Perangkat Keras
• Processor : Pentium IV, 2,66 GHz
• RAM : 512 MB
• Harddisk : 80 Gb
• VGA : 128 MB
• Handphone : Nokia Tipe 3120
• Kabel data : DKU 5 2. Perangkat Lunak
• Sistem Operas Windows XP
• XAMPP versi 1.6.6
• PHP versi 4.4.3
• Gammu versi win32 SMS Gateway
• Web Browser (Mozilla Firefox)
4.2 Implementasi Basis Data
Berdasarkan diagram relasi (ER diagram) dan perancangan basis data, maka subsistem manajemen data dalam sistem ini adalah sebagai berikut : 1. Tabel Administrator
Tabel 4.1 Tabel administrator
2. Tabel Dokter
Tabel 4.2 Tabel dokter
3. Tabel Jadwal
4. Tabel Pasien
Tabel 4.4 Tabel pasien
5. Tabel Periksa
Tabel 4.5 Tabel periksa
6. Tabel Saran
Tabel 4.6 Tabel saran
7. Tabel Spesialis
Selain 7 tabel diatas masih terdapat 9 tabel lain yang tidak digambarkan dalam diagram relasi. Tabel tersebut merupakan tabel bawaaan dari gammu yang digunakan untuk mengelola data dari handphone. Tabel tersebut antara lain :
1. Tabel Daemons
Tabel 4.8 Tabel daemons
2. Tabel Gammu
Tabel 4.9 Tabel gammu
3. Tabel Inbox
4. Tabel Outbox
Tabel 4.11 Tabel outbox
5. Tabel Outbox Multipart
Tabel 4.12 Tabel outbox_multipart
6. Tabel Pbk
7. Tabel Pbk Groups
Tabel 4.14 Tabel pbk_groups
8. Tabel Phones
Tabel 4.15 Tabel phones
9. Tabel Sentitems
4.3Implementasi Proses
Sistem informasi ini merupakan suatu sistem web server yang menangani semua informasi yang masuk baik dari admin maupun dari pasien. Informasi yang dimasukkan oleh admin berisi data-data Rumah Sakit Panti Rapih. Sedangkan informasi yang dikirim oleh pasien berisi permintaan informasi mengenai registrasi, jadwal dokter dan saran/kritik.
Pasien dapat meminta informasi melalui layanan sms (short message service). Sedangkan admin dapat memasukkan informasi melalui web browser. Berikut ini ilustrasi aliran informasi yang ada di web server.
Gambar 4.1 Aliran informasi web server
1. Proses Login
Proses ini digunakan untuk melakukan pengecekkan username dan password dari administrator. Proses ini berfungsi untuk membatasi hak akses user.
Listing program : lampiran
2. Proses Auto Respon
Proses ini berfungsi untuk membaca informasi pesan SMS yang masuk dari user atau pasien kemudian melakukan kueri berdasarkan isi pesan, menyimpan hasil kueri dan mengirim informasi kembali kepada pengirim.
Program PHP ini disimpan dalam satu file yang bernama ‘proses.php’. Pada file ini berisi kode-kode program yang berfungsi untuk membaca sms yang masuk pada inbox, mengeksekusi permintaan dan mengembalikan informasi yang diminta kepada pengirim. Data yang baru masuk tersebut memiliki status ‘false’, artinya data yang baru masuk ke database. Sehingga pada proses ini membaca data yang memiliki status ‘false’.
$hasil=mysql_query("select * from inbox where Processed='false'");
Tabel 4.17 Format SMS dari pasien
Kode Format Pesan Contoh
Daftar Daftar#no_rm_p# Daftar#123456#
nama dokter#hari b sidarto#rabu
Jadwal Jadwal#nama dokter Jadwal#b sidarto
Saran Saran#isi_saran Saran#contoh saran
Sehingga seleksi pada pesan yang masuk akan dipisahkan berdasarkan format pesan. Pesan yang masuk diseleksi berdasarkan kata pertama pada pesan.
$isipesan=explode("#",$row[8]);
Pada row[8] dari tabel inbox yang berisi pesan akan dipecah menjadi beberapa bagian berdasarkan tanda “#”. Hasil dari pemecahan ini akan berupa array, untuk kemudian dibandingkan apakah pesan tersebut
untuk perintah daftar, jadwal atau saran dengan menggunakan struktur kontrol if – else.
if(Strtoupper($isipesan[0])=="DAFTAR")
{
do_action;
}
elseif(Strtoupper($isipesan[0])=="JADWAL")
{
do_action;
}
elseif(Strtoupper($isipesan[0])=="SARAN")
{
do_action;
}
pada bagian kedua yang berisi no rekam medis dengan data yang ada di dalam tabel pasien.
$noPasien=mysql_query("select * from pasien where no_rm_p='$isipesan[1]'");
$row1 = mysql_fetch_row($noPasien); if($isipesan[1]==$row1[0])
{
Isi pesan pada bagian ketiga yang berisi nama dokter akan dibandingkan dengan data yang ada dalam tabel dokter.
$a=strtoupper($isipesan[2]);
$namaDokter=mysql_query("select * from dokter where nama_d='$a'");
$row2 = mysql_fetch_row($namaDokter); if($a==$row2[1])
{
Kemudian isi pesan bagian keempat yang berisi hari praktek dokter yang dimaksud akan dibandingkan dengan data yang ada pada tabel
jadwal dokter.
$b=strtoupper($isipesan[3]);
$jadwal=mysql_query("select * from jadwal where kode_d = '$row2[0]'");
while($row3 = mysql_fetch_row($jadwal)) if($b==$row3[2])
{
Jika hasil pembandingan ‘true’ maka proses dilanjutkan dengan melihat jumlah antrian pasien untuk dokter yang dimaksud apakah sudah penuh atau belum.
$antri=mysql_query("select * from jadwal where
kode_j='$row3[0]' and jml_antrian<'$row3[6]'"); while($row4 = mysql_fetch_row($antri))
if($row4[5]<$row4[6]) {
Hal ini untuk menghindari satu pasien mendaftar dua kali untuk dokter yang sama pada waktu yang sama.
$cekperiksa=mysql_query("select * from periksa where tgl_prks ='$tgl1-$bulan1-$tahun1' and
kode_d='$row2[0]' and no_rm_p='$row1[0]' and hari_prks='$row3[2]' ");
$hasil=mysql_num_rows($cekperiksa); if($hasil==0)
Jika hasil dari pengecekan tersebut adalah nol atau tidak ada data yang sama maka informasi yang dikirim kembali ke user atau pengirim berisi tentang nama dokter, spesialis dokter, hari dan tanggal periksa, jam periksa dan no urut. Semua data yang didapat dari hasil kueri akan dikumpulkan menjadi satu pada variabel ‘$balasan’ kemudian data dimasukkan kedalam tabel outbox untuk dikirim kembali kepada user dan juga disimpan didalam tabel periksa untuk kepentingan database Rumah Sakit.
Pada kontrol ‘JADWAL’ isi pesan pada bagian kedua yang berisi nama dokter, akan dibandingkan dengan data dokter yang ada di database rumah sakit yaitu pada tabel dokter.
$c=strtoupper($isipesan[1]);
$namaDokter=mysql_query("select * from dokter where nama_d like '%$c%'");
$row6 = mysql_fetch_row($namaDokter); if($c==$row6[1])
{
$spesialis=mysql_query("select * from spesialis where kode_sp=$row6[2]");
$row7 = mysql_fetch_row($spesialis);
$jadwal=mysql_query("select * from jadwal where kode_d='$row6[0]'");
Informasi yang dikirim kembali ke user atau pengirim berisi informasi nama dokter, spesialis, hari dan jam praktek. Semua data yang didapat dari hasil kueri akan dikumpulkan menjadi satu pada variabel
‘$jadwalDokter’ kemudian data dimasukkan kedalam tabel outbox
untuk dikirim kembali kepada user.
Pada kontrol ‘SARAN’ isi pesan pada bagian kedua yang merupakan saran atau kritikan dari pasien atau masyarakat akan langsung disimpan kedalam tabel saran. Sistem akan langsung membalas atau memberikan informasi kepada pengirim bahwa saran telah diterima.
$pesan=mysql_query("insert into saran (no_telp, isi_saran, waktu) values ('$dari', '$isipesan[1]','$row[0]')"); $balas=mysql_query("insert into outbox (Coding,TextDecoded,
DestinationNumber) values ('Default_No_Compression', 'Terima kasih atas saran anda','$dari')");
File proses.php akan di include-kan pada file proses2.php. File
proses2.php ini berfungsi untuk menjalankan sistem, file ini akan
“dijalankan” dengan web browser pada server secara terus menerus. Listing Program : lampiran
3. Proses Gammu
Gammu merupakan program sms gateway yang dapat menghubungkan antara handphone atau modem dengan komputer. Gammu berfungsi untuk membaca data atau sms yang masuk ke
handphone dan memindahkannya kedalam komputer dan juga dapat
memindahkan data dari komputer kedalam handphone. Didalam program gammu ada beberapa hal yang harus disesuaikan agar gammu dapat terkoneksi dengan handphone dan database.
Potongan program : File smsdrc
connection = fbuspl2303 #synchronizetime = yes #logfile = gammulog #logformat = textall #use_locking = yes #gammuloc = locfile #startinfo = yes #gammucoding = utf8 #rsslevel = teststable #usephonedb = yes