简单用例的域模型

时间:2014-09-10 14:11:02

标签: oop uml domain-model

我正在尝试学习域建模,现在让我们考虑购物车的例子。让用户可以浏览产品目录并将产品添加到购物车,购买这些产品。要购买产品,他将下订单。用户可以追踪他的订单详情。他可以打电话给客户代表,了解他的订单状态。

请在完整范围内验证我的域模型。

以下是我设计的领域模型,我在表示订单和订单状态方面存在问题,这是正确的方法 我如何链接产品和订单。

enter image description here

2 个答案:

答案 0 :(得分:1)

(概念性)域模型是在软件工程项目的分析阶段生成的问题域的 独立于解决方案 的描述。它可能包括信息模型(通常以UML类图的形式),流程模型(通常以BPMN图的形式),以及可能的其他类型的模型。

域类模型仅包含概念元素,例如 属性 (可能没有数据类型)和 关联 。它没有指定属性和方法的可见性,因为可见性是特定于平台的概念。

您的模型在许多方面都不完整(例如,它不描述从购物车中获取的订单行/详细信息),并且它不包含任何关联。显然,订单与一个客户和许多商品/产品(通过其订单行)相关联。

OrderStatus应该建模为 枚举 ,这是一个使用<>定型的UML数据类型,Order应该具有status属性,并将此枚举作为其范围。

下面的模型可能比您的想法更为通用,因为它允许从中获取订单商品的多个仓库,并且它还区分私人和企业客户。

enter image description here

答案 1 :(得分:0)

您可以将“订单详细信息”设置为订单和产品之间关系的关联类。参见示例:

IBM example of an associative class

请注意,您的实际上是一个类图。域图显示了对不同问题域的依赖关系,例如

  1. 订购fullfillment
  2. 数据库
  3. RemoteCommunications
  4. SystemMaintenance