SISTEM INFORMASI KERETA A P I
LAPORAN AKHIR
PRAKTIKUM PEMROGRAMAN WEB
LABORATORIUM PEMROGRAMAN LANJUT
SISTEM INFORMASI KERETA API
Disusun Oleh:
Nama/NIM : Lalu Kismara Hadi
/ 14523144
Nama/NIM : Shofwan Hanif
/ 14523150
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS ISLAM INDONESIA
2016
ii
LAPORAN AKHIR
PRAKTIKUM PEMROGRAMAN WEB
LABORATORIUM PEMROGRAMAN LANJUT
SISTEM INFORMASI KERETA API
Asisten Pembimbing : M. Kausar Ramadhan
Disusun Oleh:
Nama/NIM : Lalu Kismara Hadi
/ 14523144
Nama/NIM : Shofwan Hanif
/ 14523150
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS ISLAM INDONESIA
2016
iii
iv
HALAMAN PERSEMBAHAN
Kami persembahkan Laporan Akhir Project Praktikum Pemrograman Web
ini kepada kedua orang tua kami yang selalu mendukung kami dan senantiasa
menyertakan kami dalam setiap doanya. Untuk rekan-rekan kami yang telah
memberi kami semangat untuk berjuang dan bertahan dalam setiap keadaan.
Untuk dosen pembimbing kami yang telah memberikan banyak ilmu bermanfaat
bagi kami yang InsyaAllah dapat kami pergunakan dengan baik suatu saat nanti,
serta kakak asisten yang telah membantu dan bersedia meluangkan waktunya
untuk berbagi ilmu dengan kami.
Terima kasih untuk semuanya. Semoga Allah SWT selalu melindungi dan
memberikan rahmat serta hidayahnya kepada semua pihak yang telah mendukung
dalam proses penyelesaian tugas Project Sistem Informasi Kereta Api ini.
v
MOTTO
“Sukses hanya bagi orang yang tetap semangat meski halangan dan rintangan di
depan mata.”
“Maka sesungguhnya bersama kesulitan itu ada kemudahan. Sesungguhnya
bersama kesuliatan itu ada kemudahan.”
(Q.S. Al-Insyirah: 5-6)
“Bermimpi tanpa mau melakukan sesuatu untuk membuat mimpi menjadi
kenyataan menggiring kita kepada kehidupan yang tidak pernah menghasilkan
buah.”
vi
KATA PENGANTAR
Assalamualaikum Wr.Wb.
Puji syukur kami panjatkan atas kehadirat Allah SWT yang telah
memberikan rahmat dan hidayah-Nya sehingga penyusunan laporan ini dapat
terselesaikan dengan baik. Sholawat serta salam senantiasa kita limpahkan kepada
junjungan kita Nabi Muhammad SAW beserta keluarganya, sahabatnya, serta
pengikutnya hingga akhir zaman.
Tujuan penulisan laporan Project Sistem Informasi Kereta Api ini adalah
sebagai syarat untuk menyelesaikan mata kuliah Praktikum Pemrograman Web.
Kami menemukan hambatan dan kesukaran dalam penyusunan laporan
project ini, maka dari itu kami menyampaikan rasa terima kasih yang sebesarbesarnya dan penghargaan yang setinggi-tingginya kepada semua pihak yang
terkait dalam penyelesaian tugas laporan ini sesuai dengan rentang waktu yang
telah diberikan. Terima kasih dan penghargaan itu diantaranya kami berikan
kepada :
1. Allah SWT yang telah memberi kami kekuatan, petunjuk, karunia, nikmat
serta hidayahnya.
2. Kedua orang tua kami yang selalu memberikan dukungan kepada kami
baik berupa moral ataupun material.
3. Dosen yang telah membimbing kami hingga kami dapat menyelesaikan
project ini.
4. Kakak-kakak asisten Laboratorium Informatika Terpadu yang telah
membimbing selama praktikum dan asistensi untuk menyelesaikan project
dan laporan ini.
5. Serta teman-teman yang tidak dapat kami sebutkan satu per satu yang
telah membagi ilmu, waktu, dan idenya kepada kami.
vii
Dan semoga Allah SWT meridhoi penyusunan laporan ini, sehingga bisa
membawa khazanah yang baru dan bermanfaat bagi kita semua.
Wassalamualaikum Wr.Wb.
Yogyakarta, 12 Juni 2016
penyusun
viii
TAKARIR
database
basis data
input
masukan
output
keluaran
programming project
proyek pemrograman
user
pengguna
screenshot
hasil tampilan
source code
kode program
flowchart
diagram alur
website
halaman situs
data flow diagram
diagram aliran data
entity relationship diagram
diagram relasi entitas
length
lebar
ix
DAFTAR ISI
HALAMAN JUDUL............................................................................................... ii
HALAMAN PENGESAHAN ................................................................................ iii
HALAMAN PERSEMBAHAN ............................................................................ iv
HALAMAN MOTTO ............................................................................................. v
KATA PENGANTAR ........................................................................................... vi
TAKARIR ........................................................................................................ vviiiii
DAFTAR ISI .......................................................................................................... ix
DAFTAR TABEL .................................................................................................. xi
DAFTAR GAMBAR ............................................................................................ xii
BAB I PENDAHULUAN ....................................................................................... 1
1.1.
Latar Belakang Masalah ........................................................................... 1
1.2.
Rumusan Masalah .................................................................................... 1
1.2.
Tujuan ....................................................................................................... 2
1.2.
Batasan Masalah ....................................................................................... 2
1.3.
Sistematika Penulisan ............................................................................... 2
BAB II METODOLOGI ......................................................................................... 4
2.1.
Analisis Kebutuhan .................................................................................. 4
2.2.
Struktur Tabel ........................................................................................... 5
BAB III PERANCANGAN .................................................................................. 19
3.1.
Entity Relathionship Diagram ............................................................... 19
3.2.
Data Flow Diagram ............................................................................... 20
3.3.
Desain Mockup ....................................................................................... 29
BAB IV HASIL DAN PEMBAHASAN .............................................................. 36
4.1.
Penjelasan dan Screenshot Program ...................................................... 36
4.2.
Kekurangan dan Kelebihan Program ..................................................... 48
4.3.
Source Code ........................................................................................... 49
BAB V PENUTUP .............................................................................................. 71
5.1.
Kesimpulan ............................................................................................. 71
5.2.
Saran ....................................................................................................... 71
x
DAFTAR PUSTAKA ........................................................................................... 72
LAMPIRAN .......................................................................................................... 73
xi
DAFTAR TABEL
Tabel 2.1 Struktur Tabel Admin............................................................................. 5
Tabel 2.2 Struktur Tabel Artikel ........................................................................... 6
Tabel 2.3 Struktur Tabel Kontak_Us ..................................................................... 8
Tabel 2.4 Struktur Tabel Kereta ............................................................................ 9
Tabel 2.5 Struktur Tabel Tujuan ......................................................................... 11
Tabel 2.6 Struktur Tabel Asal ............................................................................. 12
Tabel 2.7 Struktur Gerbong ................................................................................. 13
Tabel 2.8 Struktur Tabel Kursi ............................................................................ 14
Tabel 2.9 Struktur Tabel Pelanggan .................................................................... 16
xii
DAFTAR GAMBAR
Gambar 2.1 Tabel Admin ..................................................................................... 6
Gambar 2.2 Tabel Artikel ..................................................................................... 7
Gambar 2.3 Tabel Kontak_Us .............................................................................. 8
Gambar 2.4 Tabel Kereta .................................................................................... 11
Gambar 2.5 Tabel Tujuan ................................................................................... 12
Gambar 2.6 Tabel Asal ....................................................................................... 13
Gambar 2.7 Tabel Gerbong ................................................................................ 14
Gambar 2.8 Tabel Kursi ..................................................................................... 16
Gambar 2.9 Tabel Pelanggan .............................................................................. 18
Gambar 3.1 Entitty Relationship Diagram (ERD) ............................................. 19
Gambar 3.2 DFD Level 0 .................................................................................... 20
Gambar 3.3 DFD Level 1 .................................................................................... 21
Gambar 3.4 DFD Level 2 Manajemen Artikel ................................................... 22
Gambar 3.5 DFD Level 2 Manajemen Kereta .................................................... 23
Gambar 3.6 DFD Level 2 Manajemen Gerbong ................................................. 24
Gambar 3.7 DFD Level 2 Manajemen Kursi ...................................................... 25
Gambar 3.8 DFD Level 2 Manajemen Asal ....................................................... 26
Gambar 3.9 DFD Level 2 Manajemen Tujuan ................................................... 27
Gambar 3.10 DFD Level 2 Manajemen Kontak ................................................. 28
Gambar 3.11 Halaman Login............................................................................... 29
Gambar 3.12 Halaman Beranda Admin .............................................................. 29
Gambar 3.13 Halaman Sunting Artikel ............................................................... 30
Gambar 3.14 Halaman Ubah Data ....................................................................... 31
Gambar 3.15 Halaman Lihat Data ....................................................................... 31
Gambar 3.16 Halaman Lihat Artikel .................................................................. 32
Gambar 3.17 Halaman Pengaturan ...................................................................... 32
Gambar 3.18 Halaman Pemberitahuan Perubahan Password .............................. 33
Gambar 3.19 Halaman Utama Pengunjung ......................................................... 33
xiii
Gambar 3.20 Halaman Cari Jadwal ..................................................................... 34
Gambar 3.21 Halaman Hasil Pencarian ............................................................... 34
Gambar 3.22 Halaman Pesan............................................................................... 35
Gambar 3.23 Halaman Review Tiket .................................................................. 35
Gambar 4.1 Tampilan Home ............................................................................... 36
Gambar 4.2 Tampilan Cari Jadwal ...................................................................... 37
Gambar 4.3 Tampilan Hasil Pencarian Jadwal .................................................... 37
Gambar 4.4 Tampilan Halaman Detail ................................................................ 38
Gambar 4.5 Tampilan Cek Kursi ......................................................................... 39
Gambar 4.6 Tampilan Form Isi Data Pemesan ................................................... 39
Gambar 4.7 Tampilan Halaman Pilih Kursi ........................................................ 40
Gambar 4.8 Tampilan Review Tiket ................................................................... 41
Gambar 4.9 Tampilan Cetak / Unduh Tiket ........................................................ 42
Gambar 4.10 Tampilan Login Admin.................................................................. 42
Gambar 4.11 Tampilan Beranda Admin.............................................................. 43
Gambar 4.12 Tampilan Halaman Sunting Artikel ............................................... 43
Gambar 4.13 Tampilan Halaman Ubah Data ...................................................... 44
Gambar 4.14 Tampilan Halaman Lihat Data....................................................... 45
Gambar 4.15 Tampilan Halaman Daftar Artikel ................................................. 45
Gambar 4.16 Tampilan Halaman Pengaturan...................................................... 46
Gambar 4.17 Tampilan Pengaturan Password ..................................................... 47
Gambar 4.18 Tampilan Pengaturan Kontak ........................................................ 47
BAB I
PENDAHULUAN
1.1. Latar Belakang Masalah
Kereta Api adalah salah satu sarana transportasi yang cukup digemari di
kalangan masyarakat pada umumnya terutama, masyarakat yang tinggal di
daerah Pulau Jawa. Transportasi ini merupakan transportasi yang mampu
menampung penumpang dalam jumlah banyak. Selain itu, kereta api
beroperasi selama 24 jam penuh yang bisa digunakan oleh masyarakat untuk
berpergian.
Banyaknya minat masyarakat terhadap transportasi kereta api, membuat
para pekerja di bidang perkeretaapian perlu meningkatkan kinerjanya agar
dapat memberikan pelayanan terbaik kepada pengguna kereta api. Seiring
perkembangan teknologi yang semakin canggih, pekerja perkereta apian
dituntut untuk bisa bekerja secara efektif dan efisien.
Untuk menghadapi kondisi tersebut, perlu dibangun sebuah sistem yang
dapat dimanfaatkan dalam menunjang kegiatan operasional kereta api. Oleh
karena itu, sistem informasi kereta api adalah sarana yang akan
memudahkan, baik dari segi pekerja sebagai pengelola kereta api, maupun
dari segi masyarakat sebagai pengguna transportasi kereta api.
1.2. Rumusan Masalah
a. Bagaimana pekerja di bidang perkereta apian mengelola informasi yang
akan disajikan kepada penumpang secara cepat dan tepat?
b. Bagaimana pengguna transportasi kereta api bisa melihat informasi
jadwal keberangkatan kereta api secara mudah?
2
1.3. Tujuan
a. Membangun sistem informasi kereta api yang akan memudahkan pekerja
di
bidang perkeretaapian dalam mengelola informasi.
b. Dengan sistem informasi kereta api ini, pengguna transportasi akan
diberikan form pencarian jadwal kereta api yang memudahkan pengguna
mencari jadwal sesuai kehendaknya.
1.4. Batasan Masalah
a. Satu kereta hanya memiliki satu jenis kelas.
b. Data yang akan dimasukkan ke dalam database hanya dilakukan dengan
satu user.
c. Satu gerbong terdiri dari 10 kursi.
d. Sistem informasi ini hanya melayani pemesanan tiket kereta dengan tujuan
beberapa kota saja.
1.5. Sistematika Penulisan
Sistematika penulisan dalam penulisan laporan ini adalah sebagai berikut :
BAB I PENDAHULUAN
Membahas tentang latar belakang masalah, rumusan masalah, tujuan, batasan
masalah, serta sistematika penulisan dalam pembuatan laporan Project
Sistem Informasi Kereta Api ini.
BAB II METODOLOGI
Memuat uraian mengenai analisis kebutuhan dalam pelaksanaan Project
Sistem Informasi Kereta Api serta penjelasan mengenai struktur tabel yang
digunakan dalam Project Sistem Informasi Kereta Api.
3
BAB III PERANCANGAN
Memuat tentang perancangan – perancangan dasar dari Project Sistem
Informasi Kereta Api yang meliputi Entity Relationship Diagram (ERD) ,
Data Flow Diagram (DFD), dan Desain Mockup.
BAB IV HASIL DAN PEMBAHASAN
Memuat pembahasan serta hasil mengenai screenshot dan penjelasan tiap
halaman website, kelebihan dan kekurangan program, serta source code
program dari Project Sistem Informasi Kereta Api.
BAB V KESIMPULAN DAN SARAN
Memuat tentang kesimpulan yang dihasilkan dari keseluruhan program baik
pada tahap analisis, perancangan, serta penggunaan program. Bab ini juga
membahas tentang saran-saran yang berdasar pada keterbatasan –
keterbatasan yang dialami selama pembuatan Project Sistem Informasi
Kereta Api ini.
BAB II
METODOLOGI
2.1. Analisis Kebutuhan
Dalam analisis kebutuhan ini terdiri dari beberapa analisis, yaitu
analisis kebutuhan antarmuka, analisis perangkat lunak dan analisis
perangkat keras.
2.1.1. Analisis Kebutuhan Antarmuka
Dalam proses pembuatan project dan laporan ini di perlukan
antarmuka sebagai penghubung antara user dengan hardware. Maka
dari itu kami menggunakan antarmuka sistem operasi Windows 10
dan Ubuntu 16.04 untuk mempermudah serta memperlancar proses
pembuatan project dan laporan .
2.1.2. Analisis Kebutuhan Perangkat Lunak
Perangkat keras computer tidak akan berarti tanpa adanya
perangkat lunak , begitu pula sebaliknya. Perangkat lunak dan
perangkat keras saling membutuhkan dan saling mendukung satu
sama lain.
Perangkat
lunak
memberikan
instruksi-instruksi
kepada
perangkat keras untuk melakukan suatu tugas tertentu. Dalam
pembuatan laporan ini, kami menggunakan beberapa perangkat
lunak yaitu :
1. Pembuatan program menggunakan Sublime Text 3.
2. Penggunaan aplikasi XAMPP yang didalamnya Apache sebagai
Web Server dan MySQL yang digunakan sebagai database.
3. Penulisan laporan menggunakan Microsoft Office Word 2013
4. Perancangan Entity Relationship Diagram (ERD) dan Data Flow
Diagram (DFD) menggunakan yEd Graph Editor.
5
5. Perancangan desain Mockup dengan menggunakan aplikasi
Balsamiq 3.
6. Pengambilan Screenshot program menggunakan Shutter.
2.1.3. Analisis Kebutuhan Perangkat Keras
Untuk mendukung kinerja dari perangkat lunak maka, kami
menggunakan beberapa perangkat keras. Perangkat keras yang kami
gunakan adalah :
1. Laptop
2. Printer
3. Mouse
4. Keyboard
2.2. Struktur Tabel
2.2.1. Tabel Admin
Tabel admin adalah tabel yang digunakan sebagai tempat
penyimpanan data dari akun admin di dalam database.
Tabel 2.1 Struktur Tabel Admin
ATRIBUT DESKRIPSI
Id
username
password
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Tidak
Nomor id
int ,
dari admin
2 digit
Username
dari admin
Password
dari admin
varchar,
12
karakter
varchar,
13
karakter
6
Struktur tabel admin terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
2 digit. Digunakan untuk menyimpan id dari admin.
2.
Kolom username dengan tipe data varchar dengan length
sebanyak
12 karakter. Digunakan untuk menyimpan username dari admin.
3.
Kolom password dengan tipe data varchar dengan length
sebanyak
12 karakter. Digunakan untuk menyimpan password dari admin.
Kemudian di bawah ini adalah screenshot dari tabel admin yang
dibuat di dalam phpmyadmin.
Gambar 2.1 Tabel Admin
2.2.2. Tabel Artikel
Tabel artikel adalah tabel yang digunakan sebagai tempat
penyimpanan data dari artikel seperti judul artikel dan isi artikel
di dalam database.
Tabel 2.2 Struktur Tabel Artikel
ATRIBUT
Id
Judul
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Nomor id
int ,
dari admin
11 digit
Judul dari
Text
7
artikel
Isi dari
Isi
artikel
Text
Tidak
Tidak
Date
Tidak
Tidak
Tanggal
Tanggal
pembuatan
artikel
Struktur tabel artikel terdiri dari 4 kolom, yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan length
11 digit. Digunakan untuk menyimpan id dari admin.
2. Kolom judul dengan tipe data text dan digunakan untuk
menyimpan judul dari artikel.
3. Kolom isi dengan tipe data text dan digunakan untuk menyimpan
isi dari artikel.
4. Kolom tanggal dengan tipe data date digunakan untuk menyimpan
waktu tanggal pembuatan dari artikel.
Kemudian di bawah ini adalah screenshot dari tabel artikel yang
dibuat di dalam phpmyadmin.
Gambar 2.2 Tabel Artikel
8
2.2.3. Tabel Kontak_Us
Tabel kontak_us adalah tabel yang digunakan sebagai tempat
penyimpanan data kontak yang bisa dihubungi dari website sistem
informasi kereta api di dalam database.
Tabel 2.3 Struktur Tabel Kontak_Us
ATRIBUT DESKRIPSI
Nomor
No_telp
telepon yang
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Varchar,
14
bisa
karakter
dihubungi
Email yang
Varchar,
bisa
400
dihubungi
karakter
email
Struktur tabel kontak_us terdiri dari 2 kolom, yaitu :
1. Kolom no_telp sebagai primary key dengan tipe data varchar
dan
length
14
karakter.
Digunakan
sebagai
tempat
untuk
penyimpanan data nomor telepon yang bisa dihubungi.
2. Kolom email dengan tipe data varchar dan length 400 karakter
yang digunakan sebagai tempat untuk penyimpanan data dari
email yang bisa dihubungi.
Kemudian di bawah ini adalah screenshot dari tabel kontak_us yang
dibuat di dalam phpmyadmin.
9
Gambar 2.3 Tabel Kontak_Us
2.2.4. Tabel Kereta
Tabel kereta adalah tabel yang digunakan sebagai tempat
penyimpanan data dari kereta seperti nama kereta, kelas, tanggal
keberangkatan, jam keberangkatan, jam tiba, tarif kereta, dan status
keberangkatan dari kereta di dalam database.
Tabel 2.4 Struktur Tabel Kereta
ATRIBUT
Id
Nama_kereta
Kelas
DESKRIPSI
TIPE
DATA
Nomor id dari
int ,
kereta
11 digit
Nama dari
kereta
Kelas dari
kereta
PRIMA
RY
KEY
FOREIGN
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
varchar,
400
karakter
varchar,
50
karakter
Tanggal
Tanggal
keberangkatan
date
dari kereta
Jam_berangkat
Jam_tiba
Jam
Varchar,
keberangkatan
5
kereta
karakter
Jam tiba
Varchar,
kerata
5
10
karakter
Tarif_dewasa
Tarif kereta
Decimal,
untuk dewasa
22,2
Tarif kereta
Tarif_anak
untuk anakanak
Status
Decimal,
22,2
Status
Varchar,
keberangkatan
200
kereta
karakter
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Struktur tabel kereta terdiri dari 9 kolom, yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan length 11
digit. Digunakan untuk menyimpan id dari kereta.
2. Kolom nama_kereta dengan tipe data varchar dan length 400
karakter.
Digunakan untuk menyimpan nama dari kereta.
3. Kolom kelas dengan tipe data varchar dan length 50 karakter.
Digunakan untuk menyimpan jenis – jenis kelas yang dimiliki oleh
kereta.
4. Kolom tanggal dengan tipe data date digunakan untuk menyimpan
tanggal keberangkatan dari kereta.
5. Kolom jam_berangkat dengan tipe data varchar dan length 5 karakter.
Digunakan untuk menyimpan waktu jam keberangkatan dari kereta.
6. Kolom jam_tiba dengan tipe data varchar dan length 5 karakter.
Digunakan untuk menyimpan waktu jam tiba dari kereta.
7. Kolom tarif_dewasa dengan tipe data decimal dan length 22,2.
Digunakan untuk menyimpan tarif kereta khusus penumpang dewasa.
8. Kolom tarif_anak dengan tipe data decimal dan length 22,2.
Digunakan untuk menyimpan tarif kereta khusus penumpang anak
anak.
9. Kolom status dengan tipe data varchar dan length 200 karakter.
11
Digunakan untuk menyimpan status keberangkatan dari kereta apakah
sudah berangkat atau belum.
Kemudian di bawah ini adalah screenshot dari tabel kereta yang
dibuat di dalam phpmyadmin.
Gambar 2.4 Tabel Kereta
2.2.5. Tabel Tujuan
Tabel tujuan adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti nama tujuan di dalam database.
Tabel 2.5 Struktur Tabel Tujuan
ATRIBUT
Id
Nama_tujuan
Id_kereta
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Ya
Nomor id
int ,
dari tujuan
11 digit
Nama dari
tujuan kereta
text
Id dari tabel
int,
kereta
11 digit
12
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari tujuan.
2. Kolom nama_tujuan dengan tipe data text yang digunakan untuk
menyimpan nama tujuan kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel tujuan yang
dibuat di dalam phpmyadmin.
Gambar 2.5 Tabel Tujuan
2.2.6 Tabel Asal
Tabel asal adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti nama asal di dalam database.
Tabel 2.6 Struktur Tabel Asal
ATRIBUT
Id
Nama_asal
Id_kereta
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Ya
Nomor id
int ,
dari asal
11 digit
Nama dari
asal kereta
text
Id dari tabel
int,
kereta
11 digit
13
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari asal.
2. Kolom nama_asal dengan tipe data text yang digunakan untuk
menyimpan nama asal kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel tujuan yang
dibuat di dalam phpmyadmin.
Gambar 2.6 Tabel Asal
2.2.7. Tabel Gerbong
Tabel gerbong adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti posisi gerbong dari kereta di dalam
database.
Tabel 2.7 Struktur Tabel Gerbong
ATRIBUT
DESKRIPSI
Nomor id
Id
dari tabel
gerbong
Posisi_gerbong
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
int ,
11 digit
Posisi dari
Varchar,
gerbong
2
14
karakter
Id_kereta
Id dari tabel
int,
kereta
11 digit
Tidak
Ya
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari tabel gerbong.
2. Kolom posisi_gerbong dengan tipe data varchar dan length
sebanyak 2 karakter. Digunakan untuk menyimpan data posisi
gerbong dari kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel gerbong yang
dibuat di dalam phpmyadmin.
Gambar 2.7 Tabel Gerbong
2.2.8. Tabel Kursi
Tabel kursi adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti posisi kursi dari kereta di dalam database.
Tabel 2.8 Struktur Tabel Kursi
ATRIBUT
DESKRIPSI
Id
Nomor id
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
int ,
Ya
Tidak
15
dari tabel
255 digit
kursi
Posisi_kursi
Status
kd_booking
id_gerbong
id_pelanggan
Posisi dari
kursi
Status dari
kursi
Kode
booking
Varchar,
4
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Ya
Tidak
Ya
karakter
Varchar,
8
karakter
Varchar,
10
karakter
Id dari tabel
Int ,
gerbong
11 digit
Id dari tabel
Int,
pelanggan
11 digit
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
255 digit. Digunakan untuk menyimpan id dari tabel kursi.
2. Kolom posisi_kursi dengan tipe data varchar dan length
sebanyak 4 karakter. Digunakan untuk menyimpan data posisi
kursi dari kereta.
3. Kolom status dengan tipe data varchar dan length 8 karakter.
Digunakan untuk menyimpan data status dari kursi apakah masih
tersedia atau tidak.
4. Kolom kd_booking dengan tipe data varchar dan length 10
karakter. Digunakan untuk menyimpan data kode booking di
dalam database.
5. Kolom id_gerbong sebagai foreign key dengan tipe data integer
dan length 11 digit. Digunakan untuk menyimpan id dari tabel
gerbong.
16
6. Kolom id_pelanggan sebagai foreign key dengan tipe data
integer dan length 11 digit. Digunakan untuk menyimpan id dari
tabel pelanggan.
Kemudian di bawah ini adalah screenshot dari tabel kursi yang
dibuat di dalam phpmyadmin.
Gambar 2.8 Tabel Kursi
2.2.9. Tabel Pelanggan
Tabel pelanggan adalah tabel yang digunakan sebagai tempat
penyimpanan data pelanggan seperti nama pelanggan, nomor KTP
pelanggan, nomor telepon pelanggan, email, total pembayaran dan
tanggal pemesanan kereta.
Tabel 2.9 Struktur Tabel Pelanggan
ATRIBUT
DESKRIPSI
Nomor id
Id_pelanggan
dari tabel
pelanggan
No_ktp
TIPE
PRIMAR
FOREIGN
DATA
Y KEY
KEY
Ya
Tidak
Tidak
Tidak
int ,
11 digit
Nomor KTP
Varchar,
dari
25
17
pelanggan
Nama_pelanggan
No_telp
email
Total
Pembayaran
Tgl_pemesanan
Nama dari
pelanggan
karakter
Varchar,
100
Varchar,
Telepon
20
pelanggan
karakter
pelanggan
Total
pembayaran
pelanggan
Tanggal
pemesanan
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
karakter
Nomor
Email dari
Tidak
Varchar,
90
karakter
Decimal,
22,2
Date
Struktur tabel pelanggan terdiri dari 7 kolom, yaitu :
1. Kolom id_pelanggan sebagai primary key dengan tipe data integer dan
length 11 digit. Digunakan untuk menyimpan id dari tabel pelanggan.
2. Kolom no_ktp dengan tipe data varchar dan length 25 karakter
digunakan
untuk menyimpan data dari nomor KTP pelanggan.
3. Kolom nama_pelanggan dengan tipe data varchar dan length 100
karakter
digunakan untuk menyimpan nama pelanggan yang melakukan
pemesanan tiket kereta api.
4. Kolom no_telp dengan tipe data varchar dan length 20 karakter
digunakan
untuk menyimpan data nomor telepon dari pelanggan.
5. Kolom email dengan tipe data varchar dan length 90 karakter digunakan
untuk menyimpan data email dari pelanggan.
18
6. Kolom total_pembayaran dengan tipe data decimal dan length 22,2
digunakan untuk menyimpan data total pembayaran yang harus
dibayarkan oleh pelanggan.
7. Kolom tgl_pemesanan dengan tipe data date digunakan untuk
menyimpan data tanggal pemesanan yang dilakukan oleh pelanggan.
Kemudian di bawah ini adalah screenshot dari tabel pelanggan yang dibuat
di dalam phpmyadmin.
Gambar 2.9 Tabel Pelanggan
BAB III
PERANCANGAN
3.1. Entity Relathionship Diagram
Gambar 3.1 Entity Relationship Diagram (ERD)
20
3.2. Data Flow Diagram
3.2.1 DFD Level 0
Gambar 3.2 DFD Level 0.
21
3.2.2
DFD Level 1
Gambar 3.3 DFD Level 1
22
3.2.3
DFD Level 2 Manajemen Artikel
Gambar 3.4 DFD Level 2 Manajemen Artikel
23
3.2.4 DFD Level 2 Manajemen Kereta
Gambar 3.5 DFD Level 2 Manajemen Kereta.
24
3.2.5 DFD Level 2 Manajemen Gerbong
Gambar 3.6 DFD Level 2 Manajemen Gerbong.
25
3.2.6 DFD Level 2 Manajemen Kursi
Gambar 3.7 DFD Level 2 Manajemen Kursi.
26
3.2.7 DFD Level 2 Manajemen Asal
Gambar 3.8 DFD Level 2 Manajemen Asal.
27
3.2.8 DFD Level 2 Manajemen Tujuan
Gambar 3.9 DFD Level 2 Manajemen Tujuan.
28
3.2.9 DFD Level 2 Manajemen Kontak
Gambar 3.10 DFD Level 2 Manajemen Kontak.
29
3.3. Desain Mockup
3.3.1 Halaman Login.
Gambar 3.11 Halaman Login.
3.3.2 Halaman beranda Admin.
Gambar 3.12 Halaman beranda Admin.
30
3.3.3 Halaman Sunting Artikel.
Gambar 3.13 Halaman Sunting Artikel.
31
3.3.4 Halaman Ubah Data.
Gambar 3.14 Halaman Ubah Data.
3.3.5 Halaman Lihat Data.
Gambar 3.15 Halaman Lihat Data.
32
3.3.6 Halaman Lihat Artikel.
Gambar 3.16 Halaman Lihat Artikel.
3.3.7 Halaman Pengaturan.
Gambar 3.17 Halaman Pengaturan
33
3.3.8 Pemberitahuan perubahan password.
Gambar 3.18 Pemberitahuan perubahan password.
3.3.9 Halaman Utama Pegunjung.
Gambar 3.19 Halaman Utama Pengunjung.
34
3.3.10 Halaman Cari Jadwal.
Gambar 3.20 Halaman Cari Jadwal.
3.3.11 Halaman Hasil Pencarian.
Gambar 3.21 Halaman Hasil Pencarian.
35
3.3.12 Halaman Pesan.
Gambar 3.22 Halaman Pesan.
3.3.13 Halaman Review Tiket.
Gambar 3.23 Halaman Review Tiket.
BAB IV
HASIL DAN PEMBAHASAN
4.1. Penjelasan dan Screenshot Program
4.1.1 Frontend
a. Halaman home
Gambar 4.1 Tampilan home
Pada halaman home memuat isi artikel dan menu – menu
yang bisa digunakan seperti menu home , menu cari jadwal kereta
api, dan menu login admin.
37
b. Halaman menu cari jadwal kereta api
Gambar 4.2 Tampilan cari jadwal
Pada tampilan menu cari jadwal kereta api ini, tampilan yang
digunakan adalah tampilan secara pop up. Pada menu cari jadwal ini
digunakan untuk mencari jadwal kereta api berdasarkan tanggal , asal, dan
tujuan kereta.
c. Halaman hasil pencarian jadwal.
Gambar 4.3 Tampilan hasil pencarian jadwal.
38
Di halaman ini sistem menampilkan hasil pencarian jadwal yang
dilakukan oleh pelanggan sesuai kriteria yang dimasukkan. Keterangan
jadwal yang ditampilkan pada halaman ini hanya beberapa saja. Untuk
melihat keterangan jadwal kereta lebih lengkap, pelanggan diharuskan
menggunakan aksi detail.
d. Halaman Detail.
Gambar 4.4 Tampilan halaman detail.
Pada halaman detail, pengguna disuguhkan keterangan yang
lengkap dari jadwal kereta berserta tarif tiket untuk kalangan dewasa
dan kalangan anak dibawah kurang dari atau sama dengan tiga tahun.
Halaman ini juga menyediakan pengecekan kursi agar pelanggan
sebelum memesan bisa terlebih dahulu mengecek kursi yang masih
tersedia dengan cara mengarahkan cursor ke tulisan Cek Kursi.
39
Gambar 4.5 Tampilan cek kursi.
Selain itu, terdapat tombol PESAN untuk memulai langkah-langkah
pemesanan tiket.
e. Halaman Isi Data Pemesan.
Gambar 4.6 Tampilan form isi data pemesan.
40
Halaman ini muncul setelah pelanggan mengklik tombol pesan
pada halaman sebelumnya. Pada halaman ini, pelanggan atau pengguna
diharuskan memasukkan data diri yang digunakan sebagai identitas
pemilik tiket nantinya.
Di halaman ini juga terdapat menu jumlah penumpang yang terbagi
menjadi dua yaitu, dewasa dan anak. Jumlah penumpang ini digunakan
untuk membatasi jumlah kursi yang bisa di booking dan menghitung
total tarif tiket keseluruhannya.
f. Halaman Pilih Kursi.
Gambar 4.7 Tampilan halaman pilih kursi.
Halaman ini menampilkan kursi-kursi yang tersedia dari tiap
gerbong yang ada pada kereta. Kursi yang tersedia, bisa di booking oleh
pengguna dengan mengklik tombol booking sampai dengan jumlah
penumpang yang dibutuhkan.
Jika pengguna merasa ingin membatalkan pemilihan kursi dan
ingin memliki kursi yang berbeda dari sebelumnya, pengguna harus
41
mengklik tombol batal. Sedangkan kursi dengan status booked,
pengguna tidak bisa membooking kursi tersebut karena telah dibooking
oleh pengguna yang lain. Tombol lanjutkan digunakan untuk
mengarahkan pengguna ke halaman selanjutnya yaitu halaman review.
g. Halaman Review dan Cetak Tiket.
Gambar 4.8 Tampilan review tiket.
Pada halaman ini, sistem menampilkan seluruh keterangan lengkap
berupa nama hingga kode booking yang digunakan sebagai identitas
kepemilikian kursi yang telah dibooking. Sebagai alat bukti, tiket perlu
dicetak atau diunduh oleh pengguna dengan mengklik tombol cetak.
42
Gambar 4.9 Tampilan cetak/unduh tiket.
Agar tiket dapat diunduh, pengguna harus menyimpannya sebagai file
pdf. File pdf yang telah terunduh digunakan sebagai tanda bukti atas
kepemilikan tiket yang sah.
4.1.2 Backend
a. Halaman Login Admin.
Gambar 4.10 Tampilan login admin.
43
Menu login ini dapat ditemukan pada halaman utama website.
Menu login digunakan oleh Admin untuk masuk kedalam sistem
website.
b. Halaman Beranda Admin.
Gambar 4.11 Tampilan beranda admin.
Setalah admin melakukan login, admin akan diarahkan ke halaman
beranda yang berisi petunjuk penggunaan dari masing-masing navigasi
atau menu yang ada pada halaman khusus untuk admin ini.
c. Halaman Sunting Artikel.
44
Gambar 4.12 Tampilan halaman sunting artikel.
Pada halaman ini, admin dapat menambahkan artikel baru untuk
ditampilkan di halaman utama website.
d. Halaman Ubah Data.
Gambar 4.13 Tampilan halaman ubah data.
Halaman ubah data berfungsi untuk menambahkan jadwal kereta
beserta tarif untuk kalangan dewasa dan anak-anak. Jadwal yang
45
dimasukkan inilah yang akan tampil apabila pelanggan atau pengguna
website melakukan pencarian jadwal.
e. Halaman Lihat Data.
Gambar 4.14 Tampilan halaman lihat data.
Di halaman ini ditampilkan seluruh jadwal kereta yang telah
ditambahkan oleh admin. Ada beberapa aksi yang dapat dilakukan oleh
admin pada halaman ini seperti mengubah status kereta menjadi
berangkat dengan mengklik status kereta yang ada pada kolom status.
Dan menghapus jadwal kereta dengan mengklik aksi hapus.
46
f. Halaman Daftar Artikel.
Gambar 4.15 Tampilan halaman daftar artikel.
Sedangkan halaman daftar artikel berfungsi untuk menampilkan
seluruh judul artikel yang telah ditambahkan sebelumnya oleh admin.
Pada halaman ini terdapat tiga aksi yaitu edit, lihat artikel, hapus. Aksi
edit berfungsi untuk mengubah atau memperbaharui artikel yang ada
sebelumnya. Aksi lihat artikel berfungsi untuk melihat isi artikel secara
keseluruhan di halaman utama website. Dan aksi hapus berfungsi untuk
menghapus artikel yang ada dari sistem.
47
g. Halaman Pengaturan.
Gambar 4.16 Tampilan halaman pengaturan.
Halaman pengaturan merupakan halaman yang menyediakan
fasilitas pengubahan kata sandi dan kontak admin. Terdapat dua tombol
yang dapat digunakan yakni ubah sandi dan ubah kontak.
48
Gambar 4.17 Tampilan pengaturan password.
Untuk mengubah sandi, admin harus memasukkan kata sandi yang
lama dan diikuti dengan memasukkan kata sandi yang baru, kemudian
memasukkan kata sandi yang baru lagi untuk memverifikasi. Dengan
mengklik tombol simpan, kata sandi akan disimpan ke sistem. Tombol
pilihan pengaturan berfungsi untuk menampilkan kembali tombol ubah
sandi dan ubah kontak.
Gambar 4.18 Tampilan pengaturan kontak.
49
Untuk menu kontak, admin hanya perlu memasukkan nomer telpon
dan email atau memasukkan salah satu diantaranya bila ingin mengubah
nomer telpon atau email saja.
4.2. Kelebihan dan Kekurangan Program
4.2.1. Kelebihan
:
1. Bisa mencatat jadwal kereta api.
2. Bisa
menyimpan
artikel
yang
di
buat
oleh
admin
dan
menampilkannya pada halaman utama Transys.
3. Pelanggan dapat memesan tiket di website Transys.
4. Tiket dapat diunduh sebagai tanda bukti telah memesan tiket.
4.2.2. Kekurangan
:
1. Admin tidak bisa mengganti username yang digunakan untuk login
ke dalam website Transys.
2. Admin tidak bisa menambahkan gambar ke dalam artikel, hanya
berupa teks saja.
3. Admin tidak bisa melihat tarif dewasa dan tarif untuk anak pada
halaman lihat data yang telah dimasukkan sebelumnya pada halaman
ubah data kecuali, melalui database.
4. Pelanggan tidak bisa mendaftar ke Transys, hanya bisa mencari
jadwal dan memesan tiket.
5. Pelanggan yang memesan tiket untuk lebih dari 1 orang, data
pelanggan yang dimasukkan hanya berupa data diri pelanggan yang
memesan saja, tidak dengan data diri pelanggan yang dipesankan.
Oleh karena itu, pelanggan yang memesankan tadi merupakan
sebagai penanggung jawab tiket yang dibeli.
6. Dikarenakan kode booking menggunakan php random, terkadang
pelanggan mendapatkan kode booking yang sama dengan pelanggan
lainnya. Oleh Karena itu, pelanggan diharuskan mengisi ulang
kembali data diri sebelum melanjutkan ke pilih kursi.
50
4.3. Source Code
File index.php
Home Transys
Home
Cari Jadwal Kereta
Api
Login Admin
51
Cari Jadwal
Tanggal
(tanggal-bulan-tahun)<
br>
Copyright © 2016 by 14523144 dan 14523150
Transys : Sistem Informasi
Kereta Api
echo "$i";
}
echo "-";
echo "";
for($i=2016;$i
Asal
Yogyakarta - Stasiun Tugu
Bandung - Stasiun Hall
Semarang - Stasiun Semarang
Tawang
Malang - Stasiun Malang
Kotabaru
Surabaya - Stasiun Semut
Tujuan
Yogyakarta - Stasiun Tugu
Bandung - Stasiun Hall
Semarang - Stasiun Semarang
Tawang
Malang - Stasiun Malang
Kotabaru
Surabaya - Stasiun Semut
54
Cari
close
Login to TranSys
Login
PRAKTIKUM PEMROGRAMAN WEB
LABORATORIUM PEMROGRAMAN LANJUT
SISTEM INFORMASI KERETA API
Disusun Oleh:
Nama/NIM : Lalu Kismara Hadi
/ 14523144
Nama/NIM : Shofwan Hanif
/ 14523150
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS ISLAM INDONESIA
2016
ii
LAPORAN AKHIR
PRAKTIKUM PEMROGRAMAN WEB
LABORATORIUM PEMROGRAMAN LANJUT
SISTEM INFORMASI KERETA API
Asisten Pembimbing : M. Kausar Ramadhan
Disusun Oleh:
Nama/NIM : Lalu Kismara Hadi
/ 14523144
Nama/NIM : Shofwan Hanif
/ 14523150
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS ISLAM INDONESIA
2016
iii
iv
HALAMAN PERSEMBAHAN
Kami persembahkan Laporan Akhir Project Praktikum Pemrograman Web
ini kepada kedua orang tua kami yang selalu mendukung kami dan senantiasa
menyertakan kami dalam setiap doanya. Untuk rekan-rekan kami yang telah
memberi kami semangat untuk berjuang dan bertahan dalam setiap keadaan.
Untuk dosen pembimbing kami yang telah memberikan banyak ilmu bermanfaat
bagi kami yang InsyaAllah dapat kami pergunakan dengan baik suatu saat nanti,
serta kakak asisten yang telah membantu dan bersedia meluangkan waktunya
untuk berbagi ilmu dengan kami.
Terima kasih untuk semuanya. Semoga Allah SWT selalu melindungi dan
memberikan rahmat serta hidayahnya kepada semua pihak yang telah mendukung
dalam proses penyelesaian tugas Project Sistem Informasi Kereta Api ini.
v
MOTTO
“Sukses hanya bagi orang yang tetap semangat meski halangan dan rintangan di
depan mata.”
“Maka sesungguhnya bersama kesulitan itu ada kemudahan. Sesungguhnya
bersama kesuliatan itu ada kemudahan.”
(Q.S. Al-Insyirah: 5-6)
“Bermimpi tanpa mau melakukan sesuatu untuk membuat mimpi menjadi
kenyataan menggiring kita kepada kehidupan yang tidak pernah menghasilkan
buah.”
vi
KATA PENGANTAR
Assalamualaikum Wr.Wb.
Puji syukur kami panjatkan atas kehadirat Allah SWT yang telah
memberikan rahmat dan hidayah-Nya sehingga penyusunan laporan ini dapat
terselesaikan dengan baik. Sholawat serta salam senantiasa kita limpahkan kepada
junjungan kita Nabi Muhammad SAW beserta keluarganya, sahabatnya, serta
pengikutnya hingga akhir zaman.
Tujuan penulisan laporan Project Sistem Informasi Kereta Api ini adalah
sebagai syarat untuk menyelesaikan mata kuliah Praktikum Pemrograman Web.
Kami menemukan hambatan dan kesukaran dalam penyusunan laporan
project ini, maka dari itu kami menyampaikan rasa terima kasih yang sebesarbesarnya dan penghargaan yang setinggi-tingginya kepada semua pihak yang
terkait dalam penyelesaian tugas laporan ini sesuai dengan rentang waktu yang
telah diberikan. Terima kasih dan penghargaan itu diantaranya kami berikan
kepada :
1. Allah SWT yang telah memberi kami kekuatan, petunjuk, karunia, nikmat
serta hidayahnya.
2. Kedua orang tua kami yang selalu memberikan dukungan kepada kami
baik berupa moral ataupun material.
3. Dosen yang telah membimbing kami hingga kami dapat menyelesaikan
project ini.
4. Kakak-kakak asisten Laboratorium Informatika Terpadu yang telah
membimbing selama praktikum dan asistensi untuk menyelesaikan project
dan laporan ini.
5. Serta teman-teman yang tidak dapat kami sebutkan satu per satu yang
telah membagi ilmu, waktu, dan idenya kepada kami.
vii
Dan semoga Allah SWT meridhoi penyusunan laporan ini, sehingga bisa
membawa khazanah yang baru dan bermanfaat bagi kita semua.
Wassalamualaikum Wr.Wb.
Yogyakarta, 12 Juni 2016
penyusun
viii
TAKARIR
database
basis data
input
masukan
output
keluaran
programming project
proyek pemrograman
user
pengguna
screenshot
hasil tampilan
source code
kode program
flowchart
diagram alur
website
halaman situs
data flow diagram
diagram aliran data
entity relationship diagram
diagram relasi entitas
length
lebar
ix
DAFTAR ISI
HALAMAN JUDUL............................................................................................... ii
HALAMAN PENGESAHAN ................................................................................ iii
HALAMAN PERSEMBAHAN ............................................................................ iv
HALAMAN MOTTO ............................................................................................. v
KATA PENGANTAR ........................................................................................... vi
TAKARIR ........................................................................................................ vviiiii
DAFTAR ISI .......................................................................................................... ix
DAFTAR TABEL .................................................................................................. xi
DAFTAR GAMBAR ............................................................................................ xii
BAB I PENDAHULUAN ....................................................................................... 1
1.1.
Latar Belakang Masalah ........................................................................... 1
1.2.
Rumusan Masalah .................................................................................... 1
1.2.
Tujuan ....................................................................................................... 2
1.2.
Batasan Masalah ....................................................................................... 2
1.3.
Sistematika Penulisan ............................................................................... 2
BAB II METODOLOGI ......................................................................................... 4
2.1.
Analisis Kebutuhan .................................................................................. 4
2.2.
Struktur Tabel ........................................................................................... 5
BAB III PERANCANGAN .................................................................................. 19
3.1.
Entity Relathionship Diagram ............................................................... 19
3.2.
Data Flow Diagram ............................................................................... 20
3.3.
Desain Mockup ....................................................................................... 29
BAB IV HASIL DAN PEMBAHASAN .............................................................. 36
4.1.
Penjelasan dan Screenshot Program ...................................................... 36
4.2.
Kekurangan dan Kelebihan Program ..................................................... 48
4.3.
Source Code ........................................................................................... 49
BAB V PENUTUP .............................................................................................. 71
5.1.
Kesimpulan ............................................................................................. 71
5.2.
Saran ....................................................................................................... 71
x
DAFTAR PUSTAKA ........................................................................................... 72
LAMPIRAN .......................................................................................................... 73
xi
DAFTAR TABEL
Tabel 2.1 Struktur Tabel Admin............................................................................. 5
Tabel 2.2 Struktur Tabel Artikel ........................................................................... 6
Tabel 2.3 Struktur Tabel Kontak_Us ..................................................................... 8
Tabel 2.4 Struktur Tabel Kereta ............................................................................ 9
Tabel 2.5 Struktur Tabel Tujuan ......................................................................... 11
Tabel 2.6 Struktur Tabel Asal ............................................................................. 12
Tabel 2.7 Struktur Gerbong ................................................................................. 13
Tabel 2.8 Struktur Tabel Kursi ............................................................................ 14
Tabel 2.9 Struktur Tabel Pelanggan .................................................................... 16
xii
DAFTAR GAMBAR
Gambar 2.1 Tabel Admin ..................................................................................... 6
Gambar 2.2 Tabel Artikel ..................................................................................... 7
Gambar 2.3 Tabel Kontak_Us .............................................................................. 8
Gambar 2.4 Tabel Kereta .................................................................................... 11
Gambar 2.5 Tabel Tujuan ................................................................................... 12
Gambar 2.6 Tabel Asal ....................................................................................... 13
Gambar 2.7 Tabel Gerbong ................................................................................ 14
Gambar 2.8 Tabel Kursi ..................................................................................... 16
Gambar 2.9 Tabel Pelanggan .............................................................................. 18
Gambar 3.1 Entitty Relationship Diagram (ERD) ............................................. 19
Gambar 3.2 DFD Level 0 .................................................................................... 20
Gambar 3.3 DFD Level 1 .................................................................................... 21
Gambar 3.4 DFD Level 2 Manajemen Artikel ................................................... 22
Gambar 3.5 DFD Level 2 Manajemen Kereta .................................................... 23
Gambar 3.6 DFD Level 2 Manajemen Gerbong ................................................. 24
Gambar 3.7 DFD Level 2 Manajemen Kursi ...................................................... 25
Gambar 3.8 DFD Level 2 Manajemen Asal ....................................................... 26
Gambar 3.9 DFD Level 2 Manajemen Tujuan ................................................... 27
Gambar 3.10 DFD Level 2 Manajemen Kontak ................................................. 28
Gambar 3.11 Halaman Login............................................................................... 29
Gambar 3.12 Halaman Beranda Admin .............................................................. 29
Gambar 3.13 Halaman Sunting Artikel ............................................................... 30
Gambar 3.14 Halaman Ubah Data ....................................................................... 31
Gambar 3.15 Halaman Lihat Data ....................................................................... 31
Gambar 3.16 Halaman Lihat Artikel .................................................................. 32
Gambar 3.17 Halaman Pengaturan ...................................................................... 32
Gambar 3.18 Halaman Pemberitahuan Perubahan Password .............................. 33
Gambar 3.19 Halaman Utama Pengunjung ......................................................... 33
xiii
Gambar 3.20 Halaman Cari Jadwal ..................................................................... 34
Gambar 3.21 Halaman Hasil Pencarian ............................................................... 34
Gambar 3.22 Halaman Pesan............................................................................... 35
Gambar 3.23 Halaman Review Tiket .................................................................. 35
Gambar 4.1 Tampilan Home ............................................................................... 36
Gambar 4.2 Tampilan Cari Jadwal ...................................................................... 37
Gambar 4.3 Tampilan Hasil Pencarian Jadwal .................................................... 37
Gambar 4.4 Tampilan Halaman Detail ................................................................ 38
Gambar 4.5 Tampilan Cek Kursi ......................................................................... 39
Gambar 4.6 Tampilan Form Isi Data Pemesan ................................................... 39
Gambar 4.7 Tampilan Halaman Pilih Kursi ........................................................ 40
Gambar 4.8 Tampilan Review Tiket ................................................................... 41
Gambar 4.9 Tampilan Cetak / Unduh Tiket ........................................................ 42
Gambar 4.10 Tampilan Login Admin.................................................................. 42
Gambar 4.11 Tampilan Beranda Admin.............................................................. 43
Gambar 4.12 Tampilan Halaman Sunting Artikel ............................................... 43
Gambar 4.13 Tampilan Halaman Ubah Data ...................................................... 44
Gambar 4.14 Tampilan Halaman Lihat Data....................................................... 45
Gambar 4.15 Tampilan Halaman Daftar Artikel ................................................. 45
Gambar 4.16 Tampilan Halaman Pengaturan...................................................... 46
Gambar 4.17 Tampilan Pengaturan Password ..................................................... 47
Gambar 4.18 Tampilan Pengaturan Kontak ........................................................ 47
BAB I
PENDAHULUAN
1.1. Latar Belakang Masalah
Kereta Api adalah salah satu sarana transportasi yang cukup digemari di
kalangan masyarakat pada umumnya terutama, masyarakat yang tinggal di
daerah Pulau Jawa. Transportasi ini merupakan transportasi yang mampu
menampung penumpang dalam jumlah banyak. Selain itu, kereta api
beroperasi selama 24 jam penuh yang bisa digunakan oleh masyarakat untuk
berpergian.
Banyaknya minat masyarakat terhadap transportasi kereta api, membuat
para pekerja di bidang perkeretaapian perlu meningkatkan kinerjanya agar
dapat memberikan pelayanan terbaik kepada pengguna kereta api. Seiring
perkembangan teknologi yang semakin canggih, pekerja perkereta apian
dituntut untuk bisa bekerja secara efektif dan efisien.
Untuk menghadapi kondisi tersebut, perlu dibangun sebuah sistem yang
dapat dimanfaatkan dalam menunjang kegiatan operasional kereta api. Oleh
karena itu, sistem informasi kereta api adalah sarana yang akan
memudahkan, baik dari segi pekerja sebagai pengelola kereta api, maupun
dari segi masyarakat sebagai pengguna transportasi kereta api.
1.2. Rumusan Masalah
a. Bagaimana pekerja di bidang perkereta apian mengelola informasi yang
akan disajikan kepada penumpang secara cepat dan tepat?
b. Bagaimana pengguna transportasi kereta api bisa melihat informasi
jadwal keberangkatan kereta api secara mudah?
2
1.3. Tujuan
a. Membangun sistem informasi kereta api yang akan memudahkan pekerja
di
bidang perkeretaapian dalam mengelola informasi.
b. Dengan sistem informasi kereta api ini, pengguna transportasi akan
diberikan form pencarian jadwal kereta api yang memudahkan pengguna
mencari jadwal sesuai kehendaknya.
1.4. Batasan Masalah
a. Satu kereta hanya memiliki satu jenis kelas.
b. Data yang akan dimasukkan ke dalam database hanya dilakukan dengan
satu user.
c. Satu gerbong terdiri dari 10 kursi.
d. Sistem informasi ini hanya melayani pemesanan tiket kereta dengan tujuan
beberapa kota saja.
1.5. Sistematika Penulisan
Sistematika penulisan dalam penulisan laporan ini adalah sebagai berikut :
BAB I PENDAHULUAN
Membahas tentang latar belakang masalah, rumusan masalah, tujuan, batasan
masalah, serta sistematika penulisan dalam pembuatan laporan Project
Sistem Informasi Kereta Api ini.
BAB II METODOLOGI
Memuat uraian mengenai analisis kebutuhan dalam pelaksanaan Project
Sistem Informasi Kereta Api serta penjelasan mengenai struktur tabel yang
digunakan dalam Project Sistem Informasi Kereta Api.
3
BAB III PERANCANGAN
Memuat tentang perancangan – perancangan dasar dari Project Sistem
Informasi Kereta Api yang meliputi Entity Relationship Diagram (ERD) ,
Data Flow Diagram (DFD), dan Desain Mockup.
BAB IV HASIL DAN PEMBAHASAN
Memuat pembahasan serta hasil mengenai screenshot dan penjelasan tiap
halaman website, kelebihan dan kekurangan program, serta source code
program dari Project Sistem Informasi Kereta Api.
BAB V KESIMPULAN DAN SARAN
Memuat tentang kesimpulan yang dihasilkan dari keseluruhan program baik
pada tahap analisis, perancangan, serta penggunaan program. Bab ini juga
membahas tentang saran-saran yang berdasar pada keterbatasan –
keterbatasan yang dialami selama pembuatan Project Sistem Informasi
Kereta Api ini.
BAB II
METODOLOGI
2.1. Analisis Kebutuhan
Dalam analisis kebutuhan ini terdiri dari beberapa analisis, yaitu
analisis kebutuhan antarmuka, analisis perangkat lunak dan analisis
perangkat keras.
2.1.1. Analisis Kebutuhan Antarmuka
Dalam proses pembuatan project dan laporan ini di perlukan
antarmuka sebagai penghubung antara user dengan hardware. Maka
dari itu kami menggunakan antarmuka sistem operasi Windows 10
dan Ubuntu 16.04 untuk mempermudah serta memperlancar proses
pembuatan project dan laporan .
2.1.2. Analisis Kebutuhan Perangkat Lunak
Perangkat keras computer tidak akan berarti tanpa adanya
perangkat lunak , begitu pula sebaliknya. Perangkat lunak dan
perangkat keras saling membutuhkan dan saling mendukung satu
sama lain.
Perangkat
lunak
memberikan
instruksi-instruksi
kepada
perangkat keras untuk melakukan suatu tugas tertentu. Dalam
pembuatan laporan ini, kami menggunakan beberapa perangkat
lunak yaitu :
1. Pembuatan program menggunakan Sublime Text 3.
2. Penggunaan aplikasi XAMPP yang didalamnya Apache sebagai
Web Server dan MySQL yang digunakan sebagai database.
3. Penulisan laporan menggunakan Microsoft Office Word 2013
4. Perancangan Entity Relationship Diagram (ERD) dan Data Flow
Diagram (DFD) menggunakan yEd Graph Editor.
5
5. Perancangan desain Mockup dengan menggunakan aplikasi
Balsamiq 3.
6. Pengambilan Screenshot program menggunakan Shutter.
2.1.3. Analisis Kebutuhan Perangkat Keras
Untuk mendukung kinerja dari perangkat lunak maka, kami
menggunakan beberapa perangkat keras. Perangkat keras yang kami
gunakan adalah :
1. Laptop
2. Printer
3. Mouse
4. Keyboard
2.2. Struktur Tabel
2.2.1. Tabel Admin
Tabel admin adalah tabel yang digunakan sebagai tempat
penyimpanan data dari akun admin di dalam database.
Tabel 2.1 Struktur Tabel Admin
ATRIBUT DESKRIPSI
Id
username
password
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Tidak
Nomor id
int ,
dari admin
2 digit
Username
dari admin
Password
dari admin
varchar,
12
karakter
varchar,
13
karakter
6
Struktur tabel admin terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
2 digit. Digunakan untuk menyimpan id dari admin.
2.
Kolom username dengan tipe data varchar dengan length
sebanyak
12 karakter. Digunakan untuk menyimpan username dari admin.
3.
Kolom password dengan tipe data varchar dengan length
sebanyak
12 karakter. Digunakan untuk menyimpan password dari admin.
Kemudian di bawah ini adalah screenshot dari tabel admin yang
dibuat di dalam phpmyadmin.
Gambar 2.1 Tabel Admin
2.2.2. Tabel Artikel
Tabel artikel adalah tabel yang digunakan sebagai tempat
penyimpanan data dari artikel seperti judul artikel dan isi artikel
di dalam database.
Tabel 2.2 Struktur Tabel Artikel
ATRIBUT
Id
Judul
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Nomor id
int ,
dari admin
11 digit
Judul dari
Text
7
artikel
Isi dari
Isi
artikel
Text
Tidak
Tidak
Date
Tidak
Tidak
Tanggal
Tanggal
pembuatan
artikel
Struktur tabel artikel terdiri dari 4 kolom, yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan length
11 digit. Digunakan untuk menyimpan id dari admin.
2. Kolom judul dengan tipe data text dan digunakan untuk
menyimpan judul dari artikel.
3. Kolom isi dengan tipe data text dan digunakan untuk menyimpan
isi dari artikel.
4. Kolom tanggal dengan tipe data date digunakan untuk menyimpan
waktu tanggal pembuatan dari artikel.
Kemudian di bawah ini adalah screenshot dari tabel artikel yang
dibuat di dalam phpmyadmin.
Gambar 2.2 Tabel Artikel
8
2.2.3. Tabel Kontak_Us
Tabel kontak_us adalah tabel yang digunakan sebagai tempat
penyimpanan data kontak yang bisa dihubungi dari website sistem
informasi kereta api di dalam database.
Tabel 2.3 Struktur Tabel Kontak_Us
ATRIBUT DESKRIPSI
Nomor
No_telp
telepon yang
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Varchar,
14
bisa
karakter
dihubungi
Email yang
Varchar,
bisa
400
dihubungi
karakter
Struktur tabel kontak_us terdiri dari 2 kolom, yaitu :
1. Kolom no_telp sebagai primary key dengan tipe data varchar
dan
length
14
karakter.
Digunakan
sebagai
tempat
untuk
penyimpanan data nomor telepon yang bisa dihubungi.
2. Kolom email dengan tipe data varchar dan length 400 karakter
yang digunakan sebagai tempat untuk penyimpanan data dari
email yang bisa dihubungi.
Kemudian di bawah ini adalah screenshot dari tabel kontak_us yang
dibuat di dalam phpmyadmin.
9
Gambar 2.3 Tabel Kontak_Us
2.2.4. Tabel Kereta
Tabel kereta adalah tabel yang digunakan sebagai tempat
penyimpanan data dari kereta seperti nama kereta, kelas, tanggal
keberangkatan, jam keberangkatan, jam tiba, tarif kereta, dan status
keberangkatan dari kereta di dalam database.
Tabel 2.4 Struktur Tabel Kereta
ATRIBUT
Id
Nama_kereta
Kelas
DESKRIPSI
TIPE
DATA
Nomor id dari
int ,
kereta
11 digit
Nama dari
kereta
Kelas dari
kereta
PRIMA
RY
KEY
FOREIGN
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
varchar,
400
karakter
varchar,
50
karakter
Tanggal
Tanggal
keberangkatan
date
dari kereta
Jam_berangkat
Jam_tiba
Jam
Varchar,
keberangkatan
5
kereta
karakter
Jam tiba
Varchar,
kerata
5
10
karakter
Tarif_dewasa
Tarif kereta
Decimal,
untuk dewasa
22,2
Tarif kereta
Tarif_anak
untuk anakanak
Status
Decimal,
22,2
Status
Varchar,
keberangkatan
200
kereta
karakter
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Struktur tabel kereta terdiri dari 9 kolom, yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan length 11
digit. Digunakan untuk menyimpan id dari kereta.
2. Kolom nama_kereta dengan tipe data varchar dan length 400
karakter.
Digunakan untuk menyimpan nama dari kereta.
3. Kolom kelas dengan tipe data varchar dan length 50 karakter.
Digunakan untuk menyimpan jenis – jenis kelas yang dimiliki oleh
kereta.
4. Kolom tanggal dengan tipe data date digunakan untuk menyimpan
tanggal keberangkatan dari kereta.
5. Kolom jam_berangkat dengan tipe data varchar dan length 5 karakter.
Digunakan untuk menyimpan waktu jam keberangkatan dari kereta.
6. Kolom jam_tiba dengan tipe data varchar dan length 5 karakter.
Digunakan untuk menyimpan waktu jam tiba dari kereta.
7. Kolom tarif_dewasa dengan tipe data decimal dan length 22,2.
Digunakan untuk menyimpan tarif kereta khusus penumpang dewasa.
8. Kolom tarif_anak dengan tipe data decimal dan length 22,2.
Digunakan untuk menyimpan tarif kereta khusus penumpang anak
anak.
9. Kolom status dengan tipe data varchar dan length 200 karakter.
11
Digunakan untuk menyimpan status keberangkatan dari kereta apakah
sudah berangkat atau belum.
Kemudian di bawah ini adalah screenshot dari tabel kereta yang
dibuat di dalam phpmyadmin.
Gambar 2.4 Tabel Kereta
2.2.5. Tabel Tujuan
Tabel tujuan adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti nama tujuan di dalam database.
Tabel 2.5 Struktur Tabel Tujuan
ATRIBUT
Id
Nama_tujuan
Id_kereta
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Ya
Nomor id
int ,
dari tujuan
11 digit
Nama dari
tujuan kereta
text
Id dari tabel
int,
kereta
11 digit
12
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari tujuan.
2. Kolom nama_tujuan dengan tipe data text yang digunakan untuk
menyimpan nama tujuan kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel tujuan yang
dibuat di dalam phpmyadmin.
Gambar 2.5 Tabel Tujuan
2.2.6 Tabel Asal
Tabel asal adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti nama asal di dalam database.
Tabel 2.6 Struktur Tabel Asal
ATRIBUT
Id
Nama_asal
Id_kereta
DESKRIPSI
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
Tidak
Ya
Nomor id
int ,
dari asal
11 digit
Nama dari
asal kereta
text
Id dari tabel
int,
kereta
11 digit
13
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari asal.
2. Kolom nama_asal dengan tipe data text yang digunakan untuk
menyimpan nama asal kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel tujuan yang
dibuat di dalam phpmyadmin.
Gambar 2.6 Tabel Asal
2.2.7. Tabel Gerbong
Tabel gerbong adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti posisi gerbong dari kereta di dalam
database.
Tabel 2.7 Struktur Tabel Gerbong
ATRIBUT
DESKRIPSI
Nomor id
Id
dari tabel
gerbong
Posisi_gerbong
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
Ya
Tidak
Tidak
Tidak
int ,
11 digit
Posisi dari
Varchar,
gerbong
2
14
karakter
Id_kereta
Id dari tabel
int,
kereta
11 digit
Tidak
Ya
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
11 digit. Digunakan untuk menyimpan id dari tabel gerbong.
2. Kolom posisi_gerbong dengan tipe data varchar dan length
sebanyak 2 karakter. Digunakan untuk menyimpan data posisi
gerbong dari kereta.
3. Kolom id_kereta sebagai foreign key dengan tipe data integer
dan
length 11 digit. Digunakan untuk menyimpan id dari tabel kereta.
Kemudian di bawah ini adalah screenshot dari tabel gerbong yang
dibuat di dalam phpmyadmin.
Gambar 2.7 Tabel Gerbong
2.2.8. Tabel Kursi
Tabel kursi adalah tabel yang digunakan sebagai tempat
penyimpanan data seperti posisi kursi dari kereta di dalam database.
Tabel 2.8 Struktur Tabel Kursi
ATRIBUT
DESKRIPSI
Id
Nomor id
TIPE
PRIMARY
FOREIGN
DATA
KEY
KEY
int ,
Ya
Tidak
15
dari tabel
255 digit
kursi
Posisi_kursi
Status
kd_booking
id_gerbong
id_pelanggan
Posisi dari
kursi
Status dari
kursi
Kode
booking
Varchar,
4
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Ya
Tidak
Ya
karakter
Varchar,
8
karakter
Varchar,
10
karakter
Id dari tabel
Int ,
gerbong
11 digit
Id dari tabel
Int,
pelanggan
11 digit
Struktur tabel tujuan terdiri dari 3 kolom , yaitu :
1. Kolom id sebagai primary key dengan tipe data integer dan
length
255 digit. Digunakan untuk menyimpan id dari tabel kursi.
2. Kolom posisi_kursi dengan tipe data varchar dan length
sebanyak 4 karakter. Digunakan untuk menyimpan data posisi
kursi dari kereta.
3. Kolom status dengan tipe data varchar dan length 8 karakter.
Digunakan untuk menyimpan data status dari kursi apakah masih
tersedia atau tidak.
4. Kolom kd_booking dengan tipe data varchar dan length 10
karakter. Digunakan untuk menyimpan data kode booking di
dalam database.
5. Kolom id_gerbong sebagai foreign key dengan tipe data integer
dan length 11 digit. Digunakan untuk menyimpan id dari tabel
gerbong.
16
6. Kolom id_pelanggan sebagai foreign key dengan tipe data
integer dan length 11 digit. Digunakan untuk menyimpan id dari
tabel pelanggan.
Kemudian di bawah ini adalah screenshot dari tabel kursi yang
dibuat di dalam phpmyadmin.
Gambar 2.8 Tabel Kursi
2.2.9. Tabel Pelanggan
Tabel pelanggan adalah tabel yang digunakan sebagai tempat
penyimpanan data pelanggan seperti nama pelanggan, nomor KTP
pelanggan, nomor telepon pelanggan, email, total pembayaran dan
tanggal pemesanan kereta.
Tabel 2.9 Struktur Tabel Pelanggan
ATRIBUT
DESKRIPSI
Nomor id
Id_pelanggan
dari tabel
pelanggan
No_ktp
TIPE
PRIMAR
FOREIGN
DATA
Y KEY
KEY
Ya
Tidak
Tidak
Tidak
int ,
11 digit
Nomor KTP
Varchar,
dari
25
17
pelanggan
Nama_pelanggan
No_telp
Total
Pembayaran
Tgl_pemesanan
Nama dari
pelanggan
karakter
Varchar,
100
Varchar,
Telepon
20
pelanggan
karakter
pelanggan
Total
pembayaran
pelanggan
Tanggal
pemesanan
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
Tidak
karakter
Nomor
Email dari
Tidak
Varchar,
90
karakter
Decimal,
22,2
Date
Struktur tabel pelanggan terdiri dari 7 kolom, yaitu :
1. Kolom id_pelanggan sebagai primary key dengan tipe data integer dan
length 11 digit. Digunakan untuk menyimpan id dari tabel pelanggan.
2. Kolom no_ktp dengan tipe data varchar dan length 25 karakter
digunakan
untuk menyimpan data dari nomor KTP pelanggan.
3. Kolom nama_pelanggan dengan tipe data varchar dan length 100
karakter
digunakan untuk menyimpan nama pelanggan yang melakukan
pemesanan tiket kereta api.
4. Kolom no_telp dengan tipe data varchar dan length 20 karakter
digunakan
untuk menyimpan data nomor telepon dari pelanggan.
5. Kolom email dengan tipe data varchar dan length 90 karakter digunakan
untuk menyimpan data email dari pelanggan.
18
6. Kolom total_pembayaran dengan tipe data decimal dan length 22,2
digunakan untuk menyimpan data total pembayaran yang harus
dibayarkan oleh pelanggan.
7. Kolom tgl_pemesanan dengan tipe data date digunakan untuk
menyimpan data tanggal pemesanan yang dilakukan oleh pelanggan.
Kemudian di bawah ini adalah screenshot dari tabel pelanggan yang dibuat
di dalam phpmyadmin.
Gambar 2.9 Tabel Pelanggan
BAB III
PERANCANGAN
3.1. Entity Relathionship Diagram
Gambar 3.1 Entity Relationship Diagram (ERD)
20
3.2. Data Flow Diagram
3.2.1 DFD Level 0
Gambar 3.2 DFD Level 0.
21
3.2.2
DFD Level 1
Gambar 3.3 DFD Level 1
22
3.2.3
DFD Level 2 Manajemen Artikel
Gambar 3.4 DFD Level 2 Manajemen Artikel
23
3.2.4 DFD Level 2 Manajemen Kereta
Gambar 3.5 DFD Level 2 Manajemen Kereta.
24
3.2.5 DFD Level 2 Manajemen Gerbong
Gambar 3.6 DFD Level 2 Manajemen Gerbong.
25
3.2.6 DFD Level 2 Manajemen Kursi
Gambar 3.7 DFD Level 2 Manajemen Kursi.
26
3.2.7 DFD Level 2 Manajemen Asal
Gambar 3.8 DFD Level 2 Manajemen Asal.
27
3.2.8 DFD Level 2 Manajemen Tujuan
Gambar 3.9 DFD Level 2 Manajemen Tujuan.
28
3.2.9 DFD Level 2 Manajemen Kontak
Gambar 3.10 DFD Level 2 Manajemen Kontak.
29
3.3. Desain Mockup
3.3.1 Halaman Login.
Gambar 3.11 Halaman Login.
3.3.2 Halaman beranda Admin.
Gambar 3.12 Halaman beranda Admin.
30
3.3.3 Halaman Sunting Artikel.
Gambar 3.13 Halaman Sunting Artikel.
31
3.3.4 Halaman Ubah Data.
Gambar 3.14 Halaman Ubah Data.
3.3.5 Halaman Lihat Data.
Gambar 3.15 Halaman Lihat Data.
32
3.3.6 Halaman Lihat Artikel.
Gambar 3.16 Halaman Lihat Artikel.
3.3.7 Halaman Pengaturan.
Gambar 3.17 Halaman Pengaturan
33
3.3.8 Pemberitahuan perubahan password.
Gambar 3.18 Pemberitahuan perubahan password.
3.3.9 Halaman Utama Pegunjung.
Gambar 3.19 Halaman Utama Pengunjung.
34
3.3.10 Halaman Cari Jadwal.
Gambar 3.20 Halaman Cari Jadwal.
3.3.11 Halaman Hasil Pencarian.
Gambar 3.21 Halaman Hasil Pencarian.
35
3.3.12 Halaman Pesan.
Gambar 3.22 Halaman Pesan.
3.3.13 Halaman Review Tiket.
Gambar 3.23 Halaman Review Tiket.
BAB IV
HASIL DAN PEMBAHASAN
4.1. Penjelasan dan Screenshot Program
4.1.1 Frontend
a. Halaman home
Gambar 4.1 Tampilan home
Pada halaman home memuat isi artikel dan menu – menu
yang bisa digunakan seperti menu home , menu cari jadwal kereta
api, dan menu login admin.
37
b. Halaman menu cari jadwal kereta api
Gambar 4.2 Tampilan cari jadwal
Pada tampilan menu cari jadwal kereta api ini, tampilan yang
digunakan adalah tampilan secara pop up. Pada menu cari jadwal ini
digunakan untuk mencari jadwal kereta api berdasarkan tanggal , asal, dan
tujuan kereta.
c. Halaman hasil pencarian jadwal.
Gambar 4.3 Tampilan hasil pencarian jadwal.
38
Di halaman ini sistem menampilkan hasil pencarian jadwal yang
dilakukan oleh pelanggan sesuai kriteria yang dimasukkan. Keterangan
jadwal yang ditampilkan pada halaman ini hanya beberapa saja. Untuk
melihat keterangan jadwal kereta lebih lengkap, pelanggan diharuskan
menggunakan aksi detail.
d. Halaman Detail.
Gambar 4.4 Tampilan halaman detail.
Pada halaman detail, pengguna disuguhkan keterangan yang
lengkap dari jadwal kereta berserta tarif tiket untuk kalangan dewasa
dan kalangan anak dibawah kurang dari atau sama dengan tiga tahun.
Halaman ini juga menyediakan pengecekan kursi agar pelanggan
sebelum memesan bisa terlebih dahulu mengecek kursi yang masih
tersedia dengan cara mengarahkan cursor ke tulisan Cek Kursi.
39
Gambar 4.5 Tampilan cek kursi.
Selain itu, terdapat tombol PESAN untuk memulai langkah-langkah
pemesanan tiket.
e. Halaman Isi Data Pemesan.
Gambar 4.6 Tampilan form isi data pemesan.
40
Halaman ini muncul setelah pelanggan mengklik tombol pesan
pada halaman sebelumnya. Pada halaman ini, pelanggan atau pengguna
diharuskan memasukkan data diri yang digunakan sebagai identitas
pemilik tiket nantinya.
Di halaman ini juga terdapat menu jumlah penumpang yang terbagi
menjadi dua yaitu, dewasa dan anak. Jumlah penumpang ini digunakan
untuk membatasi jumlah kursi yang bisa di booking dan menghitung
total tarif tiket keseluruhannya.
f. Halaman Pilih Kursi.
Gambar 4.7 Tampilan halaman pilih kursi.
Halaman ini menampilkan kursi-kursi yang tersedia dari tiap
gerbong yang ada pada kereta. Kursi yang tersedia, bisa di booking oleh
pengguna dengan mengklik tombol booking sampai dengan jumlah
penumpang yang dibutuhkan.
Jika pengguna merasa ingin membatalkan pemilihan kursi dan
ingin memliki kursi yang berbeda dari sebelumnya, pengguna harus
41
mengklik tombol batal. Sedangkan kursi dengan status booked,
pengguna tidak bisa membooking kursi tersebut karena telah dibooking
oleh pengguna yang lain. Tombol lanjutkan digunakan untuk
mengarahkan pengguna ke halaman selanjutnya yaitu halaman review.
g. Halaman Review dan Cetak Tiket.
Gambar 4.8 Tampilan review tiket.
Pada halaman ini, sistem menampilkan seluruh keterangan lengkap
berupa nama hingga kode booking yang digunakan sebagai identitas
kepemilikian kursi yang telah dibooking. Sebagai alat bukti, tiket perlu
dicetak atau diunduh oleh pengguna dengan mengklik tombol cetak.
42
Gambar 4.9 Tampilan cetak/unduh tiket.
Agar tiket dapat diunduh, pengguna harus menyimpannya sebagai file
pdf. File pdf yang telah terunduh digunakan sebagai tanda bukti atas
kepemilikan tiket yang sah.
4.1.2 Backend
a. Halaman Login Admin.
Gambar 4.10 Tampilan login admin.
43
Menu login ini dapat ditemukan pada halaman utama website.
Menu login digunakan oleh Admin untuk masuk kedalam sistem
website.
b. Halaman Beranda Admin.
Gambar 4.11 Tampilan beranda admin.
Setalah admin melakukan login, admin akan diarahkan ke halaman
beranda yang berisi petunjuk penggunaan dari masing-masing navigasi
atau menu yang ada pada halaman khusus untuk admin ini.
c. Halaman Sunting Artikel.
44
Gambar 4.12 Tampilan halaman sunting artikel.
Pada halaman ini, admin dapat menambahkan artikel baru untuk
ditampilkan di halaman utama website.
d. Halaman Ubah Data.
Gambar 4.13 Tampilan halaman ubah data.
Halaman ubah data berfungsi untuk menambahkan jadwal kereta
beserta tarif untuk kalangan dewasa dan anak-anak. Jadwal yang
45
dimasukkan inilah yang akan tampil apabila pelanggan atau pengguna
website melakukan pencarian jadwal.
e. Halaman Lihat Data.
Gambar 4.14 Tampilan halaman lihat data.
Di halaman ini ditampilkan seluruh jadwal kereta yang telah
ditambahkan oleh admin. Ada beberapa aksi yang dapat dilakukan oleh
admin pada halaman ini seperti mengubah status kereta menjadi
berangkat dengan mengklik status kereta yang ada pada kolom status.
Dan menghapus jadwal kereta dengan mengklik aksi hapus.
46
f. Halaman Daftar Artikel.
Gambar 4.15 Tampilan halaman daftar artikel.
Sedangkan halaman daftar artikel berfungsi untuk menampilkan
seluruh judul artikel yang telah ditambahkan sebelumnya oleh admin.
Pada halaman ini terdapat tiga aksi yaitu edit, lihat artikel, hapus. Aksi
edit berfungsi untuk mengubah atau memperbaharui artikel yang ada
sebelumnya. Aksi lihat artikel berfungsi untuk melihat isi artikel secara
keseluruhan di halaman utama website. Dan aksi hapus berfungsi untuk
menghapus artikel yang ada dari sistem.
47
g. Halaman Pengaturan.
Gambar 4.16 Tampilan halaman pengaturan.
Halaman pengaturan merupakan halaman yang menyediakan
fasilitas pengubahan kata sandi dan kontak admin. Terdapat dua tombol
yang dapat digunakan yakni ubah sandi dan ubah kontak.
48
Gambar 4.17 Tampilan pengaturan password.
Untuk mengubah sandi, admin harus memasukkan kata sandi yang
lama dan diikuti dengan memasukkan kata sandi yang baru, kemudian
memasukkan kata sandi yang baru lagi untuk memverifikasi. Dengan
mengklik tombol simpan, kata sandi akan disimpan ke sistem. Tombol
pilihan pengaturan berfungsi untuk menampilkan kembali tombol ubah
sandi dan ubah kontak.
Gambar 4.18 Tampilan pengaturan kontak.
49
Untuk menu kontak, admin hanya perlu memasukkan nomer telpon
dan email atau memasukkan salah satu diantaranya bila ingin mengubah
nomer telpon atau email saja.
4.2. Kelebihan dan Kekurangan Program
4.2.1. Kelebihan
:
1. Bisa mencatat jadwal kereta api.
2. Bisa
menyimpan
artikel
yang
di
buat
oleh
admin
dan
menampilkannya pada halaman utama Transys.
3. Pelanggan dapat memesan tiket di website Transys.
4. Tiket dapat diunduh sebagai tanda bukti telah memesan tiket.
4.2.2. Kekurangan
:
1. Admin tidak bisa mengganti username yang digunakan untuk login
ke dalam website Transys.
2. Admin tidak bisa menambahkan gambar ke dalam artikel, hanya
berupa teks saja.
3. Admin tidak bisa melihat tarif dewasa dan tarif untuk anak pada
halaman lihat data yang telah dimasukkan sebelumnya pada halaman
ubah data kecuali, melalui database.
4. Pelanggan tidak bisa mendaftar ke Transys, hanya bisa mencari
jadwal dan memesan tiket.
5. Pelanggan yang memesan tiket untuk lebih dari 1 orang, data
pelanggan yang dimasukkan hanya berupa data diri pelanggan yang
memesan saja, tidak dengan data diri pelanggan yang dipesankan.
Oleh karena itu, pelanggan yang memesankan tadi merupakan
sebagai penanggung jawab tiket yang dibeli.
6. Dikarenakan kode booking menggunakan php random, terkadang
pelanggan mendapatkan kode booking yang sama dengan pelanggan
lainnya. Oleh Karena itu, pelanggan diharuskan mengisi ulang
kembali data diri sebelum melanjutkan ke pilih kursi.
50
4.3. Source Code
File index.php
Home Transys
Home
Cari Jadwal Kereta
Api
Login Admin
51
Cari Jadwal
Tanggal
(tanggal-bulan-tahun)<
br>
Copyright © 2016 by 14523144 dan 14523150
Transys : Sistem Informasi
Kereta Api
echo "$i";
}
echo "-";
echo "";
for($i=2016;$i
Asal
Yogyakarta - Stasiun Tugu
Bandung - Stasiun Hall
Semarang - Stasiun Semarang
Tawang
Malang - Stasiun Malang
Kotabaru
Surabaya - Stasiun Semut
Tujuan
Yogyakarta - Stasiun Tugu
Bandung - Stasiun Hall
Semarang - Stasiun Semarang
Tawang
Malang - Stasiun Malang
Kotabaru
Surabaya - Stasiun Semut
54
Cari
close
Login to TranSys
Login