基于UML的Web应用软件的设计与实现_王璐

基于UML的Web应用软件的设计与实现_王璐
基于UML的Web应用软件的设计与实现_王璐

文章编号:1004-8820(2004)03-0212-06

基于UM L 的Web 应用软件的设计与实现

王 璐,任满杰,周汝宝

(烟台大学计算机学院,山东烟台264005)

摘要:针对现有U M L 建模工具对Web 应用程序设计支持不够理想的问题,提出了Web 设

计面向对象化的方法,抽象出Web 应用程序中结构相似的、功能相近的可复用的内容.通

过绘制UM L 示图进行Web 软件结构、流程和数据建模,生成软件代码以及数据库结构的

解决方案,并结合自己开发的U M L 建模软件工具WebBuilder 阐述了用U M L 图设计W eb

应用程序的对象模型和功能模型,由此生成软件实例的方法.

关键词:面向对象;U M L 建模;Web ;类

中图分类号:T P311 文献标识码:A

随着面向对象技术的出现,产生了软件工程中的面向对象的方法学.无论从程序设计的角度还是从软件工程的角度,面向对象(object -oriented )都是非常重要的理念.从语言到编程技巧,到系统设计,到需求分析,到方法学,面向对象已经无处不在,成为软件开发实事上的标准技术.在面向对象的一整套技术体系中,软件建模(modeling )有特殊地位和价值[1].UM L 不仅用面向对象的方法指导软件开发的整个过程,而且实现了直接生成代码的质的转变.但是当今比较流行的一些建模工具,如:Rational Rose &XDE 、Pow er Designer 等,对于Web 应用程序没有很好的解决方案.分析原因主要是,大部分Web 应用程序的开发语言,如:ASP 、PHP 、JSP ,是标记性语言集合的脚本语言,其面向对象性不够明显,所以利用现有建模工具绘制出各种UM L 示图,除了建立模型,指导软件开发的每个阶段,以及有效地创建数据库以外,对于程序的实际开发,特别是代码生成方面的帮助有限.

目前Web 应用程序大多还以手工开发为主来实现,针对这些问题提出如下解决思路:

(1)在不同类型的软件开发中,由于影响项目成败的关键点不同,所采用方法也需要有所不同.过去一种方法通晓“世界”的想法是不现实的,也是不可能实现的.因此,针对一个具体的应用问题,找出有效的解决方案.

(2)为了从设计阶段的图形符号到最终程序代码的生成,要充分利用UM L 的各种图示、方法,获取生成Web 应用程序所需要的各种元素、参数.通过绘制Use Case Diag ram 、Class Diagram 以及Activity Diagram ,针对不同的Web 应用程序,分析、设计出其对象模型和功能模型等相关模型.

(3)对Web 应用程序的开发语言,加强其面向对象的部分,尽量用面向对象的思想满足 收稿日期:2004-02-18作者简介:王璐(1981-),女,山东荣成人,海军航空工程学院在读硕士生,研究方向为信息管理与决策.

第17卷第3期

烟台大学学报(自然科学与工程版)Vol .17No .32004年7月Journal of Yantai U niversity (N atural Science and Engineering Edition ) Jul .2004 

DOI :10.13951/j .cn ki .37-1213/n .2004.03.012

Web 应用程序设计的要求,抽象出Web 应用程序中结构相似的、功能相近的可复用的内容,并对其进行封装,使其“类”化.

(4)Web 开发者可以运用抽象出的Web “类”来进行高效率、低成本的快速开发,并可以按照不同的需求进行类的继承.

1 应用领域现状

图1 自动生成网站代码的工作流程

在当今信息飞速流动的时

代,Web 应用程序,特别是网站制

作的需求越来越多,大部分开发

者倾向于利用ASP 、PHP 、JSP 等

脚本语言建立动态网站,让网站

拥有者可以利用管理平台,管理

自己网站的信息层,降低网站的

维护费用.然而我们知道不是任

何问题的解决都是要从头做起

的,更多的是复用以前成形的解

决方案.大部分Web 应用程序解

决方案相似,所以可以从实践中抽象出可复用的类,方便网站的设计与实现[2].

现在也有一些自动生成网站代码的软件,但是它们大部分的工作流程如图1.

通过使用这种软件,可以避免一些重复性的编码,但是会使开发者注意力更多地放在编码上,而不是在以用户为中心的网站结构、功能、流程的分析上.而且片断性的代码很容易模糊设计者对网站的整体结构的把握.

2 解决问题的方案

采用基于UM L 的Web 应用程序生成代码,即以UM L 为主要设计思想,来进行Web 项目设计及管理,这样的架构使得浏览器、网络和Web 服务器等载体更加透明化.这种思路主要体现在用UM L 图设计Web 应用程序的对象模型和功能模型,由生成器生成程序代码和数据库结构,使Web 应用程序的建设者们把主要注意力放在以用户为中心的功能、流程的设计上.

3 基于UM L 的Web 应用程序生成

基于UM L 的Web 类的表现形式可以通过Web 应用程序以及支持应用程序的数据库两种方式来实现.

3.1 Web 类的数据库表现方式

对象即数据和操作的集合.多数Web 应用程序需要处理的对象比较简单,可将数据库定义为类族,而数据库中的数据表则可以通过已经定义过的Web 类以及类之间的关系来实·213· 第3期 王 璐,等:基于UM L 的Web 应用软件的设计与实现

现.类包含属性和操作,而属性可定义为数据表的字段,属性有数据类型;操作可定义为对应数据表进行的查找、添加、删除、修改等操作.其表现方式如图2

.

图2 Web 类的数据库表现方式示意图

对于现在几乎所有数据库以及对其的操作都可以通过标准的SQ L 语句实现,用Class Diagram 进行数据库的需求分析、概念数据模型设计,抽象出其数据模型,使Web 应用程序开发需要的数据库可以灵活生成.

通过设计Class Diag ram ,来建立Web 应用程序的对象模型.以WebBuilder 设计某网站部分Class Diag ram 为例(如图3).

3.2 Web 类的应用程序表现方式

Use Case Diagram 帮助开发人员理解系统预期行为,从用户的观点收集需求信息,它对于分析Web 应用程序的整体结构框架以及功能模型都很重要.对Web 应用程序的功能模块的实现进行抽象,大部分是与数据库的交互及对其内容进行的处理,即对数据表的操作.

以WebBuilder 为例,设计的一个网站的Use Case Diagram 如图4.

图3 Class Diagram 结构图 图4U se Case Diagram 结构图

系统主要角色———浏览者可以通过网站看到index (首页)、intro 、leader3个主要页面,从而生成网站的导航栏.用例之间的关系分为<>、<>,通过<>扩展出的为对某对象的操作,通过<>扩展出的为另一个页面.图中listnews 由于是从index 上“<>”的,表示index 页面中包含了对数据表listnew s 的操作,它可以是在Class Diagram 设计某对象的操作时建立的.这样,Web 应用程序功能结构,即所包含的页面以及页面所包含的数据库操作就建立起来了.

3.3 最终代码的实现

通过对现有Web 界面的信息表现形式的分析,Web 应用程序的界面设计部分可抽象为List 、Table 、Show 、Login 、M aintenance 、Search 等.其中,List 是逐条列出的信息(如网页中多·214·烟台大学学报(自然科学与工程版)第17卷 

条新闻的显示);Show 针对需要单条显现的信息(如网站公告栏);Table 是带表头的数据信息;Login 是表单信息的提交(如会员登陆);M aintenance 是需要进行数据库维护的部分(如生成网站的后台管理系统,就是维护数据库的删除、添加、修改、查询通用代码);Search 是需要输入一定参数进行查询的部分(如内容搜索).

3.4 Web 类的继承

在实际开发中,特别是在界面个性设计中往往会用到不同的风格,这就需要在原有类的基础上进行功能的扩展,即Web 类的继承.按照Web 类的要求,可以对上述6个类在功能上进行扩展,使其满足应用程序和数据库设计的需要.

从用户的角度来讲,通过使用这样的开发方法可以直观地、迅速地了解软件的功能和使用方法,也便于同用户交流,可以很好的描述各个功能流程;当然,从Web 软件开发者的角度,可以很快的了解软件的结构、功能,可以节省大量的开发成本,提高开发效率,更重要的是它能使系统的可维护性大大的提高.

4 一个基于UM L 的Web 应用程序生成的实例

下面以WebBuilder1.0为工具,设计一网站的实例:

(1)首先建立一个WebBuilder 工程文件———school .zrb ,并设置该工程的属性.

(2)绘制工程的用例图.

用例图(Use Case Diag ram ),是最为关键的图,它直接关系到了所生成网站的直接面貌,是与用户打交道的门户.因此,应该首先根据用户的需求,分析、设计好工程中的用例图.

本例中,由于用户需要表达一所学校内的信息,即一个学校站点,根据其需求,设计的用例如图5.

图5 工程的用例图

·215· 第3期 王 璐,等:基于UM L 的Web 应用软件的设计与实现

在此基础上,设置每一个用例的基本属性,如图6.

图6 设置用例的属性

(3)绘制工程的类图.

工程的类图(Class Diag ram ),是运用

UM L 思想最重要的体现,它将网站中普遍

的、通用的信息进行抽象与封装,使其类化.

并在用户不同需求的基础上,对其进行继承,

从而提高工作效率.该实例中用到的类图略.

(4)绘制其他图.

根据用户的需要以及方便设计,也应当

绘制出其他UM L 用图,在此鉴于篇幅从略.

(5)生成全站代码.

在绘制好以上UM L 图以后,就可以让WebBuilder1.0生成全站代码,并将代码上传至服务器.图7就是实例中所生成的网站首页

.

图7 生成的网站首页

这里不仅可以生成整个网站的代码还可以生成管理该网站的后台系统.

利用该后台系统,可以方便地添加、修改和删除网站里的内容,无需修改文件,网站的维护在远程客户机浏览器实现.

5 结束语

在各产业日趋向网络化的今天,Web 应用程序以其独有的优势而广泛应用,如何使网络程序员从重复的编程劳动中解放出来,应该受到愈来愈多的重视.而图形符号是抓住思维的最佳表现方式,针对比较具体、细小的领域,利用UM L 建立模型即而生成Web 应用程序,真正实现由理论模型到实际软件的转化.

参考文献:

[1] 吴际,金茂忠.UM L 面向对象分析[M ].北京:北京航空航天大学出版社,2001.1~3.

[2] Paulo C M asiero .一种在线拍卖管理的模式语言[J ].非程序员,2002,(10):87.

·216·烟台大学学报(自然科学与工程版)第17卷 

Design and Implement of UML -based Web Software

WANG Lu ,REN M an -jie ,ZHOU Ru -bao

(School of Computer Science &Technology ,Y antai U niversity ,Yantai 264005,China )

Abstract :The existed for UM L modeling tools now available cannot suppo rt the Web -based application very well ,an object -oriented method for Web desig n is brought forw ard ,w hich abstracts the reused contents that have the similar structure and the homothetic function .By the w ay of draw ing UM L diagram ,the modeling of Web -based softw are 's structure ,flow and data are carried out ,and then the code and database structure are generated .Combining the UM L tool ,Webbuilder ,the method that uses UM L diag ram to desig n Web -based application in object and function module and to create the softw are code is expounded .

Key words :object -oriented ;UM L modeling ;Web ;class

(责任编辑 苏晓东)

《烟台大学学报》(自然科学与工程版)

入选中国科技核心期刊

日前,烟台大学学报编辑部接到通知:《烟台大学学报》(自然科学与工程版)被收录为国家科技部中国科技核心期刊.

经中国科学技术信息研究所信息分析研究中心对期刊多项科学计量指标的综合定量评定及同行专家严格的评议推荐,《烟台大学学报》(自然科学与工程版)被评定为中国科技论文统计源期刊(中国科技核心期刊),自2004年起(用刊为2003年)收入国家科技部中国科技论文与引文数据库(CSTPC ).该数据库于1988年由中国科学技术信息研究所建立,十几年来,每年对中国科技论文的产出情况进行跟踪统计分析,并向社会公布中国科技论文统计结果,出版《中国科技论文统计与分析》年度报告.与此同时,该数据库生成的《中国科技期刊引证报告》(统计源版)也已成为科技期刊编辑和管理界的工具书,每年定期出版.

编辑部 ·

217· 第3期 王 璐,等:基于UM L 的Web 应用软件的设计与实现

相关文档
最新文档