2009-05-05 41 views
7

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

回答

2

我们使用UML类图使用Conallen的文章Modeling Web Application Design with UML的变体。你会发现这篇文章已经演变成different incarnations around the net,甚至成为一本书Building-Web-Applications-UML-2nd

我的,我们所使用的方法的2美分游:

继Conallen的论文中,我们定义了一个新的UML实体(定型)来表示一个网页或网页的一部分,使我们能够区分服务器 - 端代码从客户端HTML/JavaScript的](例如,Java小服务程序或JSP/AJAX,它产生,例如:

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

有新associationss如:

  • [构建] - 涉及服务器端代码到它产生
  • 网页或页面片段
  • [表观链接] - 在网站地图上的客户端页面之间使用
  • [链接] - URL链接,即GET请求
  • [提交] - 表单发回服务器,即POST请求
  • [客户端重定向] - 客户端重定向
  • [服务器重定向] - 咄

最后,一些新的图表(大多只是类图的特例)如:

  • [站点地图] - >像的类图 - 示出了从用户的角度来看
  • [页代]静态关系之间[网页]([表观链路] S)S - >像的类图 - 显示与一个显示有关的静态类aying一个特定的网页:什么代码生成它,什么代码处理提交后
  • [页面组成] - 就像一个类图 - 显示组成一个给定的[网页]
  • [序列图] - 唯一的其他变化是序列图现在可以包含客户端实体作为参与者。

好消息:

  • ,我们发现我们需要使图表看起来半体面的Rational Rose图标扩展。

坏消息:

  • 这种方法是很多的工作 - 我们现在有两倍多的实体,因为我们现在除了模拟客户端实体服务器模型课程。

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

0

用例作为活动图的一部分被某些矿工同事使用,但这对于某些静态高级导航概述来说可能很好。

我即将开发自定义DSL,它将类似于Cucumber在Webrat中使用的BDD场景格式,恕我直言,这种场景包含足够的信息来创建交互和网页模型。

1

我以前使用UML状态图来记录Web应用程序的页面导航。

1

我建议将37signals方法用于应用程序开发。

每个页面都需要有目的。首先专注于此目的,并围绕它设计其他所有环节。

过程:

  • 勾画出的主要部分与sharpie and paper
  • 列表项
  • ignore the details早期(他们刚刚得到的方式)
  • 真实尽快创造的东西越好(即创建一些带有链接的html文件,该链接转到其他页面以显示应用程序将如何流动
  • 一旦设置了站点流程,然后添加设计组件和开始编程

将编程添加到已经设计并考虑的内容与设计应用程序以解决现有编程(在大多数情况下需要重写代码以适应设计/流动问题)在开始时错过了)。

相关问题