0

假设我有一个用例“客户在账户上存钱”。“Deposit()”功能应该去哪里?客户或帐户?这个用例的设计应该是什么?

4

1 回答 1

1

当一个deposit动作被执行时,这个动作至少记录了deposit_amount这个deposit_date动作是在什么时候完成的。因此,此操作的位置deposit取决于以下四种情况(或 和 之间的关系customeraccount

[1] 一个account可以属于许多customer。但是, acustomer可以有一个account. account也就是说,关系是从到的一对多customer。在这种情况下,deposit(deposit_amountdeposit_date) 动作应该是customer.

[2] Acustomer可以容纳许多account. 但是, anaccount可以属于 single customercustomer也就是说,关系是从到的一对多account。在这种情况下,deposit(deposit_amountdeposit_date) 动作应该是account.

[3] 许多account可以属于一个单一的customer。此外, anaccount可以被许多人持有customeraccount也就是说,关系是从到的多对多customer。在这种情况下,最好有一个单独的类CDeposit{customer_id, account_id, deposit_amount, deposit_date} which will record this actiondeposit`。

[4] 一个account只能属于一个customer。还有一个customer只能装一个accountaccount也就是说,关系是从到的一对一关系customer。在这种情况下,deposit( deposit_amountand deposit_date) 动作可以是任何accountor的一部分customer

于 2017-02-07T06:45:37.240 回答