2

我正在构建一个 Rails 应用程序,但无法确定如何为应用程序架构创建图表。

我过去创建了 UML 类图,因此这就是我的目标。我找到了通过 rake 任务生成 UML 类图的 railroady gem,但是它将模型与控制器分开——这对我来说是支离破碎的。

我想知道是否有另一种(最好是更好的)方法来建模 MVC(rails)Web 应用程序。

我不一定要寻找一个 gem 来为我生成图表,我很高兴在 visio 中手动创建它,我只是不知道我应该使用哪种类型的图表。

4

3 回答 3

1

您可能想尝试鲁棒性图,有时也称为 MVC 图。例如,请参见此处此处

它并不是真正的 UML 图,但大多数 UML 工具通过构造型和自定义图标来管理它。我使用的工具 Magicdraw UML 使用类图,但我想我听说过使用通信图的工具(虽然不确定)。

但是,它可能会也可能不会满足您的期望,因为它是一个非常全球化的图表。

于 2013-03-13T19:59:41.790 回答
0

存在一种名为 UWA(Ubiquitous Web Application)的方法,它不仅可以描述数据结构,还可以描述导航、表示和事务模型。

UWA 方法采用以用户为中心的方法,可改进需求和设计定义。由于这种方法是专门为 Web 应用程序建模而开发的,它允许内容、导航、事务、发布和操作元素的清晰分离。

UWA 从面向目标的需求工程开始,该工程自然出现在后期设计阶段,揭示了应该实施的关键特性。这导致对一些可能没有事先确定或可能被低估的需求进行推理。

您可以在此处找到有关 UWA 的更多信息。

即使您决定不应用此方法,它也可以为您提供一些关于将 UML 图适应 Web 应用程序的技巧。

于 2013-03-13T16:42:23.533 回答
0

您以前遇到过用例图吗?严格来说,它不是概述系统架构的图表,但它确实提供了在给定“用例”(或过程)期间与系统其他部分/外部参与者进行通信的良好可视化表示。

例如: 用户(参与者)-->更新状态(用例)--包括-->(登录)

在这里,我们有一个用户想要更新他们的状态。为了做到这一点,他们需要登录到站点(一个包含的用例)。在 MVC 模式下考虑这一点,我们知道“更新状态”和“登录”都是控制器方法,它们都将与被吸引的网站数据库(也是一个参与者)进行通信,从而展示系统内的通信路径。

系统的参与者可以是在一个过程中与实际系统进行通信的任何东西,通常是在外部,如用户、浏览器、数据库、客户端等。就 MVC 架构建模而言,这最好由类图完成,但使用案例图也将有助于视觉表示。

在开始编码之前,我总是一起绘制用例和类图,作为提取系统需求并将它们布置在工作设计中的一种方式。UML 图毕竟是设计工具——在您编写完系统代码之后再创建一个并没有多大意义!

无论如何都要考虑一些事情-希望这会有所帮助! 基本用例图的简要概述

于 2015-07-31T15:19:14.717 回答