首页  编辑  

基于UML的WEB程序建模设计

Tags: /超级猛料/Web.互联网开发技术/   Date Created:

基于 UML WEB 程序建模设计

最新更新: 2000-06-06

作者:        Jim Conallen

介绍

        Web 的应用越发变得流行。一部分归功于开发技术和工具的快速提高。而且,大多数的系统设计者认为,与传统的应用程序相比,基于 Web 的应用有更加显著的优势。

       当前, Web 开发的热点是工具的开发。极少有人留意到开发过程的重要性。现在的流行设计模式是草率的制造简单的 Web 程序,并且这种方式又鼓励了我们放弃认真和严密的分析和设计。我们认为,稍微复杂的系统都应该设计和建模。文档的目标是突出强化合理的需求。非常不幸,对于 web 的建模来的不是那么显而易见。

       我对于 web 的绝大部分经验基于微软的 asp 技术构建。我努力做出一份通用的文档,以便能够使用其它的类似于 Fusion 这样的开发工具。使用 CGI 脚本还是 ISAPI 过滤器取决于模型的设计需要。

       这份文档只是一份非常大概的阐述关于 web 体系。为了保证他的简短性,对于图像,映射,用户界面风格等都加以忽略。焦点集中在软件的功能实现一侧,尤其是在商业逻辑环节处,应该直接,清晰,详细,格式化的加以表达。至于他的外部连接地址和 MIME 类型就不必考虑了。

基于 WEB 的开发文档体系

WEBSITE

        从表面看, web 的应用开发与 web 的站点图之间的区别非常微妙。 web 的应用开发文档的目标是站点图涉及到用户的输入,并且这种输入能有效的改变商业逻辑的补充。其实质就是站点图外加一份典型的应用。

        Web sites 是非常直观的。他包含主要的三个元素:服务器,连接,客户端。        服务器的分发已经格式化的信息到客户端并相应客户端的请求。请求是通过 http 协议传输的。图一说明了这个模型。一些站点必须要注册,当然也有匿名访问的。        

图一   基本的 web 的应用体系

基于站点图的可用信息是已经格式化的存储的文件系统。客户端通过目录和名字来访问他们。这些文件是期效性的,并反映了站点的相关内容。

       但是有一些信息是存放在数据库中的,通过 (CGI ISAPI) 格式化输出到页面客户端。这种站点配置策略称为动态站点。图二说明了这个模型。

图二   动态站点图

关于动态网站的优势:

关于组件的优势:

图三   通用 web 应用模型

建模设计:

       建模是非常重要的。它帮助我们管理复杂的系统。 Web 应用的复杂度正在快速增长。对于一个给定的系统而言,可以许多不同的但都经过深思熟虑的模型方案。每一个模型都有它的专用目标和适用范围(听众),文档的重点在 web 应用的模型设计上,并且文档的观众也是 web 的建设者。建模时适度的抽象是重要的。

       存在于头脑中的不清晰的任务目标应该把它文档化,清洗化。怎么做呢?使用 UML ,我们可以把页面当成对象来处理。这样做,会带来几个问题:对象的属性是什么?页面脚本的方法有如何定义?

       答案在于:模型的适用范围,也就是听众是谁?在一个建模设计的案例中,用户的界面格式与系统的商业逻辑不相关,也就是静态的页面不应该考虑在建模设计中。服务器商业逻辑的实现,包括服务器脚本的属性,方法,体系结构才是我们建模需要的。当然,还有另外一个问题,同时包含服务器和客户机脚本的页面的混合问题是令人迷惑的。

关于建模概念的外延

        UML 设计者并不能在任何一种状态下做的很好,依然需要多次迭代,并且加入自己的语法标记。

img_12611.bmp (423.3KB)
img_30133.bmp (886.8KB)
img_9495.bmp (195.6KB)