Uml mini-JEE项目的类图
我想在JEE中启动一个项目,我需要确认我的类图。我需要知道使用的方法是否正确,以及我使用的作文是否正确 这是我的类图: 该项目是关于一个在线销售商店,它希望建立一个管理工具来销售产品,并管理其产品。此工具必须包括以下功能:Uml mini-JEE项目的类图,uml,class-diagram,Uml,Class Diagram,我想在JEE中启动一个项目,我需要确认我的类图。我需要知道使用的方法是否正确,以及我使用的作文是否正确 这是我的类图: 该项目是关于一个在线销售商店,它希望建立一个管理工具来销售产品,并管理其产品。此工具必须包括以下功能: 识别模块:客户、经理、主管的识别 销售模块:为用户进行购买 产品管理模块:添加/删除产品 统计模块:销售统计数据的可视化 功能规格 必须对应用程序执行操作,使用用户ID和密码连接到应用程序。为了便于使用,并避免此后的任何错误处理,以下是解决方案: 用户配置文件: 用户
- 识别模块:客户、经理、主管的识别
- 销售模块:为用户进行购买
- 产品管理模块:添加/删除产品
- 统计模块:销售统计数据的可视化
- 用户将能够可视化我的在线比赛销售的产品。用户可以下订单,前提是他已在网站My Online Races上注册
- 经理将能够管理产品:
- 添加/编辑/删除产品
- 添加/编辑/删除类别
- 这些数据插入可以使用CSV或XML文件进行,也可以通过网站上的各种形式进行
- 经理将能够查看销售统计数据
- 主管可以添加上面指定了其角色的经理李>
- 主管将能够查看销售统计数据
- 主管将能够查看经理执行的所有操作,这是一种审计跟踪
Ordered
应该被称为Order
文章
和顺序
之间的关系是错误的(不是从形式上看,而是从它所传达的意义上看)。使用正常的一对多:这将更好地反映两个类之间关系的真实性质。请考虑到一个新的物品可能在没有订购的情况下存在,所以它应该是
<代码> +属于和
Person do |>Order
和文章属于|>Category
这些方法似乎还可以。您不需要添加后缀
如何管理(创建/更新/删除)对象?
更高级的问题不是关系图,而是您希望如何组织持久性(即数据库存储):
- 您真的希望对象是一个添加、更新和删除自身(到数据库)的对象吗?它设置简单,运行良好,但使类依赖于底层数据库实现,从而使维护更加困难李>
- 或者对每个对象使用不是更好吗?在这种情况下,存储库充当管理所有数据库操作的集合。域对象(Article、order、User等)则对数据库一无所知,这将导致更易于维护的代码李>
Person
上添加/更新/删除的歧义,因为它目前可能会给人留下任何人都可以添加任何人的印象
模型的改进
最后一句话,同样不是关于图表本身,是关于域的。您的模型认为,订单
是关于一篇文章
然而,实际上,订单通常是关于一篇或几篇文章的:如果这里也是这种情况,那么您的
订单
将成为订单项
,真正的订单
将插入人
和订单项
之间。然后,您可以将订单
和订单项目
之间的关系作为一种组合(即:订单项目
属于订单
,订单负责创建其项目,如果没有相关的订单,项目就没有意义)。文章构成订单,反之亦然。这听起来很合法。请。修复。而且操作也是错误的。我会发布一个答案。@qwerty_所以这不是合法性的问题,而是语义的问题。物品不是由订单组成的,也不能保证订单为物品所有。用作文来表达它是有误导性的。是否有任何论据可以证明组合比简单关联更准确?复合聚合只是对象的生命周期。不是关于本体论。还有一句话:在这个模型中,一个订单被认为是关于一篇文章的。实际上,订单通常是关于几个项目的:如果这里也是这样,那么您的订单实际上是一个订单项,并且类订单将插入到person和订单项之间。在这种情况下,您可以将订单和订单项之间的关系作为一种组合(即:订单项归相关订单所有,没有相关订单就没有意义)。您修改后的图表对于账户的创建稍微少了一些混乱,因为只有特定的专业人员才能创建