Anda di halaman 1dari 5

Nama : Azhar ilham fauzi

NIM : 22416255201297

Kelas : IF22D

Studi Kasus 1 : Sistem Penjualan Online

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. Identifikasi objek-objek yang diperlukan dalam sistem penjualan online.


b. Bagaimana Anda akan mengorganisasi objek-objek tersebut ke dalam kelas-kelas

dalam model berorientasi objek?

a. Apa saja atribut yang dapat dimiliki oleh kelas-kelas tersebut, seperti atribut

produk atau keranjang belanja?

a. Buatlah beberapa contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas

dalam sistem penjualan online.

a. Bagaimana Anda akan menghubungkan objek-objek ini melalui relasi atau

asosiasi, seperti hubungan antara pelanggan, produk, dan keranjang belanja?

Studi Kasus 2: Sistem Manajemen Proyek

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. Identifikasi objek-objek yang mungkin ada dalam sistem manajemen proyek.


b. Bagaimana Anda akan mengorganisasi objek-objek tersebut ke dalam kelas-kelas

dalam model berorientasi objek?

a. Apa saja atribut yang dapat dimiliki oleh kelas-kelas tersebut, seperti atribut tugas

atau anggota tim?

a. Buatlah beberapa contoh metode atau operasi yang bisa dilakukan oleh kelas-kelas

dalam sistem manajemen proyek.

a. Bagaimana Anda akan menghubungkan objek-objek ini melalui relasi atau


asosiasi, seperti hubungan antara tugas, anggota tim, dan proyek?

Jawaban!

Studi Kasus 1 : Sistem Penjualan Online

a. Objek-objek yang diperlukan dalam sistem penjualan online:

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.

a. Organisasi objek-objek ke dalam kelas-kelas dalam model berorientasi objek:

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 Keranjang Belanja:


Atribut: Daftar produk yang ditambahkan, jumlah setiap produk, total harga, dll.
Metode: tambahProduk(), hapusProduk(), hitungTotalHarga(), dll.

1. Kelas Pesanan:
Atribut: Produk yang dibeli, jumlah, alamat pengiriman, status pesanan, tanggal pesanan, dll.
Metode: konfirmasiPesanan(), lacakPesanan(), dll.

1. Kelas Metode Pembayaran:


Atribut: Tipe metode pembayaran, nomor kartu, nama pemegang kartu, tanggal kedaluwarsa, alamat
tagihan, dll.
Metode: prosesPembayaran(), verifikasiPembayaran(), dll.

a. Atribut yang dapat dimiliki oleh kelas-kelas tersebut:

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

a. Objek-objek yang mungkin ada dalam 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.

a. Organisasi objek-objek ke dalam kelas-kelas dalam model berorientasi objek:

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.

1. Kelas Anggota Tim:


Atribut: Nama, peran, kemampuan, tanggung jawab, dll.
Metode: ubahPeran(), ubahKemampuan(), lihatTugasYangDikerjakan(), dll.
2. Kelas Jadwal Proyek:
Atribut: Tanggal mulai, tanggal selesai, daftar tugas yang terkait, dll.
Metode: lihatJadwal(), tambahTugasKeJadwal(), dll.

a. Atribut yang dapat dimiliki oleh kelas-kelas tersebut:

Proyek: Nama, deskripsi, tenggat waktu, status, dll.


Tugas: Nama, deskripsi, status, prioritas, dll.
Anggota Tim: Nama, peran, kemampuan, tanggung jawab, dll.
Jadwal Proyek: Tanggal mulai, tanggal selesai, daftar tugas yang terkait, 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.

a. Hubungan antara objek-objek melalui relasi atau asosiasi:

Proyek dapat memiliki banyak Tugas, yang merupakan relasi satu-ke-banyak.


Anggota Tim dapat terlibat dalam banyak Proyek, dan Proyek dapat memiliki banyak Anggota Tim,
yang merupakan relasi banyak-ke-banyak.
Tugas dapat memiliki banyak Anggota Tim yang terlibat dalam pelaksanaannya, yang juga
merupakan relasi banyak-ke-banyak.
Tugas dapat termasuk dalam Jadwal Proyek, yang merupakan relasi satu-ke-satu atau satu-ke-banyak
tergantung pada bagaimana jadwal dikelola.

Anda mungkin juga menyukai