DDD Example Library

Use these examples to seed real Code Genie models. They focus on business behaviour, not database maintenance.

Order Fulfilment

  • Commands: Place Order, Authorize Payment, Reserve Inventory, Release Shipment, Cancel Order.
  • Events: Order Placed, Payment Authorized, Inventory Reserved, Shipment Released, Order Cancelled.
  • Aggregates: Order, Payment Authorization, Inventory Reservation, Shipment.
  • Policies: Reserve inventory after payment; release shipment after inventory reservation.
  • Read models: Customer Order Status, Fulfilment Work Queue, Order Timeline.

Insurance Claim Settlement

  • Commands: Open Claim, Request Evidence, Assign Assessor, Approve Claim, Issue Settlement.
  • Events: Claim Opened, Evidence Requested, Assessor Assigned, Claim Approved, Settlement Issued.
  • Aggregates: Claim, Assessment, Settlement Payment.
  • Policies: Assign assessor when claim exceeds authority limit; issue settlement after approval.
  • Read models: Claims Work Queue, Claim Timeline, Settlement Register.

Loan Origination

  • Commands: Submit Application, Run Credit Check, Request Documents, Approve Loan, Decline Loan.
  • Events: Application Submitted, Credit Check Completed, Documents Requested, Loan Approved, Loan Declined.
  • Aggregates: Loan Application, Credit Assessment, Document Pack.
  • Policies: Request documents after conditional approval; escalate high-risk applications.
  • Read models: Underwriter Queue, Applicant Status, Risk Review Dashboard.

Healthcare Referral Triage

  • Commands: Submit Referral, Triage Referral, Request More Information, Schedule Appointment, Close Referral.
  • Events: Referral Submitted, Referral Triaged, Information Requested, Appointment Scheduled, Referral Closed.
  • Aggregates: Referral, Triage Decision, Appointment.
  • Policies: Schedule urgent referral within target window; notify referrer when information is missing.
  • Read models: Referral Triage Queue, Patient Referral Status, Urgent Referral Dashboard.

Logistics Dispatch

  • Commands: Create Delivery Job, Assign Driver, Start Route, Capture Proof Of Delivery, Report Delivery Exception.
  • Events: Delivery Job Created, Driver Assigned, Route Started, Proof Of Delivery Captured, Delivery Exception Reported.
  • Aggregates: Delivery Job, Route Assignment, Proof Of Delivery.
  • Policies: Notify customer when driver assigned; open exception case when delivery fails.
  • Read models: Dispatch Board, Driver Route View, Delivery Exception Queue.

Manufacturing Quality Control

  • Commands: Start Inspection, Record Defect, Quarantine Batch, Approve Rework, Release Batch.
  • Events: Inspection Started, Defect Recorded, Batch Quarantined, Rework Approved, Batch Released.
  • Aggregates: Inspection, Batch, Nonconformance, Rework Order.
  • Policies: Quarantine batch after critical defect; create corrective action after repeated defect.
  • Read models: Quality Dashboard, Quarantined Batch List, Defect Trend Report.

Permit Application Review

  • Commands: Submit Permit Application, Request Revision, Approve Permit, Schedule Inspection, Revoke Permit.
  • Events: Permit Application Submitted, Revision Requested, Permit Approved, Inspection Scheduled, Permit Revoked.
  • Aggregates: Permit Application, Permit, Inspection.
  • Policies: Schedule inspection after permit approval; notify applicant when revision requested.
  • Read models: Reviewer Queue, Applicant Permit Status, Inspection Calendar.

Course Enrollment

  • Commands: Enroll Student, Join Waitlist, Drop Course, Offer Waitlist Seat, Confirm Seat.
  • Events: Student Enrolled, Student Waitlisted, Course Dropped, Waitlist Seat Offered, Seat Confirmed.
  • Aggregates: Course Offering, Enrollment, Waitlist.
  • Policies: Offer next waitlist seat when enrollment drops below capacity.
  • Read models: Student Schedule, Course Roster, Waitlist Status.

Property Maintenance

  • Commands: Report Maintenance Issue, Triage Request, Dispatch Vendor, Confirm Completion, Escalate Overdue Request.
  • Events: Maintenance Issue Reported, Request Triaged, Vendor Dispatched, Work Completed, Request Escalated.
  • Aggregates: Maintenance Request, Work Order, Vendor Assignment.
  • Policies: Dispatch emergency vendor immediately; escalate if SLA timer expires.
  • Read models: Tenant Request Status, Facilities Work Queue, SLA Breach Dashboard.

Expense Approval

  • Commands: Submit Expense, Approve Expense, Reject Expense, Request Receipt, Reimburse Employee.
  • Events: Expense Submitted, Expense Approved, Expense Rejected, Receipt Requested, Employee Reimbursed.
  • Aggregates: Expense Report, Approval Decision, Reimbursement.
  • Policies: Route high-value expenses to finance; reimburse after approval.
  • Read models: Manager Approval Queue, Employee Expense Status, Finance Reimbursement Queue.

IoT Device Incident Response

  • Commands: Register Device, Raise Alert, Assign Technician, Acknowledge Incident, Resolve Incident.
  • Events: Device Registered, Alert Raised, Technician Assigned, Incident Acknowledged, Incident Resolved.
  • Aggregates: Device, Incident, Technician Assignment.
  • Policies: Create incident when severe alert raised; escalate if incident not acknowledged.
  • Read models: Device Health Dashboard, Incident Queue, Technician Schedule.

Marketplace Escrow

  • Commands: Open Escrow, Confirm Shipment, Release Funds, Raise Dispute, Refund Buyer.
  • Events: Escrow Opened, Shipment Confirmed, Funds Released, Dispute Raised, Buyer Refunded.
  • Aggregates: Escrow, Marketplace Order, Dispute Case.
  • Policies: Release funds after delivery confirmation window; freeze escrow when dispute raised.
  • Read models: Seller Payout Status, Buyer Protection Case, Escrow Ledger.