【问题标题】:What detail must a UML class diagram have? [closed]UML 类图必须具备哪些细节? [关闭]
【发布时间】:2013-11-22 16:29:37
【问题描述】:

要设计一个项目并绘制一个UML类图,类图必须包括什么?

  1. 假设我们的类有文本字段、按钮等。它们是否必须作为成员包含在内?

  2. 假设我们需要执行一些表单验证,并且我们打算通过将从表单获得的数据传递给“验证器”对象来执行它,它是否也必须包含在类图中?

我收到一些同事的意见,类图是设计阶段的,不能包含我上面提到的对象。但是当项目完成后,会不会有大量我们没有在类图中绘制的对象?

【问题讨论】:

  • 这是上班还是上学?一般来说,教授/老板会让你知道他们想要多少细节。
  • UML 是一种通信工具。它不是一个开发工具。它不应该包含代码的绝对现实。代码已经包含了这个绝对的现实。将其用作记录和交流全局的一种方式。并在必要时使用它。当代码及其文档自给自足时,不需要图表。当应用程序的某些部分很复杂并且受益于视觉解释时,请使用图表。
  • 应该提供每个类的有效字段和主要方法,但主要看你教授的精确程度。

标签: java class uml diagram


【解决方案1】:

UML 是一种语言。使用方式由您决定。

理想情况下,您将拥有多个文档。您需要多个文档的原因是,文档写作最重要的技巧是将自己限制在每个文档的一个视角。

您想要对象的静态表示 -> 不要谈论文件 您想显示对象之间的关系 -> 不要谈论数据流。

你明白了。只要您清楚文档的目的是什么并且与传说一致,UML 就可以讲述任何故事。

针对您的具体问题: 由于您正在创建一个类图(系统对象的静态表示),因此重要的位可能是每个对象/类的内容(不是表单本身的输入字段,而是这些字段最终是对象的结构保存到),以及它们与其他对象的关系。

您可以包含验证器对象并将其连接到其验证的对象,但对其验证方式、验证时间或它们通信的协议进行建模与此特定视图无关。

【讨论】:

    【解决方案2】:

    通常在 UML 图中,您会排除无关数据。根据您想要的深度,通常会排除 UI 控件和 getter/setter 方法等内容。

    另一方面,您的 Validator 对象应该在您的 UML 图中定义为一个控制类,因为它在您的系统中具有责任和目的。

    【讨论】:

      猜你喜欢
      • 2012-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多