如何使用UML建模图形应用程序?

时间:2014-03-22 04:50:17

标签: java class user-interface uml

我在大学早期就学过UML,但所有的例子都是简单的控制台应用程序。现在我被分配开发一个带有图形界面的项目(使用Java),并且需要提交一个UML模型,我还没有弄清楚如何与应用程序一起表示应用程序的图形前端方面非图形后端类。我不太确定从哪里开始。

你怎么建议我这样做?

3 个答案:

答案 0 :(得分:2)

我认为你需要首先询问你想要建模什么,然后这会导致你弄清楚UML是否有用,如果是,那么哪些部分。首先询问谁将使用此模型以及用于什么。有目的的模型。

如果要为应用程序的类结构建模,那么UML类模型可能很有用。但即便如此,您是否试图说明UI类或信息(域)结构,或两者兼而有之?

如果您试图展示运行时交互的工作方式,那么序列图可能很有用。

如果是代码模块化和模块之间的依赖关系,那么封装图就可以做到这一点。

如果您有一个复杂的用户界面程序,其中包含您想要解释的复杂组件结构,那么它与服务器软件没什么区别,组件图也很有用。

每当创建模型时,请问为什么要这样做,为谁以及他们想要什么。这会让你选择有用的东西,而不仅仅是做“忙碌的工作”。

答案 1 :(得分:2)

通常,UI建模涉及三件事:

  • 用户界面的外观:这通常是在UML中完成。你需要一个像Visio或Pencil这样的工具来做到这一点。
  • UI的结构方式:这会考虑如何将UI结构化为类。这些类如何相互关联(依赖,导航,......)。它们与域类的关系。它们与用例(它们实现的用例)的关系。这自然适合UML结构图:类图,包图,组件图......
  • UI在运行时的行为方式:某些操作如何导致创建对象以及调用方法来执行所需的操作。这自然适合UML行为图:序列图,通信/协作图,活动图。

因此,基本上在您的UML模型中,UI类(Screens,Applets,Pages,...)将显示为普通类。这将允许UI结构和行为适合您的应用程序view models

请注意,有tools使用UML配置文件来提供UI模拟,以替代Visio等图形工具。在这个自定义配置文件中,您可以找到例如名为<<的原型类。屏幕>>和陈规定型的依赖关系叫<<导航>>模拟UI元素如何触发UI导航到其他屏幕。

答案 2 :(得分:1)

除了之前的答案,UI的常见设计是模型 - 视图 - 控制器(MVC)之一。一些UML工具实际上具有构造型来帮助您表示这些元素。模型是您要显示的数据,视图是如何显示的,控制器链接两者,将输入传递给UI并处理它以使用模型中的新数据更改显示。

为MVC系统创建序列图以显示动作及其效果也很简单有用。