【问题标题】:Class diagram's entity attributes inquiry类图的实体属性查询
【发布时间】:2020-06-07 02:35:14
【问题描述】:

我有一个关于客户从公司购买股票并计算分店销售额的场景。所以我制作了一个客户、采购和分店销售的类图,但我不确定在分店销售实体中放什么,因为这个分店销售应该表明每个分店的总销售额。 这是我的图表:

分店销售是否也应包括purch_totalprice、purch_stock 和purch_stockquantity,就像在采购实体中一样?

【问题讨论】:

    标签: class uml entity-relationship modeling class-diagram


    【解决方案1】:

    图表看起来更像是数据库表的entity/relationship diagram,而不是UML class diagram

    • 在 UML 类图中,您不会使用虚线将唯一标识符与其他属性分开,但您会使用分隔符来显示操作(即方法或函数)。
    • 在 ER 图中,这种做法并不常见,但也不常见。

    话虽如此,不管是什么建模语言,这张图:

    • 不显示Customer 正在购买什么。 stock 太模棱两可了:它是您库存中的材料吗?这是证券交易所股票(公司的股份)吗?无论答案是什么,最好将其显示为一个自己的类/实体(我将在以后使用Product)。

    • 不显示任何用branch_id 标识的类/实体。我建议添加一个名为 Branch

    • 的实体
    • 不显示关联/关系。您至少应该有Customer--PurchasePurchase--ProductPurchase---Branch,也不应该有它们的多重性/基数。

    如果您的模型中包含所有这些信息,“分店销售”实际上是Purchase 的数据提取,而不是一个独特的实体:客户的购买是分店的销售。对于您的图表:

    • 如果您在类模型上,您将添加一个getSalesDetails() 函数:此函数将返回该分支的所有相关Purchase 对象的列表。您还可以添加一个getTotalSales(),这将完成相关销售额的总计。也许考虑到购买的date
    • 如果您在 ER 模型中,由于分支和采购之间的关联,您将知道如何找到此数据(您可以通过将关系标记为 Branch--Purchasemakes sales 来明确说明。但您也可以如果您想记录您的物理模型并打算在您的数据库中实现它(使用冗余数据,不推荐,或使用视图),请显示一个包含重复的相关数据的单独表格

    关于课程的最后重要说明

    • 如果你的图应该是一个 UML 类图,但你想显示你的数据库模型的细节,你可以在每个实体上面加上«table»

    • 1234563

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-30
      • 2012-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-07
      • 2018-05-20
      • 2019-12-30
      相关资源
      最近更新 更多