PPL : Pertemuan 6 - Tugas 5

Low Level Design

Nama: Hanafi Satriyo Utomo Setiawan
NRP : 5025211195 

Jurnal referensi: https://ejournal.unma.ac.id/index.php/infotech/article/view/5246/2911

Kebutuhan Fungsional:

  • Autentikasi Pengguna:
    • Pengguna dapat mendaftar dan masuk menggunakan email atau nomor telepon.
  • Pengaduan:
    • Pengguna dapat membuat, mengedit, dan menghapus pengaduan.
    • Pengguna dapat melampirkan foto, video, atau dokumen lain dalam pengaduan.
  • Kategorisasi Pengaduan:
    • Pengguna dapat memilih kategori untuk setiap pengaduan (misalnya, infrastruktur, keamanan, layanan publik).
  • Pelacakan Status:
    • Pengguna dapat melihat status pengaduan mereka (diterima, diproses, selesai).
  • Notifikasi:
    • Pengguna menerima notifikasi tentang status pengaduan mereka.
  • Laporan Statistik: 
    • Admin dapat melihat laporan statistik pengaduan berdasarkan kategori, lokasi, dan status.

Kebutuhan Non-Fungsional:

  • Kinerja:
    • Sistem harus responsif dengan waktu respons kurang dari 2 detik untuk setiap permintaan.
  • Keamanan:
    • Data pengguna dan pengaduan harus dienkripsi.
    • Sistem harus mendukung autentikasi dua faktor.
  • Skalabilitas:
    • Sistem harus mampu menangani hingga 10.000 pengguna aktif sekaligus.
  • Usability:
    • Aplikasi harus memiliki antarmuka yang mudah digunakan dan intuitif.
  • Kompatibilitas:
    • Aplikasi harus kompatibel dengan berbagai versi Android (minimal Android 5.0 Lollipop).
  • Reliabilitas:
    • Sistem harus memiliki uptime 99.9%.

Arsitektur Sistem:

  • Client Side (Mobile App):
    • Dibangun menggunakan framework seperti Flutter atau React Native untuk mendukung berbagai platform (Android dan iOS).
    • Fitur utama: Autentikasi, pembuatan dan pelacakan pengaduan, notifikasi, komentar, pencarian, dan peta lokasi.
  • Backend:
    • Server-side menggunakan Node.js atau Django untuk API.
    • Database menggunakan PostgreSQL atau MongoDB untuk menyimpan data pengguna dan pengaduan.
    • Storage seperti AWS S3 atau Google Cloud Storage untuk menyimpan file lampiran.
  • API Gateway:
    • Untuk mengatur routing dan load balancing.

Desain Database


Desain Antarmuka

Detail Pengaduan

Buat Pengaduan

Halaman Beranda


Estimasi Kapasitas Perancangan Sistem

  • Pengguna Aktif:
    • 10.000 pengguna aktif simultan.
  • Pengaduan per Hari:
    • Estimasi 1.000 pengaduan baru per hari.
  • Lampiran:
    • Rata-rata 3 lampiran per pengaduan dengan ukuran rata-rata 5 MB.
  • Database Storage:
    • Estimasi kebutuhan ruang penyimpanan untuk 1 tahun adalah sekitar 100 GB untuk data pengaduan dan pengguna.

Jadwal Pengembangan

  • Analisis Kebutuhan (2 minggu):
    • Mengumpulkan dan mendefinisikan kebutuhan fungsional dan non-fungsional dengan berkolaborasi dengan pemangku kepentingan dan calon pengguna.
  • Desain Sistem (1 bulan):
    • Merancang arsitektur sistem termasuk komponen backend dan frontend.
    • Membuat desain UI/UX untuk aplikasi Android.
  • Pengembangan Backend (2 bulan):
    • Membangun API dan database.
    • Mengembangkan layanan backend lainnya seperti autentikasi, notifikasi, dan manajemen pengaduan.
  • Pengembangan Mobile App (2 bulan):
    • Membangun aplikasi Android dengan fitur utama seperti autentikasi, pembuatan dan pelacakan pengaduan, notifikasi, komentar, pencarian, dan peta lokasi.
    • Mengintegrasikan aplikasi dengan API backend.
  • 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.
  • Penyebaran dan Pemeliharaan (Berlanjut):
    • Menyebarkan sistem ke lingkungan produksi.
    • Melakukan pemeliharaan berkala untuk memperbaiki bug, meningkatkan performa, dan menambah fitur baru berdasarkan masukan pengguna.


Comments

Popular posts from this blog

PPL : Pertemuan 2

PPL : Pertemuan 7

Final Project : Pemrograman Berbasis Kerangka Kerja A