40
Bab 4
Hasil dan Pembahasan
4.1
Implementasi Sistem
Pada bagian implementasi sistem berisi penjelasan bagaimana
aplikasi sistem informasi pendataan pasien rawat inap pada Rumah
Sakit Mitra Masyarakat Mimika dijalankan.
4.1.1
Pengiriman Data dari Webserver ke Perangkat Mobile
Data dari
webserver
ke perangkat
mobile
dikirimkan dalam format
dokumen XML. Kemudian oleh perangkat
mobile
, data XML tersebut
diolah dan ditampilkan kepada pengguna. Contoh data yang dikirimkan
oleh
webserver
:
Kode Program 4.1
Contoh Dokumen XML yang Berisi Data Dokter
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
<?xml version="1.0"?> <dokters>
<dokter>
<kode>001</kode>
<nama>DR. Afdal Hasanuddin Sp.A</nama> <smf>anak</smf>
</dokter> <dokter>
<kode>002</kode>
<nama>DR. Jeane Rini Sp.A</nama> <smf>anak</smf>
</dokter> </dokters>
Dokumen pada Kode Program 4.1 merupakan
output
yang
dihasilkan oleh
webserver
.
Webserver
melakukan pembacaan pada
41
dokumen XML. Perintah yang digunakan untuk proses ini adalah seperti
ditampilkan pada Kode Program 4.2.
Kode Program 4.2
Perintah untuk Membentuk Dokumen XML pada Server
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
$da = new DokterDA();+ $list = $da->GetAll();
header("Content-Type: text/plain"); $xmlDoc = new DOMDocument(); $root = $xmlDoc->appendChild( $xmlDoc->createElement("dokters")); $xmlDoc->formatOutput = true; foreach($list as $a)
{
//create a tutorial element $tutTag = $root->appendChild(
$xmlDoc->createElement("dokter")); $tutTag->appendChild( $xmlDoc->createElement("kode", $a->kode)); $tutTag->appendChild( $xmlDoc->createElement("nama", $a->nama)); $tutTag->appendChild( $xmlDoc->createElement("smf", $a->smf)); } echo trim($xmlDoc->saveXML());
Pada perangkat
mobile
, dokumen XML yang telah diterima, dibaca
untuk tiap
element
dengan tag
<dokter>kemudian pada tiap
element
,
dibaca nilai dari
child
element
didalamnya, yaitu
<kode>,
<nama>, dan
<smf>
.
Kode Program 4.3
Perintah untuk Membaca Dokumen XML pada Android
1. 2. 3. 4. 5. 6. 7. 8.
static final String URL
= "http://192.168.1.110:852/rs/services.php?get=";
public List<Dokter> getDokter(){
List<Dokter> list = new ArrayList<Dokter>();
String url = URL+"dokter";
42
9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.XMLRead parser = new XMLRead();
String xml = xmlString.trim();
Document doc = parser.getDomElement(xml); NodeList nl =
doc.getElementsByTagName("dokter");
for (int i = 0; i < nl.getLength(); i++) { Element e = (Element) nl.item(i); Dokter d = new Dokter(
parser.getValue(e, "kode"), parser.getValue(e, "nama"), parser.getValue(e, "smf")); list.add(d); } return list; }
Proses selanjutnya adalah menampilkan kepada pengguna. Perintah
yang digunakan adalah pada Kode Program 4.4. Data dokter yang
berbentuk
collection
ditampilkan melalui
spinner control
, seperti yang
terlihat pada Gambar 4.1.
Kode Program 4.4
Perintah untuk Menampilkan Data Dokter
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
doktorSpinner = (Spinner)
dialog.findViewById(R.id.dokter); List<Dokter> lDokter
= new RequestUtility().getDokter(); ArrayAdapter<Dokter> dataAdapter
43
Gambar 4.1
Tampilan Data Dokter pada Kontrol
Spinner
.
4.1.2
Pengiriman Data dari Perangkat Mobile ke Webserver
Data yang dikirim dari perangkat mobile ke webserver adalah data
Pasien. Tampilan yang digunakan adalah Input Pasien Dialog, seperti
44
Gambar 4.2
Tampilan Input Data Pasien.
Proses pengiriman data dilakukan menggunakan Kode Program 4.5.
Dengan menggunakan object dari class HttpPost, disimpan nilai-nilai dari
hasil input data pasien. Kemudian dikirimkan melalui object dari class
HttpClient ke alamat server yang telah didefinisikan pada variabel URL.
Kode Program 4.5
Perintah untuk Mengirimkan Data Pasien
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
static final String URL =
"http://192.168.1.110:852/rs/services.php"; HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost;
public String savePasien(Pasien p) { String message = "";
httppost = new HttpPost(URL); // Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(3); nameValuePairs.add(
new BasicNameValuePair("post", "1")); nameValuePairs.add(
45
16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. new BasicNameValuePair("tanggalMasuk", p.getTanggalMasuk())); nameValuePairs.add(new BasicNameValuePair("nama", p.getNama())); ....
httppost.setEntity(
new UrlEncodedFormEntity(nameValuePairs)); // Execute HTTP Post Request
HttpResponse response
= httpclient.execute(httppost); StringBuilder content
= inputStreamToString(response.getEntity() .getContent());
message = content.toString(); return message;
}
Data yang dikirim diterima oleh server dengan menggunakan Kode
Program 4.6. Pada Kode Program 4.6, nilai-nilai yang dikirimkan oleh
perangkat mobile, diterima dengan menggunakan varibel $_REQUEST.
Kemudian disimpan ke dalam database.
Kode Program 4.6
Perintah untuk Menerima Data Pasien dan Memprosesnya
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. function responseSavePasien(){ $norm = $_REQUEST["noRM"];
$tanggalMasuk = $_REQUEST["tanggalMasuk"]; $nama = $_REQUEST["nama"];
$jenisKelamin = $_REQUEST["jenisKelamin"]; $alamat = $_REQUEST["alamat"];
$suku = $_REQUEST["suku"];
$pekerjaan = $_REQUEST["pekerjaan"]; $agama = $_REQUEST["agama"];
$pendidikan = $_REQUEST["pendidikan"]; $tanggalLahir = $_REQUEST["tanggalLahir"];
$statusPerkawinan = $_REQUEST["statusPerkawinan"]; $rawatKe = $_REQUEST["rawatKe"];
46
17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.$keluargaTerdekat = $_REQUEST["keluargaTerdekat"]; $alamatKeluarga = $_REQUEST["alamatKeluarga"]; $namaAyah = $_REQUEST["namaAyah"];
$umurAyah = $_REQUEST["umurAyah"];
$pekerjaanAyah = $_REQUEST["pekerjaanAyah"]; $namaIbu = $_REQUEST["namaIbu"];
$umurIbu = $_REQUEST["umurIbu"];
$pekerjaanIbu = $_REQUEST["pekerjaanIbu"];
$st = new Setting(); mysql_connect( $st->host, $st->user, $st->password) or die(mysql_error()); mysql_select_db($st->database) or die(mysql_error());
mysql_query("INSERT INTO pasien VALUES (
'$norm','$tanggalMasuk','$nama','$jenisKelamin', '$alamat','$suku','$pekerjaan','$agama', '$pendidikan', '$tanggalLahir',
'$statusPerkawinan','$rawatKe', '$ruang','$dokter' )");
47
4.2
Analisis dan Pengujian
4.2.1
Analisis Kerja Sistem
Gambar 4.3
Arsitektur Sistem
Tampilan awal aplikasi pada
Gambar 4.4
merupakan
form
login
berupa input
username
dan
password
yang diisi oleh operator
48
Gambar 4.4
Form Login
Pada
Gambar 4.5
menunjukkan
form
saat setelah operator
melakukan
login,
yaitu
field
pencarian data pasien. Untuk
melakukan pencarian data pasien, operator dapat meng-
input
kan
data berupa nama atau nomor rekam medis (RM) pasien. Maka akan
ditampilkan beberapa informasi karakter yang sama pada saat
49
Gambar 4.5
Pencarian Pasien
Ketika penginputan saat pencarian data pasien selesai dan nama atau
nomor rekam medis serta letak ruang rawat paseinpun telah
ditampilkan dari database seperti pada gambar 4.5, maka untuk
menampilkan informasi lengkap tentang data pasein tersebut,
operator dapat melakukan
tap and hold
pada hasil pencarian
tersebut. Maka informasi data pasienpun akan ditampilkan seperti
50
Gambar 4.6
Informasi Data Pasien
Informasi lengkap data pasien pada gambar di atas berupa :
No. RM (Rekam Medis)
Nama
Jenis Kelamin
Alamat
Suku
Agama
Pendidikan
Pekerjaan
Tanggal Lahir
Status Perkawinan
Dirawat dii RS yang ke
Nama Keluarga Terdekat
51
Nama Ayah/Suami
Umur Ayah/Suami
Pekerjaan Ayah/Suami
Nama Ibu/Istri
Umur Ibu/Istri
Pekerjaan Ibu/Istri
Tanggal Masuk Rumah Sakit
Dokter Yang Merawat
Ruang Perawatan
Gambar 4.7
merupakan tampilan yang berisikan 4 (empat) menu
utama berupa
input
,
refresh
,
logout
, dan
about. Tap refresh
digunakan apabila terdapat
input
-an data terbaru pada
database
server
oleh operator lain.
Gambar 4.7
Tampilan Menu
Input
Logout Refresh
52
Gambar 4.8
berisikan tentang tampilan menu
about,
dimana
pengguna aplikasi dapat melihat tentang identitas singkat peneliti,
dan juga tahun dari pembuatan aplikasi yang dikerjakan oleh
peneliti.
Gambar 4.8
Menu
About
Gambar 4.9
merupakan option yang disediakan di
web server
kepada admin untuk melakukan pencarian data tentang informasi
pasien dengan meng-inputkan nama pasien dan dapat mencari
53
Gambar 4.9
Pencarian Pasien Pada
Web Server
Gambar 4.10
digunakan oleh admin untuk melakukan
printout
formulir hasil dari penginputan data pasien pada awal calon pasien
melakukan pendaftaran pada rawat inap, dan sebagai bukti bahwa
pasien telah terdaftar dan siap dirawatinapkan.
54
4.2.2
Pengujian Aplikasi
4.2.2.1
Analisa Metode
Blackbox
Metode ujicoba
blackbox
memfokuskan pada keperluan
fungsional dari
software
. Karna itu ujicoba
blackbox
memungkinkan
pengembang
software
untuk membuat himpunan kondisi
input
yang
akan melatih seluruh syarat-syarat fungsional suatu program.
Ujicoba
blackbox
bukan merupakan alternatif dari ujicoba
whitebox
,
tetapi merupakan pendekatan yang melengkapi untuk menemukan
kesalahan lainnya, selain menggunakan metode
whitebox
. Ujicoba
blackbox
berusaha untuk menemukan kesalahan dalam beberapa
kategori, diantaranya :
1. Fungsi-fungsi yang salah atau hilang
2. Kesalahan interface
3. Kesalahan dalam struktur data atau akses database
eksternal
4. Kesalahan performa
5. kesalahan inisialisasi dan terminasi
55
Pengujian aplikasi dilakukan pada
mobile phone
Samsung
Galaxy Fit
2.3.4, dengan menggunakan jasa layanan GSM
Telkomsel As. Pada
Table 4.1
kita dapat melihat hasil pengujian
aplikasi dengan menggunakan metode
blackbox.
Tabel 4.1
Hasil pengujian aplikasi dengan metode
blackbox
Aktivitas
Validasi
Input
Hasil Uji
Display form login
Valid
Menampilkan
form login
Display search
pasien
Valid
Menampilkan
field
untuk
mencari data pasien
Display informasi
data pasien
Valid
Menampilkan hasil pencarian
dari data pasien
Display menu
Refresh
Valid
Menampilkan menu pilihan
untuk
refresh
Display menu Input
Valid
Menampilkan menu pilihan
untuk
input
data pasien
Display menu
About
Valid
Berhasil ditampilkan
About
Display login
admin
Valid
Halaman
login admin
berhasil
ditampilkan
Display halaman
awal webserver
Valid
Berhasil menampilkan
halaman awal pada
webserver
Display search
pasien di webserver
Valid
Berhasil ditampilkan
Display data
operator
Valid
Berhasil menampilkan data
56
Display data dokter
Valid
Berhasil menampilkan data
berisikan informasi dokter
Pengujian GUI (
Graphic User Interface
)
Untuk Aplikasi
Android
Mudah bagi
user
dalam melakukan
login
pada
form
awal.
Mudah bagi
user
dalam melakukan proses
typing
pada
field
apa saja
.
Operasi menu bekerja secara tepat.
Operasi
tap, hold, up,
dan
down
bekerja dengan baik
Proses saat melakukan pencarian data bekerja secara
cepat dan tepat.
Proses
input
data pasien dapat dilakukan dengan
mudah dan tinggal disimpan.
Dari pengujian GUI ini, dengan berbagai cara tampilan
aplikasi ini dibuat agar mudah digunakan oleh
user,
dalam hal ini
operator dari petugas Rumah Sakit Mitra Masyarakat. Sehingga
keterbatasan pengetahuan pada aplikasi ini dengan mudah dan cepat
dapat digunakan sebagai proses pembelajaran tentang penggunaan
aplikasi ini.
Secara umum, pengujian sistem telah berjalan dengan baik
sesuai dengan keterangan pada tabel pengujian. Tampilan-tampilan
berjalan dengan baik, data-data yang merupakan
request
maupun
input-
an dari operatorpun di proses dengan cepat dengan penerapan
57
Pada halaman
web server,
khusus untuk pilihan pencarian data
pasien telah berjalan dengan baik. Data pasien dapat dicari
berdasarkan nama dan ruang tempat pasien dirawat. Untuk
pencetakkan formulir rawat inap, juga dapat dilakukan dengan hal
yang sama, yaitu melakukan peng-
input
-an data pasien, dan data