这是我的UML类图。我意识到我的学生,团队成员和团队联络员的设置方式存在问题。
学生可以成为系统的一部分,然后加入团队,从而成为团队成员。团队成员也可以是团队联络员(可以授予加入团队请求的团队负责人)。
我意识到将学生变成团队成员是一个问题,但我不确定如何处理它。
感谢您的任何建议!〜
答案 0 :(得分:0)
我发现在系统中处理人员及其角色时,最好有一个Role类,Person有角色。
因此,Person有零个或多个角色。学生是角色,教授是角色,......
对于团队,我有一个Team类,其中包含零个或多个TeamMembers。 TeamMember或TeamMember类型(如ProjectTeamMember,与项目相关联)也可以是Person的角色。
此设计允许同一个人在不同时间扮演不同角色,同时保持细节清晰和分离。例如。如果你有一个人“Joe Blow”,Joe可能是一名学生(并且有像ClassSection这样的对应关系),一个项目的成员(你可以找到Joe团队中的其他人),......
在这里阅读更多内容: UML 2 Class Diagrams