untuk:
Dipersiapkan oleh:
2017
Daftar Isi
Bab 1 Pendahuluan...................................................................................................................................................4
1.1 Tujuan Penulisan Dokumen......................................................................................................................4
1.2 Lingkup Masalah......................................................................................................................................4
1.3 Aturan Penomoran....................................................................................................................................4
1.4 Referensi...................................................................................................................................................4
1.5 Deskripsi Umum Dokumen (Ikhtisar)......................................................................................................4
Bagian ini diisi dengan sistematika pembahasan dokumen ini...............................................................................4
2 Bab 2 Kebutuhan Perangkat Lunak..................................................................................................................4
2.1 Deskripsi Umum Sistem...........................................................................................................................5
2.2 Fitur Utama Perangkat Lunak..................................................................................................................5
2.2.1 Kebutuhan Fungsional......................................................................................................................5
2.2.2 Kebutuhan Non Fungsional..............................................................................................................5
2.3 Model Use Case........................................................................................................................................6
2.3.1 Diagram Use Case............................................................................................................................6
2.3.2 Definisi Actor....................................................................................................................................6
2.3.3 Definisi Use Case..............................................................................................................................6
2.3.4 Skenario Use Case............................................................................................................................7
2.4 Spesifikasi Tambahan.............................................................................................................................10
2.5 Glossary...................................................................................................................................................10
3 Model Analisis................................................................................................................................................11
3.1 Realisasi Use Case Tahap Analisis.........................................................................................................11
3.2 Kelas Analisis.........................................................................................................................................13
3.2.1 Tanggung-Jawab dan Atribut..........................................................................................................14
3.2.2 Asosiasi dan Agregasi.....................................................................................................................14
3.2.3 Generalisasi.....................................................................................................................................14
3.2.4 Kebutuhan Khusus..........................................................................................................................14
3.3 Paket Analisis..........................................................................................................................................14
3.3.1 Identifikasi Paket Analisis..............................................................................................................14
3.3.2 Identifikasi Kelas Analisis tiap Paket.............................................................................................15
3.4 Prototipe Antarmuka...............................................................................................................................15
3.5 Deskripsi Arsitektur................................................................................................................................15
3.6 Pedoman Perancangan............................................................................................................................15
4 Model Perancangan........................................................................................................................................16
4.1 Realisasi Use Case Tahap Perancangan.................................................................................................16
4.2 Kelas Perancangan..................................................................................................................................16
4.3 Kelas Perancangan..................................................................................................................................19
4.3.1 Operasi dan Atribut.........................................................................................................................20
4.3.2 Asosiasi dan Agregasi.....................................................................................................................20
4.3.3 Generalisasi.....................................................................................................................................20
4.3.4 Algoritma/Query.............................................................................................................................20
4.3.5 Diagram Statechart.........................................................................................................................21
4.3.6 Kebutuhan Khusus..........................................................................................................................21
4.4 Perancangan Subsistem..........................................................................................................................21
4.4.1 Subsistem Pendukung.....................................................................................................................21
4.4.2 Subsistem Aplikasi..........................................................................................................................21
4.4.3 Identifikasi Kelas Perancangan tiap Subsistem.............................................................................21
4.5 Perancangan Antarmuka........................................................................................................................22
4.6 Coding Standard dan Naming Convention............................................................................................22
4.7 Deployment Diagram..............................................................................................................................22
5 Implementasi...................................................................................................................................................23
5.1 Implementasi Komponen........................................................................................................................23
5.2 Implementasi Subsistem.........................................................................................................................23
5.3 Implementasi Antarmuka.......................................................................................................................23
6 Pengisian Bab VI Pengujian...........................................................................................................................24
6.1 Rencana dan Prosedur Pengujian...........................................................................................................24
6.1.1 Rencana Pengujian..........................................................................................................................24
6.1.2 Prosedur Pengujian.........................................................................................................................24
6.2 Kasus Uji.................................................................................................................................................24
6.2.1 Pengujian Use Case <nama use case>............................................................................................24
6.3 Defect dan Status Perbaikan...................................................................................................................24
6.4 Evaluasi Pengujian..................................................................................................................................25
7 Pengisian Lampiran........................................................................................................................................25
1.4 Referensi
BPAD Laboratory. (2017). Modul Praktikum. Bandung: BPAD Laboratory.
manager
melihat laporan
<<include>>
<<include>>
mengecek kode booking
menghapus kereta
<<include>>
melakukan konfirmasi
pembayaran menambah kereta <<extend>>
<<extend>>
memesan
<<extend>> menghapus jadwal
menambah jadwal
admin
mengedit jadwal
<<extend>>
Bagian ini diisi dengan perbaikan diagram use case (lengkapi dengan extend, uses, dan lain-lain
jika perlu) dan uraiannya. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus
dilengkapi.
No Actor Deskripsi
1 Member Melakukan pemesanan,pembayaran dan melihat jadwal
2 Admin Menambah jadwal,daftar kereta.
3 Manajer Melihat laporan
Bagian ini diisi dengan daftar actor yang telah direvisi. Apabila pada fase ini masih ada
perbaikan, daftar perubahan harus dilengkapi.
Bagian ini diisi dengan daftar use case dan deskripsi singkat mengenai use case tersebut. Bisa
dibuat dalam bentuk tabel berikut:
No Use Case Deskripsi
1 Melihat jadwal Member dapat melihat jadwal kereta yang ada
2 Mengecek kode booking
3 Memesan Member dapat melakukan pemesanan yang diproses admin
4 Mengkonfirmasi Permintaan Admin mengkonfirmasi permintaan member
5 Melihat daftar kereta Member melihat daftar kereta yang ada
Bagian ini diisi dengan daftar use case yang telah direvisi. Apabila pada fase ini masih ada
perbaikan, daftar perubahan harus dilengkapi.
2.5 Glossary
Bagian ini diisi dengan daftar istilah yang digunakan, terutama istilah yang spesifik terhadap
domain problem. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
- Username : nama user yang digunakan untuk login
- Password : kata sandi user yang digunakan saat login
- Login : istilah dalam form untuk masuk ke sebuah sistem dengan kata
sandi dan nama user
- Logout : istilah dalam form untuk keluar dari sistem
0..*
m ember
1..* 0..1
- i d_m ember : Stri ng
- Nam a_mem ber : Stri ng
- alam at_member : Stri ng Pem esanan Kereta
- No_telp_member : int - i d_pemesanan : int - id_kereta : int
- Password : Stri ng - T gl_pesan : Date - Nama_kereta : String
+ Set_ID_member () : void - Jumlah T iket : int - Jumlah_gerbong : String
1
+ set_nam a_m ember () : void - T otal_pem bayaran : int
1..* + set_id_kereta () : void
+ set_alamat_member () : void + set_no_pesan () : void + set_nam a_kereta () : void
1
+ update () : void 1 + set_tgl_pesan () : void + set_jum lah_gerbong () : void
1
+ delete () : void + set_nama_pem esan () : void + update () : void
+ displ ay () : void + update () : void + delete () : void
+ get_id_m em ber () : void + search () : void + search () : void
+ get_nam a_member () : void + get_no_pesan () : void + get_id_kereta () : void
+ get_alam at_mem ber () : void + get_tgl_pesan () : void + get_nama_kereta () : void
+ get_nama_pemesan () : void + get_jumlah_gerbong () : void
1..*
1
1
1..*
1..*
Penum pang
Jadwal - i d_penum pang : int Gerbong
- j am _datang : int - j am_berangkat : int
- Nam a_penumpang : Stri ng - i d_gerbong : int
- j am _berangkat : int
- kategori : Stri ng - j eni s_gerbong : String
- tanggal_keberangkatan : Date
- harga : int
+ Set_jam_datang () : void + set_id_penumpang () : void - j um lah_kursi : int
+ set_tanggal_keberangkatan () : void + set_jam_berangkat () : void
+ set_id_gerbong () : void
+ set_j am_berangkat () : void + set_nama_penumpang () : void
+ set_jenis_gerbong () : void
+ update () : void + set_kategori () : void
+ update () : void + set_harga () : void
+ delete () : void
+ delete () : void + set_jumlah_kursi () : void
+ search () : void
+ search () : void + update () : void
+ get_jam_datang () : void
+ Get_id_penum pang () : void + delete () : void
+ get_tanggal_keberangkatan () : void
+ Get_jam_berangkat () : void + search () : void
+ get_jam_berangkat () : void
+ get_nama_penumpang () : void + get_i d_gerbong () : void
+ get_j enis_gerbong () : void
+ get_kategori () : void
+ get_harga () : void
+ Operation_12 () : void
+ get_j umlah_kursi () : void
Customer
1:set_no_pesan()
1.1:get_no_pesan():void
2:get_no_jadwal():void
3:get_tgl():void
4:get_hari():void
5:get_jam_brgkt():void
6:set_nama_kereta():void
7:set_no_kursi():void
8:update()
SequencePembayaran
Customer
1: search() :void
2:get_no_pesan() : void
3: validation()
4:set_nama_cust()
5:set_jumlah():void
6:cetakKwitansi()
3.2 Kelas Analisis
Bagian ini diisi dengan daftar kelas analisis dalam tabel berikut:
identifikasi atribut
identifikasi generalisasi
Untuk database, sistem ini menggunakan MySQL sebagai servernya. Sistem informasi
perpustakaan ini tedapat 3 pemakai yaitu member, admin dan manajer.
identifikasi generalisasi
Customer
1: search() :void
2:get_no_pesan() : void
3: validation()
4:set_nama_cust()
5:set_jumlah():void
6:cetakKwitansi()
Customer
1:set_no_pesan()
1.1:get_no_pesan():void
2:get_no_jadwal():void
3:get_tgl():void
4:get_hari():void
5:get_jam_brgkt():void
6:set_nama_kereta():void
7:set_no_kursi():void
8:update()
0..*
member
1..* 0..1
- id_member : String
- Nama_member : String
- alamat_member : String Pemesanan Kereta
- No_telp_member : int - id_pemesanan : int - id_kereta : int
- Password : String - Tgl_pesan : Date - Nama_kereta : String
+ Set_ID_member () : void - Jumlah Tiket : int - Jumlah_gerbong : String
1
+ set_nama_member () : void - Total_pembayaran : int
1..* + set_id_kereta () : void
+ set_alamat_member () : void + set_no_pesan () : void + set_nama_kereta () : void
1
+ update () : void 1 + set_tgl_pesan () : void + set_jumlah_gerbong () : void
1
+ delete () : void + set_nama_pemesan () : void + update () : void
+ display () : void + update () : void + delete () : void
+ get_id_member () : void + search () : void + search () : void
+ get_nama_member () : void + get_no_pesan () : void + get_id_kereta () : void
+ get_alamat_member () : void + get_tgl_pesan () : void + get_nama_kereta () : void
+ get_nama_pemesan () : void + get_jumlah_gerbong () : void
1..* 1
1
1..*
1..*
Penumpang
Jadwal - id_penumpang : int Gerbong
- jam_datang : int - jam_berangkat : int
- Nama_penumpang : String - id_gerbong : int
- jam_berangkat : int
- kategori : String - jenis_gerbong : String
- tanggal_keberangkatan : Date
- harga : int
+ Set_jam_datang () : void + set_id_penumpang () : void - jumlah_kursi : int
+ set_tanggal_keberangkatan () : void + set_jam_berangkat () : void
+ set_id_gerbong () : void
+ set_jam_berangkat () : void + set_nama_penumpang () : void
+ set_kategori () : void + set_jenis_gerbong () : void
+ update () : void
+ update () : void + set_harga () : void
+ delete () : void
+ delete () : void + set_jumlah_kursi () : void
+ search () : void
+ search () : void + update () : void
+ get_jam_datang () : void
+ delete () : void
+ get_tanggal_keberangkatan () : void + Get_id_penumpang () : void
+ search () : void
+ get_jam_berangkat () : void + Get_jam_berangkat () : void
+ get_id_gerbong () : void
+ get_nama_penumpang () : void
+ get_kategori () : void + get_jenis_gerbong () : void
+ Operation_12 () : void + get_harga () : void
+ get_jumlah_kursi () : void
identifikasi generalisasi
Nama Kelas: ..
4.3.3 Generalisasi
Bagian ini hanya diisi jika ada.
4.3.4 Algoritma/Query
Bagian ini hanya diisi untuk kerangka algoritma untuk proses-proses yang dianggap cukup
penting. Implementasi skeleton code juga sudah dapat dilakukan untuk kelas-kelas yang
terdefinisi pada bahasa pemrograman tertentu
Contoh:
Nama Kelas :
Nama Operasi :
Algoritma : (Algo-xxx)
Bagian ini diisi dengan daftar subsistem pendukung dan alokasinya pada node yang telah
teridentifikasi. Mis. dengan melengkapi tabel berikut:
No Subsistem Pendukung Alokasi Node
Jika objek dikaitkan ke File lain (misalnya file gambar, file teks), berikan nama file terkait dan deskripsi
ringkas dalam kolom keterangan
Bagian ini diisi dengan kasus uji versi final untuk seluruh use case. Lengkapi daftar perubahan
jika ada perbaikan.
7 Pengisian Lampiran
Bagian lampiran diisi dengan daftar resiko, user manual dan training material dibuat pada
dokumen terpisah. Lampirkan pula hasil pertemuan dengan user, maupun hasil review.