(Berfokus pada Pemrosesan Pesanan, Pengalaman Pelanggan & Operasional Toko)

đ Konteks Bisnis
Diagram Entitas-Relasi ini memodelkan operasi inti di sebuah toko McDonaldâs, dengan fokus pada:
-
Alur pesanan dari pelanggan hingga pembayaran
-
Peran karyawan dan manajemen toko
-
Ketersediaan menu dan penetapan harga
-
Loyalitas pelanggan dan keterlibatan berulang
-
Pelacakan stok dasar (untuk item makanan)
Catatan: Ini bukan basis data perusahaan lengkap (misalnya rantai pasokan atau HR), tetapi fondasi realistis dan dapat diskalakan untuk sistem POS makanan cepat saji.
đ Entitas & Atribut
| Entitas | Atribut |
|---|---|
| Pelanggan | CustomerID (Kunci Utama), Nama, Telepon, Email, Poin Loyalitas, Tingkat Keanggotaan (misalnya: Perak, Perunggu) |
| Toko | StoreID (Kunci Utama), Nama, Lokasi (Alamat), ManagerID (Kunci Asing â Karyawan), Jam Buka, Total Penjualan (bulanan) |
| Karyawan | EmployeeID (Kunci Utama), Nama, Peran (Kasir, Koki, Manajer, Pengawas), StoreID (Kunci Asing), Tanggal Rekrutmen, Jadwal Shift |
| Item Menu | MenuItemID (Kunci Utama), Nama, Deskripsi, Harga, Kategori (Burger, Minuman, Sampingan, Dessert), Aktif, URLGambar |
| Pesanan | OrderID (Kunci Utama), WaktuPesanan, Status (Menunggu â Sedang Dibuat â Siap â Selesai â Dibatalkan), JumlahTotal, StoreID (Kunci Asing), CustomerID (Kunci Asing) |
| Item Pesanan | OrderItemID (Kunci Utama), OrderID (Kunci Asing), MenuItemID (Kunci Asing), Jumlah, TotalBaris (dihitung otomatis) |
| Pembayaran | PaymentID (Kunci Utama), Jumlah, Metode (Tunai, Kartu Kredit, MobilePay), IDTransaksi, OrderID (Kunci Asing), Timestamp |
| Promosi | PromosiID (PK), Kode (misalnya âWELCOME10â), TipeDiskon (Persentase, Tetap), NilaiDiskon, TanggalAktif, TanggalKadaluarsa, BerlakuUntuk (misalnya Makan Siang, SemuaItem) |
đ Hubungan (dengan Kardinalitas)
| Hubungan | Kardinalitas | Deskripsi |
|---|---|---|
Pelanggan â Pesanan |
1 â 0.. | Seorang pelanggan membuat beberapa pesanan dari waktu ke waktu. |
Pesanan â ItemPesanan |
1 â 0.. | Setiap pesanan berisi nol atau lebih item menu. |
Pesanan â Pembayaran |
1 â 1 | Setiap pesanan yang selesai memiliki tepat satu pembayaran. |
Pesanan â Toko |
1 â 1 | Setiap pesanan dibuat di satu toko tertentu. |
Toko â Karyawan |
1 â 0.. | Sebuah toko memiliki beberapa staf (kasir, koki, manajer). |
Toko â Pesanan |
1 â 0.. | Sebuah toko menerima banyak pesanan. |
Item Menu â Item Pesanan |
1 â 0.. | Sebuah item menu dapat muncul dalam beberapa pesanan. |
Promosi â Pesanan |
0 â 1 | Sebuah promosi dapat diterapkan pada pesanan (misalnya, âBeli 1 Big Mac, Dapat 1 Gratisâ). |
Karyawan â Toko |
1 â 1 | Setiap karyawan bekerja di satu toko. |
â Â Opsional: TambahkanÂ
Program Loyalitasentitas jika logika loyalitas yang lebih mendalam diperlukan (misalnya, penukaran poin, hadiah).
đ Kendala & Aturan Bisnis
-
Harga harus > 0
-
Status pesanan tidak boleh ‘Selesai’ jika pembayaran tidak ada
-
Jumlah dalam Item Pesanan â„ 1
-
Promosi hanya dapat diterapkan jika aktif dan berada dalam jangka waktu tertentu
-
Pelanggan harus terhubung dengan setidaknya satu pesanan untuk mendapatkan poin loyalitas
-
Item menu ditandai sebagai ‘Tidak Aktif’ jika habis stok atau sudah dihentikan
đ Kasus Penggunaan (Mengapa ERD Ini Penting)
| Kasus Penggunaan | Manfaat |
|---|---|
| Desain Sistem POS | Memungkinkan pelacakan pesanan secara real-time, pembayaran, dan pembuatan struk |
| Pemberitahuan Persediaan | Ketika suatu item menu dipesan secara sering, pantau tingkat stok |
| Program Loyalitas | Lacak akumulasi poin, tawarkan diskon yang dipersonalisasi |
| Analitik Toko | Identifikasi item terlaris, jam-jam puncak, promosi populer |
| Manajemen Karyawan | Tetapkan peran, lacak shift, kelola kinerja |
đ Format Output
Anda dapat menyalin dan menempelkan salah satu dari berikut ini ke dalam dokumentasi, presentasi, atau alat desain basis data Anda.
â 1. ERD Berbasis Teks (untuk dokumentasi)
Entitas:
- Pelanggan
- IDPelanggan (PK)
- Nama
- Telepon
- Email
- PoinLoyalitas
- TingkatKeanggotaan
- Toko
- IDToko (PK)
- Nama
- Lokasi
- IDManajer (FK â Karyawan)
- JamBuka
- PenjualanBulanan
- Karyawan
- IDKaryawan (PK)
- Nama
- Peran (Kasir, Koki, Manajer)
- IDToko (FK)
- TanggalRekrutmen
- ItemMenu
- IDItemMenu (PK)
- Nama
- Deskripsi
- Harga
- Kategori
- Aktif
- Pesanan
- IDPesanan (PK)
- WaktuPesanan
- Status (Menunggu, DalamProses, Siap, Selesai, Dibatalkan)
- IDPelanggan (FK)
- IDToko (FK)
- JumlahTotal
- ItemPesanan
- IDItemPesanan (PK)
- IDPesanan (FK)
- IDItemMenu (FK)
- Jumlah
- TotalBaris
- Pembayaran
- IDPembayaran (PK)
- Jumlah
- Metode (Tunai, KartuKredit, PembayaranMobile)
- IDPesanan (FK)
- Timestamp
- Promosi
- IDPromosi (PK)
- Kode
- JenisDiskon
- NilaiDiskon
- TanggalAktif
- TanggalKadaluarsa
- BerlakuUntuk
Hubungan:
- Pelanggan "1" -- "0..*" Pesanan
- Pesanan "1" -- "0..*" ItemPesanan
- Pesanan "1" -- "1" Pembayaran
- Pesanan "1" -- "1" Toko
- Toko "1" -- "0..*" Karyawan
- ItemMenu "1" -- "0..*" ItemPesanan
- Promosi "0..*" -- "1" Pesanan (bersyarat pada status aktif)
â 2. Versi Mermaid.js (untuk Markdown, Notion, Obsidian)
erDiagram
CUSTOMER ||--o{ ORDER : "menempatkan"
STORE ||--o{ ORDER : "melayani"
STORE ||--o{ EMPLOYEE : "mengpekerjakan"
STORE ||--o{ MENU_ITEM : "menjual"
ORDER ||--o{ ORDER_ITEM : "mengandung"
ORDER ||--o{ PAYMENT : "memiliki"
MENU_ITEM ||--o{ ORDER_ITEM : "muncul dalam"
PROMOTION ||--o{ ORDER : "diterapkan pada"
CUSTOMER {
int CustomerID PK
string Name
string Phone
string Email
int LoyaltyPoints
string MembershipTier
}
STORE {
int StoreID PK
string Name
string Location
int ManagerID FK
string OpenHours
decimal MonthlySales
}
EMPLOYEE {
int EmployeeID PK
string Name
string Role
int StoreID FK
date HireDate
}
MENU_ITEM {
int MenuItemID PK
string Name
string Description
decimal Price
string Category
boolean IsActive
}
ORDER {
int OrderID PK
datetime OrderTime
string Status
int CustomerID FK
int StoreID FK
decimal TotalAmount
}
ORDER_ITEM {
int OrderItemID PK
int OrderID FK
int MenuItemID FK
int Quantity
decimal LineTotal
}
PAYMENT {
int PaymentID PK
decimal Amount
string Method
int OrderID FK
datetime Timestamp
}
PROMOTION {
int PromotionID PK
string Code
string DiscountType
decimal DiscountValue
datetime ActiveDate
datetime ExpireDate
string AppliesTo
}

â 3. Versi PlantUMLÂ
' ERD Sistem Pesanan McDonald's (PlantUML)
package "Operasi McDonald's" {
entity "Pelanggan" {
- CustomerID (PK)
- Nama
- Telepon
- Email
- PoinLoyalitas
- TingkatKeanggotaan
}
entity "Toko" {
- StoreID (PK)
- Nama
- Lokasi
- ManagerID (FK â Karyawan)
- JamBuka
- PenjualanBulanan
}
entity "Karyawan" {
- EmployeeID (PK)
- Nama
- Peran (Kasir, Koki, Manajer)
- StoreID (FK â Toko)
- TanggalRekrutmen
}
entity "MenuItem" {
- MenuItemID (PK)
- Nama
- Deskripsi
- Harga
- Kategori (Burger, Minuman, Sampingan)
- Aktif
}
entity "Pesanan" {
- OrderID (PK)
- WaktuPesanan
- Status (Menunggu, DalamProses, Siap, Selesai)
- CustomerID (FK â Pelanggan)
- StoreID (FK â Toko)
- JumlahTotal
}
entity "ItemPesanan" {
- OrderItemID (PK)
- OrderID (FK â Pesanan)
- MenuItemID (FK â MenuItem)
- Jumlah
- TotalBaris
}
entity "Pembayaran" {
- PaymentID (PK)
- Jumlah
- Metode (Tunai, KartuKredit)
- OrderID (FK â Pesanan)
- Timestamp
}
entity "Promosi" {
- PromotionID (PK)
- Kode (contoh: WELCOME10)
- TipeDiskon (Persentase, Tetap)
- NilaiDiskon
- TanggalAktif
- TanggalKadaluarsa
- BerlakuUntuk
}
Pelanggan "1" -- "0..*" Pesanan : "memesan"
Pesanan "1" -- "0..*" ItemPesanan : "mengandung"
Pesanan "1" -- "1" Pembayaran : "memiliki"
Pesanan "1" -- "1" Toko : "ditempatkan di"
Toko "1" -- "0..*" Karyawan : "menggunakan"
MenuItem "1" -- "0..*" ItemPesanan : "muncul di"
Promosi "0..*" -- "1" Pesanan : "berlaku untuk"
}
Â
đ Ekstensi Masa Depan (Opsional)
Jika Anda ingin memperluas ERD ini, pertimbangkan untuk menambahkan:
-
Inventaris â Melacak tingkat stok, titik pemesanan ulang, informasi pemasok
-
Jadwal Shift â Shift harian, waktu istirahat, penugasan shift
-
Pemasok â Siapa yang menyuplai bahan makanan (contoh: âPemasok Kejuâ)
-
Menu Musiman â Promosi khusus (contoh: âMenu BBQ Musim Panasâ)
-
Geolokasi â Untuk pelacakan pengiriman atau pengambilan
đ Pikiran Akhir
ERD ini adalah realistis, dapat diskalakan, dan selaras dengan operasi McDonaldâs â mencerminkan alur kerja POS yang sebenarnya, peran karyawan, dan perilaku pelanggan.
â Anda sekarang memiliki ERD lengkap, siap digunakan untuk sistem McDonaldâs â baik untuk proyek sekolah, analisis bisnis, atau desain teknis.
- Alat ERD Visual Paradigm â Buat Diagram Entitas-Relasi Secara Online: Ini adalah alat yang kuat, berbasis web yang memungkinkan pengguna merancang dan memvisualisasikan skema basis data dengan mudah menggunakan fitur seret dan lepas yang intuitif.
- Desain Basis Data dengan Alat ERD â Panduan Visual Paradigm: Sumber ini menyediakan panduan komprehensif tentang penggunaan alat ERD untuk merancang basis data yang kuat dan dapat diskalakan dengan praktik terbaik dalam pemodelan data dan desain skema.
- Alat ERD Gratis â Rancang Basis Data Secara Online dengan Visual Paradigm: Pengguna dapat mengakses alat ERD gratis secara online untuk membuat diagram entitas-relasi profesionaltanpa instalasi atau langganan.
- Cara Menggambar Entitas di ERD Visual Paradigm: Ini adalah panduan langkah demi langkah untuk pengguna yang berfokus padamembuat dan menyesuaikan entitasdi alat ERD untuk pemodelan basis data yang akurat.
- Cara Memodelkan Basis Data Relasional dengan ERD â Tutorial Visual Paradigm: Tutorial praktis ini menunjukkan cara menggunakan ERD untuk memodelkanbasis data relasional secara efektifdari konsep awal hingga implementasi penuh.
- Menghasilkan Basis Data dari ERD di Visual Paradigm: Artikel ini menyediakan panduan rinci tentangmenghasilkan skema basis data secara otomatissecara langsung dari ERD menggunakan kemampuan rekayasa balik.
- Hasilkan Diagram Kelas dari ERD â Tutorial Visual Paradigm: Sumber ini mengajarkan pengguna caramengonversi ERD menjadi diagram kelasuntuk mendukung alur kerja desain dan pengembangan berbasis objek.
- Mempermudah Pemodelan Entitas-Relasi dengan Visual Paradigm: Panduan ini menjelaskan cara menyederhanakan proses merancang dan menerapkan model entitas-relasi darikonsep awal hingga penyebaran basis data akhir.
- Rekayasa Balik Basis Data ke ERD di Visual Paradigm: Tutorial ini mengajarkan caramerekayasa balik basis data yang adamenjadi diagram entitas-relasi visual (ERD) menggunakan antarmuka yang intuitif dan alat pemodelan yang kuat.
- Editor ERD Notasi Chen â Pemodelan Entitas-Relasi Tingkat Lanjut: Editor khusus ini mendukung pemodelan basis data yang akurat dengan dukungan penuh untuk entitas, atribut, hubungan, dan kardinalitas menggunakanNotasi Chen.











