BAB IV

download BAB IV

of 20

description

sms gateway

Transcript of BAB IV

  • 21

    BAB IV

    ANALISA DAN PERANCANGAN APLIKASI

    A. Analisa Sistem Aplikasi

    a). Perumusan Masalah.

    PermasalahanUntuk melakukan pembayaran tagihan listrik pelanggan listrik

    mesti harus datang langsung ketempat tagihan listrik harus membawa

    uang tunai atau lebih karena mereka tidak mengetahui berapa tagihan

    listrik pada saat itu. Jika tagihannya lebih besar dari uang yang dibawa

    maka mau tidak mau pelanggan listrik tersebut harus membatalkan

    malakukan bayar listrik karena uang yang dibawanya tidak mencukupi

    untuk melakukan pembayaran tagihan listrik.

    Maka pelanggan mesti pulang mengambil uang kekurangannya

    dan kembali lagi ketempat tagihan listrik dan jika tempat tinggal dengan

    tempat tagihan listriknya cukup jauh, hal tersebut mengakibatkan

    pelanggan akan memakan banyak waktu dan juga tenaga.

    Pemecahan masalah Untuk mengatasi permasalahan diatas, dibutuhkan suatu aplikasi

    yang dapat di akses oleh pelanggan listrik dengan menggunakan perangkat

    yang saat ini cukup dikenal oleh masyarakat yaitu telepon selular dan

    menggunakan fasilitas yang cukup mudah dan murah yaitu SMS (Short

    Message Service).

    Setelah pengecek menyerahkan data tagihan kepada administrator

    lalu administrator memasukkan data ke database maka pelanggan dengan

    mengirimkan SMS yang berisi sandi dapat mengetahui berapa tagihan

    listrik saat ini.

    SMS yang dikirim tadi diproses oleh aplikasi jika ada kecocokan

    sandi maka data yang ada di database dikirim ke nomor SMS yang

    mengirim pesan. Dengan begitu pelanggan dapat mengetahui tagihannya

  • 22

    dimanapun ia berada selama ada fasilitas telepon seluler tanpa harus

    datang ketempat tagihan listrik.

    Dalam hal ini penulis juga membuat pengembangan lebih lanjut,

    pelanggan listrik bukan hanya dapat mengakses tagihan listrik saja tetapi

    pelanggan juga dapat memberikan pengaduan tentang gangguan-gangguan

    listrik kepada PT. PLN dengan cara mengakses melalui SMS dan nanti

    akan segera direspon oleh anggota PLN yang terdekat.

    b). Konfigurasi Sistem Berjalan

    Pada peruashaan PT.PLN, aplikasi pada computer dalam mengolah nilai

    menggunakan satu buah koputer dan menggunakan database access yang dijalankan

    seorang admin.

  • 23

    B. Analisa Kebutuhan Sistem Aplikasi

    Kebutuhan awal adalah SMS yang diterima atau format SMS yang

    diterima adalah menanyakan data pelanggan, data tagihan listrik dan pengaduan

    padam listrik yang hanya mengenal dengan format penerimaan SMS yaitu

    ReqPelID_pelanggan, ReqTghID_pelanggan dan

    ReqPdmID_pelanggan.

    Lalu semua data diproses menggunakan Program aplikasi yang

    menggunakan Visual Basic yang memungkinkan administrator memasukkan dan

    mengedit data para pelanggan listrik yang telah diterima data-dat itu mencakup

    data tagihan maupun data para pelanggan. Data-data tersebut harus disimpan

    disinalah pentingnya sebuah database karena semua data yang masuk harus

    disimpan kedalam database untuk lebih mempermudah administrator mencari data

    pelanggan yang diminta.

    Didalam peenggunaan database menggunakan program database yaitu

    Microsoft Access karena aplikasi ini memiliki beberapa kelebihan dibandingkan

    dengan aplikasi database lainya dalam hal ini kemudahan operasi dan ketersedian

    aplikasi dimasyarakat. Aplikasi access dihubungkan kedalam proggram aplikasi

    visual basic agar dapat memudahkan pengoperasian proses data, yang

    dihubungkan kedalam program menggunakan syntak ADODB.Recordset yang

    harus dimasukkan didalam program Visual Basic jadi setiap data yang diinput

    melalui program aplikasi Visual Basic akan otomatis masuk kedalam database

    access.

  • 24

    e. Kamus Data

    a. Arus Data

    Arus data yang mengalir dari Kwh Meter adalah kwh yang digunakn

    saat itu. Dan arus data yang berasal dari pelanggan adalah berupa sandi cek

    pelanggan, sandi cek tagihan dan sandi cek padam. Sedangkan arus data yang

    menuju ke pelanggan adalah data pelanggan, hasil tagihan dan status pengaduan.

    b. Data Store

    Data Store atau simpanan data yang digunakan adalah F_pelanggan,

    F_pajak_listrik, F_gardu, F_pengaduan, F_Daya, F_SMS_Masuk dan

    F_SMS_Keluar.

    c. Proses

    Proses yang ada pada diagram konteks adalah proses system pelayanan

    listrik berbasis SMS. Sedangkan pada diagram Nol terdapat proses akses

    pelanggan, akses tagihan, akses padam, proses rekam pencatatan kwh, proses

    hitung tagihan, proses administrasi pelanggan dan proses laporan teknisi.

    Pada diagram rinci yang merupakan rincian dari proses akses

    pelanggan, akses tagihan, akses pengaduan padam terdapat tiga proses yaitu

    proses terima SMS, proses Cari Data dan proses Kirim Hasil.

    d. Entitas

    Entitas yang terlibat pada diagram diatas yaitu entitas Kwh Meter, Teknisi,

    Pelanggan.

  • 25

    f. Rancangan Layar Pada Telepon Seluler

    a. Tanya data pelanggan

    Tampilan ini format pengetikan SMS jika pelanggan ingin

    mengetahui informasi data pelanggan listrik dan kirim SMS ke nomor

    SMS server.

    Gambar IV.8 Rancangan Layar Tanya Data Pelanggan

    b. Jawab tanya data pelanggan

    Tampilan ini akan muncul jika format pengetikan SMS Tanya data

    pelanggan telah benar dan berhasil dikirim lalu diterima,dibaca dan

    diproses oleh SMS server, selanjutnya hasil pencarian data pelanggan

    akan dikirimkan kembali ke nomor telepon pelanggan yang meminta.

    Gambar IV.9 Rancangan Layar Jawab Tanya Data Pelanggan

    ID Pelanggan:xxxxxxNama Pelanggan:xxxxxxxxAlamat:xxxxxxxxxxxxxxxDaya:xxxxNama Gardu:xxxx

    Pilihan Kembali

    REQPELID_PELANGGAN

    Pilihan Kembali

  • 26

    c. Tanya Tagihan Listrik

    Tampilan ini format pengetikan SMS jika pelanggan listrik ingin

    mengetahui atau mengaecek informasi data perincian pajak

    pembayaran listrik dan kirim SMS ke nomor SMS server.

    Gambar IV.10 Rancangan Tanya Tagihan Listrik

    d. Jawab Tanya Tagihan Listrik

    Tampilan ini akan muncul jika format pengetikan SMS Tanya

    pajak pembayarn listrik telah benar dan berhasil dikirim lalu diterima,

    dibaca dan diproses oleh SMS server, selanjutnya hasil pencarian data

    perincian pajak pembayaran listrik akan dikirimkan kembali ke nomor

    telepon pelanggan yang meminta.

    Gambar IV.11 Rancangan Layar Jawab Tanya Tagihan Listrik

    REQTGHID_PELANGGAN

    Pilihan Kembali

    ID_Pel: xxxxxBuln/thn:xxxxxxDaya: xxxxxJml tagihan: xxxxxx

    Pilihan Kembali

  • 27

    e. Data Pelanggan tidak ditemukan

    Tampilan ini akan muncul jika format pengetikan SMS yang

    pelanggan listrik kirim untuk mengetahui informasi data pelanggan

    salah atau ID_Pelanggan yang dimasukkan salah harus diperiksa lagi.

    Gambar IV.12 Rancangan Layar Data Pelanggan Tidak Ditemukanf. Data Pajak pembayaran listrik tidak ditemukan

    Tampilan ini akan muncul jika format pengetikan SMS yang

    pelanggan listrik kirim untuk mengetahui informasi data perincian

    pajak pembayaran listrik salah atau ID_Pelanggan yang dimasukkan

    salah harus diperiksa lagi.

    Gambar IV.13 Rancangan Layar Data Tagihan Tidak Ditemukan

    Data Pelanggan untuk ID_Pelanggan xxxxxx tidak ditemukan. Coba periksa kembali ID_Pelanggan yang anda masukkan.

    Pilihan Kembali

    Data pajak pembayaran listrik untuk ID_Pelanggan xxxxxx tidak ditemukan. Coba periksa kembali ID_Pelanggan yang anda masukkan.

    Pilihan Kembali

  • 28

    g. Tanya pengaduan padam listrik

    Tampilan ini format pengetikan SMS jika pelanggan listrik ingin

    mengetahui informasi padam listrik berasal dari mana dan kirim SMS

    ke nomor SMS server.

    Gambar IV.14 Rancangan Layar Tanya Pengaduan Padam Listrik

    h. Jawab Tanya pengaduan padam listrik

    Tampilan ini akan muncul jika format pengetikan SMS Tanya

    pengaduan padam listrik telah benar dan berhasil dikirim lalu

    diterima,dibaca dan diproses oleh SMS server, selanjutnya hasil

    pencarian data pelanggan akan dikirimkan kembali ke nomor telepon

    pelanggan yang meminta.

    Gambar IV.15 Rancangan Layar Jawab Tanya Padam Listrik

    REQPDMID_PELANGGAN

    Pilihan Kembali

    Contoh Ket:Pengaduan listrik padam telah diterimapetugas kami akan mengecek segera.

    Pilihan Kembali

  • 29

    g. Rancangan basis data.

    Pada aplikasi ini basis data diinput secara manual ada juga yang

    menggunakan basis data yang sudah ada. Adapun tabel yang dibuat adalah tabel

    F_pelanggan, F_tagihan_listrik, F_gardu, F_SMS_masuk, F_SMS_keluar,

    F_Pengaduan dan F_daya. Data yang terdapat di tabel ini di dapat dari data yang

    ada pada Administrator atau pelanggan listrik.

    a. Entity Relation Diagram (ERD)

    @id_pelanggan nama_pelangganalamat#No_teleponDaya#nama_gardu@id_keluar#no_tlp_keluar

    Waktu_kirimIsi_pesan_keluar

    @nama_garduNama_gardu_indukstatus

    #id_pelanggan#dayaBln_pembayaranSt_Meter_akhirSt_Meter_laluBiaya_keterlambatanBiaya_bebanBiaya_Block1Biaya_Block2Biaya_Block3Jumlah_pemakaianPpjTotal pembayaran

    Data_tagihan_listrik

    gardu

    Data_pelanggan

    Sms_keluar

    @id_masuk #no_tlp_masukTgl_masukJam_masukStatus_masuk

    Sms_masuk No_tlp_Pelanggan#id_pelangganIsi_pesanTnggl_pengaduan

    Pengaduan

    @DayaBiaya_beban

    Daya

    Gambar IV.16 Entity Relation Diagram

    Ada 3 macam format pengetikan, yaitu: Data Pelnggan

    REQPELID_PELANGGAN, Pajak Pambayaran Listrik

    REQTGHID_PELANGGAN, dan Padam Listrik

    REQPDMID_PELANGGAN.

  • 30

    b. Tabel

    1) Tabel Data Pelanggan

    Nama Tabel : F_Data_Pelanggan

    Primary Key : ID_Pelanggan

    Foreign Key : No_Telepon dan Nama_Gardu

    Tabel IV.1 Tabel Data Pelanggan

    Field Tipe Data Ukuran Field Keterangan

    ID_Pelanggan Text 20 Data id_pelanggan

    Nama_Pelanggan Text 50 Data nama_pelanggan

    Alamat_pelanggan Text 200 Data

    alamat_pelanggan

    Nomor_Telepon Text 25 Data no_telepon

    Daya Number 10 Besaran daya yang

    digunakan

    Nama_Gardu Text 10 Data nama gardu

    2) Tabel Data Pajak Listrik

    Nama Tabel : F_Data_Pajak_Listrik

    Primary Key : Kode

    Foreign Key : ID_Pelanggan

    Tabel IV.2 Tabel Data Tagihan Listrik

    Field Tipe Data Ukuran Field Keterangan

    ID_Pelanggan Text 20 Penggabungan

    ID_pelanggan dan

    Bulan pembayaran

    Daya Number 5 Data ID_Pelanggan

    Bulan_Pembayaran Text 20 bulan pembayaran

    pajak listrk

    St_Meter_Akhir Text 50 Data kwh yang

  • 31

    digunakan pada saat

    ini

    St_Meter_Lalu Text 50 Data kwh yang

    digunakan pada bulan

    lalu

    Biaya_Keterlambatan Text 50 Biaya keterlambatan

    pembayaran pajak

    listrik Rp3000

    perbulan

    Biaya_beban Text 50 biaya beban pajak

    listrik

    Biaya_Block1 Text 50 Biaya pemakaian kwh

    awal dikurang

    20*Rp275

    Biaya_Block2 Text 50 Biaya pemakaian kwh

    tahap kedua dikurang

    40*Rp445

    Biaya_Block3 Text 50 Biaya pemakaian kwh

    tahap ketiga sisa

    dikali Rp495

    Jumlah_Pemakaian Text 50 Jumlah pemakaian

    pajak listrik

    PPJ Text 50 Pajak penerangan

    jalan (3%) dari

    jumlah pemakaian

    Total_Pembayaran Text 50 Total pajak listrik

    yang harus dibayar

    oleh pelanggan

  • 32

    3) Tabel Data Gardu

    Nama Tabel : F_Gardu

    Primary Key : Nama_Gardu

    Tabel IV.3 Tabel Data Gardu

    Field Tipe Data Ukuran Field Keterangan

    Nama_Gardu Text 5 Data nama gardu

    Nama_gardu_Induk Text 5 Data nama gardu

    induk

    Status text 5 Status gardu

    4) Tabel SMS Masuk

    Nama Tabel : F_SMS_Masuk

    Primary Key : ID_Masuk (auto Increment)

    Foreign Key : No_Telepon_Masuk

    Tabel IV.4 Tabel SMS Masuk

    Field Tipe Data Ukuran Field Keterangan

    ID_Masuk Auto number 11 Nomor ID SMS

    masuk

    No_Telepon_Masuk Text 25 Data nomor telepon

    pengirim

    Tanggal_masuk Text 25 Tanggal pada saat

    SMS diterima

    Jam_Masuk Text 25 Jam pada saat SMS

    diterima

    Isi_Pesan_Masuk Text 160 Isi pesan dari SMS

    yang masuk

    Status_Masuk Text 10 Status proses dari

    SMS yang diterima

  • 33

    5) Tabel SMS Keluar

    Nama Tabel : F_SMS_Keluar

    Primary Key : ID_Keluar (auto increment)

    Foreign Key : No_Telepon_Keluar

    Tabel IV.5 Tabel SMS Keluar

    Field Tipe Data Ukuran Field Keterangan

    ID_Keluar Auto number 11 Nomor ID SMS

    keluar

    No_Telepon_Keluar Text 25 Nomor telepon

    tujuan dari SMS

    yang dikirim

    Waktu_Kirim Text 25 waktu pada saat

    SMS dikirim

    Isi_Pesan_Keluar Text 160 Isi pesan dari SMS

    yang keluar

    6) Tabel Pengaduan

    Nama Tabel : F_Pengaduan

    Foreign Key : ID_Pelanggan

    Tabel IV.6 Tabel Pengaduan

    Field Tipe Data Ukuran Field Keterangan

    No_Tlpn_Pelanggan Text 20 Data pengaduan

    pelanggan

    ID_pelanggan Text 10 Data Id_pelanggan

    Isi_Pesan Text 250 Keterangan

    ID_pelanggan

    Tanggal_pengaduan Date/time Waktu pengaduan

  • 34

    7) Tabel Daya

    Nama Tabel : F_Daya

    Primary Key : Daya

    Tabel IV.7 Tabel Daya

    Field Tipe Data Ukuran Field Keterangan

    Daya Text 5 Jenis daya yang

    digunakan

    Biaya_Beban Text 50 Biaya beban per

    daya

    h. Pseudocode

    Pseudocode digunakan untuk menggambarkan algoritma proses yang ada dari

    mulai user mengirimkan pesan sampai user menerima pesan.

    a. Koneksi Port

    Pseudocode ini digunakan untuk memeriksa port yang bisa digunakan

    oleh terminal. Sehingga ketika telepon selular di hubungkan dengan komputer

    bisa di terima. Berikut pseudocode Koneksi port;

    StartPilih COMIf pilih koneksi = true than

    Koneksi komputer terhubungan ke HPElse

    Koneksi gagalEnd If

  • 35

    b. Penerimaan SMS melalui Autoresponding

    Ini adalah pseudocode penerimaan SMS. Algoritma ini antara lain

    menjelaskan proses pesan di terima. Jika pesan itu sesuai format maka pesan

    akan di simpan di F_SMS_masuk. Setelah itu pesan akan dipilah apakah

    menanyakan data pelanggan, data tagihan atau menanyakan padam listrik.

    Jika menanyakan data Pelanggan, dan sesuai dengan format maka akan di cari

    datanya di F_DATA_PELANGGAN Dan kemudian di kirim. Jika

    menanyakan rincian Tagihan maka akan dicari datanya di

    F_DATA_PAJAK_TAGIHAN dan juga jika menanyakan Padam listrik maka

    akan dicari datanya di F_GARDU. Jika isi pesan tidak sesuai format maka

    dianggap tidak valid dan akan dikirim pesan kesalahan. Semua pesan itu akan

    dibalas secara otomatis. Berikut pseudocode Penerimaan SMS :

    Periksa sms yang masukIf ada sms yang baru = true then Ambil informasi sms If NoTlpMasuk = NoTlp_ID_Pelanggan then

    If kode1 = req pel thenCari from datapelanggan where Id_pelangganIf cari = true then

    Balas (Id_pelanggan,nama_pelanggan,alamat_pelanggan,nomor_telp,daya,nama_gardu)

    Else IfId_pelanggan yang anda masukkan tidak ada

    End IfEnd If

    End IfElse if kode1=reg pdm = true than

    If balas thenPengaduan listrik padam telah diterima, petugas kami akan mengecek segera

    ElseKata kunci yang anda pakai tidak ada

    End IfElse if kode1=req tgh

    Cari from datatagihan where Id_pelangganIf cari = true then

    Balas (Id_pelanggan,bulan,daya,total tagihan)Else If

    Id_pelanggan yang anda masukkan tidak adaEnd if

  • 36

    c. penyimpanan SMS masuk

    Tulis ke tabel F_SMS_MasukHapus pesan di inboxPeriksa isi SMS di tabel F_SMS_MasukIf kode1=req pel then

    Ambil id_ pelangganIf ID_pelanggan = true then

    Query id pelanggan ke tabel F_data_pelangganTulis pesan balasan ke tabel F_SMS_KeluarPanggil fungsi kirim (notlp,pesanBalasan)

    ElseId pelanggan salahPanggil fungsi kirim (notlp,PesanBalasan)

    End ifElse if kode1= req tgh

    Ambil id_pelanggan If ID_pelanggan = true then

    Query id_pelanggan ke tabel F_data_pajak_listrikTulis pesan balasan ke tabel F_SMS_KeluarPanggil fungsi kirim (notlp,pesanBalasan)

    ElseId pelanggan salahPanggil fungsi kirim (notlp,PesanBalasan)

    End ifElse if kode1=req pdm

    Ambil id_pelngganIf ID_pelanggan =true then

    Query id_pelanggan ke tabel F_data_pelangganDan F_GarduTulis pesan balasan ke tabel F_SMS_keluarPanggil fungsi kirim (notlp,pesanBalasan)

    ElseId_pelanggan salahPanggil fungsi kirim (notlp,PesanBalasan)

    ElseTulis pesan =data tidak adaPanggil fungsi kirim (notlp,PesanBalasan)

    End ifEnd if

  • 37

    d. Pengiriman SMS manual

    Proses ini akan mengecek kondisi dari pesan jika ada pesan yang akan

    di kirim maka akan diperiksa apakah kondisi dari pesan sesuai dengan

    kondisi pesan yang harus dikirim.

    Kemudian di ambil data data yang dibutuhkan untuk mengirim pesan.

    Antara lain no_tlpn_pengirim, dan isi pesan. Semua data diambil dari

    F_SMS_masuk. Setelah data didapat maka pesan akan dikirim menggunakan

    pengiriman pesan secara manual. Berikut pseudocode pengiriman SMS :

    if ada pesanmasuk = true thenif status kirim true then

    deklarasi pengiriman pesannotlp notlpn userpesanbalasan isi pesan balasankirim pesan

    end ifend if

    e. Input data pelanggan

    Psedocode ini digunakan pada saat program dijalankan.

    StartIf pilih data pelanggan = true then

    Tampil Form pelanggan

    If pilih tambah data = true than

    Input data pelanggan

    If pilih simpan = true than

    Simpan data pelanggan

    Else If batal = true than

    Kosong text box

    Else If keluar = true than

    Keluar form

    End If

    End If

    End If

  • 38

    f. Edit data pelanggan

    Psedocode ini digunakan pada saat program dijalankan.

    Start

    If pilih data pelanggan = true then

    Tampil form pelanggan

    If pilih edit data = true then

    Masukkan ID_pelanggan then

    Cari

    Tampil form data pelanggan then

    Edit data

    If pilih simpan = true then

    Simpan data pelanggan yang telah diedit

    Else if batal = true then

    Kembali

    Else If keluar = true then

    Keluar form

    End If

    End If

    End if

    g. input data rincian pembayaran listrik

    pseudocode ini digunakan jika akan memasukkan rincian-rincian data

    pembayaran listrik pelanggan.

    Form data = trueIf pilih data tagihan = true then

    Masukkan ID_pelanggan,Status meter akhir,status meterawal = true thenTekan HITUNGElse

    Id_pelanggan salahIf tombol HITUNG = true then

    Tampil rincian tagihanElse

    id_pelnggan belum benarIf tombol SIMPAN = true than

    Simpan kedatabaseElse If tombol BATAL = true than

    Kembali Form masukkan id_pelangganEnd if

  • 39

    If tombol tutup jendela klik = true thenKembali ke menu utama

    Else If tombol EXIT klik = true thenKeluar program

    End ifEnd if

    End if

    A. Keamanan Data

    Untuk menjaga kerahasiaan data pelanggan, rincian tagihan dan gardu, setiap

    pelanggan tidak bisa mengetahui data pelanggan, tagihan atau gardu pelanggan lain.

    Karena untuk setiap pelanggan harus mempunyai ID pelanggan sendiri. Sehingga ketika

    pelanggan menanyakan data pelanggan, rincian tagihan atau gardu, sistem akan

    mencocokkan ID pelanggan, pelanggan yang bersangkutan. Karena sebelumnya setiap

    pelanggan harus mempunyai ID pelanggan yang ada pada database PLN.

    Untuk keamanan basis data pada aplikasi tidak semua orang dapat mengakses basis

    data yang dimiliki oleh aplikasi. Basis data diberi password dan pada aplikasi jika ingin

    meng-update basis data harus login terlebih dahulu sehingga hanya orang yang diberi

    wewenanglah yang bisa melakukannya.

    B. Arsitektur Aplikasi

    Program Aplikasi ini secara garis besar membutuhkan beberapa peralatan untuk

    kelengkapan aplikasi. Peralatan tersebut antara lain satu perangkat komputer, satu buah

    pesawat telepon seluler dimana penulis menggunakan tipe NOKIA 3330, kabel data

    FBUS/MBUS untuk nokia seri 3 yang akan dihubungkan dengan PC melalui Serial port.

    Ada beberapa tahap dari saat pelanggan dalam hal ini client mengirim pesan

    sampai ia menerima balasan.

    1. SMS dikirim oleh pelanggan ke nomor SMS server

    2. SMS Server menerima pesan SMS yang masuk dan kemudian pesan itu

    diambil oleh program utama SMS Server. Karena pelanggan mengirimkan

    ID_pelanggan, maka program akan menerjemahkan terlebih dahulu.

    3. Program utama SMS Server melakukan pencarian ke Database berdasarkan

    isi dari pesan SMS dari client

    4. Program utama SMS Server mengirim hasil database ke nomor client

  • 40

    Program yang digunakan untuk pembuatan aplikasi ini menggunakan Visual Basic

    6.0 dan Microsoft Access Arsitektur tersebut digambarkan sebagai berikut.

    Gambar III.17 Arsitektur Aplikasi