Contract Value Objects¶
Why This Exists¶
This document defines immutable and value-based concepts used by the Contract Domain.
Owner¶
The owner is the Chief Product Officer and Enterprise Architect.
Business Value¶
Value objects improve consistency in contract status, dates, money, performance, risk, and closeout tracking.
Value Object Catalogue¶
| Value object | Purpose | Validation rules |
|---|---|---|
| ContractWorkspaceId | Identifies contract workspace. | Required, unique, immutable. |
| ContractStatus | Contract lifecycle state. | Controlled values such as created, active, at risk, completed, closed. |
| MilestoneStatus | Milestone state. | Planned, in progress, completed, overdue, cancelled. |
| DeliverableStatus | Deliverable state. | Planned, in progress, submitted, accepted, rejected, cancelled. |
| VariationStatus | Variation state. | Proposed, under review, approved, rejected, implemented. |
| InvoiceStatus | Invoice state. | Draft, issued, approved, disputed, paid, cancelled. |
| PaymentStatus | Payment state. | Pending, partial, paid, overdue, failed. |
| ContractRiskLevel | Risk severity. | Low, medium, high, critical. |
| ContractHealthScore | Health score. | Numeric score with components and date. |
| PerformanceMetricValue | Metric value. | Metric name, value, period required. |
| CloseoutStatus | Closeout state. | Not started, in progress, complete, blocked. |
| Money | Amount and currency. | Currency required. |
| DateRange | Start and end date. | Start must be before end where end exists. |
Financial Rule¶
Invoice and payment values must preserve currency and source context.
Risk Rule¶
Risk levels must include severity and reason. Risk level alone is not sufficient.