BAB IV
HASIL KERJA PRAKTEK DAN ANALISIS
1.1
Mendefinisikan Suatu Masalah
Perumusan yang ada di PT. Nasmoco Salatiga adalah Sebagai Berikut :
1.
Dalam melakukan analisis kepada manajer PT. Nasmoco Salatiga, Dalam
upaya meningkatkan mutualisme hubungan baik dealer dengan pelanggan
belum berjalan dengan baik.
2.
Banyak pelanggan yang pindah ke lain dealer.
3.
Pihak dealer kesulitan dalam melakukan penyampaian berbagai informasi
kepada konsumen terkait dengan produk Toyota. Team marketing harus
datang kerumah warga untuk melakukan penawaran.
1.2
Solusi
Solusi masalah yang dihadapi PT. Nasmoco Salatiga adalah sebagai berikut:
1.
Penerapan SMS Gateway.
2.
Mengintegrasi dengan catatan servis dan pelanggan.
3.
Mengirimkan SMS pengingat yang dikirimkan secara otomatis sesuai jadwal
1.3
Kerangka Pemikiran
Identifikasi Masalah
-
Analisis
-
Wawancara
Temuan Masalah
Pihak dealer kesulitan dalam melakukan
informasi kepada pelanggan pada saat waktu
jatuh tempo servis. Pelanggan harus langsung
datang ke dealer tanpa ada reminder dari
dealer.
Meningkatkan mutualisme hubungan baik
dealer dengan pelanggan belum berjalan
Analisis Permasalahan
Perancangan Aplikasi SMS Gateway
Client
Aplikasi SMS Gateway
melakukan Auto Reminder
Informasi dikirim
secara Broadcast
Client 1
Client 2
Client 3
1.4
Perancangan Sistem
Perancangan sistem adalah proses pengembangan spesifikasi sistem baru
berdasarkan hasil rekomendasi analisis sistem. Tujuan tahap perancangan sistem:
1.
Memenuhi kebutuhan pemakai.
2.
Memberikan gambaran yang jelas dan rancang bangun yang lengkap untuk
pemrograman.
Hasil Aplikasi SMS Gateway untuk pelayanan
Pelanggan PT. Nasmoco Salatiga
Pembuatan Aplikasi SMS Gateway untuk pelayanan
konsumen PT. Nasmoco Salatiga.
Uji Coba
Implementasi
User
Revisi/Perbaik
Ya
1.5
Prosedur Sistem
Berdasarkan kerangka pemikiran dan tujuan perancangan sistem, maka
dirancang prosedur sistem sebagai berikut :
1.
Pelanggan datang untuk melakukan servis.
2.
SA (Service Advisor) mencatat data pelanggan, data kendaraan,
data servis, dan data tanggal harus kembali servis.
3.
Mobil diservis dan selesai.
4.
Pada saat tanggal harus kembali servis sudah ditentukan, maka
pada tanggal tersebut sistem akan otomatis mengirim reminder
kepada pelanggan untuk servis kembali.
Gambar 4.1
Prosedur sistem
Pelanggan
datang
SA mencatat
Data pelanggan
SMS
Reminder
Pelanggan
1.5.1
Data Flow Diagram (DFD) level 0
Berikut adalah DFD level 0 sistem Reminder Servis pada PT. Nasmoco :
Gambar 4.2
Data Flow Diagram
(DFD) level 0
Admin menginput data pelanggan dan data servis, setelah itu admin mengirim
broadcast message kepada pelanggan.
Berdasarkan dari data customer dan servis, sms dapat dikirim kepada pelanggan
1.5.2
Data Flow Diagram (DFD) level 1
Berikut adalah DFD level 1 sistem sistem Reminder Servis pada PT. Nasmoco :
Proses 1 : Penginputan Data Pelanggan
Gambar 4.3
Data Flow Diagram
(DFD) level 1 (1)
Admin menginput data dari pelanggan ke dalam sistem.
Proses 2 : Penginputan Data Servis
Gambar 4.4
Data Flow Diagram
(DFD) level 1 (2)
Proses 3 : Tampilan Aplikasi SMS
Gambar 4.5
Data Flow Diagram
(DFD) level 1 (3)
Admin mengambil data dari pelanggan untuk mengirimkan sms secara
individual menggunakan sms gateway pada aplikasi gammu.
Proses 4 : Tampilan SMS Reminder
Gambar 4.6
Data Flow Diagram
(DFD) level 1 (4)
Admin membuat pengaturan SMS Reminder yang akan dikirim kepada
1.5.3
Use Case Diagram
Gambar 4.7
Use Case Diagram
Admin Login, kemudian menginput data servis dan mencetak data
servis yang setelah diinput Admin mengirim SMS kepada pelanggan.
1.5.4
Basis Data
Dalam perancangan sistem servis pada PT. Nasmoco Salatiga, dibutuhkan basis
data dalam MySQL untuk menyimpan semua data yang ada dalam sistem ini. Basis
data ini diberi nama servis.
Tabel adalah bagian dari basis data yang berfungsi untuk menyimpan data
1.
TABEL TB_CUSTOMER: Untuk menyimpan data dari Customer
Tabel 4.1 Perancangan Tabel tbl_customer
2.
TABEL TBL_NOTASERVIS : untuk menyimpan data nota servis dari
customer.
Tabel 4.2 Perancangan Tabel tbl_notaservis
Name
Type
Size
Null
Default
Key
Id_customer
Varchar
35
No
Primary
Nama_customer
Varchar
100
No
Alamat
Varchar
100
No
No_hp
Varchar
13
No
Jenkel
varchar
2
no
Name
Type
Size
Null
Default
Key
Id_servis
Int
11
No
Primary
Id_customer
Varchar
35
No
Jenis_mobil
Varchar
35
No
No_polisi
Varchar
10
No
Tgl_servis
Date
No
Tgl_kembali_servis
Date
No
Jenis_servis
Varchar
35
No
3.
TABEL TB_
SERVIS
: untuk menyimpan data dari servis Customer
Tabel 4.3 Perancangan Tabel tbl_
servis
Name
Type
Size
Null
Default
Key
Tgl_kembali_servis
Date
No
Selain servis, sistem juga butuh database operational pendukung aplikasi
Gammu.
Adapun
struktur
database
secara
lengkap
dicantumkan
pada
https:/www.gammu.org/ namun dalam kasus ini hanya satu tabel yang digunakan untuk
mengirim SMS yaitu tabel outbox. Struktur tabel tersebut adalah sebagai berikut :
4.
TABEL OUTBOX : untuk menyimpan pesan yang dikirim
Tabel 4.4 Perancangan tabel Outbox
Name
Type
Size
Null
Default
Key
UpdateInD
B
Timestamp
No
CURRENT_TI
MESTAMP
InsertintoD
B
Timestamp
No
0000-00-00
00:00:00
SendingDat
eTime
Timestamp
No
0000-00-00
00:00:00
Coding
enum('Defa
ult_No_Co
mpression',
'Unicode_N
o_Compres.
..
20
No
Default_No_CO
mpression
Class
Int
11
Yes
-1
TextDecode
d
text
No
None
ID
Int
10
No
None
Primary
MultiPart
enum('false',
'true')
Timestamp
Yes
0000-00-00
1.5.5
Relasi Basis Data
Penggunaan relasi dalam sistem servis PT. Nasmoco Salatiga adalah sebagai
berikut :
1.5.6
Desain Sistem
1.5.6.1
Halaman Login
Halaman login adalah halaman pertama sebelum masuk kedalam
sistem servis. Untuk login dibutuhkan username dan password.
Gambar 4.9 Desain Halaman
Login
1.5.6.2
Halaman Utama
Halaman utama adalah halaman pertama dari sistem setelah admin
login pada halaman login.
1.5.6.3
Halaman Data Member
Halaman Data Member adalah tampilan halaman semua member yang
setelah diinput datanya dan akan tertampil di halaman data member.
Gambar 4.11 Desain Halaman Data Member
1.5.6.4
Halaman Input Data Member
Halaman ini menampilkan inputan untuk mengisi data dari customer.
1.5.6.5
Halaman Data Servis
Halaman data servis adalah halaman yang menampilkan data dari
customer dan kendaraan yang akan diservis.
Gambar 4.13 Desain Halaman Data Servis
1.5.6.6
Halaman Input Data Servis
Halaman ini menampilkan inputan untuk mengisi data Servis dari
customer.
1.5.6.7
Halaman Kirim Pesan
Halaman SMS adalah halaman yang menampilkan desain yang digunakan
admin untuk mengirim Pesan kepada Customer.
Gambar 4.15 Desain Halaman Kirim Pesan
1.5.6.8
Halaman Send Item
Halaman Senditem adalah halaman yang menampilkan pesan yang setelah
dikirim, data ini otomatis masuk setelah SMS terkirim.
1.5.6.9
Halaman Pesan Masuk/Inbox
Halaman Inbox adalah halaman yang menampilkan Pesan Masuk.
1.5.7
Implementasi
Seluruh rangkaian perancangan sistem telah disusun maka tahap
selanjutnya adalah tahap implementasi. Tahap ini bertujuan untuk melakukan
proses penerapan sistem yang baru.
1.5.7.1
Basis Data
1.
TABEL LOGIN
Tabel 4.6 tbl_login
2.
TABEL TBL_CUSTOMER
Tabel 4.7 tbl_customer
3.
TABEL TBL_NOTASERVIS
4.
TABEL TBL_SERVIS
Tabel 4.9 tbl_servis
5.
TABEL OUTBOX
4.5.7.2
Halaman Login
Halaman login adalah halaman pertama sebelum masuk kedalam
sistem servis. Untuk login dibutuhkan username dan password sesuai
username dan password yang ada pada tbl_login.
Gambar 4.18 Halaman Login
Cuplikan Kode : Login.php
include("koneksi.php"); session_start();
$admin =$_POST['username']; $pass =$_POST['password'];
$cek=mysql_num_rows(mysql_query("select * from tbl_login where
4.5.7.3
Halaman Utama
Halaman utama adalah halaman pertama dari sistem setelah admin login
pada halaman login.
Gambar 4.19 Halaman Utama
Cuplikan Kode : Halaman.php
<div id="page-wrapper"> <div class="row">
<div class="col-lg-12">
<h1 class="page-header">Selamat Datang di Sistem Reminder Servis Berkala</h1>
</div>
<!-- /.col-lg-12 --> </div>
<!-- /.row --> <div class="row">
<div class="col-lg-3 col-md-6"></div> </div>
<!-- /.row -->
<div class="row"><!-- /.col-lg-8 --> <div class="col-lg-4">
<div class="panel panel-default"> <div class="panel-heading">
<i class="fa fa-bell fa-fw"></i> Jangkauan Sistem kami :</div> <div class="panel-body">
<div class="list-group">
<a href="#" class="list-group-item">
<i class="fa fa-comment fa-fw"></i> Inputan Data Servis </a><a href="#" class="list-group-
4.5.7.4
Halaman Data Member
Halaman Data Member adalah tampilan halaman semua member yang
setelah diinput datanya dan akan tertampil di halaman data member.
Gambar 4.20 Halaman Data Member
Cuplikan Kode : Member.php
<div id="page-wrapper"> <div class="row"> <div class="col-lg-12">
<h1 class="page-header">Data Member</h1> </div>
<!-- /.col-lg-12 --> <div>
<!-- /.row --> <div class="row"> <div class="col-lg-12">
<div class="panel panel-default"> <div class="panel-heading">
<p><a class="icon-plus" href="input_member.php"><font size="+1"> Tambah Data </font></a>
</div>
<!-- /.panel-heading --> <div class="panel-body"> <div >
</div>
<table width="100%" class="table table-striped"> <tr>
<td >No</td>
<td >Id Customer</td> <td >Nama Lengkap</td> <td >Alamat</td> <td >No Hp</td>
4.5.7.5
Halaman Input Data Member
Jika admin akan mengisi data dari customer maka masuk dihalaman
Input Data Member. Halaman ini menampilkan inputan untuk mengisi
data dari customer.
Gambar 4.21 Halaman Input Data Member
Cuplikan Kode : Input_member.php
div id="page-wrapper"> <div class="row"> <div class="col-lg-12">
<h1 class="page-header"> Input Data Member</h1> </div>
<!-- /.col-lg-12 --> </div>
<div class="row"> <div class="col-lg-12">
<div class="panel panel-default"> <div class="panel-heading"> <p></div>
<!-- /.panel-heading --> <div class="panel-body"> <div >
4.5.7.6
Halaman Data Servis
Halaman data servis adalah halaman yang menampilkan data dari
customer dan kendaraan yang akan diservis.
Gambar 4.22 Halaman Data Servis
Cuplikan kode : Servis.php
<table width="100%" class="table table-striped">
<tr><td width="4%" >No</td>
<td width="13%" >Id Customer</td> <td width="17%" >Nama Lengkap</td> <td width="13%" >Jenis Mobil</td> <td width="13%" >No Polisi</td> <td width="14%" >Tgl servis</td>
<td width="15%" >Tgl kembali servis</td> <td width="11%" align="center" >Aksi</td> </tr>
<script language="Javascript"> function konfirmasi(id_1) {
tanya = confirm ('Anda Yakin Ingin Menghapus data dengan Id :'+ id_1 + '?');
if (tanya == true) return true; else return false;
}
4.5.7.7
Halaman Input Data Servis
Jika admin akan mengisi data dari customer untuk servis kendaraan
maka masuk dihalaman Input Data Servis. Halaman ini menampilkan inputan
untuk mengisi data Servis dari customer.
Gambar 4.23 Halaman Input Data Servis
Cuplikan Kode : Input_servis.php
<table width="606" border="0"> <tr>
<td width="218" height="26"><label>ID Customer</label></td> <td width="22" align="center"><label> : </label></td> <td width="223"><select name="a" id="a">
<?php
echo"<option value=0 selected>-- choose --</option>"; $tampil=mysql_query("SELECT * FROM tbl_customer ORDER BY nama_customer");
while($r=mysql_fetch_array($tampil)){
echo "<option value=$r[id_customer]>$r[nama_customer]</option>"; }
?>
</select></td>
<td width="67"> </td> <td width="54"> </td> </tr>
<tr>
<td width="218" height="27"><label>Jenis Mobil</label></td> <td width="22" align="center"><label> : </label></td> <td colspan="3">
<input type="text" name="b" id="b" size="34" required/> </td>
</tr> <tr>
<td><label>No Polisi</label></td>
<td width="22" align="center"><strong>: </strong></td> <td colspan="3"><input type="text" name="c" id="c" size="34" required/></td>
<td><label>KM Mobil</label></td>
<td width="22" align="center"><strong>: </strong></td> <td colspan="3"><input name="d" type="text" required id="d" size="34" maxlength="12"/>
/KM</td> </tr> <tr>
<td height="63" valign="top"><label>Jenis Servis</label></td> <td width="22" align="center" valign="top"><strong>:
</strong></td> <td colspan="3"><p> <label for="e"></label> <select name="e" id="e">
<option>Servis Berkala</option> <option>Lain-Lain</option> </select>
</p> <p>
4.4.7.8 Halaman Kirim Pesan
Halaman SMS adalah halaman yang menampilkan desain yang
digunakan admin untuk mengirim Pesan kepada Customer.
Gambar 4.24 Halaman Kirim Pesan
Cuplikan Kode : Form_sms.php
<div id="page-wrapper"> <div class="row"> <div class="col-lg-12">
<h1 class="page-header">Kirim Pesan</h1> </div>
</div>
<!-- /.row --> <div class="row"> <div class="col-lg-12">
<div class="panel panel-default"> <div class="panel-heading"> <p></div>
<!-- /.panel-heading --> <div class="panel-body"> <div >
</div>
<form method="post" action="send.php"> <div >
<p> </div>
<br>
<table width="200" border="0" class="table"> <tr>
<td width="14%">No telp</td> <td width="3%">:</td>
<td width="83%"><select name="no_hp" id="no_hp"> <?php
echo"<option value=0 selected>-- choose --</option>"; $tampil=mysql_query("SELECT * FROM tbl_customer ORDER BY id_customer");
while($r=mysql_fetch_array($tampil)){
echo "<option value=$r[no_hp]>$r[no_hp]</option>"; }
<td><textarea name="msg"></textarea></td> </tr>
<input type="submit" name="submit" value="Kirim SMS"> </form>
4.4.7.9 Halaman Send Item
Halaman Senditem adalah halaman yang menampilkan pesan
yang setelah dikirim, data ini otomatis masuk setelah SMS terkirim.
Gambar 4.25 Halaman Send Item
Cuplikan Kode : Senitems.php
<?php
include ("config.php");
$query = "SELECT ID,SendingDateTime,DestinationNumber,TextDecoded FROM sentitems";
$result = mysql_query($query); $no = 1; // nomor baris?>
<table border=0 class="table table-striped"> <tr>
<th>No.</th>
<th>Tgl. Terkirim</th> <th>Tujuan</th>
<th>Isi</th> <th>Action</th> </tr>
<?php while ($data = mysql_fetch_assoc($result)) { ?> <tr>
<td><?php echo $no ?></td>
<td><?php echo $data['SendingDateTime'] ?></td> <td><?php echo $data['DestinationNumber'] ?></td> <td><?php echo $data['TextDecoded'] ?></td> <td>
4.4.7.10 Halaman Pesan Masuk/Inbox
Halaman Inbox adalah halaman yang menampilkan Pesan
Masuk.
Gambar 4.26 Halaman Inbox
Cuplikan Kode : Inbox.php
include ("config.php");
$query = "SELECT ID,ReceivingDateTime,SenderNumber,TextDecoded FROM inbox";
$result = mysql_query($query); $no = 1; // nomor baris
?>
<table border=0 class="table table-striped"> <tr>
<th>No.</th>
<th>Tgl. Masuk</th> <th>Pengirim</th> <th>Isi</th> <th>Action</th> </tr>
<?php while ($data = mysql_fetch_assoc($result)) { ?> <tr>
<td><?php echo $no ?></td>
<td><?php echo $data['ReceivingDateTime'] ?></td> <td><?php echo $data['SenderNumber'] ?></td> <td><?php echo $data['TextDecoded'] ?></td> <td>
<a href="proses.php?action=delinbox&id=<?php echo $data['ID'] ?>">Hapus</a>
</td> </tr>