@startuml
actor Pengguna
boundary "HalamanUpload" as HU
control "ControlUpload" as CU
database "Database" as DB
Pengguna -> HU: Login ke Aplikasi
HU -> CU: Verifikasi Data Pengguna
CU -> DB: Cek Data Pengguna
DB --> CU: Hasil Validasi
CU --> HU: Status Validasi
HU --> Pengguna: Jika Valid: Tampilkan Menu Utama
Pengguna -> HU: Pilih Menu "Unggah Gambar Sampah"
HU --> Pengguna: Menampilkan Form Upload Gambar
Pengguna -> HU: Pilih File dari Galeri/Kamera
HU -> CU: Kirim Data File
CU -> DB: Validasi Format File (.jpg/.png)
DB --> CU: Hasil Validasi Format
CU --> HU: Pesan "Gambar Berhasil di Upload"
HU --> Pengguna: Lanjut ke Menu "Klasifikasi Sampah"
@enduml