PPL: Pertemuan 6
Low Level Design
Referensi:
https://repository.dinamika.ac.id/id/eprint/1613/5/BAB_III.pdf
Kebutuhan Fungsional:
1. Autentikasi Pengguna:
- Pengguna dapat mendaftar dan masuk menggunakan email atau nomor telepon.
2. Penjualan Roti:
- Kasir dapat mencatat transaksi penjualan roti.
- Kasir dapat mencetak nota penjualan.
- Sistem dapat menyimpan data penjualan ke dalam database.
3. Pemesanan Roti:
- Pengguna dapat memesan roti melalui sistem.
- Kasir dapat mencatat pemesanan roti dan mencetak nota pemesanan.
- Sistem dapat mengirim notifikasi ke bagian produksi untuk pesanan baru.
4. Manajemen Data:
- Admin dapat mengelola data cabang, barang, karyawan, dan konsumen.
- Sistem dapat menghasilkan laporan penjualan dan pemesanan.
5. Pelacakan Status Pesanan:
- Konsumen dapat melacak status pesanan mereka (diproses, dikirim, selesai).
Kebutuhan Non-Fungsional:
1. Kinerja:
- Sistem harus responsif dengan waktu respons kurang dari 2 detik untuk setiap permintaan.
2. Keamanan:
- Data pengguna dan transaksi harus dienkripsi.
- Sistem harus mendukung autentikasi dua faktor.
3. Skalabilitas:
- Sistem harus mampu menangani hingga 10.000 pengguna aktif sekaligus.
4. Usability:
- Aplikasi harus memiliki antarmuka yang mudah digunakan dan intuitif.
5. Kompatibilitas:
- Aplikasi harus kompatibel dengan berbagai versi browser.
6. Reliabilitas:
- Sistem harus memiliki uptime 99.9%.
Jadwal Pengembangan:
1. Analisis Kebutuhan (2 minggu):
- Mengumpulkan dan mendefinisikan kebutuhan fungsional dan non-fungsional dengan berkolaborasi dengan pemangku kepentingan dan calon pengguna.
2. Desain Sistem (1 bulan):
- Merancang arsitektur sistem termasuk komponen backend dan frontend.
- Membuat desain UI/UX untuk aplikasi.
3. Pengembangan Backend (2 bulan):
- Membangun API dan database.
- Mengembangkan layanan backend lainnya seperti autentikasi, notifikasi, dan manajemen penjualan/pemesanan.
4. Pengembangan Frontend (2 bulan):
- Membangun aplikasi web dengan fitur utama seperti autentikasi, pembuatan dan pelacakan pesanan, notifikasi, dan manajemen data.
- Mengintegrasikan aplikasi dengan API backend.
5. Pengujian (1 bulan):
- Melakukan pengujian fungsionalitas untuk memastikan setiap fitur bekerja dengan baik.
- Melakukan pengujian performa untuk memastikan aplikasi responsif dan dapat menangani beban pengguna yang diprediksi.
- Melakukan pengujian keamanan untuk memastikan data pengguna dan komunikasi aman.
6. Penyebaran dan Pemeliharaan (Berlanjut):
- Menyebarkan sistem ke lingkungan produksi.
- Melakukan pemeliharaan berkala untuk memperbaiki bug, meningkatkan performa, dan menambah fitur baru berdasarkan masukan pengguna.
Arsitektur Sistem
Estimasi Kapasitas Perancangan Sistem
- Pengguna Aktif: 10.000 pengguna aktif simultan.
- Transaksi Penjualan per Hari: Estimasi 500 transaksi penjualan baru per hari.
- Pemesanan per Hari: Estimasi 200 pemesanan baru per hari.
- Database Storage: Estimasi kebutuhan ruang penyimpanan untuk 1 tahun adalah sekitar 50 GB untuk data penjualan dan pemesanan.
Desain Database
Desain Antarmuka
Comments
Post a Comment