代码之家  ›  专栏  ›  技术社区  ›  Paul Croarkin

记录Web应用程序流/i实践[关闭]

  •  7
  • Paul Croarkin  · 技术社区  · 17 年前

    考虑到静态页面之间的链接以及动态视图组件(HTML表单、JSP、Ajax等)如何与服务器端组件(servlet、struts操作等)交互,使用什么工件/图表来记录Web应用程序的流?是否使用UML图?

    4 回复  |  直到 16 年前
        1
  •  2
  •   Bert F    16 年前

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

    我对我们采用的方法进行了2%的考察:

    在CONALLIEN的论文之后,我们定义了一个新的UML实体(刻板印象)来表示网页或页面的一部分,这样我们就可以将服务器端代码(例如Java Servlet或JSP)与它生成的客户端HTML/JavaScript/Ajax区分开来。例如:

    • [网页]
    • [导航条]
    • [页面内容]
    • [页眉]
    • [页脚]

    有新的关联,例如:

    • [生成]-将服务器端代码与生成的网页或网页片段关联
    • [明显链接]-在站点地图图的客户端页之间使用
    • [链接]-URL链接,即获取请求
    • [提交]-表格发回服务器,即发回请求
    • [客户端重定向]-客户端重定向
    • [服务器重定向]-duh

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

    • [sitemap]->类似于类图-从用户的角度显示[web page]之间的静态关系([apparent link]s)
    • [页面生成]->与类图类似-显示与显示特定网页静态相关的类:生成它的代码、处理提交后的代码
    • [页面组合]-类似于类图-显示构成给定[网页]的内容
    • [序列图]-唯一的另一个变化是序列图现在可以包含客户端实体作为参与者。

    好消息:

    • 我们找到了RationalRose图标扩展,我们需要它来让图表看起来有点像样。

    坏消息:

    • 这种方法做了很多工作——我们现在有两倍多的实体要建模,因为我们现在除了服务器端类之外还为客户端实体建模。

    读一篇康艾伦的论文来获取我所说的图片,但正如我所说,我们并没有严格遵循他的方法——我们只拿走了我们需要的部分。希望这有帮助。

        2
  •  1
  •   Jens Schauder    16 年前

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

        3
  •  1
  •   RDL    16 年前

    我建议采用37signals方法进行应用程序开发。

    每一页都需要有目的。首先关注这个目标,然后围绕它设计其他所有东西。

    过程:

    • sharpie and paper
    • 列表项
    • ignore the details 一开始(他们就挡道了)
    • 尽快创建一些真正的文件(例如,创建一些带有链接的HTML文件,这些链接指向其他页面,以显示应用程序的流程
    • 一旦设置了站点流,就添加设计组件并开始编程。

    将编程添加到已经设计和考虑过的东西上要比设计一个应用程序来解决现有的编程(在大多数情况下,这需要重写代码以适应最初遗漏的设计/流程问题)容易得多。

        4
  •  0
  •   Gabriel Ščerbák    16 年前

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

    我将开发定制DSL,它类似于Cucumber和Webrat中使用的BDD场景格式,imho这样的场景包含足够的信息来创建交互和网页模型。