记录Web应用程序流/ Iteraction

Pau*_*kin 7 architecture documentation diagram uml web-applications

什么工件/图表用于记录Web应用程序的流程,同时考虑静态页面之间的链接以及动态视图组件(html表单,JSP,Ajax等)如何与服务器端组件交互(Servlet,Struts操作等) ?使用UML图表?

Ber*_*t F 2

我们使用 UML 类图,该图是 Conallen 文章《使用 UML 进行 Web 应用程序设计建模》的变体。您会发现这篇文章在网络上已经演变成不同的版本,甚至已经成为一本书Building-Web-Applications-UML-2nd

我用 2 美分介绍了我们使用的方法:

继Conallen的论文之后,我们定义了一个新的UML实体(构造型)来表示网页或页面的一部分,以便我们可以区分服务器端代码(例如Java servlet或JSP]与客户端HTML / javascript / AJAX它生成的。例如:

  • [网页]
  • [导航栏]
  • [页面内容]
  • [标题]
  • [页脚]

出现了新的协会,例如:

  • [builds] - 将服务器端代码与其生成的网页或页面片段相关联
  • [apparent-link] - 在站点地图上的客户端页面之间使用
  • [link] - URL链接,即GET请求
  • [submits] - 表单post回服务器,即POST请求
  • [client-redirect] - 客户端重定向
  • [服务器重定向] - 呃

最后,一些新的图(主要是类图的特化),例如:

  • [站点地图] -> 像类图 - 从用户的角度显示[网页]之间的静态关系([明显链接])
  • [页面生成] -> 就像类图 - 显示与显示特定网页静态相关的类:什么代码生成它,什么代码处理帖子提交
  • [页面组合] - 就像类图 - 显示构成给定[网页]的内容
  • [序列图] - 唯一的其他变化是序列图现在可以包含客户端实体作为参与者。

好消息:

  • 我们找到了 Rational Rose 图标扩展,我们需要这些扩展来使图表看起来还不错。

坏消息:

  • 这种方法的工作量很大——我们现在要建模的实体数量是原来的两倍,因为除了服务器端类之外,我们现在还要对客户端实体进行建模。

阅读科纳伦的一篇论文,了解我正在谈论的内容的图片,但正如我所说,并没有严格遵循他的方法 - 我们只采取了我们需要的部分。希望这可以帮助。