(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机应用技术专业论文)基于web+services的协同图形设计系统(cgds)的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

l 海人学硕十学位论文 t h e p o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 摘要 计算机支持的协同图形设计通过建立一个具有群体性、交互性、分布性 和协作性的人机网络工作环境,来协助多个地理上分散的用户对个大型的 工程进行共同图形设计,它是c s c w 的一个典型应用和重要发展方向。 从国内外的研究现状来看,当前的协同图形设计系统所支持的图形对象 的类型、对象的属性和图形对象的图形处理功能比起成熟的图形c a d 系统相 差较远,而且同现有的c a d 系统流行数据格式不兼容,不能直接支持工业标 准的c a d 矢量化图形格式,仍然难以支持实用化的工程设计。因此,如何实 现将c s c w 系统优良的协同工作能力同传统c a d 系统强大的图形处理能力结 合起来,并且直接兼容流行c a d 图形格式的协同图形设计系统,这j 下是本文 将要研究的问题。针对上述的不足,本文采用面向对象的设计方法,深入 a u t o c a d 的内核进行通讯,实现了一个既具有良好协同能力,又具有强大的 图形处理能力的系统原型。 本文首先通过分析各种分布式技术的优劣,提出了基于w e bs e r v ic e s 的具有平台无关的、松散耦合的协同图形设计的系统结构。 其次,采用面向对象的开发方法,对协同图形设计的操作进行了高度的 概括,从减轻网络流量、增强协作性出发,提出了适用于本系统的一套数据 通讯协议。 再次,在本系统中对图形数据库对象的唯一性进行了深入的研究,成功 地解决了数据的一致性问题。并对o b j e c t a r x 中的编辑器响应器、数据库响 应器和动作响应器进行了深入的研究与二次开发,使a u t o c a d 系统成为具有 并发控制和版本管理能力的协同图形设计的工具。 最后,基于本文的理论,实现了一个基于w e bs e r v i c e s 的协同图形设 计系统的原型- - - 一汽车吊的协同设计。 通过工程实例,验证了本文的理论的可行性和有效性,达到了既有良好 的协作性,又有强大的图形操作能力,同时很好地兼容现行的d w g 图形格式 的要求。 关键词: w e b 服务,协同,图形设计,版本管理,并发控制,协同感知 第v 页 上海大学硕士学位论文 ! ! ! ! ! 璺墅塑! 坐! ! ! ! i ! ! ! ! ! ! ! ! 堕塑! 翌业一 一一 a b s t r a c t c o m p u t e rs u p p o r t e dc o o p e r a t i v eg r a p hd e s i g n c a n h e l p t h eu s e r si n d i f f e r e n t g e o g r a p h i c a lp l a c e s t o c o d e s i g n t h e g r a p h s o fa l a r g e s c a l ep r o j e c t t h r o u g he s t a b l i s h i n g a ni n t e r a c t i v e ,d i s t r i b u t i v e ,c o o p e r a t i v eh u m a n 。c o m p u t e r n e t w o r k w o r k i n g e n v i r o n m e n t i ti sat y p i c a l a p p l i c a t i o n a n da n i m p o r t a n t d e v e l o p i n gd i r e c t i o no fc o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k i n g ( c s c w ) h o w e v e r ,t h ee x i s t i n gc o o p e r a t i v eg r a p hd e s i g ns y s t e m l a g s b e h i n d c o m p a r e dt ot h em a t u r eg r a p hc a ds y s t e m i nt h ea s p e c t so f p a t t e r n s ,p r o p e r t i e s o fg r a p h sa sw e l la si nt h e g r a p hp r o c e s s i n gf u n c t i o n s m o r e o v e r ,i t i sn o t c o n s i s t e n tw i t ht h ep o p u l a rd a t af o r m so fc a ds y s t e m ,t h u so a n g o td i r e c t l y s u p p o r tt h ei n d u s t r y s t a n d a r dg r a p hf o r m so fc a d a n dt h ep r a c t i c a lp r o j e c t d e s i g n s o ,t h em a i np u r p o s eo ft h i st h e s i s i st or e s e a r c ht h ep r o b l e m - - h o wt o c o m b i n et h ee x c e l l e n tc o o p e r a t i v ew o r k i n ga b i l i t yo fc s c w w i t ht h ep o w e r f u l g r a p hp r o c e s s i n gp o w e r o fc a d i nv i e wo ft h i s ,t h ew r i t e ro ft h i st h e s i s a d o p t e dt h eo b j e c t o r i e n t e dd e s i g nm e t h o d ,d e e p l yp r o b i n gi n t ot h ec e n t r a lp a r t o ft h ea u t oc a d ,s u c c e s s f u l l ye s t a b l i s h e das y s t e mw h i c hn o to n l yp o s s e s s e s g o o dc o o p e r a t i v ew o r k i n gp o w e r b u ta l s oe x c e l l e n tg r a p hp r o c e s s i n gp o w e r f i r s t l y ,b ya n a l y z i n g t h e a d v a n t a g e s a n d d i s a d v a n t a g e s o fv a r i o u s d i s t r i b u t i v e t e c h n o l o g i e s ,t h i s t h e s i s p u t o u tt h e s y s t e m s t r u c t u r eo ft h e c o o p e r a t i v eg r a p h i cd e s i g nb a s e d o nw e bs e r v i c e s s e c o n d l y , t h i st h e s i sg a v eo u ta ne x a c ts u m m a r i z a t i o no f t h ep r o c e s s i n go f t h ec o o p e r a t i v eg r a p hd e s i g na d o p t i n gt h eo b j e c t - o r i e n t e dd e v e l o p i n gm e t h o d , a n dp u tf o r w a r das e to fd a t ac o m m u n i c a t i v ea g r e e m e n ts u i t a b l et ot h i ss y s t e m i nt h ev i e w o f l i g h t e n i n g t h en e t w o r kv o l u m ea n d s t r e n g t h e n i n g t h e c o o p e r a t i v e n e s s f u r t h e r ,t h i st h e s i ss u c c e s s f u l l ys o l v e dt h ep r o b l e mo ft h ec o n s i s t e n c yo f t h ev a r i o u sd a t at h r o u g hd e e p l yp r o b i n gt h ee x c l u s i v e n e s so ft h eo b j e c t t h e n , t h i st h e s is u p g r a d e da u t o c a dt o a c o o p e r a t i v ed e s i g ns y s t e ms u p p o r t i n g c o n c u r r e n c y c o n t r o la n de d i t i o n m a n a g e m e n tb yd e v e l o p m e n t t h e e d i t i n g , d a t a b a s ea n do p e r a t i o nr e s p o n s o ri n0 b j e c t a r x t h el a s t ,b a s e do nt h et h e o r i e so ft h i s t h e s i s ,t h i s t h e s i s g a v e o u ta n e x a m p l e o ft h e c o o p e r a t i v eg r a p hd e s i g n b a s e do nw e bs e r v i c e s - - t h e c o o p e r a t i v ed e s i g no f t h ea u t o s u s p e n d t h r o u g h t h i s s u b j e c te x a m p l e ,t h ef e a s i b i l i t y a n de f f e c t i v e n e s so ft h e t h e o r i e si nt h i st h e s i sc a nb et e s t e d k e y w o r d s : w e b s e r v i c e s ,c o o p e r a t i o n ,g r a p h i cd e s i g n ,e d i t i o nm a n a g e m e n t , c o n c u r r e n c yc o n t r o l ,c o o p e r a t i v ea w a r e n e s s 第v i 页 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特翔j d r - i 以标注和致谢的地方外,论文中不包含其他人已发表 或撰写过的研究成果。参与同一工作的其他同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了i 身 意。 签名:丝虹丝山日期逊笙;:; 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学校 可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:丝堑丛导师签名:姿丕! 兰: 日期: 妒毕专弓 上海大学硕士学位论文 旦! ! ! 坠里! ! ! 坐旦竺! ! ! ! ! ! 竺g 唑! 生:! 型型 第l 章概述 1 1 计算机支持的协同工作 计算机技术的发展给人类的生活带来了巨大的变化,计算机的应用领域 已从科学计算领域扩展到社会生活的各个方面,把人们带入信息时代。人类 社会是一个群体社会,在社会分工日益细化的今天,人类社会已经成为一个 相互依存的紧密群体,更能体现人们的生活方式和劳动方式具有群体性、交 互性和协作性的特点。为了完成项共同的工作,人们必须进行协作,因此 迫切需要利用计算机技术来克服传统协同方式的时空障碍,以提高群体协同 工作的效能。随着信息化进程的深入,通信技术与计算机及其网络技术相融 合,产生了一个新的研究领域一计算机支持的协同工作c s c w ( c o m p u t e r s u p p o r t e dc o o p e r a t i v ew o r k ) ,简称计算机协同工作。它是信息化进程发展 的一种必然产物,它将提高人们的工作效率,促进社会生产力的发展,将深 刻影响人类群体生产方式、工作方式和生活方式。 c s c w 己经被普遍认为是2 l 世纪人类的工作方式。c s c w 这一概念最早是 在1 9 8 4 年由美国m i t 的i r e n eg r i e f 和d e c 的p a u lc a s h m a m 这两位研究人 员用于描述他们正在组织安排的有关如何用计算机支持交叉学科的人们共同 工作的课题时提出来的。协同的概念发展到“c s c w ”是人类进入信息时代的 必然产物,它是现代社会中,以人们协同工作方式为背景,以计算机和通信 技术的发展和融合为基础,以具有广泛应用领域为前提而形成和发展的。c s c w 的出现标志着计算机应用的水平又上了一个新的台阶,实现了计算机从单纯 支持个体工作到能够同时支持群体协同工作的转化。 我们把“计算机支持的协同工作”定义为:地域上分散的一个群体借助 计算机及其网络技术,共同协调与协作来完成一项任务。它包括协同工作系 统的建设、群体工作方式的研究和支持群体工作的相关技术研究、应用系统 的丌发等部分。通过建立协同工作环境,改善人们信息交流的方式,消除或 减少人们在时间和空间上相互分隔的障碍,节省工作人员的时间和精力,提 高群体工作质量和效率,从而提高企业、机关、团体乃至整个社会的整体效 益和人类的生活质量,如共享文件系统提供的资源共享能力,电子邮件和多 第l 页 上海大学硕 上学位论文 里! ! ! 盥! ! ! ! 坐! ! 壁! 堕! ! ! ! 韭! ! 坐! :! ! ! 型 媒体会议系统提供的人与人之间的通信支持功能,工作流和决策支持系统的 组织管理功能等。 c s c w 是一个多学科交叉的研究领域,它将计算机技术、网络通信技术、 多媒体技术以及各种社会科学紧密地结合起来,向人们提供了一种全新的工 作环境和交流方式。因此,它的应用领域相当广泛,如协同设计、协同编著、 电子会议、工业应用、科学协作、远程教学、工作流管理和远程医疗等等。 计算机协同工作应用系统的发展和推广会改善人们交流信息进行协作的方 式,而计算机技术的发展也必将走向计算机协同工作的方向,可见c s c w 研究 的重要性是不言而喻的。 1 2 协同图形设计系统 计算机支持的协同图形设计系统( c g d s ) 是c s c w 的概念和技术在产品开 发过程中的有效应用。在信息化和数字化时代里,面对激烈的市场竞争环境, 一个企业如何以团队精神( t e a mw o r k ) 和信息技术缩短其产品的开发周期 ( t i m e ) 、提高产品质量( q u a l i t y ) 、降低成本( c o s t ) 和加强销售服务 ( s e r v i c e ) 是其自身生存和发展的关键之一“1 。这已经超越了设计人员个人 的能力和单机的c a d 系统的功能。发展计算机支持的协同图形设计系统( c g d s ) 已成为一种必然的需求。众所周知,传统的产品设计是在图纸上手工设计为 主,设计周期长、质量不能保证、设计成本高,c a d 技术的出现和发展大大 改变了这种情况,产品设计有了质的飞跃,随着c a d 系统的广泛使用与计算 机支持的协同工作( c s c w ) 领域研究的迅速进展,人们现在正在寻求将c a d 技 术与c s c w 技术结合起来,以开发出计算机支持的协同图形设计系统( c g d s ) 。 在计算机支持的协同工作下,使得c a d 不仅仅是一个设计计算、图形处理 和智能推理的工具,而且还是一个支持群体间通讯和协作的“人人交互”的 工具,必将对跨世纪的c a d 技术产生重大的影响。 1 3 国内外研究现状及不足 国外在协同图形设计系统研究和实践中处于领先地位的是欧美等国。例 如德国f r a u n h o f e r 图形研究所的d i s t r i b u t e ds k e t c h p a d 系统、美国麻省理工学 院c a d 实验室的d m e 项目、美国c a t i a 公司的c a d 系统协作支持工具、 美国s p e c t r a 图形公司的t e a m s o l u t i o n s 系统等。 第2 页 上海大学硕士学位论文 ! 生! ! ! ! g ! ! ! ! ! ! ! ! ! ! ! 坐! ! 兰! 翌g ! ! ! 型旦! :! ! ! ! 生 国内在计算机支持的协同设计及其相关议题的研究中处于领先地位的是 中科院计算所c a d 开放实验室和浙江大学c a d & c g 国家重点实验室,其它 高校也进行这方面的研究。 从国内外研究现状来看,协同图形系统可以分为白板类系统、协同图形 编辑系统及以d i s t r i b u t e ds k e t c h p a d 为代表的c s c d 原型系统叫州“州州” 三类,均存在一些不足。 白板类系统。它简单仿真实际可擦写的粉笔板,是一种最简单的共享图 形工作空间。支持多个人在各自的站点上对共享区域进行点、线段、圆、矩 形、多边形和文字的绘制和擦除,任何成员的结果立即显示在其他站点成员 的屏幕上,即w y s i w i s 能力。同画笔类软件类似,这类图形是图像格式,只 能进行简单的擦除和覆盖操作,图形处理功能有限。 协同图形系统或者改进型白板工具。这类系统比白板系统复杂,功能较 为完善,通常称之为协同图形编辑系统。此类系统支持多人对图形对象的创 建、删除和各种编辑操作,每个人操作结果立即显示在其他成员的站点上, 但目前这类系统的图形处理功能还是难以适应复杂的c a d 图形设计任务。 c s c d 原型系统d i s t r i b u t e ds k e p c h p a d 。这是一个利用了c s c w 思想,在 一定程度上支持协同草图设计。主要运行在s u n 、i b m 、h p 、s g i 等工作站上, 也可以运行在p c 机上,是跨操作系统平台的。支持共享图象的协同编辑,支 持图象格式有g i f 、b m p 、j p e g 等,但不能支持矢量化图形格式。 以d i s t r jb u t e ds k e t c h p a d 为代表的c s c d 原型系统及白板、协同图形编 辑系统,虽然强调了协作性能,但是在图形处理能力、数据的兼容性、开放 形式等方面与现有的c a d 系统相比还有明显的差距。因此,应用功能弱。 综上所述,目前这类协同编辑系统所支持的图形对象的类型、对象的属 性和图形对象的图形处理功能比成熟的c a d 图形系统相差较远,而且同现有 的c a d 系统流行数据格式不兼容,不能直接支持工业标准的c a d 矢量化图形 格式,仍然难以支持实用化的工程设计。因此,如何实现将c s c w 系统优良的 协同工作能力同传统c a d 系统强大的图形处理能力结合起来,并且直接兼容 流行c a d 图形格式的协同图形编辑系统,这正是本文将要研究的问题。 第3 页 上海大学硕士学位论文 t h e p o s t g r a d u a t et h e s i so fs h a n g h a iu n i ,e r s i t y 1 4 本文的组织 有鉴于现有的协同图形系统存在的问题,本文对基于w e bs e r v i c e s 技术 的协同图形设计系统若干协作支持技术进行深入研究,提出了一些新的技术 思路和实现方法,开发了一个基于w e bs e r v i c e s 技术的、c s c w 支持的c a d 系 统一c g d s 系统原型,将c s c w 系统在协作性能方面的长处和传统c a d 系统在 图形处理方面的优势有机地统一起来,形成一个开放性的协作系统,直接支 持d w g 标准的矢量图形的协同设计。本文主要包含以下内容: 1 )第一章为概述,主要介绍了本文研究的背景,同时对本文的章节安排 。 和所做的工作进行了叙述。 2 )第二章是关于研究所采用的关键技术一一w e bs e r v i c e s 。首先介绍了 w e bs e r v i c e s 的优势和相关的基本知识点,再结合协同图形设计系统 的特点提出了一个新的系统结构。 3 )第三章对图形设计软件的接口进行了详细介绍,并采用面向对象的组 织方法,提出一种兼容当前通用c a d 系统图形数据格式的实时通讯协 议。该协议支持实体对象和容器对象,研究和实现了添加、修改、删 除操作的通讯协议描述及其编码解码算法。这是本文的核心内容。 4 ) 第四章对协同图形设计中的数据一致性和并发控制策略、协同感知、 版本管理等技术进行了研究。也是本文的重点内容。 5 ) 第五章以协同汽车吊项目为实例,开发了一个支持现在流行c a d 标准 ( d w g ) 的协同图形设计系统( c g d s ) 原型,实现了本文中提出的系统结 构和通讯协议,完成了项目的设计。 6 ) 第六章是总结与展望,对所研究的协同图形设计系统体系结构中的特 点与不足作了分析和说明,并提出了进一步的研究方向。 f 文之后是参考文献和作者在攻读学位期间公开发表的论文及科研工 作。 第4 页 上海大学硕士学位论文 t h e p o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 第2 章开发技术及系统结构 在协同图形设计中,对分散在不同地方的协同设计者来说要求采用分稚 式的技术来实现协同图形设计。本章在分析现有分布式技术的基础上,提出 采用w e bs e r v i c e s 分布式技术的一种新的系统结构。该系统结构既能保证系 统优良的协作性能,又能保证c a d 系统强大的图形设计能力。 2 1 分布式计算技术 分布式计算技术通常是指在网络计算平台上开发、部署、管理和维护, 以资源共享和协同工作为主要应用目标的分布式应用系统。随着计算机网络 和应用的发展,进一步增强了分布式计算的重要性和适用性。i n t e r n e t 的简 单易用和无处不在性使得分布式计算成为必然的选择。在协同设计中,协作 者分散于各个地方,并且所有的a u t o c a d 软件不可能安装在同构的计算机上, 这就要求我们采用一种独立于平台的分布式技术来实现协同的图形设计。 目前主流的分布式技术有:o m g 的c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e r a r c h i t e c t u r e ) 、m i c r o s o f t 的d c o m ( d is t r i b u t e dc o m p o u n do b j e c tm o d e l ) 和s u n 公司的j a v a r m i ( j i n i ) “1 。 这些分布式技术使用在i n t e r n e t 上时,都有一些不足。如r m l 只能使用 在j a v a 中,i i o p 使用了太多的端口,不利于防火墙的使用;d c o m 只能使用 在w in d o w s 下。同时d c o m 或c o r b a 实现的应用程序通常是复杂的,换句话说, 使用它们创建分布式应用程序,通常需要在连接的两端都运行相同的分布对 象模型。但是i n t e r n e t 并不保证与你连接的另外一端运行特定的客户和服务 软件是相同的,并且要让每个人都运行相同的软件是不切实际的,在技术上 也是不易实现的”。此外,不同语言编写的各种程序相互之问无法进行通信。 这些分布式计算技术在创建跨平台、跨i n t e r n e t 、适应i n t e r n e t 的可伸缩性 的应用程序时力不从心,增加了许多复杂性,这正是w e bs e r v i c e s 的用武之 地“”“。w e bs e r v i c e s 是建立在一些通用协议的基础上,如h t t p ,s o a p , x m l ,w s d l ,u d d i 等。这些协议在涉及到操作系统、对象模型和编程语言的选 择时,没有任何倾向,因此将会有很强的生命力。w e bs e r v i c e s 是基于组件 的分布式技术变革的必然产物。可以预见,作为i n t e r n e t 的个革命性进步, 第5 页 上海大学硕士学位论文 ! ! ! ! 竺! g ! 型! ! 生! 堕! ! ! ! ! 竺g 堕塑! :! 竖! 生 w e bs e r v i c e s 必将开创一个分布式应用程序开发的新时代。1 。 2 2w e bs e r v i c e s 技术 2 2 1w e bs e r v i c e s 概述 w e bs e r v i c e s 是以独立于平台的方式,通过标准的w e b 协议,由程序可 访问的应用程序逻辑单元组成,是使应用程序可以用与平台无关和与编程语 言无关的方式进行相互通信的一项技术“。3 。w e bs e r v i c e s 是一个软件接口, 它描述了一组操作,可以在网络上通过标准化的x m l 消息传递来访问这组操 作。其接口和绑定可以通过x m l 构件进行定义、描述和发现,w e b 服务支持 通过基于因特网的协议使用基于x m l 的消息与其他软件应用程序直接交互。 它使用基于x m l 语言的协议来描述要执行的操作或者要与另一个w e b s e r v i c e s 交换的数据。一组用这种方式相互作用的w e bs e r v i c e s 在面向服 务的体系结构( s e r v i c e 一0 r i e n t e da r c h i t e c t u r e ,s o a ) 中定义了特殊的w e b s e r v i c e s 应用程序。 w e bs e r v i c e s 是种应用程序,从根本上说就是一个分布式解决方案。 它可以提供企业级的集成,而且还对i n t e r n e t 上的任意设备连接到服务器( 位 于任意位置) 上提供支持,w e bs e r v i c e s 是分布式计算技术的一大飞跃1 。w e b s e r v i c e s 的个主要思想,就是未来的应用将由一组应用了网络的服务组合 而成。只要两个等同的服务使用统一标准和中性的方法在网络上宣传自己, 那么从理论上说,一个应用程序就可以根据价格或者性能的标准,从两个彼 此竞争的服务之中选出一个。除此之外,一些服务允许在机器之间复制,因 而可以通过把有用的服务复制到本地储存库,来提高允许运行在特定的计算 机( 群) 上的应用程序的性能“。 w e bs e r v i c e s 包括以下相关技术规范。o : 1 ) s o a p 协议 即简单对象访问协议( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) ,它是用于交 换x m l 编码信息的轻量级协议,也是w e bs e r v i c e s 的核心协议。s o a p 协议规 定了方法请求的格式和传递到消息中的参数格式,s o a p 协议包含了一系列规 则,从而允许发送和接收正确的信息。 它有三个主要方面:x m l e n v e l o p e 为描述信息内容和如何处理内容定义 第6 页 上海大学硕士学位论文 ! 生! ! 壁里型! 坐! ! 竺! ! ! ! ! 竺韭! ! ! ! ! ! ! ! ! 塑 了框架;将程序对象编码成为x m l 对象的规则;执行远程过程调用( r p c ) 的 约定。s o a p 可以运行在任何其它传输协议上。例如,您可以使用s m t p ,即简 单电子邮件传输协议来传递s o a p 消息。在传输层之间的头是不同的,但x m l 有效负载保持相同。 使用简单和无状态的h t t p 协议可以提供巨大的可伸缩性,还能够不受阻 拦地穿越现有的防火墙软件。对于几乎所有的设备和系统来说,h t t p 协议可 以完成这一任务,所以可以享受到h t t p 协议跨平台支持的优势。 2 ) w s d l s o a p 定义了应如何发送w e bs e r v i c e s 的消息进行格式化和编码。但是如 何爿能知道给服务器发送了什么消息,如何判断一个特殊的w e bs e r v i c e 提 供了哪些方法,这些方法应接收哪些参数等,这些都要靠w s d l 来完成。 w s d l 是w e bs e r v i c e s 描述语言,它提供了一个较好的解决方案。w s d l 语言被设计用来描述w e bs e r v i c e s 和w e bs e r v i c e s 中所有的方法。这种语 言的代码是以x m l 的格式进行编写的,因此,所有的系统都能够识别并解释 其中的信息。使用w s d l 描述语言最大的优点就是,它是一个标准的协议,任 何系统都能够解释w e bs e r v i c e s 的方法并识别要生成的s o a p 消息和发送该 s o a p 消息。 w e bs e r v i c e s 使用发布的w s i ) l 文件来创建代理对象,这些代理对象则用 于和外部的w e bs e r v ic e s 进行通信。本地的代理对象则模仿用于w e bs e r v i c e s 上的方法调用,这就使得开发人员可以使用代理对象而不用编写s o a p 消息的 方式来进行工作。 3 ) u d d i 即通用描述、发现、集成( u n i v e r s a ld e s c r i p t i o n ,d is c o v e r ya n d i n t e g r a t i o n ) ,是用来存储业务信息和发布服务的注册表。使用u d d i 协议, 潜在的客户机能够通过任何已注册的业务信息搜索并找到所提供的w e b s e r v i c e s 。u d d i 注册表本身提供了几个w e bs e r v i c e s ,以允许任何客户机都可 以使用标准的s o a p 消息来搜索注册表。 2 2 2 协同图形系统基于w e bs e r v i c e s 技术的原因 第7 页 上海大学坝士学位论文 ! 堕! 竺! ! ! ! ! ! ! ! ! 旦! ! ! ! ! ! ! ! ! ! g 堕坐坚! ! ! 坐 软件业最终会接受这样的事实:跨多个操作系统、编程语言和硬件平台 的集成软件应用程序不可能由任何一个专门的环境来解决。传统上,这个问 题一直是一个紧耦合问题,调用远程网络的应用程序通过自己发出的函数调 用和请求的参数与远程网络紧密地联系在一起。在w e bs e r v i c e s 出现之前, 在大多数系统上,采用固定接口,但对于环境或需要的改变,这缺乏灵活性 或适用性1 。 w e bs e r v i c e s 所使用的x m l 可以用真正与平台无关的方式来描述任何 ( 所有) 数据,以跨系统交换数据,因此转向了松耦合应用程序。而且,w e b s e r v i c e s 可以在较抽象的层面上工作,较抽象层面可以按照需要动态地重新 评估、修改或处理数据类型。所以,从技术层面上讲,w e bs e r v i c e s 可以更 方便地处理数据,允许软件更自由地进行通信。 w e bs e r v i c e s 实现了逻辑层与业务层的分离。我们可以将w e bs e r v i c e s 视为一些工作单元,每个单元处理特定的功能任务。这些单元( 服务) 组合 成面向业务的任务,以处理特定的业务操作,从而使程序设计者可以集中精 力设计应用程序,这些应用程序可以与w e bs e r v i c e s 应用程序一起处理业务 问题。因此,一旦设计并构建好w e bs e r v i c e s 之后,程序设计人员可以聚集 这些w e bs e r v i c e s 来解决业务层面上的问题。 最后w e bs e r v i c e s 的易理解性可以有助于在组织内的商业开发人员和技 术人员之间架起一座桥梁。w e bs e r v i c e s 使商业开发人员能更容易理解一些 技术上的操作,从而有助于商业开发人员更精确地描述一些业务事件和业务 活动,然后由技术人员将这些事件和活动与相应的服务相关联。 虽然w e bs e r v i c e s 支持前面所描述的松耦合、逻辑层与业务层相分离、 易理解等动态特性,但您仍然必须首先构建这些服务。编程语言和计算机科 学在不断发展。人们在几十年前就有了函数这个想法,通过给它提供一些参 数,由它根据这些参数执行某个操作,然后返回它的计算值。最终,这个首 先提出来的概念演变成了对象,每个对象不仅有一些它可以执行的函数,而 且还有自己的专用数据变量,而不是依靠以前所采用的使丌发应用程序更为 复杂的外部系统范围内的数据变量。当应用程序进入网络时代,对于对象, 定义通用接口的概念变得更为重要,即使位于其它平台上的对象是用另外的 第8 页 上簿大学硕士学位论文 ! 竺! ! 坐! ! ! ! ! ! ! 旦! ! ! ! ! ! ! ! ! ! g ! ! ! 坐坐! ! ! 型 编程语苦编写的并且运行在其它操作系统上,也可以使这些对象进行通信。 在最近的步骤中,w e bs e r v i c e s 转向了基于x m l 的接口和通信这一概念,只 要将w e bs e r v i c e s 设计成符合相应的接口,最终可以将任何一种应用程序与 另一种应用程序组合在一起,并可以随时间的流逝自由地更改和发展应用程 序。因此,掌握了这一能力,w e bs e r v i c e s 使您能够“: 1 ) 任何平台上用任何语言编写的服务进行交互。 2 ) 将应用程序功能概念化成任务,从而形成面向任务的开发。 3 ) 允许松耦合,这意味着,每当其中某个或多个服务在设计或实现中发 生变更时,服务应用程序之间的交互作用可能不会因此而中断。 4 ) 使现有的应用程序能适应变化中的业务条件和客户需要。 5 ) 向现有或原有的软件应用程序提供服务接口,而无需改变原来的应用 程序,从而使这些应用程序完全可以运行在这种服务环境下。 6 ) 引入其它一些与原有功能无关的管理或操作管理功能,比如可靠性、 安全性等等,从而在业务计算环境中增加了其实用性。 因些在协同图形设计系统中采用w e bs e r v i c e s 技术,从而使协同图形设 计系统具有良好的可扩展性和分布性,并能在i n t e r n e t 上进行自如地通信, 从而真正实现在i n t e r n e t i n t r a n e t 上的协同。 2 3 系统开发工具 2 3 1w e bs e r v i e s 开发工具 在开发w e bs e r v i c e s 方面,许多公司都开发了相应的开发环境。例如: s u n 公司j 2 e e ,m i c r o s o f t 公司的n e t ,b o l a n d 公司的d e l p h i 7 ,i b m 公司 的w e b s p h e r e 等。各种环境互相比较我们选择了m i c r o s o f t 公司的n e t ,因 为与其他开发环境相比,n e t 有以下的特点: n e t 对w e bs e r v i c e s 提供无缝支持,同时开发环境的人机交互友好。有 些都把这一任务丢给了应用服务器厂商和编程人员,而n e t 环境将w s d l 定义, s o a p 解释器,用户界面控件设计都封装在n e ts t u d i o 中。用户可以方便的 部署出自己的w e bs e r v i c e s ,并且n e ts t u d i o 具有所见即所得的编辑模板, 来绑定用户按钮事件处理。 2 3 2 图形软件a u t o c a d 二次开发工具”1 第9 页 :海大学硕士学位论义 里! ! 竺! 型! ! ! ! ! 堕! ! ! ! ! ! 塑! ! ! ! ! ! ! 塑生 一 a u t o c a d 荣登全球绘图软件的龙头宝座,主要是因为它具有开放的体系结 构。它允许用户和开发者采用高级编程语言对其进行扩充和修改,即二次开 发,能最大限度地满足用户的特殊要求。a u t o c a d 第一版于1 9 8 2 年11 月由 a u t o d e s k 公司推出,目前大家广泛使用的是a u t o c a d2 0 0 0 ,最新版本是 a u t o c a d2 0 0 3 。其二次开发语言及工具也在不断地涌现,a u t o c a d 为我们提供 了完整的、高性能的、面向对象的c a d 程序开发环境,为用户和开发者提供 了多种新的选择,使得对a u t o c a d 二次开发和定制变得轻松而容易。a u t o c a d 主要的二次开发工具有:a u t o l i s p v i s u a ll i s p 、a d s 、o b j e c t a r x 。 1 ) a u t o l i s p v i s u a ll i s p a u t o l i s p v is u a ll i s p 是一种表处理语言,是被解释执行的,任何一个 语句键入后就能马上执行,它对于交互式的程序开发非常方便。其缺点是编 程规则繁杂,效率低。 2 ) a d s a d s 的全名是a u t o c a dd e v e l o p m e n ts y s t e m ,a d s 程序与a u t o l i s p v i s u a l l i s p 程序并没有太大的区别,a d s 函数与l i s p 函数几乎等同。一个a d s 程序 实际上由一组外部函数组成,在a u t o c a d 上它们由l i s p 解释器来加载调用。 a d s 程序本身不能直接与a u t o c a d 进行通信,而需要通过i p c ( i n t e r p r o c e s s c o m m u n i c a t i o n ) 和l i s p 解释器来进行。 3 ) o b j e c t a r x o b j e c t a r x 是对a u t o c a d 进行二次开发最强有力的开发工具,它以c + + 为 编程语言,采用先进的面向对象的编程原理,提供可与a u t o c a d 直接交互的 开发环境,能使用户方便快捷地开发出高效简洁的a u t o c a d 应用程序。它能 够对a u t o c a d 的所有事务进行完整的、先进的、面向对象的设计与开发,并 且开发的应用程序速度更快、集成度更高、稳定性更强。o b j e c t a r x 从本质上 讲,是一种特定的c + + 编程环境,它包括一组动态链接库( d l l ) ,这些库与 a u t o c a d 共享同一地址空间,直接和a u t o c a d 进行通信,并能直接访问和操作 a u t o c a d 的图形数据库。三者之间的关系如图2 1 “”3 所示: 基于以上的分析,本系统中选用o b j e c t a r xs d kf o ra u t o c a d2 0 0 0 做为 a u t o c a d2 0 0 0 二次开发工具。 第1 0 页 上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 互臣亘田 l i s p 解释器 a u t o c a d i a r x 应用程序 图2 一ll i s p 、a d s 、a r x 与a u t o c a d 的通信 2 4 基于w e bs e r v i c e s 的协同图形设计系统的系统结构 传统图形设计系统通过人机交互来支持单人的图形设计,而协作图形设 计系统试图通过建立一个具有群体性、交互性、分布性和协作性的人人交互 系统来支持c a d 图形的协同设计处理。 以n e t m e e t i n g 为代表的应用共享系统,虽然复用了单用户c a d 系统的图 形处理功能,兼容了现有c a d 系统的数据格式,这种方式应用功能强、协作 性能差;以d i s t r i b u t e ds k e t c h p a d 为代表的c s c d 原型系统以及现有的白板、 协同图形系统,虽然强调了协作性能,但是在图形处理能力、数据的兼容性、 开放性等方面比其现有的c a d 系统相差甚远。 显然这两类协作框架及其技术路线都难以有效地支持实用化的c a d 工程 图形协同设计“”“”。本章在分析现有方法不足的基础上,提出一个将上 述两种方法结合起来,发挥其长处、克服其短处的c s c w 系统构造方法。该方 法特别适合协同图形设计系统,既能保证

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论