【问题标题】:where to put method in class diagram类图中方法的放置位置
【发布时间】:2016-04-07 04:39:38
【问题描述】:

我目前正在为外卖订购系统创建一个类图。系统允许所有者更新客户信息、更新订单等。我应该将方法 updateCustomerInfo() 放在 Customer 类还是 Owner 类中?因为更新的是所有者,而不是客户

【问题讨论】:

  • 您的所有者是用例的参与者吗?或者它真的是您的模型中需要的一个类(gui 类或其他)?
  • 所有者是用例中的参与者。我做了一个所有者类,因为还有其他员工可以使用该系统,但不能做所有者可以做的所有事情。不确定如何在类图中显示谁可以使用哪些方法。你认为我最好把所有者班带出去吗?
  • 你的标题是错误的。你根本不把方法放在图表中。方法出现在类的隔间中,并在 SD 中作为消息出现。

标签: class methods uml class-diagram


【解决方案1】:

如果您有CustomerOrderOrderItem 等类,则需要隐藏这些类的内部。因此,您将在这些类中的每一个中使用update() 方法,并让世界其他地方可以更新对象。

问题的第二部分没有唯一答案。这在很大程度上取决于您的模型的焦点:is it a domain model ? Or a design model ?

  • 在域模型中,您不会在类图中包含参与者,除非绝对必要(例如,跟踪引用创建/修改对象的用户的审计跟踪)
  • 在更详细的设计中,对系统所需的用户帐户管理类或用户界面类模型进行建模可能是有意义的。在后一种情况下,可以通过用户界面执行的操作将使用Command design pattern 的类、应用程序菜单中的方法或引用您的域对象的proxy GUI objects 来表示。

【讨论】:

    猜你喜欢
    • 2011-10-05
    • 1970-01-01
    • 2020-03-26
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多