Soal : 1. Deskripsikan model bisnis yang dipilih? 2. Identifikasi perangkat lunak apa saja yang diperlukan, kemudian jelaskan alasannya? 3. Buatkan rancangan perangkat lunaknya ? 4. Lengkapi dengan desain database dan desain UI 5. Buat Presentasi dan demo hasil rancangan Perangkat Lunak, kemudian upload di Youtube, dan isi lembar monitoring?
Model Bisnis yang dipilih
Jawab:
1. Model bisnis yang dipilih untuk Starbucks ini adalah "Pemesanan online dan pengambilan". Model ini berfokus pada pemesanan melalui aplikasi mobile dengan penjemputan di lokasi, yang didukung oleh integrasi teknologi seperti aplikasi smartphone, sistem pembayaran online, dan penggunaan platform navigasi seperti Google Maps. Model ini menekankan pada kenyamanan, efisiensi, dan keselamatan pelanggan terutama selama situasi pandemi. Pelanggan dapat memesan dari mana saja, melakukan pembayaran secara online, dan mengambil pesanan mereka tanpa perlu kontak langsung yang berlebihan dengan staf.
2. Perangkat Lunak yang dibutuhkan dan Alasannya
Aplikasi Mobile Starbucks:
Alasan: Platform utama untuk pelanggan melakukan pemesanan, pembayaran, dan melihat status pesanan.
Sistem Navigasi (Google Maps API):
Alasan: Membantu pelanggan menemukan lokasi Starbucks terdekat dan memberikan petunjuk arah.
Sistem Pembayaran Online:
Alasan: Mengamankan dan memproses pembayaran digital untuk pemesanan.
Sistem Manajemen Pesanan (Order Management System):
Alasan: Mengelola pesanan yang masuk, memperbarui status pesanan, dan mengintegrasikan dengan aplikasi mobile serta sistem di dalam toko.
Sistem Manajemen Inventaris (Inventory Management System):
Alasan: Memastikan ketersediaan bahan baku dan produk untuk pesanan yang masuk.
Sistem CRM (Customer Relationship Management):
Alasan: Mengelola interaksi dengan pelanggan, program loyalitas, dan penawaran khusus.
Sistem Backend (Server dan Database):
Alasan: Menyimpan data pengguna, pesanan, dan transaksi secara aman dan efisien.
3. Rancangan Perangkat Lunak
Rancangan Perangkat Lunak Starbucks
1. Tampilan (UI/UX Design)
a. Home Screen
Elemen Utama:
Peta interaktif dengan penanda lokasi Starbucks terdekat.
Tombol "Order Now" untuk memulai pemesanan.
Tombol "Account" untuk masuk ke profil pengguna.
b. Menu Screen
Elemen Utama:
Daftar produk dengan gambar, deskripsi, dan harga.
Kategori produk (Kopi, Minuman Dingin, Makanan, dll.).
Tombol "Add to Cart" untuk setiap produk.
c. Cart Screen
Elemen Utama:
Daftar produk yang dipilih dengan opsi untuk mengubah jumlah atau menghapus item.
Total harga.
Tombol "Checkout".
d. Checkout Screen
Elemen Utama:
Formulir detail pembayaran (integrasi dengan sistem pembayaran online).
Opsi untuk memilih metode pembayaran.
Ringkasan pesanan.
Tombol "Place Order".
e. Order Status Screen
Elemen Utama:
Status pesanan (Diterima, Diproses, Siap diambil).
Estimasi waktu pengambilan.
Peta dengan rute ke Starbucks terdekat.
Tombol "Cancel Order".
f. Profile Screen
Elemen Utama:
Informasi akun pengguna (Nama, Email, Poin Loyalitas).
Riwayat pesanan.
Pengaturan aplikasi.
2. Pengembangan Frontend
a. Teknologi dan Alat
Platform: iOS dan Android
Frameworks: SwiftUI untuk iOS dan Jetpack Compose untuk Android
Libraries: Networking libraries seperti Alamofire untuk iOS dan Retrofit untuk Android, serta Google Maps SDK untuk peta.
b. Struktur Aplikasi
Navigation: Menggunakan komponen navigasi khusus untuk masing-masing platform (NavigationView di iOS dan Navigation Component di Android).
Data Binding: Menggunakan Combine di iOS dan LiveData di Android untuk mengikat data antara UI dan logika aplikasi.
Network Requests: API Client untuk komunikasi dengan backend.
3. Pengembangan Backend
a. Teknologi dan Alat
Server: Layanan cloud seperti AWS, Google Cloud, atau Azure untuk hosting server.
Framework: Menggunakan framework server seperti Express.js (Node.js), Django (Python), atau Spring Boot (Java) untuk pengembangan API.
Database: Basis data relasional seperti PostgreSQL atau MySQL, atau basis data NoSQL seperti MongoDB.
API: RESTful API untuk komunikasi antara frontend dan backend.
Keamanan: HTTPS untuk semua komunikasi data, serta JWT (JSON Web Token) untuk otentikasi dan otorisasi.
b. Struktur API
Auth: Endpoint untuk login dan registrasi pengguna.
Products: Endpoint untuk mendapatkan daftar produk dan detail produk tertentu.
Orders: Endpoint untuk membuat dan mengelola pesanan.
Users: Endpoint untuk mengelola data pengguna.
4. Integrasi Sistem
Navigasi dan Lokasi: Menggunakan Google Maps API untuk menampilkan lokasi Starbucks terdekat dan memberikan petunjuk arah kepada pengguna.
Pemesanan dan Pembayaran: Integrasi dengan gateway pembayaran seperti Stripe, PayPal, atau Square untuk memproses pembayaran online dengan aman.
Manajemen Pesanan: Sistem manajemen pesanan yang mengelola status pesanan dari penerimaan hingga penyelesaian.
Manajemen Inventaris: Sistem untuk melacak stok bahan baku dan produk, memastikan ketersediaan untuk pesanan yang masuk.
CRM: Sistem manajemen hubungan pelanggan untuk mengelola data pelanggan, program loyalitas, dan penawaran khusus.
Keamanan: Implementasi firewall dan enkripsi data untuk melindungi informasi pengguna dan transaksi.
5. Alur Kerja Sistem
Pengguna membuka aplikasi Starbucks di smartphone.
Pengguna mencari lokasi Starbucks terdekat menggunakan Google Maps API.
Pengguna memilih produk dan melakukan pemesanan melalui aplikasi.
Aplikasi mengirim data pesanan ke Backend System melalui RESTful API.
Backend System memproses pesanan dan mengirim konfirmasi ke pengguna.
Backend System mengupdate Inventory Management System untuk mengurangi stok.
Backend System mengelola pembayaran melalui Payment Gateway.
Order Management System mengelola status pesanan dan menginformasikan waktu pengambilan.
Staf di toko menerima notifikasi pesanan dan mulai menyiapkan pesanan.
Pengguna menerima notifikasi bahwa pesanan siap diambil.
Pengguna mengambil pesanan di jendela pengambilan.
Sistem CRM mencatat transaksi dan memperbarui poin loyalitas.
4. Desain Database:
Tabel Users
user_id: ID unik untuk setiap pengguna (pelanggan).
name: Nama pelanggan.
email: Alamat email pelanggan (harus unik).
password: Kata sandi untuk akun pelanggan.
phone: Nomor telepon pelanggan.
loyalty_points: Poin loyalitas yang diperoleh oleh pelanggan.
Tabel Orders
order_id: ID unik untuk setiap pesanan.
user_id: ID pengguna yang melakukan pesanan (relasi ke tabel Users).
order_date: Tanggal dan waktu pesanan dilakukan.
total_price: Total harga dari pesanan.
status: Status pesanan (misalnya: "dalam proses", "selesai").
Tabel Products
product_id: ID unik untuk setiap produk.
name: Nama produk.
description: Deskripsi produk.
price: Harga produk.
Tabel OrderItems
item_id: ID unik untuk setiap item dalam pesanan.
order_id: ID pesanan yang berisi item tersebut (relasi ke tabel Orders).
product_id: ID produk yang dipesan (relasi ke tabel Products).
quantity: Jumlah produk yang dipesan.
price: Harga per unit produk dalam pesanan.
Tabel Payments
payment_id: ID unik untuk setiap pembayaran.
order_id: ID pesanan yang dibayar (relasi ke tabel Orders).
payment_date: Tanggal dan waktu pembayaran dilakukan.
amount: Jumlah pembayaran.
payment_method: Metode pembayaran (misalnya: "kartu kredit", "tunai").
Tabel Notifications
notif_id: ID unik untuk setiap notifikasi.
user_id: ID pengguna yang menerima notifikasi (relasi ke tabel Users).
message: Pesan notifikasi.
created_at: Waktu ketika notifikasi dibuat.
Tabel Stores
store_id: ID unik untuk setiap toko.
name: Nama toko.
address: Alamat toko.
city: Kota tempat toko berada.
state: Negara bagian atau provinsi tempat toko berada.
zip_code: Kode pos toko.
Tabel Reviews
review_id: ID unik untuk setiap ulasan.
user_id: ID pengguna yang memberikan ulasan (relasi ke tabel Users).
order_id: ID pesanan yang diulas (relasi ke tabel Orders).
Nama : Muhammad Hafidh Rosyadi NRP : 5025211013 Kelas : PPB G My Gallery App MyGallery adalah aplikasi front-end untuk menampilkan galeri gambar dari perangkat lokal atau URL dummy. Aplikasi ini fokus pada tampilan gambar yang estetis, responsif di berbagai ukuran layar, serta mendukung mode terang dan gelap. Selain melihat gambar, pengguna dapat melakukan simulasi upload gambar ke galeri. MyGallery menawarkan navigasi yang sederhana, pengalaman pengguna yang halus, dan desain minimalis yang nyaman digunakan. Fitur Utama: - Galeri Gambar (GridView/RecyclerView): Menampilkan gambar dalam grid rapi, responsif terhadap ukuran layar. - Halaman Detail Gambar: Menampilkan gambar dalam ukuran penuh dengan informasi tambahan. - Simulasi Upload Gambar: Pengguna dapat memilih gambar dan menambahkannya ke galeri secara dummy. - Desain Estetis dan Responsif: UI bersih, dukungan penuh untuk berbagai ukuran layar dan animasi transisi halus. - Mode Gelap: Otomatis mengikuti pengatu...
Nama : Muhammad Hafidh Rosyadi NRP : 5025211013 Kelas : PPB G APLIKASI KALKULATOR SEDERHANA Kode : https://github.com/Hfdrsyd/Tugas-PPB/tree/main/SimpleCalculator 1. Manajemen State Pada bagian awal setContent, terdapat tiga variabel state utama: var num1 by remember { mutableStateOf("23") } var num2 by remember { mutableStateOf("17") } var result by remember { mutableStateOf("") } num1 dan num2 digunakan untuk menyimpan nilai input dari pengguna dalam bentuk teks (String). result digunakan untuk menyimpan hasil perhitungan, juga dalam bentuk teks. Penggunaan remember dan mutableStateOf memastikan bahwa perubahan pada nilai-nilai tersebut akan memicu rekomposisi UI, sehingga tampilan selalu mencerminkan data terbaru. 2. Input Data Input dari pengguna diambil menggunakan dua komponen TextField: TextField(value = num1, onValueChange = { num1 = it }) TextField(value = num2, onValueC...
Komentar
Posting Komentar