i
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
OLEH:
HENDRI CAHYANA
NIM : 055314032
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2009
ii
Presented as Partial Fulfillment of the Requirements
Created By:
HENDRI CAHYANA
NIM : 055314032
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2009
To Obtain the Sarjana Teknik Degree
In Study Program of Informatics Engineering
vi
dengan menggunakan bahasa pemrograman Java dan MySQL.
Aplikasi ini merupakan sebuah program untuk mengotomatisasi pengisian
pulsa. Dengan program ini penjual bisa melakukan transaksi penjualan pulsa
tanpa harus melayani pelanggan secara langsung karena telah diotomatisasi oleh
sistem. Sistem ini bisa mengelola data pulsa maupun data pelanggan. Data
pelanggan yang bisa dikelola antara lain nama, alamat, nomor telepon, PIN, dan
saldo. Untuk pulsa yang dikelola adalah nama pulsa, nominal dan harga jual pulsa
vii
using JAVA and MySQL language programme.
The application is a programme to automize electronic voucher reload. By
using this programme, sellers can do voucher transactions without serving
customers directly because it has been automized by the system. The system can
proceed
pulsa
’s data as well as
pelanggan
’s data. The
pelanggan
’s data which can
be proceeded are
nama
,
alamat
,
no telepon
, PIN and
saldo
. The
pulsa
’s data
ix
melimpahkan berkat-Nya. Sehingga saya dapat menyelesaikan Laporan Tugas
Akhir ini.
Pada kesempatan ini saya ingin mengucapkan terima kasih kepada pihak –
pihak yang telah membantu saya dalam menyelesaikan skripsi ini, baik dalam hal
bimbingan, perhatian, kasih sayang, semangat, kritik, dan saran yang telah
diberikan. Ucapan terima kasih ini saya sampaikan antara lain kepada :
1. Bapak Yosef Agung Cahyanta, S.T., M.T., selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma Yogyakarta.
2. Bapak Puspaningtyas Sanjaya Adi, S.T., M.T., selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
3. Bapak JB Budi Darmawan, S.T., M.T. selaku Dosen Pembimbing Akademik
Teknik Informatika angkatan 2005.
4. Bapak Alb. Agung Hadhiatma, S.T, M.T, selaku Dosen Pembimbing TA.
Terima kasih atas bimbingan selama saya mengerjakan Laporan Skripsi ini.
5. Kedua orangtua, terima kasih atas dukungan, kasih sayang dan semangat yang
tiada henti sehingga saya dapat menyelesaikan Tugas Akhir ini.
6. Seluruh pihak yang membantu saya baik secara langsung maupun tidak
Saya menyadari masih banyak kekurangan yang terdapat pada laporan ini.
Saran dan kritik selalu saya harapkan dari pembaca untuk perbaikan – perbaikan
di masa yang akan datang.
Akhir kata, saya berharap tulisan ini dapat bermanfaat bagi kemajuan dan
perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada umumnya.
Yogyakarta, Juli 2009
xi
HALAMAN PENGESAHAN... iv
PERNYATAAN KEASLIAN KARYA... v
ABSTRAKSI ...vi
ABSTRACT...vii
LEMBAR PERNYATAAN PERSETUJUAN...viii
KATA PENGANTAR ...ix
DAFTAR ISI... xi
DAFTAR GAMBAR ... xiv
DAFTAR TABEL... xix
BAB 1 ... 1
PENDAHULUAN ... 1
1.1. Latar Belakang Masalah... 1
1.2. Rumusan Masalah ... 2
1.3. Batasan Masalah ... 3
1.4. Tujuan Penelitian ... 3
1.5. Metode Penelitian ... 3
1.6. Sistematika Penulisan ... 6
BAB 2 ... 8
LANDASAN TEORI... 8
2.1. SMS (Short Message Service) ... 8
2.2. SMS Gateway ... 9
2.3. Cara Kerja SMS dan PDU (Protocol Data Unit) SMS ... 9
2.3.1 SMS PDU Pengirim (Mobile Originated) ... 11
2.4. AT-Command ... 17
2.5. Bahasa Pemrograman JAVA ... 18
2.6. JDBC... 19
2.7. Java Communicaton Port ... 20
2.8. Use Case Diagram... 21
2.9. Sequence Diagram ... 22
2.10. Relational Database Management System (RDBMS) dan MYSQL ... 22
2.11. SQL... 23
2.12. ERD (Entity Relationship Diagram) ... 25
BAB 3 ... 28
ANALISIS DAN PERANCANGAN SISTEM... 28
3.1. Fase Defenisi Ruang Lingkup ... 28
3.2. Fase Analisis Masalah... 29
3.2.1 Sistem Yang ada Saat ini... 29
3.2.2 Sebab dan Akibat (Cause and Efect) ... 30
3.2.3 Gambaran Sistem Baru... 31
3.2.4 Orang Yang Terlibat Dalam Sistem ... 34
3.3. Fase Analisis Kebutuhan... 35
3.3.1 Use case Diagram... 35
3.3.2 Definisi Use case... 37
3.3.3 Narasi Use Case (Use case Narative) ... 39
3.4. Fase Desain Logikal (Logical Design Phase) ... 56
3.4.1 Diagram Aktifitas (Activity Diagram)... 56
3.4.2 ER Diagram... 65
3.4.3 Relational Model ... 66
3.4.4 Sequence diagram ... 67
3.4.5 Class Diagram ... 84
3.4.7 Rancangan interface... 92
BAB 4 ... 101
IMPLEMENTASI DAN HASIL... 101
4.1. Fase Konstruksi dan Percobaan ... 101
4.1.1 Karakteristik Sistem ... 101
4.1.2 Kebutuhan Sistem ... 101
4.1.3 Pembuatan database ... 102
4.1.4 Koneksi Program ke Database ... 105
4.1.5 Koneksi Program ke Port Handphone ... 106
4.1.6 Implementasi Sistem Penjual ... 107
4.1.7 Proses Pelanggan... 124
4.1.8 Hasil Ujicoba Aplikasi Server ... 130
4.1.9 Hasil Ujicoba Transaksi Pelanggan... 146
4.2. Fase Instalasi dan Pengiriman... 156
4.2.1 Langkah-langkah instalasi untuk j2sdk 1.6 adalah sebagai berikut... 156
4.2.2 Langkah-langkah instalasi javacomm ... 160
4.2.3 Langkah-langkah instalasi mysql server 5.1 ... 160
4.2.4 Restore data dan struktur data ke dalam database pengguna... 168
4.2.5 Langkah-langkah untuk instalasi driver handphone siemens C55... 169
Bab 5 ... 172
ANALISA ... 172
5.1. Analisa manfaat ... 172
5.2. Kelebihan dan kekurangan sistem... 172
BAB 6 ... 175
PENUTUP... 175
DAFTAR PUSTAKA ... 176
xiv
Gambar 3 Skema Format SMS PDU Pengirim ... 11
Gambar 4 Skema Format SMS PDU Penerima... 15
Gambar 5 Simbol Use Case ... 21
Gambar 6 Simbol Aktor ... 21
Gambar 7 Simbol Entity ... 25
Gambar 8 Simbol Entity dengan Attribut ... 26
Gambar 9 Notasi Kardinalitas ... 27
Gambar 10 gambaran sistem lama ... 29
Gambar 11 rancangan fisik sistem ... 33
Gambar 12 use case diagram penjual ... 35
Gambar 13 use case penjual kelola data pelanggan ... 36
Gambar 14 use case penjual kelola data pulsa ... 36
Gambar 15 use case pelanggan ... 37
Gambar 16 diagram aktifitas start server ... 56
Gambar 17 diagram aktifitas serial port menerima respon ... 57
Gambar 18 diagram aktifitas edit data pelanggan ... 58
Gambar 19 diagram aktifitas proses inbox pelanggan ... 60
Gambar 20 diagram aktifitas proses kirim sms ... 61
Gambar 21 diagram aktifitas proses kirim sms kepada pelanggan ... 62
Gambar 22 diagram aktifitas proses kirim sms kepada penyedia ... 63
Gambar 23 diagram aktifitas cek status pengiriman pulsa ... 64
Gambar 24 ER diagram... 65
Gambar 25 relational model... 66
Gambar 26 sequence diagram konfigurasi server ... 67
Gambar 27 sequence diagram tambah data pelanggan... 68
Gambar 28 sequence diagram edit data pelanggan ... 69
Gambar 29 sequence diagram hapus data pelanggan ... 70
Gambar 30 sequence diagram tambah saldo pelanggan... 71
Gambar 31 sequence diagram tambah data pulsa ... 72
Gambar 32 sequence diagram edit data pulsa ... 73
Gambar 33 sequence diagram hapus data pulsa ... 74
Gambar 35 sequence diagram hapus semua pesan... 76
Gambar 36 sequence diagram kirim sms ... 77
Gambar 37 sequence diagram buat laporan pelanggan ... 78
Gambar 38 sequence diagram buat laporan sicho cell ... 79
Gambar 39 sequence diagram cek daftar harga... 80
Gambar 40 sequence diagram cek saldo ... 81
Gambar 41 sequence diagram isi pulsa ... 82
Gambar 42 sequence diagram ganti PIN... 83
Gambar 43 class diagram kelola pelanggan ... 86
Gambar 44 class diagram kelola data pesan... 87
Gambar 45 class diagram kelola data pulsa ... 88
Gambar 46 class diagram konfigurasi server, koneksi ... 89
Gambar 47 rancangan interface server... 92
Gambar 48 rancangan interface konfigurasi server... 93
Gambar 49 rancangan interface data pelanggan... 93
Gambar 50 rancangan interface tambah data pelanggan ... 94
Gambar 51 rancangan interface edit data pelanggan... 94
Gambar 52 rancangan interface tambah saldo ... 95
Gambar 53 rancangan interface data pulsa... 95
Gambar 54 rancangan interface tambah pulsa ... 96
Gambar 55 rancangan interface edit pulsa ... 96
Gambar 56 rancangan interface hapus semua pesan ... 97
Gambar 57 rancangan interface kirim sms... 97
Gambar 58 rancangan interface buat laporan pelanggan ... 98
Gambar 59 rancangan interface buat laporan sicho cell... 98
Gambar 60 rancangan interface ganti PIN ... 99
Gambar 61 rancangan interface cek saldo... 99
Gambar 62 rancangan interface isi pulsa ... 100
Gambar 63 rancangan interface cek harga ... 100
Gambar 64 Aplikasi server Sicho Cell ... 108
Gambar 65 menu konfigurasi handphone ... 109
Gambar 66 menu status pengisian pulsa ... 114
Gambar 67 menu cetak laporan... 117
Gambar 68 hasil cetak laporan pelanggan... 117
Gambar 69 menu laporan sicho cell ... 118
Gambar 70 hasil cetak laporan sicho cell ... 118
Gambar 72 menu tambah data pelanggan ... 120
Gambar 73 menu edit data pelanggan ... 121
Gambar 74 menu tambah saldo pelanggan ... 121
Gambar 75 menu data pulsa ... 122
Gambar 76 menu tambah data pulsa ... 122
Gambar 77 menu edit data pulsa ... 123
Gambar 78 menu kirim sms ... 124
Gambar 79 format sms permintaan pulsa... 125
Gambar 80 format cek harga pulsa ... 127
Gambar 81 format cek saldo pelanggan ... 128
Gambar 82 format ganti PIN... 129
Gambar 83 konfigurasi handphone ... 130
Gambar 84 konfirmasi server telah siap digunakan ... 130
Gambar 85 konfirmasi kegagalan koneksi ... 131
Gambar 86 proses batalkan transaksi ... 131
Gambar 87 konfirmasi pembatalan transaksi ... 132
Gambar 88 proses hapus pesan ... 132
Gambar 89 konfirmasi hapus transaksi ... 133
Gambar 90 konfirmasi hapus semua pesan ... 133
Gambar 91 proses tambah data pelanggan ... 134
Gambar 92 konfirmasi berhasil tambah data pelanggan ... 134
Gambar 93 konfirmasi gagal tambah data pelanggan ... 135
Gambar 94 proses edit data pelanggan... 135
Gambar 95 konfirmasi berhasil edit data pelanggan ... 136
Gambar 96 konfirmasi gagal edit data pelanggan ... 136
Gambar 97 proses hapus data pelanggan ... 137
Gambar 98 konfirmasi menghapus data pelanggan ... 137
Gambar 99 proses tambah saldo pelanggan ... 138
Gambar 100 konfirmasi berhasil tambah saldo pelanggan... 138
Gambar 101 proses tambah data pulsa ... 139
Gambar 102 konfirmasi berhasil tambah data pulsa ... 139
Gambar 103 konfirmasi gagal tambah data pulsa ... 140
Gambar 104 proses edit pulsa ... 140
Gambar 105 konfirmasi berhasil edit data pulsa ... 140
Gambar 106 proses hapus data pulsa ... 141
Gambar 107 konfirmasi hapus data pulsa ... 141
Gambar 109 konfirmasi kirim sms... 142
Gambar 110 proses cetak laporan ... 143
Gambar 111 hasil cetak laporan pelanggan... 143
Gambar 112 konfirmasi data laporan pelanggan kosong ... 144
Gambar 113 konfirmasi belum memilih waktu dan nama pelanggan ... 144
Gambar 114 proses laporan sicho cell... 144
Gambar 115 print preview laporan sicho cell ... 145
Gambar 116 konfirmasi data laporan sicho cell kosong ... 145
Gambar 117 konfirmasi belum memilih waktu laporan... 146
Gambar 118 proses permintaan pulsa ... 147
Gambar 119 sms balasan kirim pulsa berhasil ... 147
Gambar 120 sms balasan kirim pulsa gagal ... 148
Gambar 121 sms balasan nomor belum terdaftar ... 148
Gambar 122 sms balasan penulisan format salah... 149
Gambar 123 sms balasan PIN salah ... 149
Gambar 124 sms balasan nomor salah ... 150
Gambar 125 sms balasan saldo tidak cukup... 150
Gambar 126 sms balasan kode pulsa salah ... 151
Gambar 127 sms balasan pernah melakukan transaksi ... 152
Gambar 128 proses cek saldo... 153
Gambar 129 sms balasan cek saldo... 153
Gambar 130 proses cek harga ... 154
Gambar 131 sms balasan cek harga ... 154
Gambar 132 proses ganti PIN ... 155
Gambar 133 sms balasan ganti PIN berhasil... 155
Gambar 134 instalasi j2sdk 1.6 ... 156
Gambar 135 lisensi j2sdk 1.6 ... 157
Gambar 136 fitur j2sdk ... 157
Gambar 137 proses instal dimulai... 158
Gambar 138 memilih folder instalasi jre6 ... 158
Gambar 139 proses instalasi jre6 ... 159
Gambar 140 instalasi j2sdk 1.6 berhasil... 159
Gambar 141 file javacomm ... 160
Gambar 142 selamat datang instalasi mysql ... 160
Gambar 143 memilih tipe instalasi ... 161
Gambar 144 konfirmasi instalasi ... 161
Gambar 146 instalasi mysql berhasil ... 162
Gambar 147 selamat datang konfigurasi server mysql... 163
Gambar 148 memilih tipe konfigurasi ... 163
Gambar 149 memilih server type ... 164
Gambar 150 memilih penggunaan database... 164
Gambar 151 memilih tempat menyimpan InnoDB ... 165
Gambar 152 memilih jumlah koneksi ... 165
Gambar 153 memilih nomor port... 166
Gambar 154 memilih karakter set ... 166
Gambar 155 memilih nama service... 167
Gambar 156 pengaturan keamanan servis mysql ... 167
Gambar 157 konfigurasi server berhasil ... 168
Gambar 158 restore sqldump ... 168
Gambar 159 menemukan harware baru ... 169
Gambar 160 memilih lokasi driver C55 ... 170
Gambar 161 pencarian driver siemens C55 ... 170
Gambar 162 proses instalasi driver siemens C55... 171
xix
Tabel 3 sebab akibat... 30
Tabel 4 definisi use case ... 37
Tabel 5 Narasi Use Case Mengkonfigurasi Server ... 39
Tabel 6 Narasi Use Case Tambah pelanggan ... 40
Tabel 7 Narasi Use Case Tambah Saldo ... 41
Tabel 8 Narasi Use Case Edit pelanggan ... 42
Tabel 9 Narasi Use Case Hapus pelanggan... 43
Tabel 10 Narasi Use Case Tambah data pulsa ... 44
Tabel 11 Narasi Use Case Edit data pulsa... 45
Tabel 12 Narasi Use Case Hapus data pulsa ... 46
Tabel 13 Narasi Use Case Batalkan Transaksi... 47
Tabel 14 Narasi Use Case Hapus Semua Pesan ... 48
Tabel 15 Narasi Use kirim SMS ... 49
Tabel 16 Narasi Use Case Buat Laporan Pelanggan ... 50
Tabel 17 Narasi Use Case Buat Laporan Sicho Cell... 51
Tabel 18 Narasi Use Case Lihat daftar harga... 52
Tabel 19 Narasi Use Case Cek saldo ... 53
Tabel 20 Narasi Use Case Isi pulsa... 54
Tabel 21 Narasi Use Case Ganti PIN ... 55
Tabel 22 Kelas analisis Konfigurasi Server ... 67
Tabel 23 Kelas analisis Tambah Data Pelanggan ... 68
Tabel 24 Kelas analisis Edit Data Pelanggan ... 69
Tabel 25 Kelas analisis Hapus Data Pelanggan ... 70
Tabel 26 Kelas analisis Tambah saldo Pelanggan... 71
Tabel 27 Kelas analisis Tambah data pulsa ... 72
Tabel 28 Kelas analisis Edit data pulsa... 73
Tabel 29 Kelas analisis Hapus data pulsa ... 74
Tabel 30 Kelas analisis batalkan transaksi ... 75
Tabel 31 Kelas analisis Hapus semua pesan ... 76
Tabel 32 Kelas analisis Kirim SMS ... 77
Tabel 33 Kelas analisis buat laporan pelanggan ... 78
Tabel 35 Kelas analisis cek daftar harga ... 80
Tabel 36 Kelas analisis Cek saldo... 81
Tabel 37 Kelas analisis Isi pulsa ... 82
Tabel 38 Kelas analisis Ganti PIN ... 83
Tabel 39 Tabel pelanggan ... 90
Tabel 40 Tabel pulsa ... 90
Tabel 41 Tabel pesan_transaksi ... 90
Tabel 42 Tabel inbox_pelanggan ... 90
Tabel 43 Tabel outbox_pelanggan ... 91
Tabel 44 Tabel laporanpelanggan ... 91
Tabel 45 Tabel pelanggan ... 103
Tabel 46 Tabel pulsa ... 103
Tabel 47 Tabel pesan_transaksi ... 103
Tabel 48 Tabel inbox_pelanggan ... 103
Tabel 49 Tabel outbox_pelanggan ... 104
Tabel 50 Tabel laporanpelanggan ... 104
Tabel 51 Daftar produk pulsa SICHO CELL ... 126
1
1.1. Latar Belakang Masalah
Pengguna
Handphone
atau telepon genggam belakangan ini semakin
berkembang pesat, baik karena pulsa yang harganya murah, begitu juga dengan
harga
handphone
yang semakin terjangkau. Pengguna fasilitas telekomunikasi ini
tidak terbatas oleh usia, baik tua maupun muda semua menggunakan fasilitas
telekomunikasi tersebut. Maka seiring banyaknya pengguna telepon genggam
maka bertambah juga permintaan akan pulsa elektronik.
Bagi pelaku bisnis peningkatan permintaan pulsa ini merupakan suatu
kesempatan untuk meraih keuntungan, maka dengan modal yang seadanya banyak
orang mencoba untuk berkecimpung dalam bisnis penjualan pulsa. Proses
penjualan dalam melayani pelanggan pada umumnya dilakukan secara manual
yaitu pembeli menuliskan nomor
handphone
mereka beserta jumlah nominal
pulsa yang diinginkan ke dalam kertas yang disediakan oleh penjual, selanjutnya
penjual mengisi pulsa ke nomor
handphone
tersebut dengan menggunakan kartu
khusus yang disediakan oleh tiap-tiap operator selular. Proses pengisian pulsa
pada tiap-tiap operator umumnya sama yaitu masuk ke dalam menu pengisian,
memasukan nomor
handphone
pembeli, memasukan nominal pulsa yang
diinginkan dan tidak lupa memasukan
password
atau biasa disebut nomor
pin
.
Apabila penjual tersebut sedang mengerjakan sesuatu yang lain maka prosses
tersebut berjalan secara otomatis yaitu sistem menerima masukan berupa sms
kemudian sistem akan mengolah sms tersebut dan selanjutnya sistem mengirim
pulsa ke nomor
handphone
yang dimaksud sehingga terjadi efisiensi waktu bagi
Penjual.
Karena komunikasi SMS semakin banyak digunakan di semua lapisan
masyarakat, maka ada banyak penyedia jasa yang memanfaatkan kondisi ini untuk
mendapatkan keuntungan dengan membuat aplikasi SMS
Gateway. Ada banyak
aplikasi SMS
Gateway
yang tersebar ditengah-tengah masyarakat misalnya SMS
banking, SMS
Gateway
untuk layanan Informasi Akademik, SMS kuis, SMS
Polling
untuk pemilihan dan lain-lain.
Dari permasalahan yang didapat penulis tertarik untuk membuat aplikasi SMS
yang dapat mengotomatisasi proses penjualan pulsa elektronik sehingga penjual
dapat dapat mengerjakan kegiatan yang lain tanpa terbebani oleh kegiatan mengisi
pulsa.
1.2. Rumusan Masalah
1.3. Batasan Masalah
Dalam otomatisasi pengiriman pulsa elektronik dilakukan beberapa batasan
sebagai berikut:
1.
input
yang diterima sistem hanya berupa sms yang berdasarkan format
penulisan sms yang telah ditentukan sebelumnya
2. sistem memproses pengisian pulsa hanya pada operator selular tertentu.
1.4. Tujuan Penelitian
Adapun tujuan penulisan skripsi adalah untuk membuat suatu program berbasis
sms gateway
yang akan memudahkan proses transaksi jual beli pulsa elektronik.
1.5. Metode Penelitian
1. Studi pustaka tentang aplikasi berbasis sms.
Mencari buku-buku ataupun literatur yang berkaitan dengan sms gateway.
2. Implementasi aplikasi berbasis sms dalam suatu program.
Membuat sutau program yang menggunakan teknologi sms gateway.
3. Jalankan program untuk menerima dan mengirim sms.
Melakukan pengujian sisten dengan menjalankan program yang telah
dibuat apakah sudah berjalan semestinya atau perlu perbaikan program.
4. Melakukan tahapan-tahapan pengembangan sistem berorientasi object
yaitu dengan menggunakan metodologi FAST:
Scope Definition Phase
(Fase Defenisi Ruang Lingkup)
Kedua adalah Asumsi bahwa problem adalah berharga, dengan
penetapan ukuran dan batasan dari projek, visi proyek, kebutuhan
dan hambatan proyek, yang berpartisipasi terhadap proyek, dan
akhirnya biaya dan jadwal.
Problem Analysis Phase
(Fase Analisis Masalah)
Pada tahap ini dilakukan analisis terhadap sistem yang telah ada
saat itu. Tahap ini memberikan pemahaman yang lebih dalam bagi
tim proyek mengenai permasalahn yang dihadapi. Analisis ini
dilakukan untuk menjawab pertanyaan apakah keuntungan yang
diperoleh setelah pemecahan masalah lebih besar daripada biaya
yang dikeluarkan.
Requirment Analysis Phase
Jika manajemen setujui untuk melanjutkan proyek, maka tahap
selanjutnya adalah mendeifinisikan apa saja yang perlu dilakukan
oleh sistem, apa yang dibutuhkan dan diinginkan oleh pengguna
dari sistem baru. Tahap ini memerlukan perhatian yang besar
karena jika terjadi kesalahan dalam menerjemahkan kebutuhan dan
keinginan pengguna sistem maka dapat mengakibatkan adanya rasa
tidak puas pada sistem final dan perlu diadakan modifikasi yang
Logical Design Phase
(Fase Desain Logikal)
Fase ini merupakan fase untuk menerjemahkan kebutuhan bisnis
dari
user
ke dalam sebuah model sistem yang menggambarkan
hanya
business requirement
dan tidak dalam perancangan atau
implementasi teknis yang mungkin.
Construction and Testing
(Konstruksi dan Percobaan)
Pada tahap ini dilakukan proses pembentukan dan pengetesan
sebuah sistem yang akan memenuhi
business requirement
dan
spesifikasi rancangan fisik, dan untuk mengimplementasikan
tampilan-tampilan sistem yang baru dan sistem yang sudah ada.
Installation and Delivery
(Instalasi dan Pengiriman)
1.6. Sistematika Penulisan
BAB 1 PENDAHULUAN
Memberikan gambaran secara umum tentang isi skripsi yang meliputi:
latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat,
metode penelitian dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Berisi konsep dasar sistem, konsep dasar informasi, metodologi
pengembangan sistem, konsep basis data, konsep proses, bahasa
pemrograman JAVA, mySQL dan tentang sms gateway.
BAB 3 ANALISIS dan PERANCANGAN SISTEM
Berisi analisis kebutuhan, diagram arus data, kamus data, E-R diagram
sistem, perancangan proses, perancangan basis data, perancangan modul,
perancangan tampilan masukan dan kluaran untuk pengguna, dan
perancangan teknologi.
BAB 4 IMPLEMENTASI DAN HASIL
Berisi penjelasan dan fungsi program pengisian pulsa otomatis dengan
teknologi sms gateway.
BAB 5 ANALISIS
BAB 6 KESIMPULAN dan SARAN
Berisi kesimpulan dan saran dari program pengisian pulsa otomatis dengan
teknologi sms gateway.
DAFTAR PUSTAKA
8
2.1. SMS (Short Message Service)
Menurut Tim Penelitian Dan Pengembangan Wahana Komputer (2005),
SMS (Short Message Service) adalah salah satu jenis layanan komunikasi berbasis
teks yang disediakan oleh operator telepon selular yang memungkinkan para
pelanggannya untuk mengirim atau menerima pesan singkat melalui handphone.
SMS merupakan salah satu fitur komunikasi
messaging
dari GSM yang
dikembangkan dan distandarisasi oleh ETSI.
Layanan yang dilakukan menggunakan SMS merupakan sebuah layanan
yang bersifat
nonreal time
yaitu suatu layanan di mana sebuah
short message
dapat di-submit
ke suatu tujuan, tidak peduli apakah tujuan tersebut aktif atau
tidak. Bila dideteksi bahwa tujuan tidak aktif, maka sistem akan menunda
pengiriman ketujuan hingga tujuan aktif kembali.
Pada dasarnya sistem SMS akan menjamin
delivery
dari suatu
short
message hingga sampai ke tujuan. Kegagalan pengiriman yang bersifat sementara
seperti tujuan tidak aktif akan selalu teridentifikasi sehingga pengiriman ulang
short message akan selalu dilakukan kecuali bila diberlakukan aturan bahwa short
message yang telah melampaui batas waktu tertentu harus dihapus dan dinyatakan
2.2. SMS Gateway
SMS
Gateway
adalah sebuah perangkat lunak yang dipergunakan oleh
penyedia jasa untuk
memanage
SMS yang diterima dan yang akan dikirimkan.
SMS
Gateway
bekerja dengan cara menghubungkan handphone yang memiliki
fasilitas SMS dengan komputer (PC). Keduanya akan dihubungkan oleh suatu
kabel data dari handphonenya yang sesuai dengan serial port yang ada di PC.
Komunikasi antara handphone dengan PC akan menggunakan bahasa
pemrograman serial port.
Gambar 1
Arsitektur Aplikasi SMS
Gateway
2.3. Cara Kerja SMS dan PDU (Protocol Data Unit) SMS
tujuan. Apabaila handphone tujuan dalam keadaan aktif dan menerima sms yang
dikirim, ia akan mengirim kembali pesan konfirmasi ke SMSC yang menyatakan
bahwa SMS telah diterima. Tetapi jika handphone tujuan dalam keadaan mati atau
diluar jangkauan, SMS yang dikirim akan disimpan pada SMSC sampai pada
periode validitas terpenuhi. Jika validitas terlewati maka SMS itu akan dihapus
dari SMSC dan tidak dikirimkan ke handphone tujuan. Disamping itu SMSC juga
akan mengirimkan pesan informasi ke nomor pengirim yang menyatakan bahwa
pesan yang dikirim belum diterima atau gagal.
Gambar 2
Skema Cara Kerja SMS
Dalam proses pengiriman atau penerimaan SMS, data yang dikirim
maupun diterima oleh handphone bergerak menggunakan salah satu dari 2 mode
yang ada, yaitu: mode teks, dan mode PDU (
Protocol Data Unit
) (Wavecom,
2000). Mode teks adalah format pesan dalam bentuk teks asli yang dituliskan pada
saat akan mengirim pesan. Sesungguhnya mode teks ini adalah hasil dari
pengkodean model PDU.
Dalam mode PDU, pesan yang dikirim berupa informasi dalam bentuk
data dengan beberapa kepala-kepala informasi. Hal ini akan memberikan
dibentuk sistem penyandian data dari karakter dalam bentuk untaian bit-bit biner.
Senarai PDU tidak hanya berisi pesan teks saja, tetapi terdapat beberapa
metainformasi yang lainnya, seperti nomor pengirim, nomor SMS Centre, waktu
pengiriman, dan sebagainya. Semua informasi yang terdapat dalam PDU,
dituliskan dalam bentuk pasangan-pasangan bilangan heksadesimal yang disebut
dengan pasangan oktet. Jenis PDU SMS yang akan digunakan adalah : SMS PDU
Pengirim (Mobile Originated) dan SMS PDU Penerima (Mobile Terminated).
2.3.1
SMS PDU Pengirim (Mobile Originated)
SMS PDU Pengirim adalah pesan yang dikirim dari handphone ke
terminal yang kemudian dikirimkan ke SMSC. Pesan yang akan dikirimkan oleh
terminal masih dalam bentuk teks, sedangkan dalam pengiriman ke SMSC harus
dalam bentuk PDU. Untuk itu sebelum dikirim, terminal atau handphone akan
melakukan perubahan dari format teks menjadi format PDU, proses ini sering
disebut encodec. Adapaun skema dari format SMS PDU Pengirim telah diatur dan
ditetapkan oleh ETSI sebagai berikut :
Pada format ini beberapa meta-informasi yang dibawa, antara lain :
• SCA (Service Centre Address)
Berisi informasi dari alamat SMS-Centre. SCA memiliki tiga komponen
utama :
-
Len : Panjang Informasi SMSC dalam oktet dan biasanya bernilai 00
Gambar 2.4 Skema Format SMS PDU Pengirim
-
Type of Number : Format nomor dari SMSC (81 hexa = format lokal, 91
hexa = format international).
-
Service Center Number : Nomor SMSC dari operator pengirim. Jika
panjangnya ganjil maka pada karakter terakhir ditambahkan 0F hexa.
Pada PDU pengirim nomor SMSC tidak dicantumkan.
Pada PDU pengirim umumnya nilai hasil SCA adalah 00
• Tipe PDU (PDU Type)
Berisi informasi jenis dari PDU tersebut. Nilai default dari tipe PDU untuk
PDU pengirim adalah 11.
• MR (Message Reference)
Message Reference adalah acuan dari pengaturan pesan SMS. Nilai MR
sendiri oleh handphone tujuan
• DA (Destination Address)
Berisi informasi nomor alamat yang dituju yang berisi atas panjangnya
nomor tujuan (Len), format dari nomor tujuan (Type Number), dan nomor
tujuan (destination number).
• PID (Protocol Identifier)
Protokol Identifier adalah tipe atau format dari cara pengiriman pesan
yang
biasanya diatur dari handphone pengirim. Nilai default dari PID adalah 00.
• DCS (Data Coding Scheme)
Berisi informasi skema pengkodean data yang digunakan, ada tiga jenis
pengkodeean yaitu SMS teks standar, Flash SMS, atau Blinking SMS.
Nilai
default dari DCS yaitu SMS teks standar yang bernilai 00.
• VP (Validity Period)
Berisi informasi jangka waktu lamanya pesan yang disimpan di SMSC
Tabel 1 Validity Period
Waktu VP
Nilai VP
5 menit – 720 menit (12 jam)
(Waktu VP / 5 ) -1
12,5 jam – 24 jam
142 +((Waktu VP – 12)*2)
2 – 30 hari
166 + Waktu VP
Lebih dari 4 minggu
192 + Waktu VP
• UDL (User Data Length)
Berisi informasi panjang dari pesan SMS yang akan dikirim dalam bentuk
teks standar dalam heksadesimal.
• UD (User Data)
User Data adalah isi pesan yang akan dikirim dalam format heksadesimal,
dimana format ini merupakan hasil pengkodean teks pesan yang akan
dikirimkan.
2.3.2
SMS PDU Penerima (Mobile Terminated)
SMS PDU Penerima adalah
terminal
menerima pesan yang datang atau
masuk dari SMSC ke handphone dalam format PDU. Pada prinsipnya pesan yang
kita terima dari SMSC masih dalam format PDU, setelah itu terminal handphone
disebut proses
decodec.
Cara pengkodean format PDU sudah diatur dan
distandarkan oleh ETSI. Format PDU dari sms penerima adalah :
Gambar 4
Skema Format SMS PDU Penerima
Pada format ini beberapa meta-informasi yang dibawa, antara lain:
• SCA (Service Centre Address)
Berisi informasi dari alamat SMS-Centre. SCA memiliki tiga komponen
utama :
-
Len : Panjang Informasi SMSC dalam oktet.
-
Type of Number : Format nomor dari SMSC (81 hexa = format lokal, 91
hexa = format international).
-
Service Center Number : Nomor SMSC daru operator pengirim. Jika
• Tipe PDU (PDU Type)
Berisi informasi jenis dari PDU tersebut. Nilai default untuk SMS-Deliver
adalah 04 hexa.
• OA (Originating Address)
Originating Address adalah alamat (nomor) dari handphone pengirim yang
berisi atas panajangnya nomor pengirim (Len), format dari nomor
pengirim
(Type Number), dan nomor pengirim (orginator number)
• PID (Protocol Identifier)
Protokol Identifier adalah tipe atau format dari cara pengiriman pesan
yang
biasanya diatur dari handphone pengirim. Nilai default dari PID adalah 00.
• DCS (Data Coding Scheme)
Berisi informasi skema pengkodean data yang digunakan, ada tiga jenis
pengkodeean yaitu SMS teks standar, Flash SMS, atau Blinking SMS.
Nilai
• SCTS (Service Center Time Stamp)
Service Center Time Stamp adalah waktu dari penerimaan pesan SMSC
penerima.
• UDL (User Data Length)
Berisi informasi panjang dari pesan SMS yang akan dikirim dalam bentuk
teks standar dalam heksadesimal
• UD (User Data)
User Data adalah isi pesan yang diterima dalam format heksadesimal,
dimana format ini nantinya akan di decodec menjadi teks standar agar
dapat dibaca oleh penerima.
2.4. AT-Command
Tabel 2 AT Command
AT Command
Keterangan
AT
Mengecek apakah handphone telah terhubung
AT+CMGF
Menetapkan format mode dari terminal
AT+CSCS
Menetapkan jenis encoding
AT+CNMI
Mendekteksi pesan yang baru masuk secara otomatis
AT+CMGL
Membuka daftar SMS yang ada di simcard
AT+CMGS
Mengirim pesan SMS
AT+CMGR
Membaca pesan SMS
AT+CMGD
Menghapus pesan SMS
2.5. Bahasa Pemrograman JAVA
Java adalah salah satu bahasa pemrograman yang dikembangkan oleh Sun
Microsystem yang sangat populer dari sekian banyak bahasa pemrograman yang
ada. Java dapat digunakan untuk membuat berbagai macam program termasuk
aplikasi web dengan memusatkan rancangan pada data (object) serta antarmuka,
itulah sebabnya java dikenal dengan pemrograman berorientasi object. Java juga
mendukung aplikasi
client/server, baik dalam jaringan lokal (LAN) maupun
jaringan berskala luas (WAN).
ini disebabkan oleh proses pengembangan yang sangat baik dari Sun Microsystem
selaku pengembang resmi java dari masa ke masa yang senantiasa
up to date
dalam hal teknologi.
Tentu saja jalan yang ditempuh untuk semua itu tidak mudah. Langkah
pertama yang diambil oleh Sun Microsystem adalah dengan membuat JVM (Java
Virtual Machine) yang kemudian diimplementasikan dalam bentuk JRE (Java
Runtime Environment). JVM adalah lingkungan tempat eksekusi program Java
berlangsung dimana para objek saling berinteraksi satu dengan yang lainnya.
Virtual Machine
inilah yang menyebabkan Java mempunyai kemampuan
penanganan memori yang lebih baik, keamanan yang lebih tinggi serta
portabilitas yang besar.
Apabila kebutuhannya hanya untuk menjalankan program Java, maka
cukup memiliki JRE saja. Tapi seandainya kita ingin mengembangkan perangkat
lunak sendiri, JRE saja tidak cukup. Untuk lebih meningkatkan
produktivitas
pengembang perangkat lunak, Sun juga meluncurkan SDK (Standard
Development Kit) untuk membuat program aplikasi berbasis Java.
2.6. JDBC
Pada prinsipnya JDBC memiliki DriverManager yang berfungsi untuk
mengatur
driver
serta menampilkan daftar
driver
aktif pada program aplikasi.
JDBC memungkinkan kita untuk membuat aplikasi dengan Java dalam mengakses
database server, baik itu secara lokal (stand-alone) maupun secara remote. JDBC
API memudahkan untuk mengirimkan perintah SQL ke sistem database relasional
dan mendukung bermacam-macam perintah SQL.
Dengan JDBC dapat dibuat program dengan portabilitas tinggi dan cukup
mudah karena secara umum pemrograman JDBC tidak memiliki perbedaan kode
yang berarti untuk pemrograman pada
database
tertentu dengan database
lain.
Perbedaan utama pada kode hanyalah kode yang mendefinisikan
driver
dari
database server
serta perintah SQL tertentu yang mungkin memiliki perbedaan
sintak atau perintah SQL khusus yang hanya terdapat pada
database
tertentu.
Pemrograman JDBC memiliki struktur seperti melakukan koneksi, membuat
object statement, mengeksekusi perintah SQL, mendapatkan hasil query, serta
menangani error.
2.7. Java Communicaton Port
2.8. Use Case Diagram
Menurut Whitten (2004),
Use case
adalah sebuah diagram yang
menggambarkan interaksi antara sistem dengan eksternal sistem dan pemakai.
Use
case
merupakan bagian dari keseluruhan sistem. Digambarkan secara grafik
dengan elips yang horisontal dengan nama
Use case
tertera diatas, dibawah atau
didalam
ellips
. Berikut merupakan simbol
Use case
:
Gambar 5
Simbol
Use Case
Menurut Whitten (2004),
Actor
merupakan segala sesuatu yang
dibutuhkan untuk berinteraksi dengan sistem untuk pertukaran informasi. Dapat
berupa orang, organisasi atau sistem informasi yang lain atau juga suatu waktu
kejadian. Berikut merupakan simbol dari
aktor
:
Gambar 6
Simbol
Aktor
sekarang. Digambarkan sebagai anak panah yang dimulai dari suatu use case dan
menunjuk ke use case yang depend on kepadanya. Setiap relasi depend on diberi
label “<<depend on>>”
2.9. Sequence Diagram
Menurut Whitten (2004), Sequence Diagram adalah diagram UML yang
memodelkan logika sebuah use case dengan cara menggambarkan interaksi pesan
di antara objek-objek dalam rangkaian waktu. Adapun objek-objek tersebut adalah
:
1. Object Antarmuka
Sebuah object yang menyediakan peralatan dimana pengguna
dapat mengantar muka dengan sistem tersebut
2. Object Control
Object yang berisi logika aplikasi yang bukan merupakan tanggung
jawab entity.
3. Object Entity
Sebuah object yang berisi informasi yang berhubungan dengan
bisnis yang bersifat menetap dan disimpan pada sebuah database.
2.10.
Relational Database Management System (RDBMS) dan
MYSQL
Relational Database adalah suatu konsep database yang dimana tabel satu
pengaksesan data pada database dapat dilakukan dengan cepat dan efektif.
Menuru Nugroho (2005), MySQL adalah sebuah program database sever yang
mampu menerima dan mengirimkan datanya dengan cepat, multiuser, serta
menggunakan perintah standar SQL (Structured Query Language ). MySQL
merupakan sebuah database yang free, sehingga kita dapat dengan bebas
menggunakannya tanpa harus membeli atau membayar lisensi. Adapun
kelebihan-kelebihan MySQL adalah sebagai berikut :
−
MySQL sebagai Database Management System (DBMS).
−
MySQL sebagai Relational Database Management System (RDBMS).
−
MySQL bersifat open source atau gratis
MySQL merupakan database server dan merupakan database client. Mampu
menyimpan data berkapasitas sangat besar.
2.11.
SQL
1. DDL (Data Definition Language)
DDL adalah sebuah Metode Query SQL yang berguna untuk
mendefinisikan data pada sebuah database, adapun query yang dimiliki
adalah :
-
Create : Digunakan untuk melakukan pembuatan tabel dan database.
-
Drop : Digunakan untuk melakukan penghapusan tabel maupun
database.
-
Alter : Digunakan untuk melakukan perubahan struktur tabel yang telah
dibuat, baik menambah field (add), mengganti nama field (change),
ataupun menemakannya kembali (rename), serta menghapus (drop).
2. DML (Data Manipulation Language)
DML adalah sebuah Metode Query yang dapat digunakan apabila DDL
telah terjadi, sehingga fungsi dari query ini adalah untuk melakukan
pemanipulasian database yang telah ada atau telah dibuat sebelumnya.
Adapun query-query yang termasuk didalamnya adalah :
-
Insert : Digunakan untuk melakukan penginputan/pemasukan data pada
tabel datbase
terhadap data yang ada pada tabel.
-
Delete : Digunakan untuk penghapusan data pada tabel. Penghapusan ini
dapat dilakukan secara sekaligus (seluruh isi tabel) maupun hanya
beberapa recordset.
2.12.
ERD (Entity Relationship Diagram)
Entity-relationship Diagram adalah sebuah model yang memanfaatkan
beberapa notasi untuk menggambarkan data dalam entity dan relasi yang
dijelaskan oleh data tersebut. Adapun beberapa konsep dasar dan simbol-simbol
yang mendasari semua model data, yaitu sebagai berikut :
1. Entitas
Entitas adalah sebuah kumpulan dari orang, tempat, objek, kejadian atau konsep
yang diperlukan untuk men-capture atau menyimpan data.
Gambar 7
Simbol
Entity
2. Attribut
Atribut merupakan sebuah properti yang deskriptif atau karakteristik dari sebuah
anggota
Kode_anggota nama_anggota password_anggota
email_anggota
alamat_anggota status_anggota No_telpon
Gambar 8
Simbol
Entity dengan
Attribut
3. Relationship
Relationship adalah sebuah asosiasi bisnis normal yang ada antara satu atau lebih
entity. Relasi mungkin juga mewakili suatu kejadian yang menghubungkan antara
entity atau logika gabungan antara entity. Karena semua hubungan bersifat dua
arah, maka diperlukan kardinalitas yang didefinisikan untuk setiap hubungan.
Kardinalitas adalah jumlah minimum dan maksimum kemunculan satu entitas
yang mungkin dihubungkan dengan kemunculan tunggal dari entitas lain.
INTERPRESTASI
KARDINALITAS
CONTOH
MINIMUM
CONTOH
MAKSIMUM
NOTASI GRAFIS
Tepat satu
Nol atau satu
0
1
Satu atau lebih
1
Banyak (>1)
Nol, satu atau lebih
0
Banyak (>1)
Lebih dari satu
>1
>1
28
3.1. Fase Defenisi Ruang Lingkup
Penjualan pulsa elektronik konter pulsa sicho cell masih secara manual
sehingga menimbulkan berbagai persoalan. Berikut merupakan
persoalan-persoalan yang timbul dan diuraikan dalam PIECES framework.
Performance
: pengisian pulsa masih dilakukan secara manual sehingga selain
proses yang dilakukan lama dan menyita waktu bagi penjual.
Information
: Dalam sistem yang ada saat ini, informasi data penjualan dan
laporan tidak langsung dicatat sehingga data penjualan tidak langsung terupdate.
Economics
: Untuk melayani penjualan pulsa dipekerjakan beberapa karyawan
sehingga terjadi pengeluaran untuk gaji karyawan.
Control
: Adanya kemungkinan salah pemasukan data penjualan, terjadi redudansi
data transaksi, kemungkinan kehilangan data misalkan buku laporan transaksi
hilang, kemungkinan terjadi kesalahan pengisian pulsa konsumen.
Service : terjadi kesalahan transaksi pulsa elektronik sehingga konsumen merasa
dirugikan, proses pengisian pulsa memakan waktu yang lama karena bergantung
pelayanan penjual sehingga konsumen harus menunggu lama.
3.2. Fase Analisis Masalah
3.2.1
Sistem Yang ada Saat ini
Sistem penjualan pulsa elektronik konter sicho cell masih secara manual.
Proses pengisian pulsa masih dilayani oleh penjual secara langsung mulai dengan
memasukan nomor konsumen hingga pulsa terisi ke
handphone
konsumen.
Pertama-tama konsumen dating ke konter dan menulis nomor handphone yang
akan diisi pulsa beserta nominal yang diinginkan. Selanjutnya penjual mengisi
pulsa konsumen tersebut berdasarkan data nomor handphone dari konsumen.
Data-data transaksi masih disimpan dalam bentuk dokumen berupa buku
transaksi.
3.2.2
Sebab dan Akibat (Cause and Efect)
Tabel 3 sebab akibat
Project
: Sistem Penjualan Pulsa
Elektronik Sicho Cell
Project Manager :
Hendri Cahyana
Created by
: Hendri Cahyana
Last Update by
: Hendri Cahyana
Date Created
: 10 November 2008
Date Last Update
: 11 November 2008
CAUSE AND EFFECT ANALYSIS
SYSTEM IMPROVEMENT
OBJECTIVES
Problem
/
Opportunity
Causes and effects
System objectives
System
constraint
1.kesalahan
pemasukan
data transaksi
masih mungkin
terjadi
2.Proses
penyimpanan
data
tidak
aman.
1. laporan
data
transaksi masih
disimpan dalam
bentuk dokumen
berupa
buku
transaksi.
2. pembuatan
laporan
harus
dibandingkan
antara
data
transaksi dalam
form
pengisian
pulsa dan data
konfirmasi
dari
proses pengisian
pulsa
3. Data
transaksi
masih disimpan
dalam
bentuk
buku
sehingga
kemungkinan
data hilang atau
rusak sangatlah
besar.
4. Pemasukan data
pulsa dilakukan
1. Memastikan bahwa
data yang disimpan
sesuai dengan yang
sebenarnya.
2. Mempermudah
dalam
menyediakan
laporan
sesuai
dengan data yang
telah
disimpan
karena
pengguna
hanya
perlu
menjalankan suatu
fungsi
untuk
mencetak laporan.
3. Membantu
mengurangi resiko
kehilangan data dan
menjamin
data
disimpan
dengan
aman
dengan
menggunakan suatu
aplikasi
yang
menggunakan
database
.
4. memastikan bahwa
dalam
pengisian
1. Diperlukan
perangkat keras
dan perangkat
lunak
untuk
mendukung
berjalannya
sistem.
2. Diperlukan
3.Terjadi
kesalahan
dalam
pengisian pulsa
elektronik.
secara
manual
sehingga terjadi
kesalahan ketika
penjual
memasukan
nomor
handphone
maupun nominal
pulsa konsumen
pulsa
elektronik
sesuai
dengan
keinginan
konsumen.
.
3.2.3
Gambaran Sistem Baru
Untuk menangani masalah di atas maka dibuatlah suatu sistem untuk
membantu penjual dalam melayani konsumen yaitu Sistem Penjualan Pulsa
Elektronik Sicho Cell. Sistem ini digunakan untuk mengisi pulsa elektronik ke
handphone
konsumen. Dalam sistem ini menggunakan
input
berupa sms (sms
berasal dari
handphone
konsumen) dan menerapkan teknologi
database.
Digunakan sebuah PC sebagai pemroses dan penyimpan data.
saldo. Untuk pulsa yang dikelola adalah nama pulsa, nominal dan harga jual pulsa
tersebut.
Agar bisa menjadi pelanggan dari sistem ini maka calon pelanggan harus
mendaftarkan nomor telepon sebagai sarana sms ke sistem dan terlebih dahulu
membayar sejumlah uang yang biasa disebut deposit (membeli pulsa dengan uang
di muka) yaitu kita menabung sejumlah uang ke perusahaan ini dan apabila
sewaktu-waktu kita ingin membeli pulsa maka kita membayar pulsa tersebut
dengan memotong sejumlah deposit kita dengan harga dari pulsa tersebut.
Dalam proses transaksi pelanggan membayar pulsa yang dia minta dengan
memotong jumlah deposit pelanggan yang disimpan di sistem dengan harga dari
pulsa yang diminta pelanggan dan sisa deposit ini untuk selanjutnya disebut
dengan saldo. Sehingga deposit ini tidak memiliki jangka waktu atau masa aktif
layaknya pulsa. Apabila deposit pelanggan habis maka pelanggan tersebut belum
bisa bertransaksi sebelum pelanggan tersebut menambah jumlah depositnya
dengan cara mendatangi sicho cell dan membayarkan sejumlah uang deposit.
Semakin banyak pelanggan yang menggunakan sistem ini dan menjualnya
kepada orang lain maka semakin banyak juga keuntungan yang bisa diraih oleh
sicho cell karena telah dibantu proses penjualan pulsa oleh para pelanggan sicho
cell tersebut.
Berikut merupakan rancangan fisik sistem yang akan dibangun.
3.2.4
Orang Yang Terlibat Dalam Sistem
1 Penjual
Penjual adalah orang yang mengelola sistem yaitu mengelola data
pelanggan, data pulsa, data transaksi dan membuat laporan transaksi.
2 Pelanggan
3.3. Fase Analisis Kebutuhan
3.3.1
Use case Diagram
Berikut ini merupakan usecase diagram dari penjual yang terdiri dari use case
konfigurasi server, usecase kelola pelanggan, usecase kelola data pulsa, tambah
saldo, batalkan transaksi, hapus semua pesan, kirim sms, buat laporan pelanggan
dan buat laporan sicho cell.
penjual
System
Kelola pelanggan
kelola data pulsa
Hapus semua pesan
kirim sms konfigurasi server
buat laporan pelanggan
buat laporan sicho cell batalkan transaksi
Tambah Saldo
berikut merupakan detail dari kelola pelanggan.
Gambar 13 use case penjual kelola data pelanggan
berikut merupakan detail kelola data pulsa.
Kelola Data Pulsa
tambah Data Pulsa
edit data pulsa
hapus data pulsa Penjual
Berikut ini merupakan usecase diagram dari pelanggan yang terdiri dari
usecase edit account, usecase lihat daftar harga pulsa, usecase cek saldo, usecase
isi pulsa, usecase komplain dan usecase lihat laporan.
Gambar 15 use case pelanggan
3.3.2
Definisi Use case
Use Case
merupakan penjelasan mengenai kegiatan-kegiatan dalam sistem
yang dilakukan oleh masing-masing pengguna(aktor).
Use case
yang ada pada
sistem pengisian pulsa sicho
cell
terdapat pada tabel di bawah ini.
Tabel 4 definisi use case
Nama Use case
Deskripsi Use case
Pelaku yang
berpartisipasi
Konfigurasi
Server
Use case
ini menggambarkan proses
setting
antara hardware dan server
SMS gateway
Penjual
Tambah
pelanggan
Use case ini menggambarkan proses
menambah pelanggan baru
Penjual
Tambah saldo
Use case ini menggambarkan proses
menambah saldo pelanggan
Edit pelanggan
Use case ini menggambarkan proses
edit data pelanggan
Penjual
Hapus pelanggan
Use case ini menggambarkan proses
hapus pelanggan dari database
Penjual
Tambah data
pulsa
Use case ini menggambarkan proses
penambahan data pulsa beserta
harga untuk tiap-tiap pulsa
Penjual
Edit data pulsa
Use case ini menggambarkan proses
merubah data pulsa maupun harga
pulsa.
Penjual
Hapus data pulsa
Use case ini menggambarkan proses
hapus data pulsa dari database.
Penjual
Hapus semua
pesan
Use case ini menggambarkan proses
hapus data pesan, baik inbox
maupun outbox
Penjual
Kirim sms
Use case ini menggambarkan proses
kirim sms dari penjual kepada
pelanggan
Penjual
Buat laporan
Pelanggan
Use case ini menggambarkan proses
cetak laporan transaksi pelanggan.
Penjual
Buat laporan
sicho cell
Use case ini menggambarkan proses
cetak laporan transaksi sicho cell.
Penjual
Edit data
pelanggan
Use case ini menggambarkan proses
merubah nomor PIN dari pelanggan
Pelanggan
Lihat daftar harga
Use case ini menggambarkan proses
melihat semua daftar harga pulsa
Pelanggan
Cek saldo
Use case ini menggambarkan proses
melihat jumlah saldo yang masih
dimiliki oleh pelanggan.
Pelanggan
Isi pulsa
Use case ini menggambarkan proses
pelanggan mengisi pulsa ke nomor
handphone yang dimaksud.
3.3.3
Narasi Use Case (Use case Narative)
Bagian ini menjelaskan mengenai langkah-langkah kegiatan dalam setiap
use case
.
Tabel 5 Narasi Use Case Mengkonfigurasi Server
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
konfigurasi Server
Jenis Use case
Business Requirements:
Use case ID:
SCO-001
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses konfigurasi server untuk
melayani transaksi pulsa.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual akan mengkonfigurasi
sistem.
Typical Course
of event:
Actor Action
System Response
Step 1
: penjual memanggil
halaman utama server
Step 3
: memanggil halaman
konfigurasi server
Step
4
:
Penjual
memilih
setingan-setingan yang sesuai
dengan hardware.
Step 5
: Penjual menekan
tombol
”START”
untuk
menjalankan server
Step 2
: Sistem menampilkan
halaman utama server.
Step 4
: Sistem menampilkan
halaman konfigurasi sistem
Step 6
: Sistem menjalankan
server
Alternate
Course:
Alt-step 4
: Penjual menekan tombol “BATAL” sehingga keluar
dari menu setting server.
Conclusion:
Sistem akan berjalan apabila pengaturan software sesuai dengan
hardware yang digunakan
Post Condition:
Penjual berhasil men-setting server
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 6 Narasi Use Case Tambah pelanggan
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Tambah Pelanggan
Jenis Use case
Business Requirements:
Use case ID:
SCO-002
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses menambah pelanggan baru.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin menambah
pelanggan baru
Typical Course
of event:
Actor Action
System Response
Step 1: penjual memanggil
menu data pelanggan
Step 3: penjual memanggil
menu tambah pelanggan
Step 5: Penjual memasukkan
data pelanggan
Step 6: Penjual menekan
tombol ”TAMBAH”
Step 2: Sistem menampilkan
menu data pelanggan
Step 4: Sistem menampilkan
menu tambah pelanggan
Step 7: Sistem menyimpan
data pelanggan ke database
Step 8: Sistem pelanggani
konfirmasi
bahwa
data
pelanggan berhasil dimasukan.
Alternate
Course:
Alt-step 6: Penjual menekan tombol “BATAL” sehingga
dilakukan pembatalan proses tambah pelanggan
Alt-step 7: Apabila data yang dimasukan tidak sesuai format
yang ditentukan maka muncul pesan gagal.
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition:
Penjual berhasil memasukan data pelanggan baru
Penjual gagal memasukan data pelanggan dan kembali ke
form
pengisian data pelanggan.
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 7 Narasi Use Case Tambah Saldo
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Tambah Saldo
Jenis Use case
Business Requirements:
Use case ID:
SCO-003
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses menambah pelanggan baru.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin menambah
pelanggan baru
Typical Course
of event:
Actor Action
System Response
Step 1: penjual memanggil
menu tambah saldo
Step 3: memilih pelanggan
yang akan ditambah saldo dan
penjual
menambah
saldo
pelanggan
Step 4: Penjual menekan
tombol ”TAMBAH”
Step 2: Sistem menampilkan
menu tambah saldo
Step 5: Sistem menyimpan
data saldo ke database
Step 6: Sistem pelanggani
konfirmasi
bahwa
saldo
pelanggan
berhasil
ditambahkan.
Alternate
Course:
Alt-step 4: Penjual menekan tombol “BATAL” sehingga
dilakukan pembatalan proses tambah saldo pelanggan
Alt-step 5: Apabila data yang dimasukan tidak sesuai format
yang ditentukan maka muncul pesan gagal.
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition:
Penjual berhasil menambahkan saldo pelanggan
Penjual gagal menambahkan saldo pelanggan dan masuk ke
halaman utama sistem.
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 8 Narasi Use Case Edit pelanggan
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Edit Pelanggan
Jenis Use case
Business Requirements:
Use case ID:
SCO-004
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses mengedit data pelanggan.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin mengedit data
pelanggan.
Typical Course
of event:
Actor Action
System Response
Step 1: penjual memanggil
menu data pelanggan
Step 3: penjual memanggil
menu edit
pelanggan
Step
5:
Penjual
memilih
pelanggan yang ingin di-edit
Step 6: Penjual memasukkan
data pelanggan ter-edit
Step 7: Penjual menekan
tombol ”EDIT”
Step 2: Sistem menampilkan
menu data pelanggan.
Step 4: Sistem menampilkan
menu edit
data pelanggan.
Step 8: Sistem menyimpan
data pelanggan ter-edit
ke
database
Step 9: Sistem pelanggani
konfirmasi
bahwa
data
pelanggan berhasil di-edit.
Alternate
Course:
Alt-step 6: Penjual menekan tombol “BATAL” sehingga
dilakukan pembatalan proses edit
data pelanggan
Alt-step 7: Apabila data yang dimasukan tidak sesuai format
yang ditentukan maka muncul pesan gagal.
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition:
Penjual berhasil mengedit data pelanggan.
Penjual gagal mengedit data pelanggan dan masuk ke
form
edit
data pelanggan.
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 9 Narasi Use Case Hapus pelanggan
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Hapus Pelanggan
Jenis Use case
Business Requirements:
Use case ID:
SCO-005
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses menghapus data pelanggan.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin menghapus data
pelanggan.
Typical Course
of event:
Actor Action
System Response
Step 1: penjual memanggil
menu data pelanggan
Step 3: Penjual memilih data
pelanggan yang akan dihapus.
Step 4: Penjual menekan
tombol ”HAPUS”
Step 6: Penjual menekan
tombol ”YES”
Step 2: Sistem menampilkan
menu data pelanggan.
Step 5: Sistem menampilkan
konfirmasi hapus pelanggan.
Step 7: Sistem menghapus
data pelanggan dari database
Step 8: Sistem pelanggani
konfirmasi
bahwa
data
pelanggan berhasil dihapus.
Alternate
Course:
Alt-step 6: Penjual menekan tombol “NO” sehingga dilakukan
pembatalan proses hapus data pelanggan
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition:
Penjual berhasil menhapus data pelanggan.
Penjual batal menghapus data pelanggan dan masuk ke
halaman utama sistem.
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 10 Narasi Use Case Tambah data pulsa
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Tambah Data Pulsa
Jenis Use case
Business Requirements:
Use case ID:
SCO-006
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses menambah data pulsa baru.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin menambah data
pulsa baru
Typical Course
of event:
Actor Action
System Response
Step 1: penjual memanggil
menu data pulsa
Step 3: penjual memanggil
menu tambah pulsa
Step 5: Penjual memasukkan
data pulsa
Step 6: Penjual menekan
tombol ”TAMBAH”
Step 2: Sistem menampilkan
menu data pulsa
Step 4: Sistem menampilkan
menu tambah pulsa baru
Step 7: Sistem menyimpan
data pulsa ke database
Step 8: Sistem pelanggani
konfirmasi bahwa data pulsa
berhasil dimasukan.
Alternate
Course:
Alt-step 6: Penjual menekan tombol “BATAL” sehingga
dilakukan pembatalan proses tambah pulsa
Alt-step 7: Apabila data yang dimasukan tidak sesuai format
yang ditentukan maka muncul pesan gagal.
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition:
Penjual berhasil memasukan data pulsa baru
Penjual gagal memasukan data pulsa dan masuk ke halaman
utama sistem.
Business Rules:
-Implementation
Constrains and
Specifications:
Tabel 11 Narasi Use Case Edit data pulsa
Author : Hendri Cahyana
Date : 11 November 2008
Version : 1.0
Use case Name:
Edit Data Pulsa
Jenis Use case
Business Requirements:
Use case ID:
SCO-007
Priority :
High
Source:
-Primary
Business Actor:
Penjual
Decription:
Use case ini menggambarkan proses meng-
edit
data pulsa.
Precondition:
-Trigger:
Use case
ini digunakan apabila penjual ingin mengedit data
pulsa.
Typical Course
of event:
Actor Action
System Response
Step 1
: penjual memanggil
menu data pulsa
Step 3
: penjual memanggil
menu
edit
pulsa
Step 5
: Penjual memilih data
pulsa yang ingin di-
edit
Step 6
: Penjual memasukkan
data pulsa ter-
edit
Step 7
: Penjual menekan
tombol ”EDIT”
Step 2
: Sistem menampilkan
menu data pulsa.
Step 4
: Sistem menampilkan
menu
edit
data pulsa.
Step 8
: Sistem menyimpan
data pulsa ter-
edit
ke database
Step
9
:
Sistem
memberi
konfirmasi bahwa data pulsa
berhasil di-
edit
.
Alternate
Course:
Alt-step 6
: Penjual menekan tombol “BATAL” sehingga
dilakukan pembatalan proses
edit
data pulsa
Alt-step 8
: Apabila data yang dimasukan tidak sesuai format
yang ditentukan maka muncul pesan gagal.
Conclusion:
Sistem hanya akan menerima inputan data yang sesuai untuk
tiap-tiap pemrosesan data.
Post Condition: