BAB IV
RANCANGAN SISITEM DAN PROGRAM USULAN
3.1. Analisis kebutuhan software
3.1.1. Tahapan Analisis Prosedur yang sedang Berjalan
Tahapan analisis prosedure yang diusulkan dapat terlihat jelas dalam
perancangan terkait yakni Diagram Konteks, untuk mendapatkan gambaran awal
yang lebih jelas mengenai perancangan sistem yang akan dibangun, maka terlebih
dahulu penulis akan menjelaskan perancangan prosedur yang diusulkan, diantaranya
adalah sebagai berikut:
1. Halaman pelayanan pendaftaran
A.1 Pasien melakukan pendaftaran.
A.2 Pasien menyerahkan data pasien dengan cara di wawancara oleh bagian
pendaftaran (petugas)
A.3 Bagian pendaftaran mencatat data pasien.
A.4 Bagian pendaftaran membuat kartu pasien dan kartu rekam medis yang nanti
menghasilkan kartu rekam medis dan nomor antrian.
A.5 Kartu pasien diberikan kepada pasien yang akan berobat.
A.6 Kartu rekam medis disimpan di arsip bagian pendaftaran.
2. Halaman penjualan Obat (apotek)
B.1 Pasien yang sudah berobat meyerahkan resep ke bagian apotek.
B.2 Dari bagian apotek harus menegcek dulu ketersediaan obat dan biyaya
pembelian obat, jika obat ada maka bagian apotek mencatat obat yang keluar, jika
tidak ada apotek hanya mengeluarkan resep baru untuk membeli di apotek luar.
B.3 Dari proses di atas keluar struk pembayaran rangkap 2 yang satu untuk di
arsipkan di bagian apotek dan yang satu diserahkan ke pasien.
3. Halakam Admin
C.1 Bagian admin dapat mengelola database.
C.2 Bagian admin merekap data tindakan, data petugas, data dokter, data obat, data
pasien.
C.4 Bagian admin membuat laporan bulanan dari data keseluruhan untuk diserahkan
kepada pimpinan Puskesmas.
3.1.2. Use Case Diagram
Diagram use case merupakan pemodalan untuk melakukan (behavior) sistem
informasi yang akan dibuat dan mendeskripsikan sebuah interaksi Antara satu atau
lebih aktor dengan sistem informasi yang akan dibuat. Dengan kata lain use case
diagram digunakan untuk mengerahui fungsi apa saja yang ada didalam sistem
informasi pendaftran pasein di Puskesmas FKTP Setukpa Kota Sukabumi.
1. Use Case Diagram Halaman Pendafatran
Gambar. 4.1
Halaman Pendaftran
Deskripi Use Case Diagram Halaman Pendafataran
Table. 4.1
Deskripi Use Case Diagram Halaman Pendaftaran
Use Case Name Halaman Pendafataran
Requirements A1,A2,A3,A4.
goal Petugas pendaftaran hanya bias login sesuai
dengan user dan passwordnya.
Pre-Condition Petugas pendaftran hanya melayani pasein
yang akan daftar untuk pengobatan atau
control kesehatan dan mendapatkan nomor
antrian.
Post-Condition Dapat melihat informasi kesehatan dan serta
meakukan registrasi.
Failed end Condition Hanya melihat informasi yang tersedia dan
membatalkan untuk registrasi.
Primary Aktor Petugas Pendaftran.
Manin Flow / Basic Path 1. Mengakses website Puskesmas.
2. Melihat menu pendaftaran pasein.
3. Pasien bisa menginformasikan data diri
kependaftaran yang tersedia dipuskesmas.
4. Petugas melakukan login sesuai levelnya.
Invariant -
2. Use Case Diagram Halaman Penjualan obat (apotek)
Gambar. 4.2
Use Case Diagram Halaman Penjualan obat (apotek)
Deskripi Use Case Diagram Halaman Penjualan obat (apotek)
Table. 4.2
Deskripi Use Case Diagram Halaman Penjualan obat (apotek)
Use Case Name Halaman Penjuan Obat
Requirements B1,B2,B3.
goal Petugas Apotek hanya bias login sesuai dengan user
dan passwordnya.
Pre-Condition Petugas Apotek hanya melayani pasein yang
membawa resep dari dokter sehabis melakuan
control atau resep dari luar.
Post-Condition Dapat melihat informasi setok obat yang ada dan
jumlah pengeluaran oabat.
Failed end Condition Hanya dapat melihat stok obat yang tersedia dan
dapat membatalna transaksi penjualan.
Primary Aktor Apotek
Manin Flow / Basic Path 1. Mengakses website Puskesmas.
2. Melihat stok obat yang tersedia.
3. Petusgas dapat menginfornasikan keterbatasan obat
kepada pasien dan petugas melakukan transaksi.
4. Petugas melakukan login sesuai levelnya.
Invariant -
3. Use Case Diagram Halaman admin
Gambar. 4.3
Use Case Diagram Halaman Admin
Deskripi Use Case Diagram Halaman admin
Table. 4.3
Deskripi Use Case Diagram Halaman admin
Use Case Name Halaman Admin
Requirements C1,C2,C3,C4.
goal Admin hanya biasa login sesuai dengan user dan
passwordnya.
Pre-Condition Admin hanya bisa mengatur database dan hanya
bertugas melakukan laporan-laporan yang di perlukan
untuk pimpinan Puskesmas.
Post-Condition Dapat mengatur database Puskesmas.
Failed end Condition Hanya Dapat mengatur database Puskesmas.
Primary Aktor Admin
Manin Flow / Basic
Path
1. Mengakses website Puskesmas.
2. Menanbahkan data tindakan, data petugas, data dokter,
data obat dan laporan yang di butuhkan oleh pimpinan
Puskesmas.
3. Petugas admin melakukan login sesuai levelnya.
Invariant -
3.2.Desain
Pada tahap ini peneliti akan dijelaskan tentang desain database, desain software
arsitektur, dan desain interface.
3.2.1. Basis Data
1. ERD (Entity Relation Diagram)
Gambar. 4.4
Entity Relation Diagram Sistem Pendaftaran Puskesmas FKTP Setukpa
2. LRS (Logical Recort Stucture)
Gambar. 4.5
Logical Recort Stucture Sistem Pendaftaran Puskesmas FKTP Setukpa
3. Spesifikasi File Sistem Usulan
a. File Data Petugas
Table. 4.4
Data Petugas
Nama Tipe data keterangan
kd_petugas Char (4) Primary
b. File Data Obat
Table. 4.5
Data Obat
Nama Tipe data Keterangan
kd_obat Char (5) primary
nm_obat Vharchar (100)
harga_modal Int (10)
harja_jual Int (10)
Stok Int (10)
Keterangan Vharchar (100)
nm_petugas Vharchar (100)
no_telepon Vharchar (20)
User nama Char (20)
Passward Vharchar (200)
Level Vharchar (20
c. File Data Tindakan
Table. 4.6
Data Tindakan
Nama Tipe data Keterangan
no_daftar Char (7) Primary
no_rm Char (6)
tgl_daftra Date
Jam Time
kd_tindakan Char (4)
no_antri Int (4)
kd_petugas Char (4)
d. Spesifikasi File Data Pasein
Table. 4.7
Data Pasien
Nama Tipe data keterangan
nomor_rm Char (6) Primary
nm_pasein Vharchar (100)
no_indentitas Varchar (40)
jns_kelamin Enum „laki-laki‟,‟perempuan‟
gol_darah Enum „A‟,B‟,AB‟,O‟
Agama Vharchar (40)
tempat_lahir Varchar (100)
tanggal_lahir Date
Alamat Varchar (200)
stts_nikah Enum „menikah‟,belum menikah‟
Pekerjaan Varchar (100)
keluarga_status Enum „ayah‟,ibu‟,suami‟,istri‟,soudara‟
keluarga_nama Varchar (100)
keluarga_telepon Varchar (20)
tgl_rekam Date
kd_petugas Char (6)
e. Spesifikasi File Data Transaksi
3.2.2. Arsitektur Perangkat Lunak
a. Squence Diagram Pendaftran
b. Squence Diagram Apotek
Nama Tipe data Keterangan
Kd_suplayer Char (5) primary
nm_tindakan Vharcahr (100)
Harga Int (10)
c. Squence Diagram Login
d. Squence Diagram logout
e. Deployment Digram
Gambar. 4.6
Deployment Digram Puskesmas FKTP Setukpa
3.2.3. Antar Muka Pengguna
a. Halaman Home
Gambar. 4.7
Tampilan Halaman Home
b. Halaman Login
Gambar. 4.8
Tampilan Halaman Login
c. Halaman Pendaftan
Gambar. 4.9
Tampilan Halaman Pendaftran
d. Halaman Apotek
Gambar. 4.10
Tampila Halaman Apotek
e. Halaman Tampilan Nota Penjualan Apotek
Gambar. 4.11
Tampilan Nota Transaksi Apotek
f. Halaman Admin
Gambar. 4.12
Tampilan Halaman Admin
3.3.Code Generatation
Dalam pembuatan website ini peneliti menggunakan bahasa pemograman
tersetuktur, pada tahap code generation peneliti menampilkan listing code yang
berkaitan dengan proses bisnis utama sistem pendaftran pasien.
a. Form Login
Table. 4.9
Form Login
<?php
if(isset($_POST['btnLogin'])){
$pesanError = array();
if ( trim($_POST['txtUser'])=="") {
$pesanError[] = "Data <b> Username </b> tidak boleh
kosong !";
}
if (trim($_POST['txtPassword'])=="") {
$pesanError[] = "Data <b> Password </b> tidak boleh
kosong !";
}
if (trim($_POST['cmbLevel'])=="KOSONG") {
$pesanError[] = "Data <b>Level</b> belum dipilih !";
}
# Baca variabel form
$txtUser = $_POST['txtUser'];
$txtUser = str_replace("'","´",$txtUser);
$txtPassword=$_POST['txtPassword'];
$txtPassword= str_replace("'","´",$txtPassword);
$cmbLevel =$_POST['cmbLevel'];
# JIKA ADA PESAN ERROR DARI VALIDASI
if (count($pesanError)>=1 ){
echo "<div class='mssgBox'>";
echo "<img src='images/attention.png'> <br><hr>";
$noPesan=0;
foreach ($pesanError as
$indeks=>$pesan_tampil) {
$noPesan++;
echo " $noPesan.
$pesan_tampil<br>";
}
echo "</div> <br>";
// Tampilkan lagi form login
include "login.php";
}
else {
# LOGIN CEK KE TABEL USER LOGIN
$mySql = "SELECT * FROM petugas WHERE
username='".$txtUser."' AND password='".md5($txtPassword)."' AND
level='$cmbLevel'";
$myQry = mysql_query($mySql, $koneksidb) or die
("Query Salah : ".mysql_error());
$myData= mysql_fetch_array($myQry);
# JIKA LOGIN SUKSES
if(mysql_num_rows($myQry) >=1) {
$_SESSION['SES_LOGIN'] =
$myData['kd_petugas'];
$_SESSION['SES_USER'] =
$myData['username'];
// Jika yang login Administrator
if($cmbLevel=="Admin") {
$_SESSION['SES_ADMIN'] = "Admin";
}
// Jika yang login Klinik
if($cmbLevel=="Klinik") {
$_SESSION['SES_KLINIK'] = "Klinik";
}
// Jika yang login Apotek
if($cmbLevel=="Apotek") {
$_SESSION['SES_APOTEK'] =
"Apotek";
}
// Refresh
echo "<meta http-equiv='refresh' content='0;
url=?page=Halaman-Utama'>";
}
else {
echo "Login Anda bukan Level
".$_POST['cmbLevel'];
}
}
} // End POST
?>
b. Form Pendaftran
Table. 4.10
Form Pedaftran
<?php
include_once "../library/inc.seslogin.php";
// Membaca variabel form
$KeyWord = isset($_GET['KeyWord']) ? $_GET['KeyWord'] : '';
$dataCari = isset($_POST['txtCari']) ? $_POST['txtCari'] : $KeyWord;
// Jika tombol Cari diklik
if(isset($_POST['btnCari'])){
if($_POST) {
$filterSql = "WHERE nm_pasien LIKE '%$dataCari%'";
}
}
else {
if($KeyWord){
$filterSql = "WHERE nm_pasien LIKE '%$dataCari%'";
}
else {
$filterSql = "";
}
}
# UNTUK PAGING (PEMBAGIAN HALAMAN)
$row = 50;
$hal = isset($_GET['hal']) ? $_GET['hal'] : 0;
$pageSql = "SELECT * FROM pasien $filterSql";
$pageQry = mysql_query($pageSql, $koneksidb) or die ("error paging:
".mysql_error());
$jml = mysql_num_rows($pageQry);
$max = ceil($jml/$row);
?>
<h2>Cari Pasien</h2>
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" name="form1"
target="_self" id="form1">
<b>Cari Nama Pasien :
<input name="txtCari" type="text" value="<?php echo $dataCari; ?>" size="40"
maxlength="100" />
<input name="btnCari" type="submit" value="Cari" />
</b>
</form>
<table class="table-list" width="700" border="0" cellspacing="1" cellpadding="2">
<tr>
<th width="20">No</th>
<th width="82"><strong>Nomor RM </strong></th>
<th width="147"><strong>Nama Pasien </strong></th>
<th width="59"><strong>Kelamin</strong></th>
<th width="80"><strong>Gol. Darah </strong></th>
<th width="238"><strong>Alamat</strong></th>
<td align="center" bgcolor="#CCCCCC"><strong>Tools</strong></td>
</tr>
<?php
$mySql = "SELECT * FROM pasien $filterSql ORDER BY nomor_rm ASC
LIMIT $hal, $row"; $myQry = mysql_query($mySql, $koneksidb) or die ("Query salah :
".mysql_error());
$nomor = 0;
while ($myData = mysql_fetch_array($myQry)) {
$nomor++;
?>
<tr>
<td><?php echo $nomor; ?></td>
<td><?php echo $myData['nomor_rm']; ?></td>
<td><?php echo $myData['nm_pasien']; ?></td>
<td><?php echo $myData['jns_kelamin']; ?></td>
<td><?php echo $myData['gol_darah']; ?></td>
<td><?php echo $myData['alamat']; ?></td>
<td width="38" align="center"><a href="?page=Pendaftaran-
Baru&NomorRM=<?php echo $myData['nomor_rm']; ?>" target="_self"
alt="Daftar">Daftar</a></td>
</tr>
<?php } ?>
<tr>
<td colspan="3"><strong>Jumlah Data :</strong> <?php echo $jml; ?> </td>
<td colspan="4" align="right"><strong>Halaman ke :</strong>
<?php
for ($h = 1; $h <= $max; $h++) {
$list[$h] = $row * $h - $row;
echo " <a href='?page=Pencarian-
Pasien&hal=$list[$h]&KeyWord=$dataCari'>$h</a> ";
}
?></td>
</tr>
</table>
c. Form Apotek
Table. 4.11
Form Apotek
<?php
# KONTROL MENU PROGRAM
if(isset($_GET['page'])) {
// Jika mendapatkan variabel URL ?page
switch($_GET['page']){
case 'Penjualan-Baru' :
if(!file_exists ("penjualan_baru.php")) die ("Empty Main Page!");
include "penjualan_baru.php"; break;
case 'Pencarian-Obat' :
if(!file_exists ("pencarian_obat.php")) die
("Empty Main Page!");
include "pencarian_obat.php"; break;
case 'Penjualan-Tampil' :
if(!file_exists ("penjualan_tampil.php")) die
("Empty Main Page!");
include "penjualan_tampil.php"; break;
case 'Penjualan-Hapus' :
if(!file_exists ("penjualan_hapus.php")) die
("Empty Main Page!");
include "penjualan_hapus.php"; break;
}
}
else {
include "penjualan_baru.php";
}
?>
</body>
</html>
3.4.Pengujian
Black Box Testing digunakan untuk menguji prangkat lunak dari segi spesifikasi
fungsional tanpa menguji desain dan kode pemrograma, pengujian dimaksudkan
untuk mengetahui apakah fungsi masukan dan keluaran dari perangkat lunak sesuai
spesifikasi yang dibutuhkan. Rancang Sistem Informasi Pendaftran atau pelayanan
kesehatan mengunakan data uji berupa sebuah data masukan dari Bag Admin.
A. Rancang Pengujian
Table.4.12
Rancang Pengujian
Kelas Uji Butir Uji Tingkat
Pengujian
Jenis
Pengujian
Login User Hak ases setiap user name,
password dan level
Sistem Black Box
Dibawah ini adalah beberapa pengujian yang telah dilakukan, yaitu :
1. Pengujian Login User
Table 4.13
Pengujian Login User
Kasus Dan Hasil Pengujian ( Data Normal)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
User : admin
Pasword : admin
(Data Valid)
Mempunyai hak
akses untuk
mengelolas
seluruh sistem
Datap membuka seluruh
menu sistem dalam
aplikasi yang dibuat
[X]
Diterima
[ ] Ditolak
User :
Pasword :
(Data Valid)
Masuk Ke menu
utama, dapat
pengimputan data
pendaftran
Dapat mengeloala data
pendaftran
[X]
Diterima
[ ] Ditolak
User : Masuk Ke menu Dapat mengelola data [X]
Data Obat Pengisian data pengelolaan obat Sistem Black Box
Pendaftran Pengisian dan transaksi
pengelolaan pasien
Sistem Black Box
Transaksi obat Pengisian dan transaksi
pengelolaan obat
Sistem Black Box
Laporan Pelaporan secara per periode Sistem Black Box
Pasword :
(Data Valid)
utama, dapat
pengimputan dan
taransaksi obat
penjulan obat dan stok
yang tersedia
Diterima
[ ] Ditolak
Kasus Dan Hasil Pengujian ( Data Salah)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
User
:ADMIN
Pasword :12345
(Data Valid)
Tidak bias masuk
dalam sistem
aplikasi
Tidak bias masuk
kedalam sisitem
aplikasimuncul
peringatan “EROR”
[X]
Diterima
[ ] Ditolak
2. Pengujian Data Obat
Table 4.14
Pengujian Data Obat
Kasus Dan Hasil Pengujian ( Data Normal)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Input Kode Obat Input kode secara
otomatis
Kode obat saat
pada di klik button
akan muncul
secara otomastis
[X]
Diterima
[ ] Ditolak
Tombol Add Muncul Form
input data
Form input akan
muncul jika di klik
add
[X]
Diterima
[ ] Ditolak
Tombol Simpan Data dapat
disimpan pada
Data awal
tersimpan pada
[X]
Diterima
table obat teble awal [ ] Ditolak
Tombol Edit Data dapat diedit Data dapat diedit
sesuai data yang
teredit
[X]
Diterima
[ ] Ditolak
Tombol Hapus Data yang terpilih
akan dihapus
Data telah terhapus
sesui harapan
[X]
Diterima
[ ] Ditolak
Kasus Dan Hasil Pengujian ( Data Salah)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Tidak mengisi
data secara
lengkap
Data tidak diinput
selmaa data masih
kosong
Data yang diinput
hanya dapat
berhasil jika telah
terisi semua
[X]
Diterima
[ ] Ditolak
3. Pengujian Data Pendaftran
Table 4.15
Pengujian Data Pendaftran
Kasus Dan Hasil Pengujian ( Data Normal)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Input kode
pasein
Inpu kode secara
otomatis
Form pendaftran
kosong siap untuk
di isi
[X]
Diterima
[ ] Ditolak
Klik pendaftran Muncul form Data tersimpan di [X]
baru kosaong table pendaftran Diterima
[ ] Ditolak
Klik tempil
pendaftan lama
Muncul form yang
sudah terisi
Data bias muncul
jiga bagian
pencariian terisi
[X]
Diterima
[ ] Ditolak
Klik tindakan
pasien
Muncul data
tindakan
Data bias muncul
jika di klik
[X]
Diterima
[ ] Ditolak
Klik tombol
simpan
Data dapat
tersimpan di form
pendaftran
Data di simpan di
table pendaftran
[X]
Diterima
[ ] Ditolak
Kasus Dan Hasil Pengujian ( Data Salah)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Tidak mengisi
data secara
lengkap
Data tidak bias
diinput selama
data masih ada
yang kosong
Data dapat di input
jika data tersisi
semua
[X]
Diterima
[ ] Ditolak
4. Pengujujian Transaksi Pengambilan Obat
Table 4.16
Pengujujian Transaksi Pengambilan Obat
Kasus Dan Hasil Pengujian ( Data Normal)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Klik Tombol
Penjualan
Muncul From
penjulan
Muncul From
penjulan kosong
[X]
Diterima
[ ] Ditolak
Klik Penjulan
Baru
From penjulan
terbaru
Muncul From
penjulan kosong
siap untuk di isi
[X]
Diterima
[ ] Ditolak
Klik Tobol
Pecarian Obat
Data obat tersedia
di table obat
Klik tombol
pencarian akan di
arahkan ke table
obat
[X]
Diterima
[ ] Ditolak
Klik Tombol
Simpan
Data yang sudah
terisi transaki di
simpan pada table
penjulan
Data yang sudah
terisi transaki di
simpan pada table
penjulan
[X]
Diterima
[ ] Ditolak
Klik Tombol
Cetak Nota
Klik tombol cetak
utuk mengatahi
harga transakisi
Transaki yang
sudah selesai akan
masuk kedalam
form nota
[X]
Diterima
[ ] Ditolak
Kasus Dan Hasil Pengujian ( Data Salah)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Tidak mengisi
data secara
lengkap
Data tidak diinput
selmaa data masih
kosong
Data yang diinput
hanya dapat
berhasil jika telah
terisi semua
[X]
Diterima
[ ] Ditolak
5. Pengujian Laporan
Table 4.17
Pengujian Laporan
Kasus Dan Hasil Pengujian ( Data Normal)
Data Masukan Data Diharapkan Pengamatan Kesimpulan
Pilih jenis
laporan dan pilih
priode laporan
Menampilkan
laporan sesuai
yang di perlukan
dan sesuai dengan
tanggal yang
dimasukan
Data berdasarkan
yang di perlukan
dan menampilkan
laporan
berdasarkan
tanggal, bulan dan
tahun yang sudah
tersimpan
[X]
Diterima
[ ] Ditolak
3.5.Pendukung
3.5.1. Publikasi Web
Program berbasis web ini hanya untuk pengguna dalam perusaan (Puskesmas
FKTP Setukpa), tidak di publikasikan secara online atau publik hanya dilingkungan
Puskesmas FKTP Setukpa Kota Sukabumi. Sehinga tidak ada proses penyewaan
domain dan hosting secara online beserta rincian biaya yang harus dikeluarkan.
3.5.2. Spesifikasi Hadware Dan Software
Table 4.18
Spesifikasi Hadware dan Software
Kebutuhan Keterangan
Sisitem Oprasi Windows 7 dan seterusnya
Prosesor Intel Core i5, 1.8Ghz
RAM 2 GB
Keyboard Keyboard QWERTY
Printer Printer Setandar
Mouse Mouse Setandar
Browser Google Chrome
Software Micromedia Dreamware 8, XAMPP 3.1.0
3.6.Spesifikasi Dokumen Sistem Usulan
Adapun spesifikasi dokumen sistem usulan dari website bisnis Puskesmas
FKTP Setukpa sebagai berikut :
1. Nama dokumen : Formulir Pendaftaran / rekam medis
Sumber : Bagian Pendaftaran
Rangkap : 1
Deskripsi : Formulir pendaftaran digunakan pasien untuk menuliskan
data diri dalam proses pendaftaran.
Elemen Data : kode, no_rm, nama_pasien, tgl_daftrar, tgl_dafratar,
keluhan_pasein, tindkan_pasien
2. Nama dokumen : transaksi
Sumber : Bagian Apotek
Rangkap : 2
Deskripsi : digunakan untuk menuliskan data pembelian obat dan biaya
tindakan.
Elemen Data : no_transaki, tgl_transaksi, pelanggan, keterangan, kode_obat,
jumlah
Top Related