Upload
votuong
View
224
Download
0
Embed Size (px)
Citation preview
16
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini akan dijelaskan tentang analisa dan perancangan sistem dari
aplikasi ongkos kirim dan tracking ekpedisi. Analisa dan perancangan ini
bertujuan untuk mengimplementasikan api dari ekspedisi yang ada diindonesia.
Proses analisa dan perancangan sangat perlu dilakukan agar menghasilkan sesuatu
aplikasi yang sesuai dengan yang diharapkan.
3.1 Analisis Sistem
Analisis sistem adalah penguraian dari suatu sistem informasi yang utuh
ke dalam bagian–bagian komponennya dengan maksud untuk mengidentifikasikan
dan mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan
kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan. Analis sistem
secara sistematis menilai bagaimana fungsi bisnis dengan cara mengamati proses
input dan pengolahan data serta proses output informasi untuk membantu
peningkatan proses pengorganisiran.
3.1.1 Analisis dan Gambaran Umum
Pada aplikasi yang dibuat, API memanggil fungsi lewat Hyper Text
Transfer Protocol (HTTP) dan mendapatkan respon berupa JavaScript Object
Notation (JSON). Respon yang didapat dalam pemanggilan fungsi dapat
bermacam-macam. Respon diatur oleh server sesuai dengan inputan yang dibuat
oleh user. Untuk mengakses API kita harus mempunyai akun untuk mendapakan
API key yang akan digunakan untuk untuk mengaksesnya.
3.1.2 Analisa Produk
Apliksi yang akan dibuat nantinya berupa aplikasi berbasis website.
Sistem akan memberikan informasi tentang ongkos kirim barang dan tracking
barang untuk seluruh wilayah Indonesia. Aplikasi yang dibuat ini nantinya akan
memberikan segala informasi berkaitan dengan ongkos kirim dan tracking dari
ekspedisi keseluruh Indonesia. Untuk layanan cek tarif paket sendiri user nantinya
17
akan diminta memasukkan alamat pengiriman kemudian alamat kota yang dituju
dan berat dari paket yang akan dikirim. Kemudian sistem akan menampilkan
daftar ekspedisi dan harga pengiriman yang diperoleh dari API ekspedisi itu
sendiri.
3.1.3 Analisa Data
Pada pengerjaan tugas akhir ini kumpulan data yang digunakan yaitu
dengan menggunakan teknik grabbing data dari situs ekspedisi. teknik grabbing
adalah teknik mengambil teks atau konten pada situs lain dengan cURL kemudian
diletakkan pada website yang lain. Konsep grabbing berbeda dari web service,
di mana informasi atau data yang diambil tidak disajikan dalam bentuk
tertentu seperti XML ataupun JSON. Data yang diambil berada pada halaman
website atau dengan kata lain terselip pada tag HTML. Pada teknik grabbing,
selain membaca file HTML dengan cURL diperlukan pula sebuah metode
untuk mengambil data atau informasi yang terselip pada file HTML, yaitu
dengan functionexplode(). Konsep dari functionexplode() adalah memotong suatu
data dalam hal ini tag HTML, berdasar keyword tertentu dan menghasilkan data
array. Konsep dari teknik grabbing sendiri dalam penerapannya menggunakan
fungsi untuk membaca halaman website dan fungsi untuk memotong tag HTML,
sehingga diperoleh konten atau teks yang dibutuhkan.
3.1.4 Analisa Kebutuhan
Situs yang dibuat ini memiliki fungsi yang sama dengan situs-situs
ekspedisi lainnya yang bertujuan untuk melihat ongkos kirim dari sebuah
pengiriman paket, namun yang membedakan yaitu situs ini menggunakan API
(Aplication Programming Interface) memudahkan berkomunikasi dengan sistem
operasi atau program pengendalian lainnya.
3.1.4.1 Kebutuhan Fungsional
Kebutuhan fungsional merupakan kebutuhan yang harus ada pada sistem.
Bagaimana sistem bereaksi pada input tertentu dan bagaimana perilaku sistem
pada situasi tertentu, yakni:
18
1. Pencarian Data.
2. Proses grabbing data.
3. Pengolahan Data.
3.1.4.2 Kebutuhan Non Fungsional
Merupakan kebutuhan yang tidak harus ada pada sistem. Kebutuhan ini
menawarkan sistem seperti batasan waktu, batasan pengembangan dan sebagainya
yakni:
1. Bahasa Pemrograman yang dipakai dalam pembuatan aplikasi
2. Lama pengerjaan sistem
3. Budgeting pembuatan sistem
3.1.5 Lingkungan Pengembangan
Lingkungan pengembangan menjelaskan bagaimana program
dikembangkan meliputi hardware dan software. Lingkungan pengembangan dapat
menjadi lingkungan dasar bagaimana dan dimana sistem akan berjalan.
3.1.5.1 Hardware
Perangkat kerans yang digunakan untuk mengerjakan aplikasi ini sebagai berikut:
1. intel
2. RAM 2 GB
3. Hard Disk 500 GB
4. Perangkat masukkan keyboard dan mouse
3.1.5.2 Software
Adapun perangkat lunak yang digunakan dalam melakukan implementasi adalah
sebagai berikut:
1. Sistem operasi Windows 8 64Bit
2. Notepad ++
3. Adobe Dreamweaver
4. XAMPP
5. Browser
19
3.2 Perancangan Sistem
Sistem ini nantinya akan membantu user dalam pencarian ongkos kirim paket
ekspedisi ke seluruh Indonesia.
Gambar 3.1 Alur Kerja Sistem
Dari gambar 1 dijelaskan proses yang dilakukan oleh API untuk mendapatkan
hasil yang direquest oleh user ada beberapa tahapan, yakni:
1. User melakukan proses input kota asal dan tujuan.
2. API memproses kota asal dan tujuan dengan mengecek inputan dan
menyesuaikan inputan yang tersimpan di database, yakni dengan
menyamakan inputan user dengan inputan yang diterima di website ekspedisi.
3. API memproses inputan yang disesuaikan dengan melakukan request pada
semua website ekspedisi yang disediakan dan mendapatkan hasil request.
4. API mengiriman hasil request pada user.
3.2.1 Flowchart Sistem
Flowchart adalah penggambaran secara grafik dari langkah-langkah dan
urut-urutan prosedur dari suatu program. Flowchart menolong analis dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih
kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam
pengoperasian. Berikut merupakan flowchart situs ongkos kirim dan tracking
paket ekspedisi.
API
USER SERVER
20
3.2.1.1 Flowchart Gambaran Umum Sistem
Flowchart Gambaran Umum Sistem menjelaskan gambaran umum
jalannya sistem. Apa saja proses yang ada pada sistem.
Gambar 3.1 Flowchart gambaran umum
User dapat memilih menu kemudian user memilih cek ongkir attau cek tracking
paket data jika user memilih cek ongkir user harus menginputkan tujuan
pengiriman, alamat pengirim dan berat paket dan sistem kemudian akan
menampilkan detail ongkos kirim. Jika user memilih menu check tracking paket
user menginputkan nomor resi pengiriman kemudian sistem akan menampilkan
detail tracking paket .
3.2.1.2 Flowchart Tracking Paket
Flowchart ini menjelaskan proses sistem dimana user dapat melihat
tracking ekspedisi. User dapat memilih jenis tracking yang ingin dilacak. Sistem
akan melakukan pelacakan dan menampilkan detail tracking yang dipilih.
21
Gambar 3.2 Flowchart Tracking Paket
3.2.1.3 Flowchart Penggunaan API
Penggunaan API sistem melakukan proses ketika user menginputkan
ongkos kirim. Sebelum melakukan pengecekan, dilakukan autentifikasi user jika
valid maka user bisa melihat ongkos kirim/ resi yang diproses menggunakan API .
Jika belum terdaftar maka user diharuskan mendaftar terlebih dahulu.
22
Gambar 3.3 Flowchart Cek API
3.2.1.3 Flowchart Cek Ongkos Kirim
Flowchart ini untuk proses pengecekan ongkos kirim. Dimana user dapat
melakukan pengecekan ongkos kirim dengan menginputkan ongkos kirim/resi
kemudian sistem akan melakukan pengecekan jika valid maka sistem akan
menampilkan detail ongkos kirim.
23
Gambar 3.4 Flowchart Ongkos Kirim
3.2.2 Data Flow Diagram
Data flow diagam merupakan alat perancangan sistem yang berorientasi
pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran
analisa maupun rancangan sistem yang mudah dikomunikasikan oleh professional
sistem kepada pemakai maupun pembuat progam. Data flow diagram
menggambarkan bagaimana data diproses oleh sistem dari input dan input
sehingga semua proses aliran data dapat dilihat dengan jelas beserta setiap proses
yang dilakukan oleh sistem serta entitas dan sumber data yang digunakan.
3.2.2.1 Diagram Konteks
Diagram konteks merupakan diagram yang terdiri dari suatu proses dan
menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level
tertinggi dari DFD yang menggambarkan seluru input ke sistem atau output dari
sistem.
24
Pada gambar Gambar 3.5 dijelaskan bahwa pada sistem API ongkos kirim
terdapat 4 entitas ekternal yang berhubungan dengan sistem yakni pengunjung,
member, website kurir dan admin. Pengunjung dapat merequest informasi ongkos
kirim dan lacak paket pada sistem dengan mengirim data kota, resi serta data
pengunjung pada sistem. Sistem akan memproses data serta mengembalikan hasil
berupa informasi pada pengunjung. Untuk member, member dapat merekuest data
ongkir dengan mengirim data kota serta apikey pada sistem, sistem memproses
data yang diberikan oleh member kemudian megembalikan data pada member
berupa informasi tentang data yang diberikan oleh member. Untuk admin, dapat
melihat laporan tentang kurir, serta memanajemen user dan kurir. Website kurir
bekerja dengan memberikan informasi tentang ongkir dan resi ketika sistem
merequest informasi tersebut pada website dengan mengirimkan data resi untuk di
cek.
Gambar 3.5 Context Diagram Sistem API Ongkir
3.2.2.2 DFD level 0
Diagram level 0 merupakan hasil dekomposisi dari diagram konteks.
Diagram ini menjelaskan proses yang terdapat dalam sebuah sistem serta data
store yang digunakan oleh sistem dalam beroperasi. Ada beberapa proses yang
dapat ditunjukan pada DFD level 0 yang merupakan proses utama pada sistem.
Pada gambar 3.6 dijelaskan terdapat beberapa proses yakni cek ongkir dan cek
resi yang dapat diakses oleh member dan pengunjung serta dapat mengakses data
25
store db ongkir. Proses pendaftaran dilakukan oleh pengunjung dan memasukkan
data pada db user. API request dilakukan oleh member untuk mendapat informasi
ongkir yang berasal dari db kurir serta konfigurasi data kurir pada db status kurir.
Update profil dan upgrade user dilakukan oleh member untuk merubah data
member. User management, Courrier management dilakukan oleh admin untuk
mengubah informasi user serta kurir yang disimpan pada db user data db status
kurir. Proses courier management juga berhubungan langsng dengan website kurir
guna mendapatkan data terbaru dari data kurir serta ongkos kirim kurir sehingga
memastikan data pada db kurir up to date.
26
27
3.2.2.3 DFD level 1 Cek Ongkir
Proses Cek ongkos kirim dilakukan oleh pengunjung melalui website
secara langsung. Seperti yang dijelaskan pada gambar 3.7, pengunjung melakukan
proses pemilihan kota kemudian akan dikonversi oleh sistem menjadi id kota
melalui proses cek id kota yang diambil melalui data kota dan kemudian proses
request ongkos kirim dilakukan dengan mengambil data pada data ongkir kurir
kemudian data akan di proses dan diberikan pada pengunjung berupa informasi
ongkir yang diminta.
Gambar 3.7 DFD level 1 Cek Ongkir
3.2.2.4 DFD level 1 Cek Resi
Cek resi dilakukan melalui website oleh pengunjung. Pada gambar 3.8
dijelaskan bahwa untuk melakukan cek resi, pengunjung memasukkan data kurir
serta no resi pada sistem, data kurir berubah jenis kurir akan diproses pada sistem
melalui proses cek kurir kemudian proses lacak resi akan dilakukan dengan
meminta informasi pada website kurir yang bersangkutan. Informasi resi akan
diproses dulu kemudian dikirim pada pengunjung.
28
Gambar 3.8 DFD level 1 Cek Ongkir
3.2.2.5 DFD level 1 Cek Pendaftaran
Cek pendaftaran digunakan untuk pengunjung yang menginginkan fitur
request ongkir menggunakan apikey. Proses pendaftaran, terjadi proses cek
username dahulu dengan membandingkan username yang di input oleh
pengunjung dengan dt user yang terdapat pada database, setelah itu proses
pendaftaran dilakukan dengan memasukkan data user baru pada database user
seperti yang terjadi pada gambar 3.9
Gambar 3.9 DFD level 1 Pendaftaran
3.2.2.6 DFD level 1 API Request
API request merupakan proses permintaan data ongkir oleh member
dengan menggunakan apikey yang didapatkan setelah mendaftar. Api request
dilakukan dengan mengeririm data kurir serta apikey yang dimiliki oleh member
29
kepada server. Data yang dikirim oleh user dicek dahulu oleh sistem untuk
memverifikasi data apakah data tersebut valid atau tidak dengan data yang
tersimpan di server. Proses request dilakukan setelah pengecekan data. Proses
request merupakan pengambilan data yang tersimpan pada server dan kemudian
hasil diteruskan pada member berupa data json yang berisi data informasi request
yang diminta oleh member. (gambar 3.11)
Gambar 3.10 DFD level 1 API Request
3.2.2.7 DFD level 1 Upgrade User
Upgrade user dilakukan oleh member jika member menginginkan akses
ongkos kirim kurir lebih banyak dengan melakukan request pada panel user.
Setelah melakukan request upgrade user, proses akan dilanjutkan ke admin setelah
itu admin akan melakukan proses perubahan data user sesuai yang direquest oleh
member. Setelah proses perubahan data selesai, maka notifikasi akan dikirimkan
pada user seperti yang terjadi pada gambar 3.11 .
30
Gambar 3.11 DFD level 1 Upgrade User
3.2.2.8 DFD level 1 User Management
Proses user management merupakan fitur yang dimiliki oleh admin guna
mengubah data user meliputi profil user serta level user. Pada gambar 3.12
dijelaskan user management berisi proses CRUD user, namun sebelum melakukan
proses tersebut, admin diharuskan untuk melakukan proses login terlebig dahulu
untuk memastikan bahwa user yang akan proses CRUD adalah user yang
memiliki hak akses yakni seorang admin.
Gambar 3.12 DFD level 1 User Management
31
3.2.2.9 DFD level 1 Courrier Management
Proses Courrier Management hanya dilakukan oleh admin. Proses ini
berisi proses konfigurasi kurir serta proses cek kurir untuk mengecek apakah data
yang dilimiki oleh server sesuai dengan data yang tersedia pada website
kurir.Proses ini terdiri dari proses cek kurir dan edit data kurir. (gambar 3.13)
Gambar 3.13 DFD level 1 Courrier Management
3.2.3 Desain Database
Database sistem merupakan media penyimpanan data yang digunakan
untuk menyimpan semua data dari suatu aplikasi. merupakan model untuk
menjelaskan hubungan data dalam suatu database data. Desain databse
memodelkan struktur data dan hubungan antar data. Desain database untuk tugas
akhir ini akan digambarkan seperti gambar 3.14.
32
33
Gambar 3.14 merupakan perencanan desain database sistem. Terdiri dari entitas-
entitas diataranya :
- Entitas Sicepat_origin yakni table menyimpan data id kota yang diambil dari
situs ekspedisi dan memiliki relasi one to many dengan sicepat_price.
- Entitas Sicepat_destination yakni table menyimpan data id kota yang diambil
dari situs ekspedisi dan memiliki relasi one to many dengan sicepat_price.
- Entitas sicepat_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi sicepat.
- Entitas rpx_origin merupakan table yang berfungsi untuk menyimpan id kota
yang diambil dari situs ekspedisi rpx dan memiliki relasi one to many dengan
rpx_price.
- Entitas rpx_destination merupakan table yang berfungsi untuk menyimpan id
kota yang diambil dari situs ekspedisi rpx dan memiliki relasi one to many
dengan rpx_price.
- Entitas rpx_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi rpx.
- Entitas ESL_city merupakan table yang berfungsi untuk menyimpan id kota
yang diambil dari situs ekspedisi ESL dan memiliki relasi one to many dengan
esl_price.
- Entitas esl_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi esl.
- Entitas Kodepos table yang digunakan untuk menyimpan data kodepos seluruh
indonesia dan memiliki relasi one to many dengan pos_price.
- Entitas pos_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi pos.
- Entitas kota merupakan table yang digunakan untuk menyimpan data kota
seluruh Indonesia dan memiliki relasi one to many dengan jne_price dan
tiki_price.
- Entitas Jne_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi JNE.
- Entitas tiki_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi tiki.
34
- Entitas Wahana_origin merupakan table yang digunakan untuk menyimpan
data id kota yang diambil dari situs ekspedisi Wahana.
- Entitas wahana_destination merupakan table yang digunakan untuk
menyimpan data nama kota yang diambil dari situs ekspedisi Wahana.
- wahana_price merupakan table yang digunakan untuk menyimpan daftar
harga-harga ongkos kirim paket dari situs ekspedisi wahana.
- Entitas region merupakan table yang digunakan untuk menyimpan data nama
kota seluruh Indonesia.
- Entitas pcp_city merupakan table yang digunakan untuk menyimpan data id
kota yang diambil dari situs ekspedisi Wahana.
- Entitas rpx_destination merupakan table yang digunakan untuk menyimpan
data nama kota yang diambil dari situs ekspedisi Wahana.
3.2.4 Desain Interface (Antar Muka Sistem)
Pada bagian ini akan dibahas mengenai perancangan antar muka sistem.
Antar muka yang akan dibangun sesederhana mungkin sehingga memudahkan
dalam penggambaran sitem ekspedisi ini.
3.2.4.1 Halaman Utama
Halaman awal merupakan halaman utama situs ekspedisi disini kita bisa
memilih menu. Terdapat 2 menu utama yakni Menu Cek Ongkos Kirim dan Menu
Cek Tracking Paket.
Gambar 3.15 Halaman Awal
Daftar sekarang ?
Cek ongkos Kirim Cek Tracking Paket
35
3.2.4.2 Halaman Menu Cek Ongkos Kirim
Menu Cek Ongkos kirim yaitu menu dimana kita bisa melihat ongkos
kirim paket yang akan kita kirim. User menginputkan kota asal user kemudian
menginputkan kota tujuan pengiriman paket dan berat paket. Kemudian klik cek.
Ketika sistem selesai melakukan pemrosesan API ekspedisi detail ekspedisi
beserta ongkos kirim akan ditampilkan dibawah tombol cek.
Gambar 3.16 Halaman Awal
Kota
pengirim
Kota
Tujuan
Berat
paket
Cek