Skip to content

M13 · Bab 2± 45 menitDraf AI

DDD dan Bounded Context

Tujuan belajar

  • Memakai ubiquitous language dan mengenali bounded context beserta context map-nya
  • Membedakan entity dan value object, serta memodelkannya dengan class dan record
  • Merancang aggregate yang menjaga invariant lewat aggregate root
  • Memakai domain event sebagai penghubung antar-context
  • Mendekomposisi sistem e-commerce menjadi service per kapabilitas, bukan per tabel

Prasyarat: Monolith vs Microservices

Kuis

5 soal · lulus bila minimal 70% benar

1.Apa output kode ini? record Money(long amount, String currency) {} lalu System.out.println(new Money(500, "IDR").equals(new Money(500, "IDR")));
2.Di bagian katalog, "produk" punya deskripsi, foto, dan kategori. Di bagian pengiriman, "produk" cukup berat dan dimensi. Pendekatan DDD yang tepat?
3.Service checkout memanggil order.getLines().add(line) langsung, sehingga total pesanan dan batas maksimal 20 item tidak lagi dicek. Prinsip aggregate mana yang dilanggar?
4.Mana nama domain event yang paling baik untuk menandai pembayaran sudah berhasil?
5.Tim memecah sistem menjadi customer-table-service, order-table-service, dan order-item-table-service. Membuat pesanan kini butuh tiga panggilan HTTP dan tidak bisa atomik. Apa akar masalahnya?

Jawab semua soal dulu (0/5)