Perancangan dan analisis Penjualan Tiket Kereta API Online

22
Analisis dan Perancangan Sistem “Sistem Penjualan Tiket Kereta Api Online” Kelompok 7 : Ulfia Nurhalimah R. (125150200111045) Az Zahra Rahma P. A. (125150200111064) Fitri Bibi Suryani (125150200111076) Informatika – J

description

Analisis dan Perancangan Sistem“Sistem Penjualan Tiket Kereta Api Online”Lengkap dengan Usecase dan ERD dan DFD .... membaca dan di pelajari

Transcript of Perancangan dan analisis Penjualan Tiket Kereta API Online

Page 1: Perancangan dan analisis Penjualan Tiket Kereta API Online

Analisis dan Perancangan Sistem

“Sistem Penjualan Tiket Kereta Api Online”

Kelompok 7 :

Ulfia Nurhalimah R. (125150200111045)

Az Zahra Rahma P. A. (125150200111064)

Fitri Bibi Suryani (125150200111076)

Informatika – J

PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER ( PTIIK )

2014

Page 2: Perancangan dan analisis Penjualan Tiket Kereta API Online

Sistem Penjualan Tiket Kereta Api Online

Deskripsi :

Pada tugas akhir Analisis Perancangan Sistem, kelompok kami memutuskan untuk

membuat tentang “Penjualan Tiket Kereta Api Online.” Pada kasus yang kami ambil, user

(member) harus login terlebih dahulu untuk bisa memesan tiket kereta api secara online.

Setelah login, member dapat melihat jadwal yang tersedia, asal dan tujuan stasiun, dan

menginputkan banyaknya tiket yang akan dipesan. Kemudian sistem akan menampilkan jenis

kereta yang tersedia. Setelah member menetapkan jenis kereta yang akan ditumpanginya,

akan muncul form untuk menginputkan nama penumpang beserta identitas penumpang yang

akan menaiki kereta. Dan yang terakhir, member akan melakukan transaksi pembayaran.

Selain itu, member bisa membatalkan pemesanan yang telah dia buat dan bisa

mengecek pesanannya sendiri. Di dalam pengecekan pemesanan, akan disediakan fitur untuk

merubah tempat duduk yang telah dipesan (pindah tempat duduk).

Use Case Diagram :

ManagerMember

Admin

Memesan

Melihat J adwal

Melihat Laporan

Menambah Jadwal

Mengedit J adwal

Menghapus J adwal

Login

Menambah Kereta

Mengedit KeretaMenghapus Kereta

Melihat Harga Tiket

Melihat Daftar Kereta<<include>>

<<include>>

<<extend>><<extend>><<extend>><<extend>>

<<include>>

<<include>><<include>>

<<include>>

<<include>>

Mengecek Kode Booking

Melakukan konfirmasi pembayaran

Melakukan Pembatalan

Mengisi Biodata

<<include>>

Menghapus Pesanan

<<include>>

<<include>>

Melakukan permintaan pindah kursi

<<include>>

Mengupdate data

Mengkonfirmasi permintaan

<<include>>

Mengedit data pemesanan

Mengedit data pindah krsi

<<extend>>

<<extend>>

<<include>>

<<include>>

Pada use case diagram di atas, terdapat 3 aktor, yaitu member, admin, dan manager.

Member dapat melihat jadwal, melihat daftar jenis kereta, melakukan pembatalan, melakukan

Page 3: Perancangan dan analisis Penjualan Tiket Kereta API Online

permintaan pindah kursi, mengecek kode booking, mendapat konfirmasi permintaan dari

admin, melakukan konfirmasi pembayaran, dan memesan tiket. Member harus login terlebih

dahulu untuk bisa melakukan proses pemesanan, termasuk melihat jenis kereta dan melihat

jadwal kereta yang akan dipesan. Sedangkan admin bisa menambah kereta termasuk

menghapus kereta dan mengedit kereta, menambah jadwal termasuk menghapus dan

mengedit jadwal, mengupdate data termasuk mengedit data pemesanan dan mengedit data

pindah kursi, serta mengkonfirmasi permintaan member. Semua aksi tersebut dilakukan

setelah admin melakukan login ke sistem terlebih dahulu. Dan untuk manager dapat

melakukan aksi melihat laporan dengan cara login terlebih dahulu ke sistem.

Proses Analis :

Pada proses analis, terdiri dari :

a. Diagram Konteks

Pada diagram konteks di atas, terdapat 3 atribut, yaitu :

1. Member

Member harus menginputkan datanya ke sistem dan juga melakukan

konfirmasi pembayaran jika telah melakukan pembayaran tiket kereta

api. Selain itu, member juga dapat meminta info jadwal, pembatalan

tiket kereta, dan pindah tempat duduk pada sistem. Sebagai timbal

baliknya, sistem akan meberi info jadwal yang diminta oleh member,

Page 4: Perancangan dan analisis Penjualan Tiket Kereta API Online

bukti pemesanan (tiket) sebagai bukti bahwa member telah memesan

tiket kereta, memberi konfirmasi tentang pemindahan tempat duduk

penumpang, dan memberi konfirmasi bahwa tiket yang dibatalkan oleh

member telah dikonfirmasi oleh admin.

2. Admin

Di sini admin dapat memberikan data dirinya, data jadwal, data

pemesanan yang dibatalkan, dan data kursi yang telah dipindah ke

sistem. Admin akan menerima data pemesanan, data permintaan pindah

tempat duduk, dan data permintaan pembatalan tiket kereta yang berasal

dari member tetapi dikirim melalui sistem yang telah ada.

3. Manager

Manager juga harus memsukkan data dirinya ke sistem dan dapat

melihat laporan keuangan pada sistem.

Page 5: Perancangan dan analisis Penjualan Tiket Kereta API Online

b. Data Flow Diagram (DFD) Level 0

Pada DFD level 0 di atas, terdapat 7 subproses dari proses “Sistem Penjualan

Tiket Kereta Api Online,” yaitu :

1. Login

Pada proses login, member, admin, dan juga manager menggunakan id

nya untuk bisa masuk ke dalam sistem. Sistem nantinya akan

menyimpannya pada data store masing-masing atribut dan akan

dikirimkan kembali ke maintenance data.

2. Maintenance Data

Pada maintenance data terdapat proses memberikan info jadwal kereta

yang diminta oleh member yang nantinya akan disimpan dalam data

store, memberikan bukti pemesanan kepada member yang nantinya akan

Page 6: Perancangan dan analisis Penjualan Tiket Kereta API Online

disimpan juga dalam pemesanan data store, memberikan konfirmasi

pembatalan yang telah diminta oleh member dan kemudian datanya

diberikan kepada admin, memberikan konfirmasi pindah kursi yang telah

diminta oleh member dan kemudian datanya akan diberikan kepada

admin, dan memberikan laporan keuangan pada manager. Di sini juga

merupakan proses dimana admin memasukkan data jadwal, data dirinya,

data pemesanan yang dibatalkan, dan data kereta.

3. Pengelolaan Transaksi

Pada pengelolaan transaksi, info pemesanan yang berasal dari

pemesanan data store akan dikelola dan disimpan dalam transaksi data

store.

4. Pembuatan Laporan

Hasil transaksi dari transaksi data store akan diproses dalam pembuatan

laporan yang hasil laporannya akan diteruskan ke maintenance data.

5. Penyimpanan Detail Kereta

Id dari kereta data store akan digunakan dalam proses ini untuk

menentukan stasiun asal dan stasiun tujuan. Selain itu, pilihan jenis

kereta yang telah dipilih oleh member akan diproses lagi pada proses

penyimpanan detail gerbong.

6. Penyimpanan Detail Gerbong

Pada proses ini, id kereta dari yang dipilih oleh member digunakan untuk

mengakses jenis gerbong yang disediakan (dalam satu kereta, terdiri dari

banyak gerbong, setiap gerbong memiliki id yang berbeda berdasarkan

jenisnya, yaitu ekonomi, ekonomi AC, eksekutif, dan bisnis.). Id

gerbong tersebut nantinya digunakan untuk menentukan kursi yang akan

ditempati oleh penumpang.

7. Penyimpanan Data Penumpang

Dari pemesanan data store, akan dilakukan penyimpanan data

penumpang yang kemudian akan disimpan lagi dalam detail penumpang

data store.

Page 7: Perancangan dan analisis Penjualan Tiket Kereta API Online

c. Data Flow Diagram (DFD) Level 1

Subproses Maintenance Data :

Terdapat 4 proses dari subproses Maintenance Data, yaitu pemesanan tiket,

pengecekan pemesanan, pemrosesan data oleh admin, dan melihat laporan.

Pada proses pemesanan tiket, member meminta info jadwal kepada sistem dan

sistem akan memberikan info jadwal kepada member yang telah diinputkan

oleh admin, member juga memberikan konfirmasi pemesanan dan sistem akan

memberikan bukti pemesanan pada member yang telah diinputkan oleh admin

juga. Data yang digunakan di sini diambil dari data store yang telah

disediakan. Kemudian pada proses pengecekan pemesanan, terdapat

pengecekan permintaan pembatalan, dan permintaan pindah kursi yang

direqust oleh member. Sedangkan pemrosesan data oleh admin adalah semua

tindakan yang dihandle oleh admin agar semua yang diminta oleh member

bisa diberikan. Pada proses ini juga, admin menginputkan data jadwal, data

kereta, data pemesanan yang dibatalkan, dan data kursi yang dipindah. Pada

proses melihat laporan digunakan oleh manager untuk melihat laporan

keuangan yang telah dibuat oleh admin.

Page 8: Perancangan dan analisis Penjualan Tiket Kereta API Online

Subproses Pembuatan Laporan :

Di dalam subproses pembuatan laporan, terdapat 2 subproses lagi di dalamnya,

yaitu merekap hasil transaksi dan menulis laporan. Di sini hasil transaksi dari

transaksi data store akan direkap oleh admin. Hasil rekapan tadi akan ditulis

kembali oleh admin untuk dijadikan laporan keuangan yang nantinya akan

dikirimkan ke sistem melalui proses maintenance data untuk dilihat oleh

manager.

d. Data Flow Diagram (DFD) Level 2

Subproses Pemesanan Tiket :

Pada subproses pemesanan tiket, terdapat 6 proses lagi di dalamnya, yaitu

memilih jadwal, memilih stasiun awal dan tujuan, memilih jenis kereta,

memasukkan biodata, melakukan pembayaran, dan melakukan konfirmasi.

Page 9: Perancangan dan analisis Penjualan Tiket Kereta API Online

Pada proses memilih jadwal, member akan memilih jadwal yang telah

didapatkn dari jadwal data store. Pada proses selanjutnya, member akan

memilih stasiun awal dan tujuan yang berasal dari data store tiap stasiun.

Setelah itu, member akan memilih kereta yang akan ditumpanginya beserta

memasukkan biodata penumpang mulai dari nama, alamat, dan nomor

identitas. Kemudian melakukan pembayaran untuk tiket yang telah dipesan

dan melakukan konfirmasi, sehingga member mendapatkan bukti pemesanan.

Subproses Pengecekan Pemesanan :

Pada subproses pengecekan pemesanan terdapat 4 proses di dalamnya, yaitu

memilih layanan yang tersedia, melihat pemesanan pribadi, pembatalan tiket,

dan memilih kursi. Pada proses memilih layang yang tersedia terdapat 3

pilihan yang dijelaskan pada proses selanjutnya. Pilihan pertama yaitu member

bisa melihat pemesanan pribadi. Pilihan kedua yaitu di saat member

melakukan pembatalan tiket, maka admin akan diberikan konfirmasi

pembatalan kepada member. Sedangkan pilihan ketiga yaitu member bisa

membuat permintaan pindah kursi yang kemudian akan diproses oleh admin,

dan akan diberikan dan konfirmasi pindah kursi tersebut pada member.

Page 10: Perancangan dan analisis Penjualan Tiket Kereta API Online

Subproses Pemrosesan Data oleh Admin

Pada subproses pemrosesan data oleh admin terdapat 10 proses lagi di

dalamnya, yaitu penanganan oleh admin, memasukkan data jadwal, memasukkan data

kereta, menerima data pemesanan, menerima permintaan pembatalan, menerima

permintaan pindah kursi, mengupdate data pemesanan, mengupdate data penumpang,

mengirimkan konfirmasi permintaan, dan mengupdate data kursi. Proses penanganan

oleh admin adalah semua proses yang ditangani oleh admin. Admin akan memsukkan

data jadwal yang kemudian disimpan dalam jadwal data store. Admin juga akan

menginputkan data kereta dan kemudian disimpan pada kereta data store. Selain itu,

admin akan menerima data pemesanan dari member. Jika ada member yang

melakukan pembatalan tiket kereta, admin akan memperosesnya dan mengupdate data

pemesanan kembali, begitu juga dengan permintaan pindah kursi.

Page 11: Perancangan dan analisis Penjualan Tiket Kereta API Online

Entity Relational Diagram (ERD)

Terdiri dari :

a. Conceptual Data Model (CDM)

memilih jadwal

rincian penumpang

memilih kursi

memilih gerbong

memilih asal

memilih tujuan

memilih jenis kereta

melakukan pembayaran

memesan tiket

Jadwal Data Store

jam_datangjam_berangkatketerangan

Kereta Data Store

id_keretanama_keretaketeranganjumlah_gerbong

Pemesanan Data Store

id_pemesanantgl_pesanjumlah_tikettotal_pembayaran

Transaksi Data Store

id_pembayaranjenis_pem bayarantotal_pembayaran

Member Data Store

id_membernama_m emberjk_mem bernotelp_m emberalamat_memberpasswd_mem ber

Detail Penumpang Data Store

id_penumpangnama_penum pangkategori

Gerbong Data Store

id_gerbongjenis_gerbonghargajumlah kursi

Kursi Data Store

id_kursistatus

Stasiun Asal Data Store

id_stasiun_asalnama_stasiun_asalalamat_stasiun_asalnotelp_stasiun_asal

Stasiun Tujuan Data Store

id_stasiun_tujuannama_stasiun_tujuanalamat_stasiun_tujuannotelp_stasiun_tujuan

Pada CDM tersebut terdapat 10 entitas yaitu member data store,

pemesanan data store, transaksi data store, jadwal data store, detail penupang

data store, kereta data store, stasiun tujuan data store, stasiun asal data store,

gerbong data store, dan kursi data store. Pada member data store dan

pemesanan data store terdapat relasi one to many, begitu juga antara

pemesanan data store dengan detail penumpang data store, kereta data store

dengan gerbong data store, dan gerbong data store dengan kursi data store.

Sedangkan antara transaksi data store dengan pemesanan data store terdapat

relasi one to one. Hal ini juga berlaku untuk pemesanan data store dengan

jadwal data store, pemesanan data store dengan kereta data store, kereta data

store stasiun tujuan data store, dan kereta data store dengan stasiun asal data

store. Id pada setiap entitas bertindak sebagai primary key.

Page 12: Perancangan dan analisis Penjualan Tiket Kereta API Online

b. Physical Data Model (PDM)

ID_PEMESANAN = ID_PEMESANAN

ID_PEMESANAN = ID_PEMESANAN

ID_GERBONG = ID_GERBONG

ID_KERETA = ID_KERETA

ID_STASIUN_ASAL = ID_STASIUN_ASAL

ID_KERETA = ID_KERETA

ID_STASIUN_TUJUAN = ID_STASIUN_TUJUAN

ID_KERETA = ID_KERETA

ID_KERETA = ID_KERETA

ID_PEMESANAN = ID_PEMESANAN

ID_PEMESANAN = ID_PEMESANAN

ID_PEMBAYARAN = ID_PEMBAYARAN

ID_MEMBER = ID_MEMBER

JADWAL_DATA_STORE

ID_PEMESANAN Text(15)JAM_DATANG DateTimeJAM_BERANGKAT DateTimeKETERANGAN Text(15)

KERETA_DATA_STORE

ID_KERETA Text(15)ID_PEMESANAN Text(15)ID_STASIUN_TUJUAN Text(15)ID_STASIUN_ASAL Text(15)NAMA_KERETA Text(35)KETERANGAN Text(15)JUMLAH_GERBONG Integer

PEMESANAN_DATA_STORE

ID_PEMESANAN Text(15)ID_MEMBER Text(15)ID_PEMBAYARAN Text(15)ID_KERETA Text(15)TGL_PESAN DateTimeJUMLAH_TIKET IntegerTOTAL_PEMBAYARAN Single

TRANSAKSI_DATA_STORE

ID_PEMBAYARAN Text(15)ID_PEMESANAN Text(15)JENIS_PEMBAYARAN Text(20)TOTAL_PEMBAYARAN Single

MEMBER_DATA_STORE

ID_MEMBER Text(15)NAMA_MEMBER Text(35)JK_MEMBER Text(5)NOTELP_MEMBER Text(20)ALAMAT_MEMBER Text(50)PASSWD_MEMBER Text(10)

DETAIL_PENUMPANG_DATA_STORE

ID_PENUMPANG Text(15)ID_PEMESANAN Text(15)NAMA_PENUMPANG Text(35)KATEGORI Text(10)

GERBONG_DATA_STORE

ID_GERBONG Text(15)ID_KERETA Text(15)JENIS_GERBONG Text(10)HARGA SingleJUMLAH_KURSI Integer

KURSI_DATA_STORE

ID_KURSI Text(15)ID_GERBONG Text(15)STATUS Text(10)

STASIUN_ASAL_DATA_STORE

ID_STASIUN_ASAL Text(15)ID_KERETA Text(15)NAMA_STASIUN_ASAL Text(35)ALAMAT_STASIUN_ASAL Text(50)NOTELP_STASIUN_ASAL Text(20)

STASIUN_TUJUAN_DATA_STORE

ID_STASIUN_TUJUAN Text(15)ID_KERETA Text(15)NAMA_STASIUN_TUJUAN Text(35)ALAMAT_STASIUN_TUJUAN Text(50)NOTELP_STASIUN_TUJUAN Text(20)

Pada Physical Data Model (PDM) di atas, terdapat 10 entitas, yaitu :

1. Member data store

Pada member data store terdapat ID_MEMBER yang digunakan sebagai

primary key. Selain itu, di dalamnya juga terdapat atribut seperti

NAMA_MEMBER, JK_MEMBER, NOTELP_MEMBER,

ALAMAT_MEMBER, dan PASSWD_MEMBER.

2. Pemesanan data store

Pada pemesanan data store terdapat ID_PEMESANAN yang digunakan

sebagai primary key. Selain itu juga terdapat ID_MEMBER yang

merupakan foreign key dari entitas member data store,

ID_PEMBAYARAN yang juga merupakan foreign key dari entitas

transaksi data store dan ID_KERETA yang merupakan foreign key dari

entitas kereta data store. Di dalam entitas pemesanan data store juga

terdapat atribut berupa TGL_PESAN, JUMLAH_TIKET, dan

TOTAL_PEMBAYARAN.

3. Jadwal data store

Pada entitas ini terdapat ID_PEMESANAN yang merupakan foreign key

dari entitas pemesanan data store. Dalam entitas ini, terdapat atribut

berupa JAM_DATANG, JAM_BERANGKAT, dan KETERANGAN.

4. Detail penumpang data store

Untuk entitas detail penumpang data store terdapat ID_PENUMPANG

yang bertindak sebagai primary key. Sedanngkan ID_PEMESANAN

Page 13: Perancangan dan analisis Penjualan Tiket Kereta API Online

merupakan foreign key dari entitas pemesanan data store. Atribut yang

lainnya yaitu NAMA_PENUMPANG dan KATEGORI.

5. Transaksi data store

Pada entitas transaksi data store terdapat ID_PEMBAYARAN yang

bertindak sebagai primay key. Untuk ID_PEMESANAN merupakan

foreign key dari pemesanan data store. Pada entitas ini juga terdapat

atribut lain seperti JENIS_PEMBAYARAN dan

TOTAL_PEMBAYARAN.

6. Kereta data store

ID_KERETA merupakan primary key dari kereta data store. Untuk

ID_PEMESANAN merupakan foreign key dari pemesanan data store,

ID_STASIUN_TUJUAN merupakan foreign key dari stasiun tujuan data

store, dan ID_STASIUN_ASAL merupakan foreign key dari stasiun asal

data store. Pada kereta data store juga mempunyai atribut lain yaitu

NAMA_KERETA, KETERANGAN, dan JUMLAH_GERBONG.

7. Stasiun tujuan data store

Yang bertindak sebagai primary key di stasiun tujuan data store adalah

ID_STASIUN_TUJUAN. Sedangkan ID_KERETA merupakan foreign

key dari kereta data store. Atribut lain pada stasiun tujuan data store

adalah NAMA_STASIUN_TUJUAN, ALAMAT_STASIUN_TUJUAN

dan NOTELP_STASIUN_TUJUAN.

8. Stasiun asal data store

Yang bertindak sebagai primary key di stasiun asal data store adalah

ID_STASIUN_ASAL. Sedangkan ID_KERETA merupakan foreign key

dari kereta data store. Atribut lain pada stasiun asal data store adalah

NAMA_STASIUN_ASAL, ALAMAT_STASIUN_ ASAL dan

NOTELP_STASIUN_ ASAL.

9. Gerbong data store

Pada gerbong data store terdapat atribut ID_GERBONG yang bertindak

sebagai primary key. ID_KERETA merupakan foreign key dari kereta

data store. Sedangkan atribut lain pada gerbong data store adalah

JENIS_GERBONG, HARGA, dan JUMLAH_KURSI.

10. Kursi data store

Page 14: Perancangan dan analisis Penjualan Tiket Kereta API Online

Pada entitas ini terdapat atribut ID_KURSI yang bertindak sebagai

primary key. Sedangkan ID_GERBONG merupaka foreign key dari

entitas gerbong data store. Untuk atribut lain dari entitas kursi data store

yaitu STATUS.