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: PPL A Tahun: 2023/2024 (Genap) Pada pertemuan kali ini, kita diminta untuk membuat Database Design untuk aplikasi social media Instagram. Instagram Database Design Tabel dan Relasinya app_user : ID : Primary Key (PK) untuk mengidentifikasi setiap pengguna. first_name : Nama depan pengguna. last_name : Nama belakang pengguna. profile_name : Nama profil pengguna. signup_date : Tanggal pengguna mendaftar. follower : following_user_id : Foreign Key (FK) yang merujuk ke ID pengguna yang mengikuti. followed_user_id : Foreign Key (FK) yang merujuk ke ID pengguna yang diikuti. post : ID : Primary Key (PK) untuk mengidentifikasi setiap posting. created_by_user_id : Foreign Key (FK) yang merujuk ke ID pengguna yang membuat posting. created_datetime : Waktu dan tanggal pembuatan posting. caption : Caption atau deskripsi dari posting. post_type : Foreign Key (FK) yang merujuk ke jenis posting. post_media : ID : Primar...
Nama: Muhammad Hafidh Rosyadi NRP: 5025211013 Kelas: PPL A Tahun: 2023/2024 (Genap) Tugas kedelapan (pertemuan 11) merupakan latihan untuk membuat estimasi kapasitas dari suatu aplikasi. Estimasi kapasitas adalah proses perkiraan atau prediksi tentang kapasitas yang diperlukan untuk memenuhi kebutuhan tertentu dalam sebuah sistem atau proses. Tujuan dari estimasi kapasitas adalah untuk mengidentifikasi seberapa besar kapasitas yang dibutuhkan untuk memastikan bahwa sistem atau proses tersebut dapat beroperasi secara efisien dan efektif sesuai dengan kebutuhan yang ada. Dalam konteks yang lebih spesifik, estimasi kapasitas seringkali digunakan dalam perencanaan infrastruktur, baik itu jaringan komputer, server, maupun fasilitas fisik lainnya, untuk memastikan bahwa kapasitas yang ada cukup untuk menangani jumlah pengguna atau permintaan yang diantisipasi di masa depan. Dengan demikian, estimasi kapasitas membantu dalam menghindari kekurangan kapasitas yang dapat menyebabka...
Komentar
Posting Komentar