요청 내용
“Create a domain model for a customer loyalty program with point transactions, rewards, redemptions and transaction types.”
그렇다면Add an expiry date to Reward.Add a referral point transaction type.
이 도면에 담긴 내용
그 이면의 의사결정을 읽어 보세요.
01
Separate PointTransaction and Redemption to track earning vs spending
02
Use enumeration for transaction types (EARN, REDEEM, EXPIRE)
03
Derived attributes for totalPoints and runningBalance
When designing a point-based loyalty or rewards system in e-commerce apps.