对于一个学校项目,我必须开发一个网站来处理一个度假屋的预订。这个想法是管理员可以将客户添加到 CRM 系统。只有这样,客户才能使用他们选择的凭据登录。 当客户进行预订时,由管理员为其指定状态,可以是:ACCEPTED、REJECTED 或 VALIDATING。最后一个是每个预订的标准状态。
在设计UML类图时,发现了一些错误。 首先,对于该项目,我们希望有一个列表,仅供管理员使用,其中包含所有保留信息。还有一个列表,每个客户,只是为了方便。 其次,对于该项目,CRM 系统。其中包含所有数据、预订、客户、登录凭据(当然是散列的!)
现在,我如何向类图暗示这一点?
期待您的回答!
首先,我尝试将所有客户和预订放在 2 个不同的 ArrayList 中,如附图所示。但是我不确定如何从管理员的角度访问它们。
如果您的 UML 图不包含
ReservationSystem
类,那您就错了。
客户和管理员不应拥有 any 列表。
ReservationSystem
确实如此。它应该公开允许不同角色查看、添加、更新和删除 Reservation
实例的方法。私有实现可能使用 Java List
;它可以选择使用任何其他集合在内存中维护Reservation
的实例,或者使用关系数据库来持久化它们。美妙之处在于用户不需要知道或关心您选择如何持久化数据。
Customer 和 Administrator 只是不同的角色。客户应该只能看到他们的预订。管理员应该能够看到所有这些。
如果你同意,让你的 UML 反映这些想法。