java - 具有额外角色的用户/项目/组织系统的 UML 类图
问题描述
我实施的系统包括用户、组织和项目。
- 用户可以创建一个组织,因此他自动成为该组织的创始人(读取超级用户)。
- 组织创始人可以向项目添加新用户,并赋予他们一些额外的角色,如项目经理。PM 不能从组织中删除创始人,但创始人可以删除 PM。
- 用户可以在不同的组织中担任不同的角色。
- PM 可以将新用户添加到项目中,添加任务,......他看不到该组织中他不是成员的其他项目。
这种情况下最好的设计是什么?我创建了以下 UML 类图
我正在使用 Java + Spring Boot。例如,当我想在项目中添加新用户时,我需要检查当前授权用户在所选项目中是否具有 PM 角色。这会导致 getUserInThisProject、foundCurUserInThatList、verifyThatHeHasPMRole 等操作。这在很多方法中重复出现。有没有办法避免它?
解决方案
推荐阅读
- javascript - $.getJSON 适用于本地主机但不适用于远程服务器
- jquery - 使用带有 AMCharts 4 饼图的 Jquery UI 滑块
- windows - 如何在纱线脚本中编写powershell语法
- python - 如何在 Python 中使用 Plotly Express 在同一 y 轴上绘制多条线
- angular - 一些嵌套 JSON 对象的 Angular 自定义过滤器
- javascript - 显示 PHP 文件每一步的处理状态
- bash - bash:时间安排和循环脚本
- python - 从 Python 2 过渡到 Python 3 的困惑:为什么同时支持两者?
- avfoundation - kCMSampleBufferAttachmentKey_TrimDurationAtStart 错误
- python - Kivy:我可以使用 kivy 语言传递 Popup 内容吗?