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.