NIM : 22416255201297
Kelas : IF22D
Anda ditugaskan untuk merancang sistem penjualan online untuk sebuah toko retail. Sistem ini harus
memungkinkan pelanggan untuk menelusuri produk, menambahkan produk ke keranjang belanja, dan
menyelesaikan pembelian.
a. Apa saja atribut yang dapat dimiliki oleh kelas-kelas tersebut, seperti atribut
a. Buatlah beberapa contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas
Anda bekerja pada proyek pengembangan perangkat lunak dan perlu merancang sistem manajemen
proyek. Sistem ini harus memungkinkan tim proyek untuk mengelola tugas, anggota tim, dan jadwal
proyek.
a. Apa saja atribut yang dapat dimiliki oleh kelas-kelas tersebut, seperti atribut tugas
a. Buatlah beberapa contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas
Jawaban!
1. Produk: Mewakili produk yang dijual dalam toko retail, seperti nama produk, harga, deskripsi, stok,
dll.
2. Pelanggan: Mewakili pelanggan yang menggunakan sistem penjualan online, termasuk informasi
seperti nama, alamat, informasi kontak, dll.
3. Keranjang Belanja: Mewakili keranjang belanja yang digunakan pelanggan untuk menampung
produk yang ingin dibeli.
4. Pesanan: Mewakili pesanan yang dibuat oleh pelanggan, termasuk produk yang dibeli, jumlah,
alamat pengiriman, status pesanan, dll.
5. Metode Pembayaran: Mewakili metode pembayaran yang tersedia, seperti kartu kredit, transfer
bank, atau pembayaran digital.
1. Kelas Produk:
Atribut: Nama, harga, deskripsi, stok, kode produk, gambar produk, dll.
Metode: getInformasiProduk(), tambahStok(), kurangiStok(), dll.
1. Kelas Pelanggan:
Atribut: Nama, alamat, email, nomor telepon, daftar pesanan sebelumnya, dll.
Metode: buatPesanan(), lihatKeranjangBelanja(), ubahProfil(), dll.
1. Kelas Pesanan:
Atribut: Produk yang dibeli, jumlah, alamat pengiriman, status pesanan, tanggal pesanan, dll.
Metode: konfirmasiPesanan(), lacakPesanan(), dll.
Produk: Nama, harga, deskripsi, stok, kode produk, gambar produk, dll.
Pelanggan: Nama, alamat, email, nomor telepon, daftar pesanan sebelumnya, dll.
Keranjang Belanja: Daftar produk yang ditambahkan, jumlah setiap produk, total harga, dll.
Pesanan: Produk yang dibeli, jumlah, alamat pengiriman, status pesanan, tanggal pesanan, dll.
Metode Pembayaran: Tipe metode pembayaran, nomor kartu, nama pemegang kartu, tanggal
kedaluwarsa, alamat tagihan, dll.
a. Contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas dalam sistem penjualan online:
Produk:
getInformasiProduk(): Mengambil informasi produk.
tambahStok(): Menambah stok produk.
kurangiStok(): Mengurangi stok produk.
Pelanggan:
buatPesanan(): Membuat pesanan baru.
lihatKeranjangBelanja(): Melihat isi keranjang belanja.
ubahProfil(): Mengubah informasi profil pelanggan.
Keranjang Belanja:
tambahProduk(): Menambahkan produk ke keranjang.
hapusProduk(): Menghapus produk dari keranjang.
hitungTotalHarga(): Menghitung total harga produk dalam keranjang.
Pesanan:
konfirmasiPesanan(): Konfirmasi pesanan.
lacakPesanan(): Melacak status pesanan.
Metode Pembayaran:
prosesPembayaran(): Memproses pembayaran.
verifikasiPembayaran(): Memverifikasi pembayaran.
a. Hubungan antara objek-objek melalui relasi atau asosiasi:
Pelanggan dapat memiliki satu atau lebih Keranjang Belanja, yang merupakan relasi satu-ke-banyak.
Keranjang Belanja dapat berisi satu atau lebih Produk, yang juga merupakan relasi satu-ke-banyak.
Pelanggan dapat membuat satu atau lebih Pesanan, yang juga merupakan relasi satu-ke-banyak.
Pesanan memiliki satu Metode Pembayaran, yang dapat dianggap sebagai asosiasi satu-ke-satu.
Studi Kasus 2: Sistem Manajemen Proyek
1. Proyek: Mewakili informasi tingkat tinggi tentang proyek, seperti nama proyek, deskripsi, tenggat
waktu, dll.
2. Tugas: Mewakili tugas-tugas yang harus diselesaikan dalam proyek, termasuk nama tugas, status,
prioritas, dll.
3. Anggota Tim: Mewakili anggota tim yang terlibat dalam proyek, dengan informasi seperti nama,
peran, kemampuan, dll.
4. Jadwal Proyek: Mewakili jadwal proyek dengan tanggal mulai, tanggal selesai, dan tugas yang terkait.
1. Kelas Proyek:
Atribut: Nama, deskripsi, tenggat waktu, status, dll.
Metode: tambahTugas(), tambahAnggotaTim(), ubahStatusProyek(), dll.
1. Kelas Tugas:
Atribut: Nama, deskripsi, status (misalnya, "belum dimulai," "sedang berjalan," "selesai"), prioritas,
dll.
Metode: ubahStatusTugas(), tambahAnggotaTim(), tambahTugasTerkait(), dll.
a. Contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas dalam sistem manajemen proyek:
Proyek:
tambahTugas(): Menambahkan tugas baru ke proyek.
tambahAnggotaTim(): Menambahkan anggota tim ke proyek.
ubahStatusProyek(): Mengubah status proyek (misalnya, "dalam progres," "selesai").
Tugas:
ubahStatusTugas(): Mengubah status tugas (misalnya, dari "belum dimulai" menjadi "sedang
berjalan").
tambahAnggotaTim(): Menambahkan anggota tim ke tugas.
tambahTugasTerkait(): Menambahkan tugas yang terkait dengan tugas tersebut.
Anggota Tim:
ubahPeran(): Mengubah peran anggota tim dalam proyek.
ubahKemampuan(): Memperbarui kemampuan atau keahlian anggota tim.
lihatTugasYangDikerjakan(): Melihat tugas yang sedang dikerjakan oleh anggota tim.
Jadwal Proyek:
lihatJadwal(): Melihat jadwal proyek.
tambahTugasKeJadwal(): Menambahkan tugas ke jadwal proyek.