文/何宁
尽管当前Web 系统开发已经成为系统开发的重要环节,但是开发的流程却仍然依靠开发人员的个人经验的积累,缺少系统、规范的方法。这使得Web 系统开发资源复用率低,移植性差,并且维护性和继承性都得不到良好的体现。本文通过对成熟的Web开发方法应具备的特性和功能进行论述,进而分析现有Web 开发方法的优缺点,从而分析和对比这些方法,对存在的问题予以讨论,并提出未来的研究重点。
【关键词】Web 开发 软件工程 Web 应用
1 引言
互联网的自诞生以来就在不断的飞速发展中,与之相应的各种互联网技术层出不穷。当今的社会中,Web 已经渗透到了士农工商各个行业中,成为日常生活中重要的组成部分。Web 工程可以将传统的信息和数据库系统搬到Internet 上,拓展了信息交互的手段。然而Web 系统的开发流程却面临着很多问题,比如缺少严格和系统的方法。目前Web开发还是主要凭借开发者的经验积累,然而复杂的Web 系统很难依靠个人的经验独立完成。即时费时费力的开发出来一套系统,又因为缺少系统方法,不同系统间相差太大,可移植性和参考性很差,导致重复开发,资源的浪费。本文将就对成熟的Web 开发方法应具备的特性和功能进行论述,进而分析现有Web 开发方法的优缺点,从而分析和对比这些方法,对存在的问题予以讨论,并提出未来的研究重点。
2 Web开发方法应具备的特性
成熟的Web 开发方法,应当是整体化的Web 应用开发流程。我们知道,系统化、整体化的好处是可以提高开发效率和质量。因此,成熟的Web 开发方法应具有如下的主要特性:
(1)Web 开发方法要易于掌握,因为开发方法的设计初衷是为了降低开发者的工作量,因此开发方法应当易学易懂。但Web 开发方法还是应当可以将Web 程序的各方面描述清楚,达到表达能力和难度的平衡。与此同时,Web 设计方法还应当借鉴常见的开发语言和技术特点,使得开发者更快更好的适应。
(2)Web 开发方法还应当具有对复杂系统建模的能力。Web 应用可以使用的范围非常广泛,因此大量的传统信息和数据库系统都进行了Web 移植。这些应用都具有不同的、复杂的功能,开发方法应当适用于该类需求,应当具有对商业过程、工作流建模的能力。
(3)Web 开发方法还应当具有表现层建模的能力,这一点在传统设计方法中尝尝忽略。界面是和用户交流的接口,因此需要非常重视界面的表达能力,丰富的界面表达将使得系统更人性化,并将系统的信息完整的表达出来。
(4)Web 开发方法还应能在较高的抽象层次上表达系统和资源的集成方法。因为新的系统可能要与原有系统相结合,而原有系统的开发语言则种类繁多,开发方法要能适应这种情况。另外,还要保障接口的标准性,从而便利开发出的系统和资源与数据库相连接。
3 Web开发方法研究现状
随着Web 技术的飞速发展,越来越多的人注意到Web 开发的重要性,因此很多Web开发方法被研究出来。现今Web 应用开发方法具有一些共性的特点,比如将Web 系统模型分为领域模型、导航模型和展示模型,然后经过概念建模、逻辑建模、物理建模和实现四个过程完成Web 系统开发。这四个过程中,领域模型只用来描述Web 应用中领域对象的。展示模型用于描述Web 页面的展示形式,是导航对象和导航行为的最终体现。导航模型是Web 模型不同于传统的重要部分,它用于描述Web 应用的导航特性,用于连接领域模型和展示模型。下文将对几个典型的Web 开发方法进行简介。
3.1 HDM lite
HDM[9](Hypermedia Design Method) 是一种应用很广泛的Web 设计方法,主要用在Web 信息系统。该方法的核心是定义结构、导航和表现,并用HyperBase、Access、表现方案形式化。HDM lite 的特点是可以自动生成,其对HDM 进行了扩充,完成从概念方案到逻辑和物理表示的模型转换。但自动生成仅是对静态只读信息页面有效。
3.2 WebML
WebML(Web Modeling Language) 是W3I3项目定义的Web 模型描述语言。该语言可以在概念层次上对Web 应用进行复杂描述。它提供了图形化高度抽象的Web 应用描述方法,并包含了完整的设计过程和工具。此外,由于WebML 支持XML,可以自动产生代码。
3.3 RMM
RMM( R e l a t i o n s h i p Ma n a g eme n tMethodology) 常用于设计、构建和维护Internet Web 系统。其目的是减少动态数据库驱动的维护成本。该语言具有形象化、迭代式过程等特点。RMM 模型分三层,即内容层、多媒体层和表示层。RMM 开发方法特别针对导航机制进行了优化,便于构建和测试。
3.4 Araneus(ADM)
Araneus 由数据库研究衍生而来,其内容层采用ER 模型对领域对象进行建模,多媒体层分为两个阶段,概念设计和逻辑设计。该语言可以将数据库结构映射到超文本结构,并自动生成HTML 页面。数据库设计和多媒体设计之间,逻辑设计和概念设计之间的区分是Araneus 的特点所在。目前的Web 开发方法还有很多,如OO-H方法,UME 方法等,在此并不过多赘述,感兴趣的读者可以很方便的查阅到相关的技术文献。
4 结论
前文中概述了Web 开发方法所应当具有的特点,并简介了当前的Web 开发方法的特点。可以看到,尽管可用的Web 开发方法很多,不同方法各具特色,但是每种方法都是针对于一个和数个方面进行的优化,并不能满足于系统化的软件工程设计需求。因此,这些方法的实际应用程度也并不高,造成了很多的浪费。目前Web 开发方法主要还是存在方法复杂的问题。Web 开发方法研究者仅根据自己的领域,而没有考虑到多领域的融合问题。另外,尽管Web 开发方法提供表现层建模,但多数方法在该方面过于简单,没有体现出设计细节。而模型间缺少清楚和灵活的映射,这也使得层间的连接非常的贫瘠。总的来说,目前的在规范化角度做得很好,但在工程化的方面还很欠缺,所以在未来的研究中,应当令Web 系统研究方法更具工程化的特性。
参考文献
[1] 梅宏,陈锋,冯耀东等. ABC: 基于体系结构,面向构件的软件开发方法[J]. 软件学报,2003,14(4): 721-732.
作者单位
重庆水利电力职业技术学院 重庆市 402160__