EAS PPL

Nama : Muhammad Hafidh Rosyadi
NRP : 5025211013
kelas : PPL A

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

    1. Navigasi dan Lokasi: Menggunakan Google Maps API untuk menampilkan lokasi Starbucks terdekat dan memberikan petunjuk arah kepada pengguna.
    2. Pemesanan dan Pembayaran: Integrasi dengan gateway pembayaran seperti Stripe, PayPal, atau Square untuk memproses pembayaran online dengan aman.
    3. Manajemen Pesanan: Sistem manajemen pesanan yang mengelola status pesanan dari penerimaan hingga penyelesaian.
    4. Manajemen Inventaris: Sistem untuk melacak stok bahan baku dan produk, memastikan ketersediaan untuk pesanan yang masuk.
    5. CRM: Sistem manajemen hubungan pelanggan untuk mengelola data pelanggan, program loyalitas, dan penawaran khusus.
    6. 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

    1. user_id: ID unik untuk setiap pengguna (pelanggan).
    2. name: Nama pelanggan.
    3. email: Alamat email pelanggan (harus unik).
    4. password: Kata sandi untuk akun pelanggan.
    5. phone: Nomor telepon pelanggan.
    6. loyalty_points: Poin loyalitas yang diperoleh oleh pelanggan.

    Tabel Orders

    1. order_id: ID unik untuk setiap pesanan.
    2. user_id: ID pengguna yang melakukan pesanan (relasi ke tabel Users).
    3. order_date: Tanggal dan waktu pesanan dilakukan.
    4. total_price: Total harga dari pesanan.
    5. status: Status pesanan (misalnya: "dalam proses", "selesai").

    Tabel Products

    1. product_id: ID unik untuk setiap produk.
    2. name: Nama produk.
    3. description: Deskripsi produk.
    4. price: Harga produk.

    Tabel OrderItems

    1. item_id: ID unik untuk setiap item dalam pesanan.
    2. order_id: ID pesanan yang berisi item tersebut (relasi ke tabel Orders).
    3. product_id: ID produk yang dipesan (relasi ke tabel Products).
    4. quantity: Jumlah produk yang dipesan.
    5. price: Harga per unit produk dalam pesanan.

    Tabel Payments

    1. payment_id: ID unik untuk setiap pembayaran.
    2. order_id: ID pesanan yang dibayar (relasi ke tabel Orders).
    3. payment_date: Tanggal dan waktu pembayaran dilakukan.
    4. amount: Jumlah pembayaran.
    5. payment_method: Metode pembayaran (misalnya: "kartu kredit", "tunai").

    Tabel Notifications

    1. notif_id: ID unik untuk setiap notifikasi.
    2. user_id: ID pengguna yang menerima notifikasi (relasi ke tabel Users).
    3. message: Pesan notifikasi.
    4. created_at: Waktu ketika notifikasi dibuat.

    Tabel Stores

    1. store_id: ID unik untuk setiap toko.
    2. name: Nama toko.
    3. address: Alamat toko.
    4. city: Kota tempat toko berada.
    5. state: Negara bagian atau provinsi tempat toko berada.
    6. zip_code: Kode pos toko.

    Tabel Reviews

    1. review_id: ID unik untuk setiap ulasan.
    2. user_id: ID pengguna yang memberikan ulasan (relasi ke tabel Users).
    3. order_id: ID pesanan yang diulas (relasi ke tabel Orders).
    4. rating: Rating yang diberikan (1 sampai 5).
    5. comment: Komentar atau ulasan dari pengguna.
    6. created_at: Waktu ketika ulasan dibuat.

    User Interface prototype system:

     









    5. 



    Komentar

    Postingan populer dari blog ini

    QUIZ PBKK A

    QUIZ 2 PBKK A

    TUGAS 2 PWEB Membuat Portal Berita dan Kumpulan course