54
DOKUMEN PEMBANGUNAN PERANGKAT LUNAK <Sistem Penjadwalan Kamar,Gedung,Restoran Hotel> <Fase: ##> untuk: <ADMF> Dipersiapkan oleh: Dian Setya Anggara (095314004) Renaldo Malau (095314016) Febrian Cahyadi (095314026) Paulus Alvin Yudha (095314046) Program Studi Teknik Informatika Universitas Sanata Dharma Yogyakarta 2011

DPPL RPLBO PenjadwalanOnline (1)

Embed Size (px)

DESCRIPTION

dsfa

Citation preview

DOKUMEN PEMBANGUNAN PERANGKAT LUNAK

untuk:

Dipersiapkan oleh:

Dian Setya Anggara (095314004)

Renaldo Malau (095314016)

Febrian Cahyadi (095314026)

Paulus Alvin Yudha (095314046)

Program Studi Teknik Informatika

Universitas Sanata Dharma

Yogyakarta

2011

Program Studi

Teknik Informatika USDNomor Dokumen Halaman

DAFTAR PERUBAHAN

RevisiDeskripsi

A

B

C

D

E

F

G

INDEXTGL-ABCDEFG

Ditulis oleh

Diperiksa oleh

Disetujui oleh

Daftar Halaman Perubahan

HalamanRevisiHalamanRevisi

Daftar Isi

1Pendahuluan51.1Tujuan Penulisan Dokumen51.2Lingkup Masalah 51.3Aturan Penomoran51.4Referensi51.5Deskripsi Umum Dokumen (Ikhtisar)52Kebutuhan Perangkat Lunak62.1Deskripsi Umum Sistem62.2Fitur Utama Perangkat Lunak62.2.1Kebutuhan Fungsional62.2.2Kebutuhan Non Fungsional62.3Spesifikasi Tambahan62.4Glossary73Model Use Case83.1Diagram Use Case83.2Definisi Actor 83.3Definisi Use Case83.4Skenario Use Case94Model Analisis94.1Realisasi Use Case Tahap Analisis94.2Diagram Kelas Keseluruhan104.3Kelas Analisis 104.4Paket Analisis 114.4.1Identifikasi Paket Analisis114.4.2Identifikasi Kelas Analisis tiap Paket124.5Deskripsi Arsitektur125Model Perancangan145.1Realisasi Use Case Tahap Perancangan145.2Diagram Kelas Keseluruhan145.3Kelas Perancangan145.3.1Operasi dan Atribut155.3.2Algoritma/Query 165.3.3Diagram Statechart165.4Perancangan Basis Data165.5Perancangan Antarmuka165.6Coding Standard dan Naming Convention175.7Deployment Diagram176Implementasi186.1Implementasi Kelas186.2Implementasi Basis Data186.3Implementasi Antarmuka187Pengujian207.1Rencana dan Prosedur Pengujian207.1.1Rencana Pengujian207.1.2Prosedur Pengujian207.2Kasus Uji207.2.1Pengujian Use Case 217.3Defect dan Status Perbaikan217.4Evaluasi Pengujian218Lampiran221. Pendahuluan

1.1 Tujuan Penulisan Dokumen

Dokumen pengembangan perangkat lunak untuk para programmer dengan tujuan mempermudah kerja programmer dalam membuat dan mengimplementasikan rancangan.

1.2 Lingkup Masalah

Sistem pemesanan pada hotel yang ada saat ini adalah dengan cara manual, yaitu pencatatan nama, tanggal, dan nomor kamar di buku reservasi. sistem pencatan seperti ini mempunyai kelemahan, yaitu kesulitan dalam melihat penjadwalan, sehingga kamar yang sudah di pesan tamu, diberikan pada tamu lain.

1.3 Aturan Penomoran

kode Keterangan

SRS-P-(XXX)kebutuhan fungsional dengan nomor XXX untuk Resepsionis

1.4 Referensi

Refrensi dalam pengembangan perangkat lunak ini adalah template dokumen pengembangan perangkat lunak berorientasi obyek (Dosen : Puspaningtyas Sanjoyo Adi).

- www

HYPERLINK "http://www.exelsa.usd.ac.id".

HYPERLINK "http://www.exelsa.usd.ac.id"exelsa

HYPERLINK "http://www.exelsa.usd.ac.id".

HYPERLINK "http://www.exelsa.usd.ac.id"usd

HYPERLINK "http://www.exelsa.usd.ac.id".

HYPERLINK "http://www.exelsa.usd.ac.id"ac

HYPERLINK "http://www.exelsa.usd.ac.id".

HYPERLINK "http://www.exelsa.usd.ac.id"id1.5 Deskripsi Umum Dokumen (Ikhtisar)

Bab 1 : berisi tentang penjelasan umum tentang isi dokumen

Bab 2 : berisi tentang deskripsi umum dan kebutuhan perangkat lunak

Bab 3 : berisi tentang deskripsi model Use CaseBab 4 : berisi tentang realisasi use case

Bab 5 : berisi tentang model perancangan

Bab 6 : berisi tentang implimintasi perangkat lunak

Bab 7 : pengujian

2. Kebutuhan Perangkat Lunak 2.1 Deskripsi Umum Sistem

Aplikasi penjadwalan kamar,gedung dan restoran hotel ini memiliki 2 jenis user, yaitu user sebagai tamu hotel, dan user sebagai resepsionis. User sebagai tamu dapat mengecek info kamar dan melihat jadwal pemesanan gedung/restoran.Lalu untuk memesan, user dapat mengisikan data pribadi pada form.Sedangkan resepsionis dapat mengubah status kamar/gedung/restoran, yaitu kosong, berisi dan sudah dipesan / di pesan dengan uang muka (DP).Resepsionis dapat melihat data tamu dan melihat jadwal pemesanan kamar/gedung/restoran.Kamar/gedung /restoran dapat dipesan jika status kosong maupun dipesan tteapi belum bayar uang muka.

2.2 Fitur Utama Perangkat Lunak 2.2.1 Kebutuhan Fungsional

SRS-P-001 Menyimpan data-data inputan user.SRS-P-002 Membatalkan pesanan apabila dalam limit waktu yang ditentukan pengguna tidak memesan kamar.SRS-P-003 Menampilkan jadwal pemakaian kamar, restoran dan gedung.SRS-P-004 Mengubah status pemakaian kamar, restoran dan gedung menurut tanggal dan bulan.SRS-P-005 Mengubah jumlah sisa kamar kosong, baik VIP , regular maupun VVIP.

SRS-P-006 Mengubah status pemesanan tamu.SRS-P-007 Menghapus data tamu.2.2.2 Kebutuhan Non Fungsional

SRS-NF-001Software ini dapat bekerja 24 jam nonstop tanpa hang.

SRS-NF-002 Kecepatan maksimal dalam menyimpan data adalah 2 detik

SRS-NF-003 Software ini memerlukan minimum memory prmier 256 mb dan minimum untuk memory sekunder-nya adalah 8 GB.

2.3 Spesifikasi Tambahan

2.4 Glossary

- Submit : istilah dalam form online untuk mengirim data ke sistem

- Username : nama yang digunakan untuk login

- Password : kata sandi yang digunakan saat login

- Login : istilah dalam form untuk masuk ke sebuah sistem dengan kata sandi

- Logout : istilah dalam form untuk keluar dari sistem

3. Model Use Case

3.1. Diagram Use Case

3.2. Definisi Actor

Nama AktorDeskripsi tugas

Resepsionis login

Mengubah status gedung,restoran dan jumlah kamar Melihat data tamu dan update data tamu Logout

Tamu Melihat info kamar/gedung/restoran

Memesan kamar/gedung/restoran

Melihat jadwal kamar

Melihat jadwal gedung

Melihat jadwal restoran

NoActorDeskripsi

1Tamu dapat melihat info kamar, gedung dan restoran, melihat jadwal gedung dan restoran.

3.3. Definisi Use Case

NoUse Case (resepsionis)Deskripsi

1.LoginSistem akan menampilkan form login , berguna untuk resepsionis masuk ke sistem.

2.Melihat dan update data tamuSistem akan menampilkan form untuk melihat daftar data pemesanan

3.Mengubah status ruangSistem akan menampilkan form untuk mengubah status kamar/gedung/restoran (isi/pesan/kosong)

4.LogoutSistem akan menampilkan form untuk logout ,keluar dari sistem

NoUse Case (tamu)Deskripsi

1. Melihat info kamar/gedung/restoranSistem akan menampilkan form info kamar/gedung/restoran

2. Memesan kamar/gedung/restoranSistem akan menampilkan form pemesan kamar, gedung atau restoran

3Melihat daftar pemesanan restoransistem akan menampilkan form daftar pemesanan restoran

4Melihat jadwal pemesanan gedungSistem akan menampilkan form untuk melihat daftar pemesanan gedung

5Melihat jadwal pemesanan kamarSistem akan menampilkan form untuk melihat daftar pemesanan kamar

3.4. Skenario Use Case

3.4.1 Melihat info kamar/gedung/restoranAktor : Tamu

Kondisi awal: Tampilan awalKondisi akhir: Tamu mendapat informasi tentang kamar, gedung dan restoranSkenario utama

AksiReaksi

1. memilih menu untuk info kamar / gedung /restoran2. sistem menampilkan form menu pilihan tamu kamar, gedung atau restoran

3.4.2 Memesan Kamar/gedung/hotelAktor : Tamu

Kondisi awal: Halaman pemesanan kamar/gedung/ restoran

Kondisi akhir: menampilkan halaman pemesanan berhasil

AksiReaksi

1. Tamu masuk form pemesanan 3. Tamu memasukkan data diri, jika sudah klik pesan

2. sistem menampilkan form pemesanan

4. Sistem akan menyimpan data tamu

3.4.3 Melihat jadwal pemesanan gedung

Aktor : Tamu

Kondisi awal: Sistem menampilkan halaman jadwal pemesanan gedung

Kondisi akhir: Sistem memberi informasi jadwal pemesanan gedung

AksiReaksi

1. tamu memilih menu melihat jadwal pemesanan gedung3. Jika database error / terjadi kesalahan, maka terdapat warna abu-abu pada kolom tanggal pemesanan gedung2. Sistem menampilkan form halaman jadwal gedung

3.4.4 Melihat jadwal pemesanan Restoran

Aktor

: Tamu

Kondisi awal : sistem menampilkan form jadwal pemesanan restoran

Kondisi akhir : Sistem telah memberi informasi kepada tamu jadwal pemesanan restoran

AksiReaksi

1. tamu memilih menu melihat jadwal pemesanan restoran3. Jika database error / terjadi kesalahan, maka terdapat warna abu-abu pada kolom tanggal pemesanan restoran2. Sistem menampilkan jadwal pemesanan restoran

3.4.5 Mengubah Status Kamar/Gedung/Restoran

Aktor : resepsionis

Kondisi awal: resepsionis masuk ke form ubah status

Kondisi akhir: resepsionis berhasil mengubah status

AksiReaksi

1. 1. resepsionis memilih menu ubah status di halaman resepsionis

2.

3. 3.Resepsionis mengubah status kamar/gedung/restoran dengan memilih tombol status yang diinginkan

2. 2. Sistem menampilkan halaman ubah status4.Sistem akan menyimpan perubahan kedatabase, lalu menampilkan feedback, dan kembali ke halaman ubah status

3.4.9 Melihat Data Tamu

Aktor

: Resepsionis

Kondisi awal : Sistem menampilkan form data tamu

Kondisi akhir : resepsionis dapat melihat seluruh data tamu

AksiReaksi

1. 1. Resepsionis memilih menu Lihat Data tamu2. 2. 2. Sistem Menampilkan seluruh data tamu, data pesanaan dan status pembayaran

3.4.10 Login

Aktor

: Resepsionis

Kondisi awal : Sistem menampilkan form login Kondisi akhir : resepsionis dapat login dan masuk ke halaman awal resepsionisAksiReaksi

1. 1.Resepsionis memasukkan username dan password dan klik login2.

3

alternatif :

1. Saat username dan password yang dimasukkan tamu tidak sesuai dengan database, system menampilkan feedback dan kembali kehalaman form login2. 2. Sistem mengecek database, apakah username dan password sesuai, jika sesuai data di simpan dalam session

4.

3.4.11 Logout

Kondisi awal : resepsionis memilih menu logout

Kondisi akhir : resepsionis bisa logout

AksiReaksi

1. 1. sistem menampilkan form login

4 Model Analisis4.1 Realisasi Use Case Tahap Analisis

4.1.1 Pemesanan

Diagram Sequence:

4.1.2 Diagram sequence melihat info ruang

4.1.3 Melihat jadwal pemesanan restauran

4.1.4 Melihat jadwal pemasanan gedung

4.1.5 Melihat jadwal pemesanan kamar

4.1.6 Melihat data tamu

4.1.7 Mengubah status kamar/gedung/ restauran

4.1.8 Login

4.1.9 Logout

4.2 Diagram Kelas Keseluruhan

4.3 Kelas AnalisisNama KelasJenisUsecase Terkait

BerandaInterface Melihat info kamar/gedung/restoran

Memesan Melihat jadwal kamar

Melihat jadwal gedung

Melihat jadwal restoran

dataRuangEntity Mengubah status gedung,restoran dan jumlah kamar

jadwalPemesananGedungEntity Melihat jadwal gedung

jadwalPemesananKamarEntity Melihat jadwal kamar

jadwalPemesananRestoranEntity Melihat jadwal restoran

Lihat&UpdateTamuInterface Melihat data tamu dan update data tamu

lihatInfoRuangInterface Melihat info kamar/gedung/restoran

lihatInfo_PilihJenisRuanginterface Melihat info kamar/gedung/restoran

logininterface Login

Login_simpanDataController Login

Login_validasiController Login

LogoutController Logout

Pesan_pilihJenisRuangInterface Memesan

Pesan_ruangInterface Memesan

prosesDataTamuEntity Melihat data tamu dan update data tamu

ResepsionisInterface login

Mengubah status gedung,restoran dan jumlah kamar

Melihat data tamu dan update data tamu

Logout

simpanDataPesananEntity Memesan

ubahStatusInterface Mengubah status gedung,restoran dan jumlah kamar

databaseConnectionController Login

Melihat info kamar/gedung/restoran

Memesan

Melihat jadwal kamar

Melihat jadwal gedung

Melihat jadwal restoran

Mengubah status gedung,restoran dan jumlah kamar

Melihat dan update data tamu

kontrolerLoginController Login

Nama KelasDaftar tanggung jawabDaftar Atribut

BerandalihatInfo_pilihJenisRuang.jsppesan_pilihJenisRuang.jspjadwalPemesananRestoran.jspjadwalPemesananGedung.jspLihatInfoRuang_buttonPesanRuang_buttonJadwalPemesananRestoran_button

JadwalPemesananGedung_button

dataRuang

jadwalPemesananGedungberanda.jsplihatInfo_pilihJenisRuang.jsppesan_pilihJenisRuang.jspjadwalPemesananKamar.jspjadwalPemesananRestoran.jspjadwalPemesananGedung.jspberanda_buttonlihatInfoRuang_button

pesanRuang_button

jadwalPemesananKamar_button

jadwalPemesananGedung_button

jadwalPemesananKamarberanda.jsplihatInfo_pilihJenisRuang.jsppesan_pilihJenisRuang.jspjadwalPemesananKamar.jspjadwalPemesananRestoran.jspjadwalPemesananGedung.jspBeranda_buttonlihatInfoRuang_button

peanRuang_button

jadwalPemesananKamar_button

jadwalPemesananRestoran_button

jadwalPemesananGedung_button

jadwalPemesananRestoranberanda.jsplihatInfo_pilihJenisRuang.jsppesan_pilihJenisRuang.jspjadwalPemesananKamar.jspjadwalPemesananRestoran.jspjadwalPemesananGedung.jspBeranda_button

lihatInfoRuang_button

peanRuang_button

jadwalPemesananKamar_button

jadwalPemesananRestoran_button

jadwalPemesananGedung_button

Lihat&UpdateTamuresepsionis.jsphalamanUtamaTamu_button

lihatInfoRuanglihatInfo_pilihJenisRuang.jspkembali_button

lihatInfo_PilihJenisRuangresepsionis.jsphalamanUtamaResepsionis_button

loginLoginresetUsername_label

Username_field

Password_label

Password_field

Login_buttonReset_button

Login_simpanData

Login_validasi

Logoutlogin.jspLogout_button

Pesan_pilihJenisRuang

Pesan_ruang

prosesDataTamu

ResepsionislihatTamu.jsplogout.jsplihatDataTamu_buttonlogout_button

Untuk setiap kelas analisis, lakukan (dengan melengkapi subbab-subbab berikutnya):

identifikasi tanggung-jawab (responsibility)

identifikasi atribut

Nama KelasDaftar Tanggung-JawabDaftar Atribut

HalamanLoginKelas ini berguna untuk masuk ke system halaman awal resepsionis, dengan memasukkan username dan password

1.Username(label)dan(field)2. Password(label)dan(field)

HalamanPilihPemesanan Kelas ini menampilkan pilihan halaman pemesnan1. StatusRestoran (label) dan (checkbox)2. StatusKamar (label) dan (checkbox)3. StatusGedung(label) dan (checkbox)

HalamanPemesnanKamar Untuk menampilkan halaman pemesanan kamar1. Submit (label) dan (button)2. Nama(label) dan (field)3. TanggalLahir(label) dan (combobox)

4. Jeniskelamin(label) dan (combo box)

5. NomorTelepon(label) dan ( field)6. NomorRekening(label) dan (field)7. NamaPemilikrekening (label) dan (field)8. JenisKamar (label) dan (combo box)9. JumlahKamar (label) dan (combo box)

10. CekIn (label) dan (combo box)

11. Pesan (label) dan (button)

HalamanPemesananGedungUntuk menampilkan halaman pemesanan kamar1. Nama (label) dan (field)2. TanggalLahir(label) dan (combo box)3. Jeniskelamin(label) dan (combo box)4. NomorTelepon(label) dan (field)

5. NomorRekening(label) dan (field)6. NamaPemilikrekening(label) dan (field)7. TanggalSewa(label) dan (combo box)

8. Pesan (label) dan (field)

HalamanPemesananRestoranUntuk menampilkan halaman pemesanan restoran1. Nama (label) dan (field)2. TanggalLahir(label) dan (combo box)

3. Jeniskelamin (label) dan (combo box)4. NomorTelepon (label) dan (field)

5. NomorRekening (label) dan (field)6. NamaPemilikrekening (label) dan (field)7. TanggalSewa(label) dan (combo box)

8. Pesan(label) dan (button)

HalamanLihatTamuUntuk menampilkan halaman data tamu , dapat mengubah status pemesanan tamu.1. Pesan (combo box)

2. pesanDP (combo box)

3. Hapustamu (combo box)

4. Submit (button)

4.4 Paket Analisis

4.4.1 Identifikasi Paket Analisis

Pada fase Inception:

Pada fase ini, bagian ini belum diisi.

Pada fase Elaboration:Jika perlu, pemaketan dapat dilakukan untuk menyederhanakan persoalan.

Bagian ini dapat diisi dengan daftar paket analisis dengan mengacu pada diagram use case. Satu atau lebih use case dapat digabung kedalam satu paket. Satu use case hanya boleh berada pada satu paket.

NoNama PaketUse Case Terkait

1.PaketPemesanan1. MengisiFormDataPemesanankamar2. MengisiFormDataPemesananGedung

3. MengisiFormDataPemesananRestoran

2.PaketDataTamu1. MengecheckDataTamuHotel2. MengubahStatusTamu

3. MenghapusDataTamu

4.4.2 Identifikasi Kelas Analisis tiap PaketNoNama PaketNama Kelas AnalisisJenis Kelas(Boundary, Control, Entity)

1PaketPemesanan1. MengisiFormDataPemesanankamar

2. MengisiFormDataPemesananGedung

3. MengisiFormDataPemesananRestoran

2PaketDataTamu1. MengecheckDataTamuHotel

2. MengubahStatusTamu

3. MenghapusDataTamu

4.5 Deskripsi Arsitektur

Pada sistem pemesanan kamar,gedung,restoran hotel ini kami menggunakan arsitertur aplikasi berbasis web. yang dimana semua data inputan dari tamu akan disimpan dalam database, kecuali case untuk melihat data gedung,restoran.Bahasa pemograman yang digunakan dalam sistem pemesanan kamar,gedung,restoran ini adalah bahasa pemograman java.

Untuk database,sistem ini menggunakan MySQL sebagai servernya dan SQLyog sebagai sofetware utuk menjalankan MySQL. Sistem pemesanan kamar,gedung,restoran dirancang dalam bentuk tampilan berupa alaman-halaman website hotel. dimana pada halaman-halaman tersebut dapat dibedakan menjadi 2 tujuan pemakai,yaitu tamu hotel dan resepsionis

5 Model Perancangan

5.1 Realisasi Use Case Tahap Perancangan

Pada fase Inception:

Bagian ini belum diisi.

Pada fase Elaboration:

Bagian ini dibuat dalam subbab-subbab per use case. Untuk setiap use case yang menjadi target iterasi pada fase ini, bagian ini diisi dengan sequence diagram yang menggambarkan interaksi setiap objek dari kelas perancangan yang terlibat di dalam use case tersebut serta diagram kelas tahap perancangan. Perhatikan bahwa realisasi use case tahap perancangan BERBEDA dengan realisasi use case tahap analisis, karena pada tahap perancangan identifikasi kelas harus merupakan hasil refinement dari kelas-kelas pada tahap analisis. Misalnya, mencakup kelas-kelas yang akan di-reuse dari kelas-kelas yang sudah ada.

Pada fase Construction:

Bagian ini diisi dengan diagram kelas perancangan dan sequence diagram versi final. Lengkapi daftar perubahan jika terjadi perubahan.

1.2 Kelas Perancangan

NoDataNama Kelas PerancanganNama Kelas Analisis

1.Pemesanan 1. Halaman beranda2. DatabaseConnection3. pesan kamar / gedung / restoran

4. Simpan data pesan

interfacekontroler

interface

entity

2. Lihat info kamar / gedung / 1. Halaman beranda2. pilihan jenis ruang3. Jenis ruang interfaceinterfaceinterface

3.

Lihat jadwal

pemesanan gedung / restoran 1. Halaman Beranda2. databaseConnection3. Halaman jadwal pemesanan gedung / restoran

interfacekontroler

interface

4.Lihat jadwal pemesanan kamar1. Halaman resepsionis2. databaseConnection3. Halaman jadwal pemesanan kamarinterfacekontroler

interface

5. Liihat data tamu1. Halaman resepsionis

2. databaseConnection

3. Halaman data tamu

4. proses data tamuinterface

kontroler

interface

entity

6. Ubah status

kamar / gedung / restaoran1. Halaman resepsionis

2. Kontroler ubah status

3. Ubah status

4. Data ruanginterface

kontroler

interface

entity

7. Login 1. Halaman login

2. Kontroler login

3. databaseController

4. Login_SimpanData

5. Halaman resepsionisinterface

kontroler

kontroler

entity

interface

8.Logout1. Halaman resepsionis

2. Kontroler logout

3. Halaman logininterface

kontroler

interface

Untuk setiap kelas:

identifikasi operasi (mengacu pada tanggung-jawab kelas), termasuk visibility-nya

identifikasi atribut, termasuk visibility-nya

untuk operasi yang kompleks, sertakan algoritmanya

state chart diagram

Pada fase Construction:

Bagian ini diisi dengan versi final dari daftar kelas perancangan dan hasil perancangan detil setiap kelas. Lengkapi daftar perubahan.

1.3.1 Operasi dan Atribut

form login

Nama OperasiVisibility(private, public)Keterangan

otentikasi public check kebenaran username dan password

simpanDatapublicUntuk menyimpan session username dan password

Nama AtributVisibility(private, public)Tipe

username privateTextfield

password private Textfield

OK public Button

form melihat info

Nama OperasiVisibility(private, public)Keterangan

display infopublicuntuk melihat info kamar / gedung / restaurant

Nama AtributVisibility(private, public)Tipe

kamarpublic

gedungpublic

restauranpublic

1.3.2 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)

{Jika mengacu query tertentu, lengkapi tabel query di bawah}

Query :

No QueryQueryKeterangan

Q-xxx Tuliskan fungsi dari querynya

1.3.3 Diagram Statechart

Bagian ini hanya diisi jika ada kelas yang kompleks. Perubahan status kelas tersebut harus digambarkan dalam bentuk diagram statechart.

1.4 Perancangan Basis Data

Pada fase Elaboration:

Bagian ini diisi ER Diagram dan rencana tabel relasional. Sebagai petunjuk, kelas-kelas entity yang akan diimplementasikan sebagai tabel dibuat ERD-nya.

1.5 Perancangan Antarmuka

1.5.1 Pemesanan kamar

Id_ObjekJenisNamaKeterangan

Button 1 ButtonSubmit

Jika di klik Submit akan mengaktifkan proses Data pemesanan

Button2ButtonCancelJika diklik, akan mengaktifkan Proses kembali ke beranda / halaman awal

Button 3Button resetJika di klik akan kembali menampilkan halaman pemesnan kamar

1.5.2 Pemesanan restoran

Id_ObjekJenisNamaKeterangan

Diisi dengan string yg tampil pd layarDiisi dengan penjelasan reaksi sistem, misalnya membuka layar apa, link kemana. Jika menyangkut suatu kode yang cukup rumit, acu algoritma yang telah diuraikan di atas.

Button1ButtonOKJika diklik, akan mengaktifkan Proses AlgoXXX.

RTF1RTF Box Isi Teks yang disimpan pada File xxx

1.5.3 Pemesanan Gedung

1.5.4 Data Pemesan

Pada fase Inception:

Bagian ini diisi dengan versi awal prototipe antarmuka.

Pada fase Elaboration:

Bagian ini diisi dengan perbaikan rancangan antarmuka. Lengkapi daftar perubahan jika terjadi perbaikan. Selanjutnya, untuk setiap antarmuka/layar, tuliskan spesifikasi detilnya, misalnya seperti di bawah ini:

Antarmuka : {diisi dengan no. layar atau no gambar rancangan antarmuka}

Id_ObjekJenisNamaKeterangan

Diisi dengan string yg tampil pd layarDiisi dengan penjelasan reaksi sistem, misalnya membuka layar apa, link kemana. Jika menyangkut suatu kode yang cukup rumit, acu algoritma yang telah diuraikan di atas.

Button1ButtonOKJika diklik, akan mengaktifkan Proses AlgoXXX.

RTF1RTF Box Isi Teks yang disimpan pada File xxx

Jika objek dikaitkan ke File lain (misalnya file gambar, file teks), berikan nama file terkait dan deskripsi ringkas dalam kolom keterangan

Pada fase Construction:

Bagian ini diisi dengan versi final dari rancangan antarmuka. Lengkapi daftar perubahan jika terjadi perbaikan.

1.6 Coding Standard dan Naming Convention

Pada fase Inception:

Bagian ini belum diisi.

Pada fase Elaboration:

Bagian ini diisi dengan coding standard dan naming convention yang akan digunakan.

Pada fase Construction:

Bagian ini diisi dengan versi final dari coding standard dan naming convention. Lengkapi daftar perubahan jika terjadi perbaikan.

1.7 Deployment Diagram

Pada fase Inception:

Bagian ini belum diisi

Pada fase Elaboration:

Bagian ini diisi dengan deployment diagram yang menggambarkan alokasi proses pada node.

Pada fase Construction:

Bagian ini diisi dengan deployment diagram versi final. Lengkapi daftar perubahan jika terjadi perbaikan.

6 Implementasi

6.1 Implementasi Kelas

Pada fase Inception:

Bagian ini belum diisi.

Pada fase Elaboration:

Bagian ini diisi dengan daftar kelas yang TELAH diimplementasikan. Misalnya dalam bentuk tabel berikut:

NoNama KelasNama File FisikNama File ExecutableProgrammer

1 dataRuang dataRuang.jsp dataRuang.jsp Renaldo malau

2Login_simpanDataLogin_simpanData.jspLogin_simpanData.jspDian Setya

3Login_validasiLogin_validasi.jspLogin_validasi.jspDian Setya

4LogoutLogout.jspLogout.jspDian Setya

5prosesDataTamuprosesDataTamu.jspprosesDataTamu.jspAlvin yudha

6simpanDataPesanansimpanDataPesanan.jspsimpanDataPesanan.jsp

7DataBaseConnectionDataBaseConnection.javaDataBaseConnection.javaRenaldo Malau

8kontrolerLoginkontrolerLogin.javakontrolerLogin.javaDian Setya

Pada fase Construction:

Bagian ini diisi dengan daftar kelas yang TELAH diimplementasikan versi final. Lengkapi daftar perubahan.

6.2 Implementasi Basis Data

Pada fase Elaboration:

Bagian ini diisi dengan daftar tabel yang TELAH diimplementasikan. Misalnya dalam bentuk tabel berikut:

NoNama KelasNama TabelNama File SQLProgrammer

1datalogin

datalogin

Datalogin.sql

Renaldo Malau

2datatamudatatamudatatamu.sqlRenaldo Malau

3jadwalpemakaiangedung

jadwalpemakaiangedung

jadwalpemakaiangedung.sql

Renaldo Malau

4jadwalpemakaiankamarjadwalpemakaiankamarjadwalpemakaiankamar.sqlRenaldo Malau

5jadwalpemakaianrestoranjadwalpemakaianrestoranjadwalpemakaianrestoran.sqlRenaldo Malau

6.3 Implementasi Antarmuka

Pada fase Inception:

Bagian ini belum diisi.

Pada fase Elaboration:

Bagian ini diisi dengan daftar implementasi antarmuka. Misalnya dalam bentuk tabel berikut:

NoAntarmukaNama File FisikNama File ExecutableProgrammer

1berandaBeranda.jspBeranda.jsp Febrian Cahyadi

2 jadwalPemesananKamar jadwalPemesananKamar.jsp jadwalPemesananKamar.jsp Renaldo malau

3jadwalPemesananGedungjadwalPemesananGedung.jspjadwalPemesananGedung.jspRenaldo malau

4jadwalPemesananRestoranjadwalPemesananRestoran.jspjadwalPemesananRestoran.jspRenaldo malau

5lihatInfoRuanglihatInfoRuang.jsplihatInfoRuang.jspFebrian Cahyadi

6lihatInfo_pilihJenisRuanglihatInfo_pilihJenisRuang.jsplihatInfo_pilihJenisRuang.jspFebrian Cahyadi

7Lihat&UpdateTamuLihat&UpdateTamu.jspLihat&UpdateTamu.jspAlvin yudha

8LoginLogin.jspLogin.jspDian Setya

9Pesan_pilihjenisRuangPesan_pilihjenisRuang.jspPesan_pilihjenisRuang.jspAlvin yudha

10Pesan_ruangPesan_ruang.jspPesan_ruang.jspAlvin yudha

11ResepsionisResepsionis.jspResepsionis.jspFebrian cahyadi

12ubahStatusubahStatus.jspubahStatus.jspRenaldo malau

Pada fase Construction:

Bagian ini diisi dengan daftar implementasi antarmuka yang telah diimplementasikan versi final. Lengkapi daftar perubahan.

7 Pengujian

7.1 Rencana dan Prosedur Pengujian

7.1.1 Rencana Pengujian

Urutan pengujian yang dilakukan :

a. Menjalankan form login untuk user sebagai resepsionis

b. Menjalan halaman beranda untuk user sebagai tamu

c. Jika sebagai resepsionis, maka setelah login user akan masuk ke halaman resepsionis, dan mempunyai hak akses untuk melihat dan update data tamu, mengubah status ruang, dan logout.

d. Jika sebagai tamu, user mempunyai hak untuk melihat jadwal pemakaian gedung/kamar/restoran, melihat info ruang, dan memesan ruang.

Skenario pengujian yang akan dilakukan :

1. Halaman login

a. User memasukkan username dan passwod

b. User menekan tombol login

c. Jika data yang dimasukkan benar maka sistem akan menampilkan halaman yang halaman utama user ( owner atau agen )

d. Jika data yang dimasukkan salah maka sistem akan menampilkan pesan error.

2. MengubahStatusa. User masuk ke halaman ubah status ruang

b. User memilih salah satu status dalam ruang(kamar/gedung/restoran)

c. Setelah memilih, system akan kembali ke halaman ubah status ruang, dengan data yang sudah di update

3. Halaman Pemesanan kamar

a. User masuk ke halaman pilih jenis ruang, dan user memilih cekbox kamar

b. User masuk ke halaman pesan ruang, dengan form berupa data diri, dan data pesanan

c. Jika user mengisi semua field, maka pemesanan sukses, dan system menampilkan laporan

d. Jika user tidak mengisi salah satu field, maka pemesanan gagal, dan system akan menampilkan feedback, dan kembali ke halaman

4. Halaman Pemesanan restoran

a. User masuk ke halaman pilih jenis ruang, dan user memilih cekbox restoran

b. User masuk ke halaman pesan ruang, dengan form berupa data diri, dan data pesanan

c. Jika user mengisi semua field, maka pemesanan sukses, dan system menampilkan laporan

d. Jika user tidak mengisi salah satu field, maka pemesanan gagal, dan system akan menampilkan feedback, dan kembali ke halaman

5. Halaman Pemesanan gedung

a. User masuk ke halaman pilih jenis ruang, dan user memilih cekbox gedung

b. User masuk ke halaman pesan ruang, dengan form berupa data diri, dan data pesanan

c. Jika user mengisi semua field, maka pemesanan sukses, dan system menampilkan laporan

d. Jika user tidak mengisi salah satu field, maka pemesanan gagal, dan system akan menampilkan feedback, dan kembali ke halaman

6. Halaman Lihat Info

a. User masuk ke halaman lihat info

b. Dihalaman lihat info, terdapat menu combobox, yang berisi pilihan jenis ruang

c. Jika user memilih kamar, maka akan menampilkan info kamar, begitu pula untuk jenis ruang lain.

7. Halaman Lihat dan Update Data tamu

a. User masuk ke halaman lihat&updateTamu

b. System akan menampilkan seluruh data tamu, dengan form update data di kolom paling akhir

c. Jika user memilih combobox ubah status pesan, maka system akan mengupdate database, dan kembali ke halaman lihat&updateTamu dengan data yang telah diperbaharui

d. Jika user memilih combobox ubah status pesan DP, maka system akan mengupdate database, dan kembali ke halaman lihat&updateTamu dengan data yang telah diperbaharuie. Jika user memilih combobox hapus, maka system akan menghapus data tamu dari database, dan kembali ke halaman lihat&updateTamu dengan data yang telah diperbaharui7.1.2 Prosedur Pengujian

Halaman loginNoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-1-1Username = exist,

password = trueBuka HalamanUtamaResepsionisTampil HalamanUtamaResepsionis

2U-1-2Username = not existpesan errorKeluar pesan Joption.showmessageDialog(Username atau password salah);

3U-1-3Username = exist,

password = falsePesan errorKeluar pesan Joption.showmessageDialog(username atau password salah);

MengubahStatus

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-2-1StatusRestoran!=null

StatusKamar!=null

StatusGedung!=nullMasuk ke dalam tabel dan tersimpan dalam database

Masuk ke halaman ubah status restoran, kamar dan gedung dan hasil inputan tersimpan dalam database

Halaman Pemesanan kamar

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-3-1Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=

nullJenisKamar!=null

JumlahKamar!=null

CekIn!=null

Data inputan dapat tersimpan dan masuk ke halaman utamaData yang sudah di masukkan akan tersimpan di database dan masuk ke halaman pemesanan

2U-3-2Nama=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepo!n=nullNomorRekening!=nullNamaPemilikrekening!=

nullJenisKamar!=null

JumlahKamar!=null

CekIn!=null

errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

3U-3-3Nama!=nullTanggalLahir=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=

nullJenisKamar!=null

JumlahKamar!=null

CekIn!=null

errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

4U-3-4Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon=null

NomorRekening!=nullNamaPemilikrekening!=

nullJenisKamar!=null

JumlahKamar!=null

CekIn!=null

errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

5U-3-5Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=null

NomorRekening=nullNamaPemilikrekening!=nullJenisKamar!=null

JumlahKamar!=null

CekIn!=nullerrorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

6U-3-6Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=null

NomorRekening=nullNamaPemilikrekening=nullJenisKamar!=null

JumlahKamar!=null

CekIn!=nullerrorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

7U-3-7Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=null

NomorRekening=nullNamaPemilikrekening=nullJenisKamar!=null

JumlahKamar!=null

CekIn=nullerrorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

Halaman Pemesanan restoran

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-4-1Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon=nullNomorRekening=nullNamaPemilikrekening!=nullTanggalSewa!=null

Data tersimpan dan masuk ke halaman pemesanan restoranData tersimpan dan masuk ke halaman pemesanan restoran

2U-4-2Nama=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

3U-4-3Nama!=nullTanggalLahir=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

4U-4-4Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

5U-4-5Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening=nullNamaPemilikrekening!=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

6U-4-6Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

7U-4-7Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

Halaman Pemesanan gedung

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-5-1Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

Data tersimpan ke dalam database dan jika berhasil maka akan masuk ke halaman utamaMasuk ke halaman utama

2U-5-2Nama=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

3U-5-3Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

4U-5-4Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening=nullNamaPemilikrekening!=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

5U-5-5Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening=nullTanggalSewa!=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

6U-5-6Nama!=nullTanggalLahir!=null

Jeniskelamin!=nullNomorTelepon!=nullNomorRekening!=nullNamaPemilikrekening!=nullTanggalSewa=null

Pesan errorKeluar pesan Joption.showmessageDialog(Pemesanan gagal harap isikan field yang kosong);

Halaman Lihat Info

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-6-1Kamar!=nullDapat masuk ke halaman lihat info kamarMasuk ke halaman lihat info kamar

2U-6-1Gedung!=nullDapat masuk ke halaman lihat info gedungMasuk ke halaman lihat info gedung

3U-6-1Restoran!=nullDapat masuk ke halaman lihat info restoranMasuk ke halaman lihat info restoran

Halaman Lihat dan Update Data tamu

NoIdentifikasiMasukanHasil Yang diharapkanHasil Yang Terjadi

1U-7-1Pesan!=nullDapat mengubah status pembayaran menjadi pesan setelah di submitStatus pembayaran ter-update di database menjadi pesan

2U-7-2PesanDP!=nullDapat mengubah status pembayaran menjadi Pesan DP setelah di submitStatus pembayaran ter-update di database menjadi Pesan DP

3U-7-2HapusTamu!=nullDapat menghapus data tamuData tamu yang sudah di hapus hilang dari data base

7.2 Kasus Uji

7.2.1 Pengujian Use Case

(Terlampir pada laporan pengujian)IdentifikasiDeskripsiProsedur PengujianMasukanKeluaran yang DiharapkanKriteria Evaluasi HasilHasil yang DidapatKesimpulan

U-1-01Pengujian hasil pemasukan data pelanggan oleh operatoro Buka File data pelanggano Cari rekord dengan data modus pemasukan yang diinginkano Lihat tanggal lahir pelanggano Lihat kode pelanggano Bandingkan dengan rumus pembangkitan kode pelanggan Kode modus pemasukan operator (01)0100101002

01003

dst01 01