在设计领域模型和类图时,我很难理解要在其中放置什么。我应该把演员放在域模型/类图中吗?
我会给我的意思的例子:
我做一个假期调度程序,有一个Administrator
和End-Users
。该Administrator
做了几件事情就像在程序注册End-Users
,改变他们previleges等End-User
可以选择自己的休假天等
我最初定义的Administrator
和End-User
作为域模型的概念,并后来作为班级图中的班级。 在类图,这两个类最终只有一段时间,我意识到,其实都Administrator
和End-User
是演员后像
Administrator.RegisterNewUser();
Administrator.UnregisterUser(int id);
等
两个方法,也许我得到这个设计完全错误。我不是用方法来填充管理员和最终用户类来完成我的用例请求,而是可以从域中定义其他类来完成它们,并让控制器处理用例(实际上,我决定为每个类用例)。例如,我可以使用UserDatabase.RegisterNewUser()
和UserDatabase.UnregisterUser(int id);
,而不是在Administrator
类中使用这些方法。
这个想法是试图将整个休假日程安排程序想象成一个“封闭程序”,它具有一组功能并且不用担心身份验证等问题,这应该是内部/保护的,存在的我让外部世界看到的唯一公共事物就是它的控制者。
这是正确的做法吗?或者我完全错了?把Actors放在领域模型/类图中通常是不好的主意?对此有什么好的经验法则?
我的讲师正在关注Applying UML and Patterns,我觉得这很糟糕,所以我想知道我可以在哪里查找有关此描述的演员模型情况的更多信息。
对于这一切,我仍然有点困惑,因为这种新方法与我以前做过的任何事情截然不同。