PPL: EAS
Nama: Hanafi Satriyo Utomo Setiawan
NRP: 5025211195
1. Deskripsikan model bisnis yang dipilih?
layanan perhotelan yang menyediakan akomodasi semalam bagi tamu. Layanan ini mencakup berbagai tahap mulai dari reservasi hingga check-out, dengan proses yang terperinci untuk memastikan kenyamanan dan kepuasan pelanggan. Fase-fase utamanya adalah:
- Penelitian dan Pemesanan: Pelanggan melakukan reservasi melalui situs web hotel.
- Kedatangan: Pelanggan tiba di hotel, menyerahkan bagasi, melakukan check-in, dan menuju kamar.
- Masa Menginap: Pelanggan menikmati fasilitas hotel seperti menonton film, menggunakan kamar mandi, memesan layanan kamar, dan makan.
- Check-out dan Keberangkatan: Pelanggan melakukan check-out melalui TV menu dan meninggalkan hotel.
2. Identifikasi perangkat lunak apa saja yang diperlukan, kemudian jelaskan alasannya?
- Sistem Manajemen Properti (Property Management System - PMS):
- Alasan: PMS adalah inti dari operasional hotel. Sistem ini mengelola reservasi, check-in, check-out, alokasi kamar, dan data pelanggan. PMS juga berintegrasi dengan sistem lain seperti POS dan sistem layanan pelanggan untuk memastikan informasi konsisten di seluruh departemen.
- Sistem Manajemen Reservasi (Reservation Management System - RMS):
- Alasan: RMS menangani pemesanan kamar yang dilakukan melalui berbagai saluran, termasuk situs web hotel, agen perjalanan online (OTA), dan walk-in. Sistem ini memastikan ketersediaan kamar selalu terupdate dan menghindari overbooking.
3. Buatkan rancangan perangkat lunaknya ?
Kebutuhan Fungsional
- Sistem Manajemen Properti (PMS):
- Mengelola reservasi: Sistem harus dapat menangani pembuatan, pembaruan, dan pembatalan reservasi.
- Check-in/check-out: Sistem harus memungkinkan proses check-in dan check-out tamu, termasuk pencetakan kunci kamar dan faktur.
- Manajemen kamar: Sistem harus mengelola status kamar (tersedia, terisi, dibersihkan, dll.) dan alokasi kamar untuk tamu.
- Integrasi dengan sistem lain: PMS harus terintegrasi dengan sistem POS, sistem layanan pelanggan, dan sistem manajemen bagasi.
- Sistem Manajemen Reservasi (RMS):
- Pemrosesan reservasi: Sistem harus memproses pemesanan kamar dari situs web, OTA, dan walk-in.
- Pembaruan ketersediaan kamar: Sistem harus secara real-time memperbarui ketersediaan kamar untuk menghindari overbooking.
- Notifikasi: Sistem harus memberikan notifikasi konfirmasi reservasi dan pengingat kepada tamu.
Kinerja:
- Respon waktu: Sistem harus merespon permintaan dalam waktu kurang dari 2 detik untuk operasi biasa.
- Skalabilitas: Sistem harus dapat menangani peningkatan jumlah tamu dan transaksi tanpa penurunan kinerja.
Keandalan:
- Uptime: Sistem harus memiliki uptime minimal 99.9% untuk memastikan layanan selalu tersedia bagi tamu dan staf.
- Pemulihan bencana: Sistem harus memiliki rencana pemulihan bencana yang efektif untuk memastikan kelangsungan operasional.
Keamanan:
- Enkripsi data: Semua data sensitif, termasuk informasi pembayaran dan data pribadi tamu, harus dienkripsi.
- Autentikasi: Sistem harus menggunakan metode autentikasi yang kuat untuk mengakses sistem.
Kemudahan Penggunaan:
- Antarmuka pengguna: Sistem harus memiliki antarmuka pengguna yang intuitif dan mudah digunakan bagi tamu dan staf.
- Panduan pengguna: Sistem harus menyediakan panduan pengguna dan bantuan online untuk membantu pengguna memahami fitur-fitur yang tersedia.
Portabilitas:
- Kompatibilitas platform: Sistem harus kompatibel dengan berbagai perangkat dan platform, termasuk desktop, tablet, dan perangkat mobile.
- Migrasi data: Sistem harus mendukung migrasi data dari sistem lama ke sistem baru tanpa kehilangan data.
Pemeliharaan:
- Dokumentasi: Sistem harus didokumentasikan dengan baik untuk memudahkan pemeliharaan dan pengembangan di masa depan.
- Pembaruan: Sistem harus mudah diperbarui untuk menambahkan fitur baru dan memperbaiki bug.
Use Case Diagram
Use Case Diagram |
Diagram ini menunjukkan interaksi antara sistem dan pengguna yang berbeda, disebut aktor. Aktor dalam diagram ini adalah:
- Pelanggan (Customer)
- Admin
- Resepsionis (Staf Front Desk)
Sistem menawarkan beberapa fungsi, yang disebut use case. Use case dalam diagram ini adalah:
- Liat kamar (Lihat Kamar) - Use case ini memungkinkan pelanggan untuk melihat kamar yang tersedia.
- Input data reservasi (Input Data Reservasi) - Use case ini memungkinkan pelanggan untuk memasukkan data reservasi mereka.
- Login - Use case ini memungkinkan pelanggan dan staf untuk login ke sistem.
- Logout - Use case ini memungkinkan pelanggan dan staf untuk keluar dari sistem.
- Mengelola data kamar (Mengelola Data Kamar) - Use case ini memungkinkan admin untuk mengelola data kamar. Ini mungkin termasuk menambah, memperbarui, atau menghapus informasi kamar.
- Mengelola data tamu (Mengelola Data Tamu) - Use case ini memungkinkan admin untuk mengelola data tamu. Ini mungkin termasuk menambah, memperbarui, atau menghapus informasi tamu.
- Pembayaran (Pembayaran) - Use case ini memungkinkan pelanggan untuk melakukan pembayaran untuk reservasi mereka.
- Laporan (Laporan) - Use case ini memungkinkan admin untuk menghasilkan laporan. Ini mungkin termasuk laporan reservasi, tamu, atau kamar.
- Konfirmasi pemesanan (Konfirmasi Pemesanan) - Use case ini memungkinkan resepsionis untuk mengkonfirmasi reservasi.
- Konfirmasi pembatalan (Konfirmasi Pembatalan) - Use case ini memungkinkan resepsionis untuk mengkonfirmasi pembatalan reservasi.
Activity Diagram
Mulai (Start)
- Registrasi (Registrasi): Pelanggan memulai proses dengan mendaftarkan informasinya di sistem. Ini mungkin melibatkan pembuatan akun baru atau masuk ke akun yang sudah ada.
- Verifikasi dan konfirmasi data (Verifikasi dan Konfirmasi Data): Sistem memverifikasi dan mengkonfirmasi data pelanggan. Ini mungkin melibatkan pengecekan alamat email atau nomor telepon mereka.
Melakukan Reservasi (Membuat Reservasi)
- Input data kamar (Input Data Kamar): Pelanggan memasukkan preferensi kamar mereka, seperti tipe kamar, tanggal menginap, dan jumlah tamu.
- Menampilkan menu sesuai hak akses (Menampilkan Menu Sesuai Hak Akses): Sistem menampilkan opsi kamar yang tersedia berdasarkan preferensi pelanggan dan ketersediaan kamar.
- Lihat ketersediaan kamar (Lihat Ketersediaan Kamar): Pelanggan dapat melihat ketersediaan kamar yang berbeda untuk tanggal yang mereka pilih.
- Update kamar (Update Kamar): Sistem memperbarui ketersediaan kamar berdasarkan pilihan pelanggan.
Konfirmasi dan Pembayaran (Konfirmasi dan Pembayaran)
- Diterima (Disetujui): Jika ada kamar yang tersedia yang memenuhi kriteria pelanggan, sistem melanjutkan ke langkah berikutnya.
- Ditolak (Ditolak): Jika tidak ada kamar yang tersedia yang memenuhi kriteria pelanggan, sistem menolak reservasi dan proses berakhir di sini.
- Input informasi tambahan (Input Informasi Tambahan): Pelanggan mungkin perlu memberikan informasi tambahan, seperti detail tamu atau informasi kontak.
- Status Kamar (Status Kamar): Sistem memeriksa status kamar untuk memastikan ketersediaannya untuk dipesan.
- Reservasi Kamar (Reservasi Kamar): Sistem memesan kamar untuk pelanggan.
- Input data pembayaran (Input Data Pembayaran): Pelanggan memasukkan informasi pembayaran mereka untuk membayar reservasi.
- Data Pembayaran (Data Pembayaran): Sistem memproses data pembayaran.
- Cetak invoice (Cetak Invoice): Sistem membuat invoice untuk reservasi pelanggan.
Akhir (End)
- Input laporan pemesanan (Input Laporan Reservasi): Sistem mungkin meminta pelanggan untuk memasukkan umpan balik atau ulasan tentang pengalaman reservasi mereka. (Langkah ini mungkin opsional).
- Log out (Keluar): Pelanggan keluar dari sistem.
- End (Selesai): Proses reservasi selesai.
Sequence Diagram
- Membuka halaman home (Membuka halaman beranda): Pelanggan memulai dengan membuka halaman beranda sistem reservasi online.
- Membuka halaman kamar (Membuka halaman kamar): Dari halaman beranda, pelanggan menavigasi ke halaman kamar untuk menelusuri kamar yang tersedia.
- Memilih kamar (Memilih kamar): Pelanggan memilih kamar yang ingin dipesan berdasarkan preferensinya, seperti jenis kamar, harga, dan fasilitas.
- Memasukkan reservasi data (Memasukkan data reservasi): Pelanggan mengisi formulir reservasi, memberikan informasi pribadi mereka, tanggal check-in dan check-out, dan permintaan tambahan lainnya.
- Menyimpan reservasi data (Menyimpan data reservasi): Pelanggan mengirimkan formulir reservasi, dan sistem memproses data.
- Memeriksa ketersediaan kamar (Memeriksa ketersediaan kamar): Setelah menerima permintaan reservasi, sistem memeriksa ketersediaan kamar yang dipilih untuk tanggal yang ditentukan.
- Menampilkan pesan konfirmasi/penolakan (Menampilkan pesan konfirmasi/penolakan): Jika kamar tersedia, sistem akan menampilkan pesan konfirmasi dan melanjutkan ke langkah pembayaran. Jika tidak, ini akan menampilkan pesan penolakan dan proses berakhir.
- menyimpan reservasi data (Menyimpan data reservasi): Jika reservasi dikonfirmasi, sistem menyimpan rincian reservasi di database-nya.
- Mengirim email konfirmasi ke pelanggan (Mengirim email konfirmasi ke pelanggan): Sistem membuat dan mengirimkan email konfirmasi ke pelanggan, merangkum rincian reservasi.
- Memverifikasi reservasi (Memverifikasi reservasi): Staf hotel memeriksa sistem reservasi untuk memverifikasi reservasi pelanggan dan mempersiapkan kedatangan mereka.
- Mengirim email pengingat check-in ke pelanggan (Kirim email pengingat check-in ke pelanggan): Beberapa hari sebelum tanggal check-in pelanggan, sistem mengirimkan email pengingat ke pelanggan.
- Menerima pembayaran (Menerima pembayaran): Setelah pelanggan tiba, staf hotel memproses pembayaran dan menangani prosedur check-in.
- Mengelola layanan tamu (Mengelola layanan tamu): Selama tamu menginap, staf hotel memberikan bantuan dan layanan sesuai kebutuhan.
- Menerima check-out (Menerima check-out): Setelah pelanggan berangkat, staf hotel menangani proses check-out dan memperbarui status reservasi di sistem.
- Database
- Informasi tamu: 20 KB per tamu
- Reservasi: 5 KB per reservasi
- Transaksi POS: 10 KB per transaksi
- Permintaan layanan pelanggan: 2 KB per permintaan
- Konten hiburan: 1 GB per konten (total 500 konten)
- Estimasi Penyimpanan
- Informasi tamu: 160 tamu * 20 KB = 3,2 MB per hari
- Reservasi: 50 reservasi * 5 KB = 0,25 MB per hari
- Transaksi POS: 300 transaksi * 10 KB = 3 MB per hari
- Permintaan layanan pelanggan: 100 permintaan * 2 KB = 0,2 MB per hari
- Konten hiburan: 500 konten * 1 GB = 500 GB (tetap)
- Total Penyimpanan per Tahun (365 hari)
- Informasi tamu: 3,2 MB * 365 = 1,17 GB
- Reservasi: 0,25 MB * 365 = 91,25 MB
- Transaksi POS: 3 MB * 365 = 1,1 GB
- Permintaan layanan pelanggan: 0,2 MB * 365 = 73 MB
- Total Penyimpanan Tahunan: 1,17 GB + 91,25 MB + 1,1 GB + 73 MB = 2,44 GB + 500 GB (konten hiburan)
API Endpoints
Reservation Management System:
POST /reservations
- Create a new reservationGET /reservations/{id}
- Retrieve reservation detailsPUT /reservations/{id}
- Update reservation detailsDELETE /reservations/{id}
- Cancel reservation
Property Management System:
POST /checkin
- Check-in a customerPOST /checkout
- Check-out a customerGET /rooms/{id}
- Retrieve room details
4. Lengkapi dengan desain database dan desain UI
Class Diagram |
Pelanggan (Customer) - Kelas ini mewakili pelanggan yang dapat melakukan reservasi di hotel. Ini memiliki atribut seperti:
- nama lengkap (full name)
- alamat (address)
- jenis kelamin (gender) (kemungkinan)
- no telepon (phone number)
- ommall (kemungkinan pengenal sistem internal)
- username
- password
Reservasi (Reservation) - Kelas ini mewakili reservasi yang dibuat oleh pelanggan. Ini memiliki atribut seperti:
- id reservasi (reservation ID)
- id tamu (guest ID) (kemungkinan foreign key yang mereferensikan kelas Pelanggan)
- al_reservasi (catatan/informasi reservasi)
- chekin (tanggal check-in) (kemungkinan)
- checkout (tanggal check-out) (kemungkinan)
- transfer ke bank (metode pembayaran)
- transfer dan bank (kemungkinan detail transfer dan bank)
- no rekening (nomor rekening bank) (kemungkinan)
- atas nama (nama pemilik rekening) (kemungkinan)
- wang muks (uang muka) (kemungkinan)
Pembayaran (Payment) - Kelas ini mewakili pembayaran yang dilakukan oleh pelanggan. Ini memiliki atribut seperti:
- id pembayaran (payment ID) (kemungkinan)
- kid booking (ID booking) (kemungkinan foreign key yang mereferensikan kelas Reservasi)
- jumlah bayar (total jumlah pembayaran)
Kamar (Room) - Kelas ini mewakili kamar di hotel. Ini memiliki atribut seperti:
- jenis kamar (room type)
- kapasitas kamar (kapasitas kamar) (kemungkinan)
- harga kamar (room price) (kemungkinan)
- dtamu (detail tamu yang menempati kamar) (kemungkinan)
Check In Out - Kelas ini kemungkinan mewakili proses check-in/check-out. Ini memiliki atribut seperti:
- kd checkin out (ID check-out) (kemungkinan)
- id karmar (ID kamar) (kemungkinan foreign key yang mereferensikan kelas Kamar)
- id tamu (ID tamu) (kemungkinan foreign key yang mereferensikan kelas Pelanggan)
- dtamu (detail tamu yang check in/out) (kemungkinan)
- tor checkin (waktu check-in) (kemungkinan)
- jam checkout (waktu check-out) (kemungkinan)
- status pembayaran (status pembayaran)
Admin - Kelas ini mewakili pengguna admin dari sistem. Kemungkinan memiliki atribut seperti:
- id admin (ID admin)
- username
- password
Hubungan antar kelas:
- Pelanggan (Customer) dapat melakukan banyak Reservasi (Reservation) (one-to-many).
- Reservasi (Reservation) dibuat oleh satu Pelanggan (Customer) (many-to-one).
- Reservasi (Reservation) memiliki satu Pembayaran (Payment) (one-to-one).
- Pembayaran (Payment) milik satu Reservasi (Reservation) (many-to-one).
- Kamar (Room) dapat dimasukkan ke dalam banyak Reservasi (Reservation) (one-to-many).
- Reservasi (Reservation) dapat mencakup satu Kamar (Room) (many-to-one).
- Check In Out kemungkinan terkait dengan Kamar (Room) dan Pelanggan (Customer) (many-to-many). Ini mungkin juga terkait dengan Reservasi (Reservation).
Desain UI Aplikasi
Tamplian Registrasi |
Tampilan Menu Kamar |
Tampilan Dashboard |
5. Buat Presentasi dan demo hasil rancangan Perangkat Lunak, kemudian upload di Youtube, dan isi lembar monitoring?
Comments
Post a Comment