(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf_第1页
(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf_第2页
(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf_第3页
(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf_第4页
(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(计算机软件与理论专业论文)基于科学数据共享网的软件体系结构及其质量属性的研究.pdf.pdf 免费下载

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

文档简介

摘耍 摘要 软件体系结构开始于软件的早期设计。人们希望通过对软件体系结构进行系 统、深入地研究,以提高软件生产率、保障软件的质量、改善软件维护等不断涌 现的问题。质量属性是软件体系结构设计中需要考虑的重要概念。它对软件体系 结构的设计起到了评估、修正、补充等重要作用,用以提高软件体系结构设计的 质量。 本文以”中国地球系统科学数据共享网”( 以下简称科学数据共享网) 系统的 软件体系结构设计为例,论述了软件体系结构对软件设计与开发的重要指导作用 以及它对软件质量的保障作用。 本文先从科学数据共享网的原型系统结构的分析开始,以质量属性的观点指 出了原型系统的设计中存在的缺陷。在此基础上,本文设计了新的科学数据共享 网系统结构,其总体设计采用面向服务的体系结构( s o a ) 方案。它由门户( 主 数据中心) 、安全中心、和分数据中心等相对独立的子系统组成;各个”中心” 之间通过由f e bs e r v i c e s 构建的数据共享服务、数据收割服务、全局服务、安 全服务相互连接,最终构建成科学数据共享网的分布式体系结构。科学数据共享 网中,各个”中心”则是应用m v c 模式设计、基于j 2 e e 实现的应用系统,它们的 软件体系结构设计充分体现了分层的体系结构风格的优越性。 本文还从质量属性的角度出发,分别在可用性、可维护性、性能三个方面对 科学数据共享网系统的设计作了分析,为了提高这几方面的质量要求,更具体地 补充设计了结构中的一些部件及它们之间的联系成分;而且对如何权衡质量属性 之间相互作用的问题也做了分析和说明。 通过本文的论述和归纳,为软件体系结构和质量属性指导软件设计提供了可 参考的实践经验。 关键词软件体系结构;质量属性;科学数据共享;s o a 北京工业大学工学硕士学位论文 a b s t r a c t s o f t w a r ea r c h i t e c t u r ei sa r te a r l ys t e pi ns o f t w a r ed e s i g n t h r o u g hr e s e a r c h i n gt h e s o f t w a r ea r c h i t e c t u r e ,p e o p l ew a n tt oi n c r e a s et h es o f t w a r ep r o d u c t i v i t y , e n s u r et h e s o f t w a r e q u a l i t y , i m p r o v et h es o f t w a r em a i n t e n a n c e ,a n ds o l v e o t h e rp r o b l e m s q u a l i t ya t t r i b u t e si sa l li m p o r t a n tc o n c e p ti nd e s i g n i n gs o f t w a r ea r c h i t e c t u r e ,w h i c h w en e e d l i n ko v c li tp l a y st h ei m p o r t a n tr o l eo fe v a l u a t i n ga n dc o r r e c t i n gt h e s o f t w a r ea r c h i t e c t u r e a sar e s u r ,t h eq u a l i t yo fs o f t w a r ea r c h i t e c t u r ed e s i g nc a nb e i m p r o v e df r o mt h i sw a y t h ed i s s e r t a t i o nu s e s t h es c i e n t i f i cd a t as h a r i n gn e t w o r ko fg l o b a ls y s t e m a s a ne x a m p l e ,b yd e s i g n i n gt h es o f t w a r ea r c h i t e c t u r e ,t oe x p l a i nh o wt h es o f t w a r e a r c h i t e c t u r eg u i d e st h es o f t w a r ed e s i g n i n ga n dd e v e l o p i n g ,a n dh o wt h eq u a l i t y a t t r i b u t e sw o r k a tf i r s t ,t h ed i s s e r t a t i o na n a l y z e st h es y s t e ms t r u c t u r eo f p r o t o t y p e ,a n dp o i n t so u t t h el i m i t a t i o ni nt h eq u a l i t ya t t r i b u t e s v i e w b a s i n go nt h a t ,t h en e ws o r w a r e a r c h i t e c t u r ef o rt h es y s t e mh a sb e e nd e s i g n e d , w h i c hi n t r o d u c e st h ec o n c e p to ft h e s e r v i c e o r i e n t e da r c h i t e c t u r e i ti sad i s t r i b u t e ds y s t e m ,c o n t a i n i n gp o r t a l ( m a i nd a t a c e n t e r ) ,s e c u r i t yc e n t e r a n db r a n c hd a t ac e n t e r e a c h c e n t e r i sar e l a t i v e l y i n d e p e n d e n ts y s t e m ,a n dt h e yc o m m u n i c a t e 、i me a c ho t h e rt h r o u g ht h ec o n n e c t o r s , d a t a - s h a r i n g - s e r v i c e ,h a r v e s t s e r v i c e ,g l o b a l s e r v i c e a n d s e c u r i t y - s e r v i c e t h e c o n n e c t o r sa r ei m p l e m e n t e db yw e bs e r v i c e s a l lt h eb r a n c hc e n t e r sa d o p tt h em v c p a t t e r na n d u s et h ej 2 e ef r a m e w o r kt od e s i g nt h es o f t w a r ea r c h i t e c t u r e ,w h i c hb e n e f i t f r o mt h el a y e r e ds o f t w a r ea r c h i t e c t u r es t y l e t h ed i s s e r t a t i o na l s oa n a l y z e st h ed e s i g no ft h es y s t e mf r o mt h ev i e wo f a v a i l a b i l i t y , m o d i f i a b i l i t ya n dp e r f o r m a n c e t oi m p r o v et h o s eq u a l i t ya t t r i b u t e s ,m o r e d e t a i l e dd e s i g n so rm o d u l e sh a v eb e e na d d e dt ot h ec o m p o n e n t sa n dc o n n e c t o r s m o r e o v e r , t h ed i s s e r t a t i o ne x p l a i n st h et r a d e o f f b e t w e e nt h o s eq u a l i t ya t t r i b u t e s i naw o r d ,t h ed i s s e r t a t i o n p r o v i d e s t h ep r a c t i c ei nd e s i g n i n gs o f t w a r e 摘要 a r d l i t e c t w e ,w h i c hc o u l db eah e l p f l l le x a m p l ef o rd e s i g m n gs o f t w 盯ea r c h i t e c t u r eo f o t h e rs y s t e m s k e yw o r d ss o f t w a r e 砒 l i t e c t i l r e ;q u a l 毋a t t r i b u t e s ;s c i e n t i f i cd a bs h a r e ;s o a n l 北京工业大学工学硕士学位论文 i v 独创性声明 本人声明所旱交的论文是我个人在导师指导下进行的研究i :作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京:j i 业大学或其它教育机构 的学位或证节而使用过的材料。与我一l 司工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 签名:盈刍差坌几期:世! 垡幽1 9 关于论文使用授权的说明 本人完全1 r 解北京工业大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允计论文被食阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制_ 于- 段保存论文。 ( 保密的沦文在解密后应遵。、 :此规定) 签名: 豳盈 导师签名 璐嵫同期:型盟翊目 第1 章绪论 第1 章绪论 1 1 科学数据共享的需求和发展 长久以来,我国科学工作者前赴后继地在各个科学领域进行研究、勘查和观 测,他们取得了相当多的卓越成绩并且积累了大量丰富的科学数据资源。这些科 学数据已经给研究工作和社会带来了可观的研究价值、经济价值和社会价值,但 它们仍然蕴藏着巨大的潜能,有待人们深入挖掘。 随着科技的发展和信息时代的到来,这些分布在研究所、科研单位、学者手 中的科学数据相对孤立的局面,已经越来越不能满足时代前进的需求。这种局面 造成的恶果是一部分科学家们得不到研究所需的完整科学资料,而同时又出现浪 费大量的国家资源,进行科学数据的重复采集。 我国的“科学数据共享工程”就是在这样一个国家发展的迫切需求和现代信 息技术迅猛发展的背景下启动的。其实,科学数据共享早在上个世纪末,就已经 得到了许多国家和学者的重视,并快速发展起来。目前,它已经成为了全球科技 发展的一种必然趋势。 所以,建设和实施科学数据共享,有利于增强我国在国际上的科技竞争力, 充分发挥科学数据的价值和潜力,减少国家资源的浪费。 目前,我国的“科学数据共享工程”是在国家的整体规划与管理下,将各部 门、各单位所积累的科学数据资源纳入国家科学数据共享统一框架,形成跨部门、 跨学科、多层次的国家科学数据共享服务体系,实现多年积累的基础性、公益性 科学数据的分类分级共享,使海量的科学数据资源的潜在价值得以充分发挥与增 值,从而打破部门间与行业间的信息壁垒,提高国家投入的效益,增强科技创新 能力。 我国的“科学数据共享工程”主要是由三大部分构成:“数据共享政策法规 与标准体系建设:国家科学数据中心群建设;科学数据共享服务网建设。”“3 目 前,该工程还处于初期建设阶段。科学数据共享服务网已经在许多科研单位渐渐 成型。 北京工业大学工学硕士学位论文 1 2 科学数据共享网的发展和特点 科学数据共享网是提供科学数据共享服务的软件平台,要为科学数据共享提 供广泛的技术环境支持。因此。它的建设情况直接影响到了科学数据的使用、共 享、传播和交流。 上个世纪末,许多国家和机构就开始了科学数据共享网的建设。比如世界气 象组织构建的“全球电信数据交换系统”、国际减灾协会组织的“国际灾害信息 资源网络”、美国政府资助的“g e o s p a t i a lo n e s t o p ”等。我国虽然是在2 0 0 2 年才开始着手这方面的建设,但是在总结和吸取国外成功经验的基础上,也已经 迅速建成了覆盖气象、地震、地学、农业等领域的科学数据共享网,并初具规模。 这也得益于当今网络技术和海量存储技术的不断创新和迅速发展。 从目前来看,科学数据共享网有以下一些特点: ( 1 ) 数据来源分散。科学数据的采集和获取,是从科学工作者的研究工作中 一点一滴地收集起来的。它们掌握在各个科研院所、科研人员手中。因 此,作为科学数据共享网的主要服务内容科学数据,可能是分布在 全国各地,甚至还可能来自国外。 ( 2 ) 数据的海量存储。目前人们掌握的科学数据是经历了数年、数十年地收 集整理而得到的。可以想象,数据量是相当庞大的;尤其是气象、地震、 地学等学科领域的数据资源,更是巨大。显然,这需要借助海量存储技 术对科学数据资源进行存储和管理。 ( 3 ) 运算量大。由于数据量的庞大,所以科学数据资源的收集、搜索方面的 运算量是可观的。此外,科学数据共享网不仅仅提供数据共享的功能, 还会提供科学数据计算等增值服务,这无形中也增加了系统的运算量。 ( 4 ) 使用人员广泛。科学数据有其广泛深远的研究价值、社会价值和经济价 值。所以,对科学数据有使用需求的人员是来自各行各业的,既有科研 单位和学者,也有政府机构和企业单位。 1 3 科学数据共享网所面i 临的问题 目前科学数据共享网主要是以i n t e r n e t 为数据的传播和共享的媒介、使用 2 第1 章绪论 人员广泛。如何设计建设一个稳定、可靠、高效的科学数据共享网便成为了人们 研究解决的问题。 从科学数据共享网的系统结构上看,目前主要可以分为两种结构: 第一种,集中式数据管理的b s c s 结构。科学数据通过客户端程序或是其他 手段,将数据传送到服务器上;由中心服务器统一负责数据的管理与维护、共享 服务的提供。这样的结构极大地便利了数据的管理和共享服务的提供。但是,它 需要承担海量数据高昂的维护管理成本,并且对保证服务器能够长期不问断地提 供服务的要求也相对较高。 第二种,分布式系统结构。分布式系统结构相对集中式数据管理结构而言, 是指数据不需要由一个中心服务器来进行管理,而是仍存在于数据所有者科 研院所或是学者的手中,各自管理自己的科学数据。只是由共享服务中心提供数 据的位置和共享服务入口。虽然这里也存在着由一个中心提供服务索引的情况, 但是该中心并不负责管理和存储所有的科学数据。这便降低了对该中心的要求和 运行成本。但是,它存在着数据管理难度大的缺点。 两种结构各有利弊,具体采用那种结构,是目前科学数据共享网建设所面临 选择的问题之一。 科学数据共享网的功能不是仅仅提供共享科学数据的服务,它必然还要在共 享服务的基础上不断增加对科学数据进行计算等增值服务,以加大对数据利用。 因而,在框架结构上就要考虑到系统的开放性和扩展性。 除了选择结构的问题外,人们还面临着其他一些需要在设计中考虑并解决的 问题: ( 1 ) 如何收集和管理海量数据。前面对科学数据共享网的特点已经做了介绍, 大量的数据分散在科研院所和学者手中。如何才能将这些大量数据收集 起来并有效管理是要努力去解决的。此外,还要解决如何让对数据有需 求的人员快速搜索到他们需要的数据,又以怎么样的途径和方法将数据 提供给他们。这是科学数据共享网建设初期的关键性问题。 ( 2 ) 如何保证系统的稳定运行。由于数据量和运算量大,对科学数据有使用 需求的人又多,所以该系统的可用性和性能问题就摆在了人们的面前一 一要努力保证系统的稳定运行,使其能够不间断地提供拭享和计算服务。 3 北京工业大学工学硕士学位论文 ( 3 ) 如何保护科学数据。科学数据共享网以i n t e r n e t 为依托,使用人员广泛, 随之而来的是数据的安全性问题。虽然科学数据共享网是提供数据共享 的服务,但是这并不意味着数据是无限制地被共享和使用,科学数据也 有其版权和机密性问题。所以这里提出了科学数据的保护问题防止 科学数据被恶意破坏、维护科学数据的版权、保护科学数据机密性。 1 4 本文要解决的问题和主要工作研究工作 根据上述所介绍的科学数据共享网的特点和存在的问题,本文的研究工作是 在紧密结合国家科技部科学数据共享工程试点项目之一“中国地球系统科 学数据共享服务网”的背景下,从软件体系结构的角度,对该系统的体系结构和 质量属性开展研究和分析的。 通过研究和分析,本文主要论述和解决以下两点问题: ( 1 ) 科学数据共享网的体系结构设计。分析1 3 节中简单介绍的两种系统结 构,选择一种能够适合科学数据共享网质量要求的结构。然后,以此结 构为基础进行扩展,设计软件体系结构。这样的体系结构并不是最终的 结果,需要做进一步地修正,使其真正满足质量要求。 ( 2 ) 对科学数据共享网的质量属性分析和解决策略的制定。主要是通过研究 和实践,分析该科学数据共享网的需求,提取软件体系结构设计上需要 关注的质量属性;然后利用该质量属性的要求,对已设计的软件体系结 构进行评估分析;最后,根据分析结果,调整设计方案中不合理的部分, 制定能够满足要求的解决策略。由于该软件系统所涉及质量属性众多, 研究工作和本文论述内容不能全部地将其概括在内;所以本文将主要从 科学数据共享网的“可用性”、“可扩展性”、“性能”这三个方面对软件 体系结构的设计工作进行分析,并调整其设计方案,制定能够满足要求 的解决策略。 1 5 整篇文章结构 本文的第二章是对研究工作中应用到又在本文中涉及的主要技术进行阐述, 4 第1 章绪论 帮助读者理解本文所论述的内容。 第三章是对“中国地球系统科学数据共享服务网”的软件体系结构描述,分 析该科学数据共享网的体系结构特点。 第四章则是从质量属性的角度,论述如何根据质量属性的要求更加落实和明 确系统的需求,指导、修正和补充该系统的结构设计,以及为实现软件体系结构 中所制定的策略所采取的技术实现方法。 第五章是对本文和研究工作的总结。第五章是对本文和研究工作的总结。 1 6 本章小结 本章介绍了科学数据共享的发展,科学数据共享网的特点与所面临的问题, 以及为了解决该问题所做的研究工作。 5 第2 章研究背景和相关技术 第2 章研究背景和相关技术 本章着重相关知识和技术的介绍。所讲述的内容意在帮助读者理解本文论述 中所涉及到的专业技术。 2 1 软件体系结构的发展 软件体系结构。5 1 “7 ”1 是上个世纪末期被人们认识和创建的一门科学。它是软 件工程领域的一个分支学科,也是其中发展最迅速的- - n 研究与实践领域之一。 在企业需求不断增长,引入面向对象、分布式和异构等新技术的情况下,软 件的规模和复杂度也随之迅速膨胀,尤其是大型的企业级系统。因此,传统软件 工程设计和开发方法渐渐变得“力不从心”。在此背景下,人们开始反思,并且 进一步地深入研究软件系统。从而逐渐认识到软件开发早期工作的重要性,软件 体系结构也就作为软件工程中的一门新兴研究领域出现了。人们希望通过对软件 体系结构进行系统、深入地研究,以提高软件生产率、保障软件的质量、改善软 件维护等不断涌现的问题。因此,解决好软件的重用、质量和维护问题,也就成 为了研究软件体系结构的根本目的。 软件体系结构开始于软件的早期设计,期望其能对软件系统的设计和构造起 指导作用。它主要描述:( 1 ) 功能性组件和数据组件; ( 2 ) 组件间的连接,包 括数据流和控制流;( 3 ) 各种约束,包括是通讯协议、组件间的同步等; ( 4 ) 用组件及它们之间的连接表示的整体结构和拓扑关系等。从此可以看出,软件体 系结构研究是不同于传统的软件工程方法学研究的。它主要关注系统的整体结构 设计,描述组件问的相互关系,而非算法和数据结构。此外,软件体系结构主要 侧重抽象的体系结构模型、风格和定义,如总线风格、管道风格。1 。 随着人们对软件体系结构研究地深入、理解地提高、以及方法地改善,软件 体系结构的设计工作在实际中可以具体体现为: ( 1 )软件体系结构的构建。构建软件体系结构是软件开发早期设计决策的 主要体现。软件体系结构可以作为项目的蓝图,并供设计者们分析。 构建工作需要收集需求中的质量属性,制定实现质量属性的策略,然 7 北京工业大学工学硕士学位论文 后再进行详细的软件体系结构设计。在这里,质量属性起到了指引和 修正设计的作用。目前,已经有了许多对软件体系结构风格的总结和 成熟的商业框架比如c o r b a 框架、 2 e e 框架等。它们有助于人们 设计出优秀的软件体系结构。 ( 2 )软件体系结构的评估“4 ”1 。由于软件体系结构是早期的设计工作, 并且具有指导性的作用;所以一旦设计中存在错误而未纠正,势必会 给软件系统造成重大缺陷。因此对软件体系结构的评估工作就被人们 引入进来。在软件设计早期,它就“迫使”设计沿着满足软件系统设 计成功的要素方向开展。人们通过不断实践,还总结出了一些软件体 系结构评估方法:a t a m ( a r c h i t e c t u r et r a d e o f fa n a l y s i sm e t h o d ) 1 0 , 1 1 , 1 4 , 1 5 q a w ( o u a l i t ya t t r i b u t e sw o r k s h o p s ) 1 6 1 ”、s a a m ( s o f t w a r e a r c h i t e c t u r ea n a l y s i sm e t h o d ) 等。此外,更加细致一些的工作 包括了构造质量属性描述场景。”和效用树。”、提出解决或改良方案、 均衡各个质量属性问的相互关系、衡量已有的软件体系结构设计。 ( 3 )软件体系结构的形式化描述“3 。形式化描述软件体系结构能够帮助人 们更好地理解和分析它;同时,也便于设计者、开发者、用户等系统 构建参与者之间的相互交流。目前,对软件体系结构的形式化描述可 采用u m l 的图形表示或是体系结构描述语言( a r c h i t e c t u r e d e s c r i p t i o nl a n g u a g e ,a d l ) 的文字符号描述。a d l 现已经有很多种, 比如着重于风格表述的w r i g h t 语言。1 ,着重于动态表述的c h a m 。“3 ” 等。 因为目前尚无对软件体系结构有个精确的定义,所以人们还在这方面赦着不 懈地努力。除此之外,人们在软件体系结构领域的研究还着眼于以下四个方向: ( 1 )提供新的软件体系结构描述语言,使得系统开发者能够很好地描述体 系结构设计,便于与人交流。 ( 2 )对软件体系结构的专门知识的整理。这方面主要还是对软件构架师、 工程师在软件开发过程中得来的各种体系结构方面的经验、原则、模 式进行整理。 ( 3 )提供特定领域的体系结构框架。这样,可以很容易地将辞体系结构框 8 第2 章研究背景和相关技术 架实例化为该领域新的软件系统。 ( 4 ) 提供软件体系结构的形式化基础。对软件体系结构设计的推理的形式 化表示,能更精确地理解软件体系结构,能更好地实现其设计思路。 2 2 软件体系结构中的质量属性 软件质量是贯穿软件生存期的一个极为重要的问题,是软件开发过程中所使 用的各种开发技术和验证方法的体现。 在软件开发过程中,问题发现得越早,越有利于问题的解决,所要付出的代 价也越少。软件体系结构是早期设计阶段的产物,它对系统或是项目开发具有深 远的影响。因此,如果有一种机制能够确保软件体系结构的正确性或是对其进行 评估。那么将会降低软件开发的风险,并从根本上提高软件质量。质量属性”2 ”2 ” 就是为了满足这样的要求,在人们的实践中不断总结提炼出的。它不仅是软件体 系结构进行评估的一个重要考察因素,也是软件体系结构设计的一个重要的遵循 和参考因素。基于这个原因,就要对影响软件产品最终结果的核心的质量属性需 求做出明确的表述,并对软件体系结构层次上的设计决策做出清楚的说明。 随着软件行业的不断发展,人们对软件的要求。尤其是对软件质量的要求越 来越趋于理性,要求也越来越高。软件质量的概念也开始从实现扩展到了过程( 管 理) 、设计、测试、应用这几个层面。为了能够在各个层面都很好地探讨并分析 软件质量,特别是在软件开发初期就对软件质量做出预期评估,人们总结并提炼 出了一些质量属性,而且对它们进行一定的分类“5 ”“1 : - 运行时的质量 性能、安全性、可用性、功能性、使用性 非运行时的质量 可维护性、可移植性、可重用性、可集成性、可测试性 一商业质量 成本、投放市场时间、期望的系统生命周期 体系结构质量 概念完整性、正确性和完整性、可构建性 不同的系统对每个方面的质量属性关注程度存在着差异。也就是说,质量属 9 北京工业大学工学硕士学位论文 性在实现要求上是有一定优先级的。但不管优先级如何,都是要认真分析的。分 析软件系统所强调的质量属性,能够使软件体系结构的设计有的放矢。软件体系 结构虽然不能具体实现这些质量属性,但它的设计方案为实现这些质量属性指明 了方向。此外,必须了解到任何一个复杂系统中,质量属性的实现绝不是孤立的。 各个质量属性间是存在着相互作用、相互矛盾的。软件体系结构也为解决和均衡 这些矛盾制定了相应的策略。 本文力图通过对科学数据共享网的质量属性进行分析,指导并修正对该系统 的体系结构设计和详细设计,使其最终的系统能够满足用户的需求。从而,以这 种途径说明质量属性对软件体系结构设计的重要性。 2 3s o a 和w e bs e r v i c e 介绍 科学数据共享需要一个具有良好扩展性的系统结构,能够在不断增加的需求 中非常便捷地丰富数据共享服务。面向服务的软件体系结构设计通过对服务的定 义恰恰能够提供这样的一种软件系统。 面向服务的软件体系结构( s e r v i c e o r i e n t e da r c h i t e c t u r e ,s o a ) 。4 ”是 一种软件体系结构模型,它将应用程序的不同功能单元( 即服务) 通过这些服务 之间定义良好的接口和契约联系起来,并且根据需求通过网络对松散耦合的粗粒 度组件进行分布式部署、组合和使用。“服务”是s o a 中的关键概念,w 3 c 组织 将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果。 最终结果通常会使使用者的状态发生变化,但也可能使提供者的状态改变,或者 双方都产生变化”。 s o a 通常是具有以下几个关键特性的:粗粒度、松耦合的服务架构,服务之 间通过简单、精确定义的接口进行通讯,不涉及底层编程接口和通讯模型。 借助s o a ,能帮助人们更加深刻地去理解企业级应用系统中的各种组件开发、 部署形式,帮助架构师和设计者构建更可靠、更具有重用性的系统,并能有针对 性地提出优化策略。实施s o a ,能够带来以下几点益处:( 1 ) 由于应用与实现 技术相分离,所以应用能够适应变化的技术;( 2 ) 能够快速便捷地整合服务, 构建新系统或集成到原有系统;( 3 ) 降低后期系统投入和维护的力度;( 4 ) 复 用性高,原有服务可以得到充分的复用。 1 0 第2 苹研究背景和相关技术 此外,需要说明的是s o a 并不是一种现成的技术,而是一种体系结构和组织 i t 基础结构及业务功能的方法。它是一种在计算环境q j 设计、开发、部署和管 理离散逻辑单j i ( 服务) 的模型。 因而,s o a 的具体实现需要一种技术的支持。w e b 服务( w e bs o l ,v i c e ) 就是 这样的实现技术。w e b 胀务是描述一些操作f 利用标准化的x m l 消息传递机制 可以通过网络访问这些操作) 的接口。w s d l ( w e bs e r v i c ed e s c r i p t i o n l , a n g u a 胎) 是一种基于x m l 语言的w e b 服务的描述语言,它描述了与服务交五需要的全部细 节,包括消息格式( 详细描述操作) 、传输协议和位锭。由于w e b 服务从服务的 角度出发,定义服务接口并隐藏了其中实现的技术细节,所以邑独立于实现服务 所采用的语言,独立于实现服务的硬件或软件平台。基于w e b 服务的应用系统也 就成为了松散耦合、面向服务、跨平台和跨语言的系统。 以上所说的w e b 服务的特性与s o a 的要求相吻合,这使得它能成为在分布式 环境中实现复杂的业务逻辑的最佳实践之一,并迅速成为s o a 的最佳实现技术之 2 4 m v c 模式 科学数据共享网是以w e b 系统向广大科学工作者提供数据共享服务。目前 w e b 系统的设计与实现多采用m v c 模式,以使w e b 系统结构清晰、易于维护。 _ v c 是模型( m o d e l ) 、视图( v i e w ) 和控制( c o n t r o l1 e r ) 三个英文单词的 缩写。m v c 模式最初出现在s m a i i t a l k 的应用中。人们希望通过这种模式在设计 中将业务逻辑、逻辑控制、数据表述清晰地分离开来,各司其职,最终让系统结 构更加清晰,增强系统的可维护性。 m v c 模式不仅仅是一种模式,更是一种优秀的思想。人们已经将这种思想应 用到了广泛的实践当中,比如桌而应用系统、设训模式等。目前,在w e b 中,也 涌现出了,不少体现m v c 思想的体系结构:s t r u t s ,w e b w o r k 。 奉文所做的【:作主要围绕基于j 2 e e 的w e b 应用,在没计和实现中充分体现 了m v c 的思想。m v c 模式中胁i k 务逻辑层主要负责系统中的、i k 务逻辑或是运行状 态,通常可以用j a v a b e a n 或e j b 来实现;数据表述层剧于与用户的交打,表述 业务逻辑层的数据结果,通常用j s p 实现;逻辑控制层是、【k 务逻辑层与数据表述 1 1 北京工业大学,i :学硕士学位论文 层之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以显示,同时也可 以解释用户的输入并将它们映射为业务逻辑层可执行的操作,通常用s e r v l e t 实现。见图2 1 : ie,ve一nts一一一methodi n v o c a t i o r 、s 图2 1m v c 模型。”1 f i g u r e3 - 1t h em o d e lo fm v c 在设计和丌发充分体现m v c 思想,可以改变5 s p 和s e r v le l , 给开发带来的混 乱,使得系统组件的职责清晰。这样开发工作变得清晰,有的放矢;有利于组件 的重用;提高系统的可维护性。 2 5 本章小结 本章着重介绍了本文课题研究所设计的主要知识和技术,并对这些技术的起 源和发展做了简短的表述。小章在介绍上述知识和技术的同时,还结合本文课题 1 2 第2 章研究背景和相关技术 研究,大致阐述了采用这些知识和技术的原因,和指出了给本文研究内容带来何 种益处。 第3 章科学数据共享网的软件体系结构设计 第3 章科学数据共享网的软件体系结构设计 本课题以“中国地球系统科学数据共享网”( 以下简称科学数据共享网) 作为研究背景,探讨“软件体系结构及其质量属性”在软件工程中所起的作用及 其重要性。本章将重点放在的体系结构设计的论述上:介绍了科学数据共享网的 主要需求;并且结合地球系统科学领域的特点,分析设计能够满足科学数据共享 网运行和发展的软件体系结构,为该系统的建设和发展提供决策参考。 3 1 科学数据共享网系统需求 “中国地球系统科学数据共享网”是国家科学数据共享工程的重要组成部 分,同时也是科技部推动“国家科学数据共享工程”2 0 0 2 年试点的三个科学数 据共享网之一。该系统针对基于各圈层( 大气圈、水圈、生物圈等) 相互作用的 地球系统科学的整体研究,利用互联网,整合、集成各科研院所、高等院校和国 际数据组织以及科学家个人手中的相关专业数据资源,瞄准地球系统科学的前沿 研究,开展数据组织、加工与服务。构建物理上分布、逻辑上统一的地球系统科 学数据管理与共享服务网。这工作对于增强我国基础科学研究和前沿科学创新 能力具有十分重要的意义。 3 1 1 数据方面的特殊需求和特点 因为该系统主要是提供科学数据共享服务。而科学数据跟研究领域有很大联 系,并且自身特点鲜明,所以在需求方面也有其特殊的地方。 地球系统科学数据共享网是为地球系统科学这一领域所涉及的各种各样的 科研数据提供共享的平台。地球系统科学( e a r t hs y s t e ms c i e n c e ) 是从行星地 球角度出发,将地球大气圈、水圈、生物圈和固体地球看作是一个相互联系的有 机整体( 地球系统) ,综合研究该系统形成机理和变化规律,为区域可持续发展 和全球变化研究提供理论依据和调控方法的学科。它是地球科学、空间科学和生 命科学研究深化和彼此交叉融合发展的必然。 1 5 北京工业大学工学硕士学位论文 长期以来,我国的科学工作者通过不断地勘测、研究,积累了大量的科学研 究数据。但是,基于地球系统过程及其动力学研究的复杂性和对海量的、多样化 的观测、探测调查、试验和数值分析数据的依赖,任何单位或个人都是无法直接 获得如此多样性的海量数据资源的。因此,该领域对相关的科学数据共享需求是 非常强烈的。 科学数据共享网就是为了能够满足这样的需求而筹建的。它的目的是搭建 个“e - s c i e n c e ”的环境,为地球系统科学的基础研究和学科前沿创新提供科学 数据支撑的服务系统。 在需求上,该系统对数据的要求要比其他系统更加地重视。地球系统科学是 门交叉学科。它涵盖了多个研究领域,包括地理、大气、生物等领域的各个学科 及其分支学科,分类庞杂。我国的科学工作在各个领域已经收集和整理了大量的 研究数据,有文字的,也有图像和矢量的。数据资源可谓相当丰富,其数据量预 计在l o o t 以上。因此如何收集和管理这样丰富巨大数据资源就是科学数据共享 网所要解决的一个主要问题。从数据的角度分析,该系统的需求大致是以下几点: ( 1 ) 能够快捷地收集数据。科学数据分散在科研院所和科学家当中。要设计 开发一套收集数据的机制,使其能够快速地整合到系统中,提供数据共 享服务。数据收集的途径应主要通过网络媒介,而且不能影响系统所提 供的网络服务的正常运行。 ( 2 ) 有效存储和管理海量的数据,并快速定位数据。该系统能够提供目录服 务,合理地管理数据;提供给用户查阅、下载、使用数据的服务。当用 户在系统中查找数据时,希望能够快速定位数据,提供服务,平均响应 时间最长不应超过2 0 秒。 ( 3 ) 保护数据版权,保证数据的安全性。科学数据是科学工作者辛勤劳动的 果实,它同书籍一样也存在着版权的问题。所以在数据的使用上,需要 版权保护。此外,由于一些数据有其时效和保密性,所以在提供服务时 需要对数据访问进行相应的安全控制。 3 1 2 系统需求 软件架构师和软件工程师一般通过两条途径来获得系统的需求。 1 6 第3 章科学数据共享网的软件体系结构设计 一条是用户真接主动地提供的需求,它们主要是一些功能性需求和领域知 识。在这方面,用户给出详尽的描述,希望“科学数据共享网”能通过i n t e m e t 为用户提供数据服务,包含数据目录服务、数据资源导航、数据下载等功能,还 有对数据进行稳妥的安全管理要求。 另一条是软件架构师和软件工程师设计“对话问题”,通过对用户提问,进 一步与他们沟通,从而得到更明确的需求。用户对软件系统的需求往往不能十分 清楚、全面地陈述,因此软件架构师和工程师可以用软件系统各方面的质量属性 为索引,系统地启发用户谈出他们实际需要、但是没有表达出来或是表达不完全 的内容。这些需求有些是运行方面的,有些是维护方面的,还有些是安全方面的。 它们虽然不是具体的功能,但是对系统设计与实现却具有巨大的影响。从质量属 性观点出发,除了功能方面的要求外,还有一些科学数据共享网的需求可以归纳 如下: 表3 - 1 非功能性需求简要 t a b l e3 - 1t h eb r i e f n o n f i m c t i o n a lr e q u i r e m e n t s 质量属性针对质量属性的需求 系统应能长期稳定地提供服务,z 7 2 4 小时工作强度 可用性,可 当系统出现故障或崩溃时,恢复时间不超过2 个小时。 靠性 在负载过重或是系统崩溃的情况下,能够保证用户的请求不丢失。 可维护性修改某个子系统或服务时,不要影响其他子系统或服务。 高峰时系统的平均响应时间控制在2 0 秒以内。 性能系统能够满足1 0 0 个并发的用户查询请求。 系统至少能够支持2 0 0 0 个用户的在线服务。 对有保密性要求的数据实施安全控制。 安全性 提供系统运行曰志监控信息,供管理员了解系统的运行和安全状态。 2 0 0 5 年中期完成系统,年底前投入正式使用。 能够利用现有系统的可利用资源。 商业属性 初期总共投资2 0 0 0 万,分别用于系统的集成建设和开发、共享数据 标准的制定。 1 7 北京工业大学工学硕士学位论文 3 2 科学数据共享网的软件体系结构设计 3 2 1 原型的体系结构及其分析 根据需求,数据将以 n t e r n e t 为传输途径完成共享。在目前以n t e m e t 为前提 的系统中,应用最广泛是b s ( b r o w s e r s e r v e r ) 结构。这样的结构已经相当成熟, 并具有很大的灵活性。科学数据共享网也是基于这样初衷而设计的。 在“绪论”里已经提到过,目前科学数据共享网的体系结构设计所面临的两 种典型的体系结构的选择。其中一种就是集中式管理的b s 结构。系统原型的设 计中,采用了这种设计方案。 下图就是原型的系统结构设计: 图3 - 1 科学数据共享网原型系统结构 f i g u r et h es t r u c t u r co f t h es c i e n t i f i e - d a t a - s h a r i n g - n e t w o r k sp r o t o t y p e 从图中可以看到,对于科学数据的存储、管理,共享等等诸多计算都是由“中 心”服务器承担。在“中心”服务器中,又划分了数据收集、数据访问、平台数 1 8 第3 章科学数据共享网的软件体系结构设计 据管理和平台管理四个模块。“数据收集”负责收集用户通过i n t e m e t 上载或是 其他途径( 光盘、磁盘等方式) 提交上来的科学数据。“数据访问”负责向用户 提供访问科学数据的服务查询和下载等。“平台数据管理”承担了与数据库 交互。管理和存储数据的工作。它提供的接口负责将收集的科学数据先暂存在平 台数据库中;然后供工作人员对数据进行有效性检查和加工,并将合法数据转移 到发布数据库中;最后管理发布数据库中数据的接口提供数据的访i a 1j e 务。“平 台管理”承担了管理用户信息、管理用户和数据的安全信息,以及生成平台运行 日志的任务。 这样的体系结构,是一种模块化、层次化的体系结构。它具有良好的可扩展 性和灵活性。但通过对需求和原型系统体系结构的分析和研究,会发现这样的体 系结构潜在着无法满足需求的隐患。 首先,所有的数据都由“中心”服务器负责存储,并向用户提供服务。但是 这样的结果是所有的用户请求都由中心服务器来响应。即使将内部的四个模块部 署到不同的服务器上,“平台数据管理”和两个数据库所承担的运算量也是可观 的。如果考虑到未来的科学数据将会达到1 0 0 t ,那么如此大的数据都存储到服 务器中,对服务器来讲必然是巨大的负担。而且数据管理和维护的成本也将随着 数据量的增加而加大。 其次,由于“中心”服务器承载了众多服务,因而其运算量会很繁重;所以, 为达到性能方面的要求,对“中心”服务器的要求就会比较高,比如增加内存容 量,c p u 数量。这无疑增加了该系统的投入成本。有时,仅仅通过提高服务器 的性能是不能够达到性能方面要求的。这一点在设计体系结构时是需要慎重考虑 的。 再次,因为请求都通过“中心”服务器做出响应,所以一旦它出现了故障, 无法提供服务,那么存储在系统中的科学数据就都无法向外界提供共享服务。对 于这样的体系结构的补救办法就是,增加备份服务器,组成集群。此外,当系统 进行升级的时候,也会对所提供的服务造成影响。为达到客户所要求的尽量达到 7 x 2 4 小时的服务,平均修复时间不超过2 个小时的要求,实现这些有相当的难 度,并且也需要很高的成本。 最后,这样的解决方案要求数据都存储在一个系统内,采取了通过i n t e m e t 北京工业大学工学硕士学位论文 上载或是其他途径( 光盘、磁盘等方式) 提交科学数据的方式。考虑到地学领域 的科学数据通常是比较大的地图、影响等文件,网络提交数据的方式就会影响到 “中心”服务器的数据吞吐量,降低了系统性能。 3 2 2 科学数据共享网的分布式系统 对原型系统的体系结构分析,发现了体系结构设计上的缺陷。因此,通过反 复认真地研究客户需求,在原型系统基础上,本文提出了新的科学数据共享网的 体系结构设计方案。该体系结构采用了更为开放的分布式结构。 3 2 2 1 面向服务的软件体系结构 新的体系结构中划分了主数据中心、分数据中心和安全中心。三类中心分别 有各自基于b s 结构的

温馨提示

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

最新文档

评论

0/150

提交评论