




已阅读5页,还剩57页未读, 继续免费阅读
(计算机软件与理论专业论文)基于网格的软件协同开发环境的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华南师范大学硕七毕业论文 摘要 计算机支持的西同工作( c o m p u t e r s u p p o r tc o l l a b o r a t i v ew o r k ,简称c s c w ) 系统很早就出现了人们的日常工作中。随着网络技术和软件规模的发展,软件开 发作为一个群体西同的t 作,对开发的分布性需求变得越来越迫切。分稚在不同 地方的项同开发人员借助于先进的分靠式并行开发技术和协同技术,共同参与项 目的协同开发工作。 国外是从上个世纪9 0 年代中后期开始研究互联网上的软件分布式开发环境, 迄今为止已经取得的丰厚的成果。其中s d c e e 就是在分邗环境f 提供给丌发人员、 管理人员以及用户的一个协同软件开发平台。通过这个平台,项目的用户和升发 人员起共同参与项目软件的儿发。分散在不同地域的用户- i 以运过浏览器参与 项目的全部丌发过程:从可行性研究到软件维护、从代码开发到代码测试、从软 件开发到版本发布。因此,系统能够有效地调动开发人员的积极性,协凋开发的 各个环节,保证项目的顺利实施,有效地缩减项目开发的时间:同时,能够有效 地利用分布在各个不同地方的人力资源、信息资源等各种有用资源。 本文提出基于网格的协同开发环境,由于网格作为一种新技术,它可以把整 个互联网整合成一台巨人的超级计算机,实现计算资源、存储资源、数据资源、 信息资源、知识资源、专家资源的全而共享。基于网格诸多的优势,奉文选择了 应用j a v a 语言部署一个基于开放网格服务体系结构( o g s a ,o p e ng r i ds e r v i c e a r c h i t e c t u r e ) 的开发环境,构建一个w e bs e r v i c eg r i d 网格平台。整个网络环 境实现了可丌放性、可扩展性、灵活性和可维护性等诸多优点。 关键词:计算机协同工作,网格,计算机协同开放,w e bs e r v i c eg r i d ,面同服 务的体系架构( s o a ) 基于网格的软件协同开发环境的研究与设计 a b s t r a c t t h es y s t e mo fc o m p u t e r - s u p p o r tc o l l a b o r a t i v ew o r kh a sa l r e a d ya p p e a r e di n o t n d a i l yl i f e w i t ht h eg r o w i n go fn e t w o r kt e c h n o t o 盯a n ds o f t w a r e , t h en e e do f s t u d y i n gt h ed i s t r i b u t i o no fs o f t w a r ed e v e l o p m e n tb o m c sm o r ea n dm o r eu r g e n t b e c a u s es o f t w a r e d e v e l o p m e n tr e q u i r e sm a n yp e o p l e sc o o p e r a t i o n t h e p r o j e c t - d e v e l o p m e n tp e r s o n n e lw h oa r ei nd i f f e r e n tp l a c e sc a nt a k ep a r ti nt h e 躺u n e p r o j e c tb yr e c u r r i n g t ot h ea d v a n c e dc o l l a t e r a ld e v e l o p m e n tt e c h n o l o g ya n d c o o p e r a t i v et e c h n o l o g y f r o mt h em i d d l eo f1 9 9 0 s ,f o r e i g nc o n n 慨s t a r t e dt os t u d yt h ed e v e l o p m e n t s i t u a t i o no fs o f t w a r ed i s t r i b u t i o n0 1 1i n t e r a c t , a n dt h e r eh a v e b e e np l e n t i f u l a c h i e v e m e n t s a m o n gt h e m , s d c e ei sac o l l a b o r a t i v es o f t w a r ed e v e l o p m e n t p l a t f o r mf o rt c c h l i i c a lp e r s o n n e l a d m i n i s t r a t i v ep e r s o n n e la n du s e r si nt h ed i s t r i b u t e d s i t u a t i o n t h r o u g ht h i sp l a t f o r m t h eu s 懿o ft h i sp r o j e c ta n dt h et e c h n i c a lp e r n n e l c 雒t a k ep a r ti nt h ed e v e l o p m e n to f t h es o f t w a r ef o rt h i sp r o j e c tt o g e t h e r t h eu s e i 苫i n s c a t t e r e dp l a c e sc a n j o i ni nt h ew h o l ep r o c e s st h r o u g hb r o w s e r :f r o mf e a s i b i l i t ys t u d y t os o f t w a r es a f e g u a r d i n g ,f r o mc o d ed e v e l o p m e n tt oc o d et e s t , f r o ms o f t w a r e d e v e l o p m e n tt oe d i t i o na n n o u n c e m e n t t h e r e f o r e ,t h es y s t e mc a ne f f e c t i v e l ya r o u s 4 t h ei n i t i a t i v eo f t e c h n i c a lp e r s o n n e l ;c o r r e s p o n de a c ht a c h eo f d e v e l o p m e n t ;g u a r a n t e e t h es u c c e s so ft h ep r o j e c t ;r e d u c et h et i m ef o rd e v e l o p m e n t w h a t sm o r e ,i tc a na l s o t a k ea d v a n t a g eo fh u m a nr e s o u l sa n di n f o r m a t i o nr e s o u l c e st h a ta r es c a t t e r e di n d i f f e r e n tp l a c e s t h i sp a p e rp u t sf o r w a r dt ot h ec o l l a b o r a t i v ed e v e l o p m e n ts i t u a t i o nb a s e do n n c t g f i dt e c h n o l o g y a san e wt e c h n o l o g y , g r i dc a r lu n i t et h ew h o l er e s o u r c ei ni n t e m e t a sah u g es u p e r - c o m p u t e rs ot h a tw ec a ns h a r ea l lk i n d so fr e s o u r c e si n c l u d i n g c o m p u t i n g , s t o r a g e ,d a m , a n di n f o r m a t i o n ,k n o w l e d g ea n de x p c ar e s o u r c e s d u et o m a n ya d v a n t a g e so fn c t g r i d ,t h i sp a p e rw i l lc h o o s e sj a v al a n g u a g et oa r r a n g ea d e v e l o p e ds i t u a t i o nb a s e do no p e ng r i ds e r v i c ea r c h i t e c t u r ea n db u i l daw e bs e r v i c e 华南师范大学硕士毕业论文 g f i dp l a t f o r m , w h i c hh a sa d v a n t a g e so fb c i 蜡a b l et ob e o p e n , 眈p a i l d e da n d 鼢如g l l a r d e d k e y w o r d s :c o m p u t e r - s u p p o r tc o l l a b o r a t i v ew o r k ,n e t g r i d ,w e bs e r v i c eg r i d , s e r v i c 阶i e n t e da r c h i t e c t u r e 华南师范大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文 的研究做出重要贡献的个人和集体,均已在文中以明确的方式标明。 本人完全意识到本声明的法律结果由本人承担。 论文作者签名:锎次良 f t 期:旬年名月1 日 学位论文使用授权声明 本人完全了解华南师范大学有关收集、保留和使用学位论文的规 定,即:研究生在校攻读学位期间论文工作的知识产权单位属华南师 范大学。学校有权保留并向国家主管部门或其指定机构送交论文的电 子版和纸质版,允许学位论文被检索、查阅和借阅。学校可以公布学 位论文的全部或部分内容,可以允许采用影印、缩印、数字化或其他 复制手段保存、汇编学位论文。( 保密的论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密范围,在年后解密适用 本授权书。非保密论文注释:本学位论文不属于保密范围,适用本授权 书。 论文作者娩塌瘟 导师签名:办1o 叭 日期:函习年6 月目l t 期:年k 日 华南师范大学硕士毕业论文 第一章绪论 网络与信息技术的飞速发展,彻底改变了人们生活与工作的方式,体力密 集型生产逐渐被智力密集型生产所替代,知识与智力的共享将取代信息共享而成 为信息社会的主流方向。建立符合c m m 要求的、基于互联网的软件开发与质量 保障平台,可最大程度地共享智力资源和知识。目前许多大型的软件公司搞地面 联盟与开发协作。同时一些著名的大学与科研院所也开展了基于网上软件协作开 发模式的理论研究,并建立了基于i n t e r n e t 的网上协作联盟,政府也建立了基于 地理区域的软件园区,其最终日的是加强分工协作、实现资源的有效配制与共享 这些做法一定程度上解决了分工协作与智力资源共享的问题,但由于缺乏必要的 公共开发支撑环境,智力资源共享依旧没有跨出物理地域的限制,而协作由于合 作者良莠不齐的工程实施水平与开发过程的不可见性以及缺乏统一标准,而使得 工程难以管理与控制、质量难以保证、人员无法实现异地协同工作。而且,实践 证明,随着大型项目开发人员人数的增加,通信的复杂性也会随之增大,其“增 大的程度与所增加人数的平方成正比“”。b a n d i n e l l i 等人指出,由于软件开发具 有协作性,开发过程的成功与否,依赖于“建立在开发团队中的通信渠道的质量 和效果”圆。 在软件工程中,协同需要在承担不同予任务的小组成员问进行协调,而协调 又需要靠成员彼此问的通信来传递和交换信息。因此,协同是建立在协调和通信 的基础之上的。协同是协调的一种方式,是最高级别的协作。达到协同的必要条 件是:协作体之间拥有共同一致的目标,他们共同决策,共同理解,共享知识, 而协作的结果会带给他们同等的成就啪。协同通常意味着不同的参与者共享同一 个目标。w a l t e r r b i s c h o f b e r g e r 和t h o m a s k o f l e r 将协同的形式分为两类,即拘 于形式的协同和非正式的协同“1 。拘于形式的协同是通过协同者之间交换和正确 处理结构化的文档,并同步控制对这些文档的访问来实现的。非正式的协同的特 点是,团队成员间自由交换有结构的或无结构的信息,且他们的行为受彼此的影 响。 协同软件开发系统是一个基于w e b 的协同软件开发环境,为软件开发及工程 基于网格的软件协同开发环境的研究与设计 管理而设计的。系统要实现不同群体,不同对象之间的协同工作。共同参与实现 完成一个公共的目标,协同开发系统至少要包括软件配置管理( s c d ,软件测试 管理( s 耵田,软件工程文档管理( s e d m ) ,工程项目管理( p m ) ,团队人员管理 ( p e m ) ,以及寻找一种适合的协同开发流程。 1 1 国内外研究现状 计算机支持的软件协同开发是继计算机支持的协同工作思想之后提出的又 一大胆创新,自提出以来,计算机支持的软件协同开发在国际上受到了极大的重 视,已经成为计算机科学研究的一个全新领域。国外在计算机支持的软件协同开 发研究和实践处于领先地位的是欧美等国。 以下是早期国外开发的协同软件系统旧: h a b a n e r o h a b a n c r o 是u n i v e r s i t yo fi l l i n o i sa tu r b a n a - c h a m p a i g n 的国家超级计算中心 ( n c s a ,n a t i o nc e n t e rf o rs u p e r c o m p u t i n ga p p l i c a t i o n ) 开发的一个协同系统框架 和环境。 通过采用h a b a n c r oa p i 共享j a v a 对象,在各个客户节点复制应用程序, h a b a n e r o 框架提供了跨平台的多用户j a v a 软件的状态和事件同步。除了一般的串 行化机制,h a b a n e r o 还提供f l o o r 控制对象以及锁机制。采用h a b a n c r oa p i 可以方 便地开发协同软件或者将已有软件改造为协同软件。h a b a n c r ow l z j a r d 用于将 j a v aa p p l c t 转化为协同系统,程序员选择需要共享的对象和事件,h a b a n c r ow i z a r d 就可以通过h a b a n c r o a p i 方便的改写已有的代码。 h a b a n e r o 环境提供会话管理的支持,包括创建、加入、离开、浏览会话等功 能。具体来说,h a b a n c r o 环境支持同一用户多会话、协同工具集的扩充、提供会 话详细信息、会话配置信息记录、留言机制、用户角色、对其他用户的感知。 h a b a n e r o 中还包括协同应用工具集,提供远程协同的基本功能,包括表决器、 文本和语言聊天工具、文本编辑器,白板等。 c o l l a b o r a t i o nb u s c o l l a b o r a t i o nb u s 是u n i v e r s i t yo f n o r t hc a r o l i n aa tc l l a 曲lh i l l 的c o l a b 的一 个项目,旨在研究如何在已有单用户和协同系统的基础上开发新的协同系统。 2 华南师范大学硕士毕业论文 c o l l a b o r a t i o nb u s 是一种新的软件抽象机制,它是一个可扩展的基础结构,提供 对协同服务的一般定义、缺省实现、互连规则和扩展机制。c o l l a b o r a t i o nb u s 支 持的服务包括( 1 ) 由结构化对象构成的用于定义共享工作空间的数据模型;( 2 ) 支 持文本、图形、语音、视频和虚拟现实的允许对共享对象进行操作的用户界面; ( 3 ) 支持共享数据和用户界面对象,并具有安全性和一致性控制的耦合模型;( 4 ) 用 于感知“带外行为”的感知模型,这些行为是通过直接耦合体现不了的;( 5 ) 迁移和 复制机制,使得c o l l a b o r a t i o nb u s 不成为瓶颈;( 6 ) 包括调度算法和网络协议的实 时服务。 c o l l a b o r a t i o nb u s 在软件工程、操作系统和数据库系统的研究中,都有在异 构环境下互操作的尝试工作。c o l l a b o r a t i o nb u s 还将互操作性的研究拓展到协同 系统领域,提供两种形式的互操作:( 1 ) 服务间互操作,支持将已有的各种协同 服务实现在新的协同系统中;( 2 ) 服务内互操作,解决同一服务的各种不同实现 之间的不一致问题。 l i v e 已有的g u i 技术已经能比较好地通过直接操作( 拖放、配置、包装等) 支持用 户界面的开发。但是,开发同步协同应用程序的底层数据共享和应用逻辑仍然是 一件非常困难的事情。这一类的应用涉及到的软件构件运行在不同的计算机上, 相互之间的通讯和同步,要共享数据,还要管理用户信息。同步协同应用一般还 支持数据库访问、工作流服务等,因此同步协同构件还应与其他应用构件互操作。 此外,这些构件应该是可扩充的。对于一个用于同步协同应用开发的构件集,可 以采用j a v a b e a n 构件标准,支持可视化地开发协同应用程序,这些构件集支持会 议创建、用户感知、数据共享、媒体流、访问同步以及媒体流和事件的同步。采 用这种可视化地构件来开发协同应用程序,可以在较高的抽象级上进行开发,从 而屏蔽了许多分布式程序设计的底层问题。与其他开发工具相比,g u i 与底层逻 辑具有统一的程序设计模型,程序员不需要学习新的语言。 c o m o p r o m o n d i a c o m o p r o m o d i a 是德 u n i v e r s i t yo fe r l a n g e n - n f l r n b e r g 的u l r i c hg a l l 和f r a n z j h a u c k 等人设计的一个基于j a v a 的w 3 3 v 群通信框架。它将w w w 上的群件设计 分为4 部分:体系结构、网络服务、程序设计模型和会话管理。p f o m o d i a 基于j a v a 基于网格的软件协同开发环境的研究与设计 a p p l e t ,采用c l i e n t s e r v e r 结构。服务器程序处理所有与服务相关的闯题如用户登 录、访问控制、目录服务等;而会话服务器程序只处理与该会话相关的事物,协 调客户的通信:客户程序是运行在用户系统上的前端程序。p r o m o n d i a 提供多种 网络连接服务,如t c p 、u d p 、m u l t i c a s t 、r t p 、i r c 等。 以上提出的早期计算机支持的软件协同开发系统都是基于w e b 平台上提出 的,没有引入网格这一新技术概念。近期,英国提出了一个庞大的研究计划,在 网格的环境下构建一个新的科学研究与试验支撑环境,英国c s c i e n c e 计划对全球 网格计算技术应用研究具有重要影响。目前该研究计划已经进入了第二个研究阶 段,其中提出了两点变化,值得关注:是提出了“w e bs e r v i c eg r i d s 的概念, 即将网格计算技术研究转移到w e bs e r v i c e 平台;二是强调网格中间件技术研究的 重要性嗍 p r 印i f s 是欧洲目前已经处于实践中的又一种分布式协同开发环境的分布 并行开发技术m 。p r e pi f s 是e c m w f ( s d c e e 是一个软件分布式协同开发环境, 它使用户可通过浏览器参与项目全过程的开发) 的集成数值预报系统( i f s ) 的预 处理系统。通过使用p r e pi f s ,e c m w f 的气象科研人员在欧洲的任何一个地方 都可以通过因特网访问e c m w f 的复杂计算机环境。通过p r e pi f s 实现的j a v a j 、程 序( a p p l e t ) 不仅可以使用e c m w f 的计算机系统,而且能够远程提交模式预报作 业。所有的初始数据准备、初始设置的修改、实际运算与分析和后处理等,均在 e c m w f 的超级计算机o r i g i n 服务器上进行。i f s 是一个f o r t r a n9 0 源代码予程序集 合,可以对全球数据进行同化处理。 在国内,对协同软件研究起步不久。我国从1 9 9 5 年开始对这一技术进行跟 踪研究,主要内容包括计算机软件协同开发的研究背景、基本概念、系统结构、 关键技术及典型应用。随着网络技术的不断发展提高和网格( g r i d ) 这一被誉为继 因特网和w e b 之后的第三次技术浪潮又一革命性技术的出现。国内也将目光延伸 到网格下的协同开发的研究。 最早关于计算机协同开发研究主要是国家高性能计算中心提出的网格研究 计划,它的目的是在全国范围内为各行业和社会大众提供各种一体化的高性能的 计算环境和信息服务。n h p c e 将国家高性能中心下属中心分布在不同地域的曙 光、银河及神威等异构超级计算机上,构成n h p c e 的计算结点,计算结点之间 4 华南师范大学硕士毕业论文 通过i n t e r n e l 或专用高速网连通。网格计算结点可以提供千亿次以上的浮点运算能 力以及海量级数据存储能力,并配置有高效的系统软件、编译器系统、并行编程 工具、数据库及网络服务器软件,为n h p c e 系统软件提供支持嗍。 1 2 课题的理论和实际应用意义 随着社会的不断发展,计算机这一领域在近1 0 年内发生了翻天覆地的变化。 伴随这对计算机领域的研究已经不能局限在一个单独的环境中,他已经是一个交 叉的、多学科的、多领域的技术环境。对于从事计算机软件开发的工程人员,也 会出现跨地域、跨空间和时间的协作研究。如何处理软件开发的协同开发工作是 当前要解决的迫在眉睫的阿题。根据i b m 的一份研究报告显示,传统的程序开发 人员大约有5 0 的时间是花费在与项目组成员的交互上,d e m a r c o 和l i s t e r 也分别 指出大型系统开发的开发人员大约7 0 的时间是与其他人的协同工作,同时, j o n e s 也在他的论文中提到,大型软件系统8 5 的开发费用是用于团体协作活动 等等删。这些研究表明,协作成为软件开发活动中最重要的一个因素。因此构架 一个协同软件开发环境将是未来软件开发的一个热题。 在协同软件开发上,i b m 的r a t i o n a l 协同开发系统可谓是佼佼者,m m r a t i o n a l 能够简化并且加速采用j a v a 平台的过程,快速进入角色。i b mr a t i o n a l 还提供可视化建模和设计工具,它可以管理和降低j a v a 技术本身的复杂程度。 同时为开发和测试人员提供工具,保证j a v a 代码无论在发布周期早期还是晚期 都符合质量要求。另外,i b mr a t i o n a l 还提供任何面向团队的软件开发项目所需 要的其他工具。在国内,协同软件方面研究甚少,多数只是提出了在i n t e m e t 平台上构建协同开发软件,尚无非常成功的案例。而本文提出的基于网格的软件 协同开发系统,具有分布性、异构性、动态性、自治性、协同性等特征,能实现 分布式异构环境下实现各种异构资源的共享,资源整合和调度,提供分布式的服 务,这种服务是通过当前网络最流行的w e bs e r v i c e 技术提供的,用w e bs e r v i c e 技术来架构网格可以消除这些资源孤岛,将各种异构的资源以有效的方式动态的 组织起来,隐藏其内部异构性和动态性,形成一个可相互利用、相互合作、对用 户相对透明的高性能计算环境,为科研教学提供高效可信的协同服务,解决协调 多种异构资源等问题因此,无论从理论还是实际来看,都有很高的研究价值。 基于网格的软件协同开发环境的研究与设计 1 3 论文的研究背景和主要内容 本论文结合了网格这一新技术思想,利用网格把整个互联网整合成一台巨 大的超级计算机,实现计算资源、存储资源、数据资源、信息资源、知识资源、 专家资源的全面共享提出一个基于开放网格服务体系结构( 0 6 s a ,o p e ng r i d s e r v i c ea r c h i t e c t u r e ) 的开发环境,构建一个w e bs e r v i c eg r i d 网格平台。在些平 台上构建一个开放的、可扩展的、具有灵活的和可维护的跨平台的多模块的网络 协同开发环境。从而可以大大的缩短开发周期,提高开发人员工作效率,管理开 发过程中的繁琐事务,实现资源的全面共享。 1 4 论文的组织与结构 本文共分六章: 第1 章 第2 章 第3 章 第4 章 第5 章 第6 章 主要介绍论文研究背景、协同软件开发研究的必要性、国内外研 究现状以及论文的组织结构。 主要介绍网格下协同开发软件的基本理论,论述如何将网格引入 到协同开发思想中 主要介绍在j a v e j 不境下如何开发使用w 曲s e r v i c e 技术关键,并用 这一新技术部署网格开发平台。 主要介绍了系统的应用背景、业务流程以及系统的功能模块划 分,并给出基于网格协同开发的总体设计思路。 利用w 曲s e r v i c e 技术部署一个w e bs e r v i c eg r i d 平台,并在此平 台上实现基于网格协同软件开发的部分功能模块。论证设计思路 的可行性和有效性。 总结全文,并指出自己所作的工作、以及本系统需要完善的环节 和系统需要进一步改进的地方。 6 华南师范大学硕士毕业论文 第二章基于网格的协同软件开发系统概述 论文所研究的基于网格的协同软件开发系统,涉及多方面内容,既包括网格 技术,又包括协同开发的知识因此。本章主要在介绍协同软件开发的基础上引 入网格新技术,将网格的新技术特点与协同软件开发相结合,从理论上研究基于 网格协同开发系统的可行性、有效性。 2 1 引言 网格( c - r i 0 ) 技术是近年来国际上兴起的一种重要信息技术,被认为是继因 特网和w e b 之后的第三次技术浪潮,是下一代互联网技术与应用的重要领域之 一。网格有可能成为下一代信息基础设施,它不仅备受学术界瞩目,也引起了产 业界地广泛关注。网格的目标是实现网络虚拟环境上的高性能资源共享和协同工 作,消除信息孤岛和资源孤岛。网格的目的不外乎是要利用互联网把分散在不同 地理位置的电脑,信息及信息存储、处理能力以合理的方式“粘合”组织成一台“虚 拟的超级计算机”,实现计算资源、存储资源、数据资源、信息资源、软件资源、 通信资源、知识资源、专家资源等的高度融合和全面共享。其中每一台参与的计 算机就是一个节点,就像摆放在围棋棋盘上的棋子一样,而棋盘上纵横交错的 线条相对应于现实世界的网络,所以整个系统被称为“网格”。在网格上做计算, 就像下围棋一样,不是单个棋子完成的,而是所有棋子互相配合形成合力完成的。 传统互联网实现了计算机硬件的连通,w 曲实现了网页的连通,而网格试图实现 互联网上所有资源的全面连通。网格技术现在已经在物理学、地球科学、气象科 学和生物科学等研究领域得到了充分的应用,能够为跨学科、跨地域的大型科学 研究活动提供工作支撑环境“”。网格有如此大的发展潜力主要归咎于他的两大优 点:第,网格中不同的群体用不同的名词来称谓它。第二,网格没有固定精确 的含义和内容,它是在不断变化的嘲。 网格作为一种建立在互联网之上的新一代基础设施,随着技术的不断发展, 尤其是在开放网格服务体系结构( o g s a ,o p e nc n i ds e r v i c e a r c h i t e c t u r e ) 的出现, 网格资源以服务的形式提供标准化的接口已成为了发展趋势随着w e b 服务资 基于网格的软件协同开发环境的研究与设计 源框架( w s r e s o u r c ef r a m e w o r k ,w s r f ) 的发布与实施,通过引用有状态资源 的概念,就可以对有状态资源进行了模式化处理。近年来,结合w e bs e l v i c e 技术 的发展,为资源及服务提供者和使用者提供了描述、访问、管理有状态资源的通 用方法,它将动态的、分布的、异构的网络资源整合起来,为用户提供一致的、 可互操作的资源及服务w s r f 实现了网格与w e b 服务的相互融合 w e b 服务是基于当前网络标准协议而建立起来的服务,通过一系列的协议 栈技术规范( u d d i 、s o a p 、w s d l 、x m l 、w s f u 来完成的。它利用消息传递、 服务描述、工作流描述、服务发现与集成等功能协议,运用儿接口并通过w e b 入口进行访问,利用w e b 服务注册器进行注册与定位,实现了系统间的松散耦合 连接。而网格是在分布、异构的资源基础上实现资源共享和协同工作的信息资源 与服务平台,目前,在o g s a o g s i ( o p e n g r i d s e r v i c e a r c h i t e c t u r e o p e n g r i d s e r v i c ei n f r a s t r u c t u r e ) 的网格体系结构基础上,用w s r f 取代了o g s i ,给予w e b 服务以新的描述和定义,实现了w e bs e r v i c e 和g r i ds e r v i c e 的融合与统一嘲。 w s r f 在基于o g s a 0 g s i 传统的网格体系结构基础上,继承了所有的o g s i 在资源创建、定位、观察、撤销等方面的基本方法和方式,克服了o g s i 的不足: ( 1 ) o g s i 规范和说明极其繁琐,没有清晰的功能划分,很难支持后期的扩充和 发展: ( 2 ) o g s i 超前使用了大量的x m l 模式,与现有的w e b 服务工具环境不兼容,尤 其是在扩展w s d l 上存在困难: ( 3 ) o g s i 中存在太多的“面向对象”的概念和方法,阻碍了网格技术的普及与发 展。 针对这些问题,w s r f 提出了比较全面的解决方案:利用已存在的m 瘌 w e bs e r v i c e 标准和现有的w s d l 等技术工具,采用更具有表达性的m a n ys e r v i t 嘲 - 协一m a n y r e s o u r c e s 方法和使用不同的结构模型进行网格资源管理。 基于w s r f 结构的网格技术主要是由w e b 服务和有状态资源组成的,而有状 态资源是指具有一定的生命周期、可以被一个或者多个w e b 服务访问和被x m l 语言说明的状态数据,在创建之初就被定义为完整的实体,这个实体是以创建资 源、撤销生命周期来表示的,并具有多种实现方式 8 华南师范大学硕士毕业论文 2 2 协同软件开发概述 计算机支持协同工作( 简称c s c w ) 是当前计算机科学研究的又一个十分活跃 的研究领域,自对协同工作研究以来,获得了飞速的发展,出现了不少试验性的 原型系统和商业化软件,越来越多的用户开始了解、接触和使用协同软件,它也 成为了未来软件的发展方向。然而,目前协同系统的开发仍然非常困难,其主要 原因是缺乏合适的强有力开发工具的支持。即使一个最简单的协同系统,其开发 也是一个冗长的过程。每个协同系统的开发都要涉及到创建和管理网络连接,分 析和分发进程间通讯的信息,在网络上对其他的用户定位与其建立连接,保持共 享资源在各用户间的一致性等诸多问题。如此种种,使得采用一般的软件开发工 具来开发协同系统时,需要编写许多与系统功能和协同特性无关的底层代码。协 同系统的开发急需要强有力的开发工具。这一问题已经引起了国际上学术界和工 业界的重视,不少专家学者已经做了一些卓有成效的研究工作,开发一些实验性 的协i 司软件开发工具集。然而,结果并不能令人十分满意。研究协同软件开发工 具集的最终目标时使得开发协同软件的难度和代价接近于开发对应的单用户软 件的难度和代价,但现实的情况距离这一目标还有很远。 2 2 1 协同软件开发工具的需求 最早的协同软件开发是没有工具支持的,开发人员采用开发单用户界面和 分布式应用程序的技术来开发协同软件。通常,这些协同系统都是对已有数据库 或超文本系统的扩充。随着应用与开发经验的不断积累,逐步出现了支持协同软 件开发的工具,多用户界面工具集、共享数据存储管理、复制对象等等都是这些 工具提供的抽象机制。 协同软件开发工具的需求有外部需求和内部需求之分。外部需求考察工具 应该支持的应用程序功能,内部需求考察工具如何支持应用程序的开发过程。进 一步可以将外部程序细分为功能需求、技术需求和交互需求n 1 1 。 功能需求从三个方面来进行考察的: a ) 产品空间( p r o d u c t i o ns p a c e ) 代表了被协同操作的共享实体,产品空间中的对象 包括共享文档和绘图等,与产品空间有关的功能包括对这些对象的浏览和操作 基于嘲格的软件协同开发环境的研究与设计 等。产品空间的功能需求包括: ( 1 ) 支持灵活耦合( f l e x i b l ec o u p l i n g ) ,具体地说,应该支持 a 数据地共享使用与私有使用之间地无缝转移 b 版本控制( v e r s i o n i n g ) 与共享对象地合并( m e r g i n g ) c 冲突消解( c o n f l i c tr e s o l u t i o n ) ( 2 ) 支持用户配置,具体的说,应该支持: a 可配置的视图 b 可配置的访问控制 ( 3 ) 支持工作历史维护 b ) 协调空间( c o o r d i n a t i o ns p a c e ) 管理有关用户如何协同工作的协议,包括社交协 议( s o c i a lp r o t o c 0 1 ) 和形式规定的协议。协调空间的功能需求包括: ( 1 ) 支持基于角色的协作 ( 2 ) 支持发言权控制 ( 3 ) 支持任务自动化 ( 4 ) 支持用户状态和环境的查看 ( 5 ) 支持投票 通信空间( c o m m u n i c a t i o ns p a c e ) 支持用户之间的通信,e - m a i l 是异步通信的实 例,而媒体空间是同步通信的实例。通信空间的功能需求包括: ( 1 ) 支持同步和异步的消息传递,具体的说,应该支持: a 可控制的视频视图 b 语音通信 ( 2 ) 支持标记( a n n o t a t i o n ) ( 3 ) 支持用户友好视 ( g e s t a l t v i e w s ) 技术需求与开发协同软件的硬件、软件以及网络有关,刻画这几个方面要满 足的特性,具体来说,包括: ( 1 ) 支持资源可适用性 ( 2 ) 支持用户的偏好( p r e f e r e n c e ) ( 3 ) 支持已有应用程序的复用 ( 4 ) 支持网络状况的监测与报告 l o 华南师范大学硕士毕业论文 ( 5 ) 支持容错特性 交互需求考虑的是用户与应用程序之间的交互,例如考虑如何通过最少的操 作来执行日常的任务。 2 2 2 协同软件开发工具集及关键研究 协同软件开发系统的实现关键包括软件的配置管理( s c m ) ,软件测试管理 ( s t m ) ,软件工程文档管理( s e d m ) ,工程项目管理( p m ) ,团队人员管理以及用 户之间的协同实时交流。系统实现主要研究的方面有系统体系结构、协同透明、 会话管理、访问控制、工作空间感知、并发控制、中途加入、同步等几个重要的 环节 近年来,在对协同软件开发工具的研究中,对如何使用高层工具开发出更 多更广应用范围内的协同系统,取得了显著的进展,具体如下: ( 1 ) 支持灵活耦合,允许用户对其与其他用户之间的交互粒度( 鲫u l 撕t y ) 进行 配置。 ( 2 ) 支持版本,厶并( v e r s i o n i n g m e r g i n g ) ( 3 ) 支持组感知( g r o u pa w a t c n e :k s ) ( 4 ) 支持同步与异步工作的结合 ( 5 ) 支持将已有应用程序改造成协同程序 ( 6 ) 支持语音、视频以及多媒体信息 ( 7 ) 支持工作流( w o r k f l o w ) 2 3 网格技术与协同软件开发结合 协同软件开发系统是一个基于w e b 的协同软件开发系统,它是为软件协同开 发及协同工程管理而设计的。系统实现不同群体,不同对象之间的协同工作。在 协同软件开发过程中会面临着许多的问题,比如协同开发者可能分布在不同的地 理位置,处于异构的开发环境中,开发者的开发任务可能会出现动态变化,项目 开发的不同用户,不同角色必须要保持实时交流,协同工作等等,这些都是在分 布式环境下进行软件开发都要考虑的问题。如何充分发挥这些人力资源,系统资 源并且可以实现重用呢? 网格是一个很好的解决方案。它能够支持协同工作 基于网格的软件协同开发环境的研究与设计 ( c s c v o 与多种模式的交互,能够支持可视化与复杂的实时模拟。在动态变化的 多个虚拟机构间共享资源和协同解决问题。 网格技术用于搭建一种广域的大规模的分布式开发环境,其节点下的所有网 格资源拥有以下特点:资源的地理分布极广、资源之间、资源和用户以及用户与 用户之间往往通过广域网连接;资源之问要求一定程度的协同工作;资源工作与 异构平台上,并且有不同的管理策略控制。网格的分布性、异构性、动态性、自 治性、协同性等特性刚好弥补了协同软件所缺少的不足,将网格与软件协同开发 相结合,不但实现了分布式异构环境下的资源共享,同时还能够实现资源的整合 和资源的合理调度。这就是本文理论研究的有力支持点。 2 4 本章小结 本章主要对基于网格的软件协同开发环境进行了概念性描述,主要从网格、 协同开发以及将网格与协同开发结合三个方面对网格下协同软件开发进行了概 括性描述。论证了在网格环境下进行软件开发的必要性,同时也为第三、第四、 第五章的介绍奠定了基础。 1 2 华南师范大学硕士毕业论文 第三章基于网格的软件协同开发的关键实现技术 w e b 服务( w e bs e r v i c e ) 是一种新型的w e b 应用,它以一种独立的、自描述的和 模块化的方式,通过w 曲来发布、查找和访问“从简单的请求式服务到复杂业 务流程式的服务都能以w e b 服务的方式得以描述、发布和访阀当一个w e b 服 务部署以后,其它应用( 以及其他w e b 服务) 就可以发现和访问这个服务 w 曲服务的体系结构关心3 个方面的问题:服务的描述,服务的注册发布和 服务级的通信。位于w e b 服务结构栈顶层的是应用层,w e b 服务体系结构提供了 两个协议w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ) 和u d d i ( u n i v e r s a ld i s c o v e r y d e s c r i l ,i i o ni n t e g r a t i o n ) 来描述和发布w 曲服务1 1 3 1 位于底层的是网络传输层,该层与s o a p 协议紧密绑定作为w e b 服务级的通 信机制。各种不同的网络传输协议如h 1 1 p ,f t p ,s m t p ,m q ,r e m o t e m e t h o d i n v o c a t i o n ( r m i ) ,h t e r n e ti n t e ro r bp r o t o c o l ( i i o p ) 等都可以使用。目前h t t p 协 议是最广泛接受的一种。 位于中间的是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 ) 通信层。应用程序通过 s o a p 能够调用w e b 服务,访问u d d i 节点,以及相互通信。s o a p 协议独立 于具体的网络传输协议,目前基本都是采用 盯r p 与s o a p 绑定的实现策略。 3 1w e bs e r v i c e 的体系结构和运行机制 3 1 1w e bs e r v i c e 的基本概念 w e bs e r v i c e 是指由企业发布的、完成其特别业务需求的在线应用服务,其 他企业、合作伙伴的应用软件能够通过i n t c r n e t 来动态地访问并使用这些在线服 务。 3 1 2w e bs e r v i c e 的主要优势 ( 1 ) j a v a ,x m l 和w e bs e r v i c e 是实现功能强大、开放和可移植的电子商务系统 平台、信息融合与应用集成的三要素,它们互为补充,缺一不可,为新一代的网 络发展和用奠定了技术基础。 基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 日本石陨石采购合同范本
- 木材供应合同协议书模板
- 合同知识产权保密协议书
- 政府招商合同框架协议书
- 松江区礼仪庆典合同范本
- (2025年标准)月结采购协议书
- (2025年标准)员工留任奖金协议书
- 2025年新铁艺围栏协议书
- (2025年标准)优惠服务协议书
- (2025年标准)重庆 拆迁补偿协议书
- 全新发布:2023年抗菌药物分级管理目录
- 产科输血治疗专家共识(2023版)解读
- 拆解一切故事写作
- 七年级写字课教案
- 文印服务投标方案(技术方案)
- 九年级物理第21章《信息的传递》全章课件
- 沂水县中小学教师考试真题题库
- 撒肥机(厩肥)设备安全操作规定
- 经济学原理(第3版)PPT完整全套教学课件
- 吊带的报废标准
- 中小企业人力资源管理问题及对策研究
评论
0/150
提交评论