(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf_第1页
(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf_第2页
(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf_第3页
(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf_第4页
(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(地图学与地理信息系统专业论文)基于dssa的南京“数字房产”gis网络共享平台研究.pdf.pdf 免费下载

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

文档简介

学位论文独创性声明 本人郑重声明: l 、坚持以“求实、创新”的科学精神从事研究工作。 2 、本论文是我个人在导师指导下进行的研究工作和取得的研究 成果。 3 、本论文中除引文外,所有实验、数据和有关材料均是真实的。 4 、本论文中除引文和致谢的内容外,不包含其他人或其它机构 己经发表或撰写过的研究成果。 5 、其他同志对本研究所做的贡献均己在论文中作了声明并表示 了谢意。 作者签名: 日期: 学位论文使用授权声明 纽 伊中、职弓。 本人完全了解南京师范大学有关保留、使用学位论文的规定,学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版;有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆被查阅:有权将学位论文的内容编入有关数据库进 行检索;有权将学位论文的标题和摘要汇编出版。保密的学位论文在 解密后适用本规定。 、 作者签名:弛丝 日期:型埠筚乒 基十d s s a 的南京“数字房产”g i s 时络共享平台研究 摘要 g i s 技术经过儿十年的发展,已经逐渐融入主流信息技术之中,渗透剑人们生活的方方 面面,g i s 的应用也从原有的以地图为核心向以管理为核心转变。把握和跟踪这一发展趋势, 研究新型g i s 应用的特点,对于提高g i s 应用的深度和广度都显得非常重要。 与传统的以地幽为核心的g i s 应用相比,新型的以管理为核心的g i s 应用与企业的其 它系统如m 1 s 、o a 的暖别将不是那么明显,更多的将会是一种紧密集成,相互协作共同完 成一个具体业务的关系。以管理为核心的新型g i s 应用的特点使其与传统的以地图为核心 的g i s 应用在系统的构造方式上存在巨大差异,这种差异主要表现在席用系统的体系结构 上,如系统的跨平台性、可配置性、可伸缩性等。 软件体系结构是软什复刚技术发展的最高形式,是基于构件的软件系统开发的指导框 架它从一个高级的视幽定义了软件的系统结构定义了系统组成构什间的相互关系,从而 实现软阡的规模化重川。通川的软件体系结构的研究还存在着诸多障碍,犬多数软件体系结 中句的研究t 要集中在特定领域的软件体系结构上,也就是面向特定领域的软件体系结构模刑 f d s s a ) ,庄麻州i :科实践中面向特定领域的软件体系结构模型也得到了广泛的麻用。 田此,研究以管理为核心的新型g i s 应刖系统本身的软件特陛,尤其是面向该领域麻 州的软f , :体系结构模型。从而指导该领域新型g i s 应牌系统f j 勺开发,必将人人提高该领域 戍川系统的开发效率。 本文以面向特定领域的软件体系结构模型为指导思想,以南京“数字房产”g i s 网络共 享平台软件作为研究对象,结合南京“数字房产”项目的实施,分析了“数字房产”g i s 网 络共享平台软什的通j _ l ;| 体系结构,基于该通用体系结构模型对南京“数字房产”g i s 网络共 享平台进行了设计和实现,对下将领域软件体系结构模型引入g i s 应用r 程实践之中去作 了有瓿的尝试。 关键词: 地理信息系统( g i s ) ,面向特定领域的软件体系结构,“数字房产”g i s 网络共享平 台,软件复刷。 第4 页4 基十d s s a 的南京“数字房产”g i s 网络共享平台研究 a b s t r a c t w i t ha b o u tt h i r t y y e a r s d e v e l o p m e n t , g i st e c h n o l o g yb e c o m e so n eo ft h e m a i np a r t so f i n f o r m a t i o nt e c h n o l o g y , i n v o l v ei n t oe v e r y w h e r eo f p e o p l e sl i v e ,a n dt h ea p p l i c a t i o no f g i st u m f r o mm a p - c e n t e rt om a n a g e m e n t - c e n t e rs t e pb ys t e pt o o r e c o g n i z i n ga n dt r a c k i n gt h i s i n t e n d a n c y , s t u d y i n gt h ec h a r a c t e r i s t i c so ft h i s n e ws t y l eg i sa p p l i c a t i o n ,i sv e r yi m p o r t a n tt oi m p r o v et h e d e p t ha n d w i d t ho f g i s a p p l i c a t i o n c o m p a r e w i t ht h et r a d i t i o n a lg i s s y s t e m o f m a p - c e n t e r , t h e n e wg i s s y s t e m o f m a n a g e m e n t c e n t e rh a v eas m a l l e rd i f f e r e n c e sw i t ho t h e re n t e r p r i s es y s t e ms u c ha sm i s a n do a o nt h eo t h e rh a n d t h e ya p p e a rar e l a t i o no fi n t e g r a t i o na n dc o r p o r a t i o n ,a n df i n i s hac o n c r e t e w o r kt o g e t h e nt h ec h a r a c t e r i s t i co ft h en e wm a n a g e m e n t c e n t e rg i ss y s t e mm a k e si tv e r y d i f f e r e n tf o r mt h et r a d i t i o n a lm a p c e n t e rg i ss y s t e mi nt h ec o n s t r u c t i o nm e t h o d ,e s p e c i a l l ya tt h e a r c h i t e c t u r e s s u c ha sp l a t f o r m - i n d e p e n d e n t ,c o n f i g u r a t i o n ,a n ds c a l a b l e t h es o f t w a r ea r c h i t e c t u r ei st h em o s ta d v a n c es t y l eo fs 0 1 a r er _ e u s e ,i st h ed e v e l o p m e n t f r a m e w o r kb a s e do ns o f t w a r ec o m p o n e n tw i t hd i r e c t i v ea b l e t h es o f t w a r ea r c h i t e c t u r ed e f i n e st h e a r c h i t e c t u r eo fs o f t w a r ef r o ma na d v a n c ev i e w , a n dd e f i n e st h er e l a t i o n s h i po fs y s t e mc o m p o n e n t , s og i v i n gar o a dt oi m p l e m e n tt a r g es c a l es o f t w a r er e u s e t h r e ei ss t i l l al o to f d i f 目c u t t yo nt h e s t u d yo fc o m m o ns o f t w a r ea r c h i t e c t u r e ,s om o s ts t u d yo ns o f t w a r ea r c h i t e c t u r e i sa b o u ts p e c i f i c a p p l i c a t i o nd o m a i n ,n a m e d d o m a i ns p e c i f i cs o f t w a r ea r c h i t e c t u r e ( d s s a ) i nd e v e l o p i n g e n g i n e e r , d s s a h a v ea ne x t e n s i v ea p p l i c a t i o n t h e r e f o r e s t u d yo nt h es o f t w a r ec h a r a c t e r i s t i co fm a n a g e m e n t - c e n t e r g i sa p p l i c a t i o ns y s t e m , e s p e c i a l l yt h es o f t w a r ea r c h i t e c t u r em o d e lo f t h i sd o m a i n ,a n du s i n gi tt od i r e c tt h ed e v e l o p m e n t o ft h eg i sa p p l i c a t i o ns y s t e mo ft h i sd o m a i n ,w i l li m p r o v et h ed e v e l o p i n ge f f i c i e n to fa p p l i c a t i o n s y s t e mi nt h i sd o m a i n t h i st h e s i su s ed s s am o d e la sd i r e c t i v et h i n k i n g ,u s en a n j i n g “d i g i t a lh o u s e ”g i sn e t w o r k s h a r i n gp l a t f o r m a ss t u d yt a r g e t i n t e g r a t ew i t ht h ed e v e l o p m e n to fn a n j i n g d i g i t a lh o u s e ” p r o j e c t a n a l y s i st h ec o m m o ns o f t w a r ea r c h i t e c t u r eo fn a n j i n g “d i g i t a l h o u s e ”g i sn e t w o r k s h a r i n gp l a t f o r ms o f t w a r e ,b a s e d o nt h i sc o m m o ns o f t w a r es y s t e ma r c h i t e c t u r ed e s i g n e da n d i m p l e m e n t e dn a n j i n g d i g i t a lh o u s e ”g i sn e t w o r ks h a r i n gp l a t f o r ms o f t w a r e ,d oat e s t o l lt h e 第5 页 5 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 p r o c e s so f a p p l i c a t i o nd s s a i ng i s d e v e l o p i n ge n g i n e e l k e y w o r d s : g e o g r a p h yi n f o r m a t i o ns y s t e m ( g i s ) ,d o m a i ns p e c i f i cs o f t w a r ea r c h i t e c t u r e ( d s s a ) ,“d i g i t a l h o u s e ”g i sn e t w o r ks h a r i n gp l a t f o r m ,s o f t w a r er e u s e 。 第6 页 6 基十d s s a 的南京“数字房产”g i s 网络共享平台研究 1 1 引言 第一章前言 地理信息系统( g i s ) 技术是新兴的信息技术,是管理和研究空间数据的技术系统,可以 在计算机软硬件的支持f 对空间数据按地理坐标或空间位置进行各种处理和有效管理,研究 再种空间实体之间的相互关系,可以迅速地获取应用需要的信息,弗能以地图、图形绒其它 彤式表示处理的结果。近几年来,伴随着主流信息技术的发展,g i s 技术的发展也日新月异, 应用领域日懿j 泛,逐步渗透到人们日常的生产与生活当中,进入国民经济的各行各业,逐 步成为土流信息技术的一部分,得到了广泛的应用。宋关福认为,地理信息系统应用在7 0 年代处丁起步阶段,8 0 年代步八专家应用阶段、9 0 年代实现了企业应f _ f j 、2 1 世纪初! l ! l j 进入 计会化g i s 时代“。从麻州领域来看,经过多年的发展,g i s 的府州领域土要有二类,第一 类是解决地学领域中复杂的空间分析任务的应用,涉及的行业主要有资源、环境、地质、n 油等,第二类是以幽形化方式管理城市管线设备设施的a m ,f m g i s ,涉及的主要行业有电 力、市政、交通等,第三类是和办公自动化系统相结合的实现办公过程幽文一体化管理的应 川,印所谓的o f f i c e g i s ,涉及的主要行业有房产、规划、国十等,井逐渐向其它更多的行业 渗透。钟耳顺认为,在城市规划、土地管理和交通管理等领域,传统g i s 的建设都是以地图 为核心的而新型g i s 的建设,则以管理为核心,也就是将g i s 功能融入o a 之中,实现 g i s 与o a 的一体化,使空间信息和其它各类信息统一管理,更加方便应用【1 1 1 。 上述几种观点都表达了一个共同结论,即未来g i s 的发展趋势是g i s 逐渐融入以过榉 管理为核心的办公白动化应用中,g i s 系统的建设将从以地图为核心向以管理为核心转变, 冈此跟踪g i s 的这一发展趋势,把握新型g i s 的特征是具有重要意义的,本文的研究目标 就是上述类魁的g i s 应用,也就是新型的以管理为核心的g i s 应用。 同时,随着城市化、信息化的进程日益加快,城市规划、建设、管理与服务的方式急需 变革,运刚科学、整体、系统的思维来营造现代化城市已成为时代发展的必然,信息化将成 为2 1 世纪新型城市的基本特征,信息技术在改造并提升传统产业中作用重大。加快信息化 建设是建殴行业自身发展的需要是建设行业实现跨跃式发展的重要途径。g i s 技术,尤其 是新窄的以过程管理为核心的g i s 技术系统非常适合于城市信息化建设的需要,所以研究 第7 页 7 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 以g i s 技术为代表的信息技术在城市规划、建设、管理与服务的数字化工程中的应用模式 非常重要。 建设部“十五”科技攻关计划城市规划、建设、管理与服务的数字化工程中专门立 项了南京“数字房产”网络共享平台研究课题。南京房产局、东软软件股份有限公司、地理 信息科学江苏省重点实验室合作在南京“数字房产”项目的实施过程中对这一课题进行了研 究。本人有幸参与了该项日的实施,负责g i s 网络共享平台的研究和开发t 作,在研究和 开发过程中发现,随着g i s 技术的成熟和系统规模的扩大,算法和数据结构等功能性因素 的可变性越来越小、对系统成败的影响越来越弱,而系统的跨平台性、可配置性、可伸缩性、 可维护性等结构性因素则显得日趋重要。因此,研究g i s 软件本身的特性,尤其是特定领 域麻用系统的软件体系结构,对丁应用系统建设显得十分重要。基丁特定领域的软件体系结 构( d o m a i ns p e c i f i cs o f t w a r ea r c h i t e c t u r e ,即d s s a ) 模型进行系统的分析、设计和实现 能住很人程度上提高软什的开发效率。基r 这一认识本人在导师的指导f ,选择基fd s s a 的南京“数字房产”g i s 网络共享平台研究作为硕士学位论文题目,并从以下几个方面开展 了研究r 作: 1 文献检索与阅读。通过互联网和其它手段,在导师的指导下,查阅了国内外关丁- 领 域l 。稗、软件构件、软什体系结构等方面研究的最新进展,把握了技术发展动态录l 前沿,了 解了国内外相关研究的现状,确定了研究内容和技术路线。 2 对已有实际系统进行观摩、研究、对比、分析。结合本人研究生捌间从事的开发【: 作,重点研究了数字电力、数字市政、数字国十等实际运行的g i s 系统的体系结构,分析其 优劣得失,总结其特点与问题,作为本论文研究和系统开发的切入点。 3参加南京“数字房产”项目开发,总结项目建设中的得失。认真分析南京“数字房 产”g i s 网络共事平台软件着重总结其体系结构上存在的问题和取得的成功经验。总结高 复杂度软件体系结构设计的方法。 论文分为以下七个部分: 第一章前言,介绍论文选题的背景和研究思路以及国内外相关研究现状。 第二章软件体系结构的概念和产生背景,介绍软件体系结构的概念和产生的背景,前人在 这一方面研究的进展与存在的问题,重点介绍面向特定领域的软件体系结构模型。 第三章“数字塄产”g i s 网络共享平台综述,介绍“数字房产”g i s 网络共事平台的概念、 特点、内容及面向特定领域的软件体系结构模型在“数字房产”g i s 网络共享平台 中的应用。 第8页8 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 第四章基于领域软件体系结构模型的“数字房产”g i s 网络共享平台分析。 第五章基于领域软件体系结构模型的“数字房产”g i s 网络共享平台设计。 第六章基于领域软件体系结构模型的“数字房产”g i s 网络共享平台实现。 第七章结论与展望,总结论文取得的成果,展望需要进一步深入研究的问题。 1 2 国内外相关研究现状及进展 1 2 i 国外相关研究现状及进展 早在1 9 9 2 年,美国软件科学家p e r r y 在“f o u n d a t i o n s f o r t h es t i l d yo f s o l t w a r ea r c h i t e c t u r e 文中 首先提出了软件体系结构的概念,揭开了国际上软件体系结构研究的序幕。之后,国际上很 多计算机科学家从不同层面上开展了软件体系结构的研究,开始阶段主要研究软件体系结构 的概念、内涵、软件体系结构的形式化描述等基础研究,随着基础研究取得进展,软件体系 结构研究开始转向应用,开始研究用软件体系结构方法学去指导软件工程实践的技术。在当 前阶段,通用的软件体系结构研究还存在着诸多障碍,离实用化还有很大差距,所以国际上 大部分的研究集中在面向特定领域的软件体系结构( d s s a ) 。美国i b m 公司开发的i b m s a n f r a n c i s c o 是比较早的应用领域层框架,是专为企业管理系统的建造而设计开发的应用领域 框架系统,在面向特定领域的软件体系结构研究走向实际应用的历程上显得十分重要。 在计算机软件界,领域软件体系结构研究是目前个热点研究课题。但是,由于面向特 定行业应用的软件系统存在着其特殊性,只靠计算机软件人员是难以完成的,需要各行业的 专家一起进行研究。g i s 尤其是新型的以过程管理为核心的g 1 s 软件涉及的知识面比较广, 软件系统复杂度高,有一定的研究价值。 1 2 2 国内相关研究现状及进展 国内对软件体系结构的研究基本上是在国外发展比较成熟的基础上引进了软件体系结 构的概念。万建成,卢雷等的软件体系结构的原理、组成与应用是国内最早的全面介绍 软件体系结构的著作。费雅洁,钱钧翘在基于构架构件的专向领域的应用系统开发策略 一文中探讨了面向特定领域的软件体系结构的应用策略。中国科学院遥感应用研究所赵沛霖 i 尊士进行了i n t e r n e tg i s 领域软件体系结构的研究。国内由于研究软件体系结构比较晚, 均集中于软件体系结构方法在特定领域的应用研究。东软软件股份有限公司的u n i t n e t 开发 第9 页 9 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 框架是国内比较成熟的面向领域应用体系结构,主要为工作流管理系统提供统一的开发框 架。 地理信息科学江苏省重点实验室结合所从事的开笈工作,也较早地意识到了软件体系结 构在应用开发中的重要地位,并进行过一些有益的探索。陈昕博士研究了基于多层结构的企 业级g i s 建设,已经提到了软件体系结构的思想。龚敏霞硕士研究了a m f m g i s 领域模型 问题,其实质就是特定领域软件体系结构在a m f m g i s 领域中的一种应用。 考虑到未来g i s 的发展趋势是g i s 逐渐融入以过程管理为核心的办公自动化应用中,g i s 系统的建致将从以地图为核心向以管理为核心转变,形成所谓的o f f i c e g i s 而且o f f i c e g i s 是最近才随着电子政务的发展而得到广泛应用的,所以国内关于o f f i c e g i s 软件体系结构的 研究尚为空白。因此,对这一领域进行探索将极大地提高o f f i c e g i s 的开发效率,促进 o f f i c e g i s 相关应用的发展,在理论和应用上都有现实意义。本人在前人研究的基础上,以 南京“数字房产”g i s 网络共享平台为切入点,对这一领域进行了初步的研究。 第10 页 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 一第二章软件体系结构的概念、产生背景 关于软件体系结构的概念。很多人有着不同的理解,由于长期以来人们直忽视了软件 体系结构研究的重要性,所以对于软件体系结构也缺乏明确的定义。美国软件科学家p e r t y 在“f o u n d a t i o n s f o r t h es t u d yo f s o r w a r e & r c h i t e c r l r e ”中首先提出了软件体系结构的概念,他 将软件体系结构定义为一个软件系统的组织结构,是为软件的设计重用和构件重用提供高层 次参考的框架,把着眼于一个特定领域的体系结构称之为面向特定领域的软件体系结构,即 d s s a ( d o m a i n s p e c i f i cs o f t w a r ea r c h i t e c t u r e ) 。本章从软件工程的发展历程出发,探讨了软 件体系结构研究出现的背景、研究现状,尝试给软件体系结构一个明确定义,重点分析面向 特定领域的软件体系结构。 2 1 软件危机的发生与软件工程的出现 在计算机发展的早期阶段,人们对于硬件的关注程度远远超过了软件,软件开发被认为 是一件很简单的事情,不需要设计和分析,更谈不上有什么系统化的方法和管理方式。尽管 有时计划拖延了或成本提高了,通过一些补救也可以顺利完成任务。当通用硬件已经非常普 遍的时候,软件却被看作是一门艺术,几乎没有规范化的开发方法,程序员往往从试验和错 误中积累经验,对每一个软件均需重新再设计开发,因此软件的应用范围非常有限。随着硬 件性能的极大提高,计算机体系结构的不断变化,内存和硬盘容量的快速增加,以及大量输 入输出设备的各种选择,促进了更为成熟和更为复杂的计算机软件系统的出现,也给软件酸 计带来了更大的挑战。面对如此复杂的软件系统,如何进行设计、开发和维护,不仅涉及到 技术的方面,如设计方法、版本控制等,而且也关系到行政管理的方面,如价格评估、人员 组织等,给构建这些复杂系统的人员带来很多的问题m 1 。 随着软件规模的进一步增大和复杂度的进一步提高,终于引发了6 0 年代末期的软件危 机,软件危机主要表现在以下几个方面: 软件的质量差,软件的可靠性难以得到保证。 1 软件的成本难以控制,往往需要一再地增加投资。成为钓鱼工程”【。 2 软件的周期难以控制,往往一拖再拖,成为“胡子工程”i t 6 1 。 3 软件难以维护,在维护上投入的人力物力不断加大。 第11 页 基于d s s a 的南京“数字房产”g l s 网络共享平台研究 软件危机的出现,是由于软件从设计、开发到维护缺乏一套科学、系统的方法,没有 以系统工程的思想去考虑软件的开发进度、开发成本、质量控制、进度控制等一系列的相 关环节。软件危机给计算机产业造成的巨大问题,终于引起了业界和学术界有识之士的关 注,并最终导致软件工程作为计算机领域- - i q 独立研究领域的出现。 1 9 6 7 ,n a t o 研究组首先提出了“软件工程”这一术语并于1 9 6 8 年在德国g a r m i s c h 召开的n a t o 会议上得到了认可,大会一致认为“软件工程”作为- - 1 7 新的计算机科学其 研究的内容为应用已有的工程规则的理论和模式,解决软件质量低下、软件费用上升和完成 期限拖后的阔题,也就是解决软件危机。软件工程就是要研究一套贯穿于从软件分析、设计、 开发到维护的科学的工程方法,并与之相适应,发展一套相对成熟的工具系统,力求用较少 的投资获得高质量的软件。它既要关注技术的组合和资源的消耗情况,又要关注人员的组织 与参与情况是一项系统工程。软件工程的研究成果不是供给最终用户使用的一般工具产品, 而是为软件设计和开发人员提供思想方法和工具。 软件工程的研究热点是随着软件技术的发展而不断变化的。最初的重点自然是着眼于提 高程序员的工作效率。于是开发了形形色色的软件工具( 编辑、编译、跟踪、排错、源程序 分析、反汇编、反编译等等) ,随后把零散的工具归拢起来成为在一定程度上配套的工具箱。 再后来又增加了文件管理、数据库支持、版本管理、软件配置管理等功能,最后通过集成形 成了所谓的软件工程环境。接下来,软件工程所关心的就是“模型”阅题。也就是软件的生 命周期,即如何划分软件开发过程的不同阶段( 需求分析,概要与详细设计,编程,测试, 维护等等) 。目前软件工程的研究重点主要包括以下几点: 1 软件过程模型,软件开发其实就是解决软件问题的过程,软件过程模型就是定义软 件开发过程的包括方法和工具的策略,用来保证软件开发过程的可操作性。当前影响比较大 的软件过程模型主要有增量模型、瀑布模型和软件体系结构模型。 2 软件文档机制,随着软件复杂度的增加,软件开发不仅要涉及到许多非常复杂而微 妙的思想与概念,而且要牵涉到许多人。因此用户与开发人员之间,开发人员与开发人员之 间的通讯与交流便显得日趋重要。为了在软件生产过程中达到协调一致,如何建立一套行之 有效的文档机制对于提高软件的生产效率是菲常重要的。 3 软件形式化描述机制,由于软件文档用自然语言书写,自然语言本身存在二义性和 模糊性,为了避免软件人员之间的相互误解,迫切需要建立一套统一的形式化描述机制。 4 计算机辅助软件工程工具( c a s e ) ,软件工程思想的实施必须依靠方便易用的软件 工具和系统,因此先进的c a s e 工具是当前研究的热点,也涌现了大量的优秀的c a s e 工 第12 页l2 基于d s s a 的南京“数字房产”g i s 舟络共事平台研究 具,如r a f i o n m 公司的r o s e 。 5 软件质量保证体系,软件工程研究的首要任务之一便是提高软件质量,提高软件质 量不能只靠软件开发结束之后的软件测试。而必须从软件开发的整个过程进行控制因此必 须进行软件开发过程的质量控制,i s 0 9 0 01 和c m m 两种比较通用的软件质量保证体系就注 重软件过程控制。 6 软件重用技术,提高软件开发效率的一个重要途径便是重用已有的开发成果,这要 求在设计阶段以合理方式将系统划分为粒度适当的可重用软件部件,所以就出现了专门研究 软件重用的技术,包括过程重用、构件重用,设计重用。近年来出现的c o r b a ,c o m ,j a v a b e a n s 等软件重用标准,取得了极大的成功。 2 2 软件工程面临的问题 尽管经过几十年的发展,软件工程方法取得了巨大的成功,大大缓解了软件危机,但我 们不得不承认,现有的软件开法方法仍不能满足软件复杂度、成熟度的快速增长的需要。 首先是计算机硬件的发展速度远远的超过了软件的发展,软件根本不能充分发挥硬件的 所有潜能。计算机的运算速度和存储容量都在以几何级数增长,而我们的软件开发效率相对 来说仍然停滞不前,软件已经成为制约信息化社会发展的瓶颈。 另一方面,由于软件应用日盏深入社会生活的方方面面,人们对软件的需求的增长速度 大大超过了软件开发效率提高的速度,复杂系统对软件可靠性也提出了更为苛刻了要求,而 我们现有的软件工程技术无法解决,软件危机还没有消除。 软件生产率之所以低下的原因有以下几个方面: 1 软件的用户需求的不确定性。软件的用户往往不清楚自己到底需要什么,用户自身对 软件的功能和使用软件所能带来的好处的认识往往是个渐进的过程,所以软件开发过程经 常是用户需求不断变更的过程,软件设计跟不上用户需求的变化。 2 大多数软件产品无法通过组装已有的标准部件得到。必须从头作起。对于软件产业来 说。在相当长的时期内,每项开发工作都要从头作起,由于缺乏软件部件标准,很难重复 利用已有的软件部件。近年来,随着软件构件技术的发展,出现丁一些软件部件标准,如 c o m 、c o r b a 、j a v ab e a n s 等,软件复用的思想已经开始得到人们的重视。 3 软件生产活动更多地表现为一种艺术,具有很强的抽象性。软件产品的研制和维护更 多地是一个恩考过程,是羊青神性的东西,面不是实物性的。精神活动的不可预见蛀使得软件 第13 页 l3 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 生产过程的管理难度大大增大。 软件工程在几十年的发展过程中取得了巨大的成就,也面临着诸多问题。为了解决软件 工程中存在的问题近年来兴起了所谓的软件工程的第二次浪潮现代软件工程。现代软 件工程强调软件生产过程的管理,即软件过程。强调软件复用技术包括框架的复用和部件 的复用,即领域工程和软件构件技术,强调软件宏观结构和综合性能,即软件体系结构。现 代软件工程的兴起,为软件生产率的提高提供了理论和实践上的指导。 2 3 软件复用技术 软件行业走向工业化的主要障碍是软件生产率和质量的提高问题,软件复用被广泛地 认为是解决这一问题的关键【6 2 1 。软件复用是种由预先构造好的、为复用目的而设计的软 件构件来建立或者组装软件系统的过程。软件复用对于提高软件生产效率、降低软件成 本具有特殊的意义。它的基本思想是非常简单的,即放弃那种原始的、一切从头开始的软件 开发方式,而利用复用,由公共的可复用构件来组装新的系统,这些可复用构件包括对象类、 框架或者软件体系结构等口“。 软件复用有各个级别的复用,可以是代码模块级的复用,可以是代码框架级的复用, 也可以是设计方案级的复用,甚至可以是一组测试数据、一个文档的复用。软件复用可以发 生在软件生产过程中的各个环节,分析和设计的重用对于软件复用程序有重要影响。按照软 件复用层次的高低,软件复用的主要技术有程序库技术、软件构件技术、软件过程模型。 2 3 i 程序库技术 在软件产业发展的初期阶段,软件项目的开发都是从头开始的,没有什么可以重用的东 鳗。渐渐的软件人员发现在程序中存在着共性的部分,可以重复使用,首先便是算法和数据 结构。将通用的算法和数据结构从程序中独立出来,形成函数库,就可以在其它项目中得到 复用,如可以将所有的数据运算函数作为一个函数库,无限次地进行复用,无需每次都重新 编写。后来,出现了大规模的商业用途的软件程序库,如微软的m f c 和s u n 的胙c ,这些 通用程序库的出现大大提高了软件产品的生产效率,促进了可视化编程技术的迅速普及。 程序库这种基于程序代码的重用虽然大大提高了软件开发的效率。但它只能局限于特定 的平台、特定的编程语言和特定的开发环境中,是一种低级别的重用,离软件的工业化生产 尚有一段不小的距离。 第14 页l4 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 2 3 2 软件构件技术 软件构件技术是上个世纪九十年代软件开发领域出现的最重要的技术,软件构件指的是 在软件开发过程中可以重复使用的高可靠性的软件模块,软件工程师在软件开发过程中可以 利用来自不同的可复用软件构件创建满足特定应用需求的新的应用。软件构件是一个独立的 功能体,它可以小到图形界面中的一个按钮,也可以大到一些复杂的部件如工作流程管理组 件。人们早就期望软件生产能像硬件生产那样,通过组装来自不同厂商的产品,就能产生复 杂的、具有高可靠性的产品,软件构件技术的发展为这一梦想的实现带来了希望。 软件构件一般遵守一定的二进制标准,独立于具体的编程语言,构件对外通过接口进行 通信,只要构件的生产者按照一定的标准去实现,构件的实现者就可以在自己的开发环境中 按约定去调用相应的接口。著名的构件标准有微软的c o m d c o m 标准,对象管理集团的 c o r b a 标准以及s u n 的j a v ab e a n s 。通过构件技术,大大提高了开发速度,降低了开发成 本,并且通过更换、修改应用的几个构件,就可以平滑地对应用进行升级,大大增进了软件 的可维护性,降低了软件的维护费用。通过构件构造的系统不再是一个固化的整体,而是一 种即插即用的结构。软件构件技术也促进了软件产业的社会分工,一部分人专门生产通用的 软件构件,另一部分人则利用这些软件构件构造面向特定领域的应用系统,这也符合软件社 会化大生产的要求。 2 3 3 软件过程模型 所有软件开发可以看作是一个问题循环反馈解决的过程,主要包括状态描述、问题定义、 技术开发和成果提交与维护四个阶段。状态描述主要用来表示软件资产当前的状态,即调查 了解,如当前的技术发展、相关系统的情况等;问题定义用来标识问题域空间,即做什么, 主要是定义软件系统的关键需求,如需要处理什么信息、系统的预期功能和性能要求、希望 有什么样的系统行为和人机界面以及系统成功的确认标准:技术开发则是通过应用某些技术 解决问题,即如何做,如怎样定义数据结构、过程细节如何实现,界面如何表示、测试如何 进行等;成果提交和维护指交付文档、程序、数据等以及后期的维护工作,如随着软件环境 的变化进行适应性修改以及由于用户需求的变化所做的增强修改等。 软件过程模型就是软件开发中的关于关键过程区域的框架,是一个涉及工具和方法的综 合性的开发策略。有了软件的开发框架,就能精确定义软件活动的操作对象,保证软件活动 第15 页 基于d s s a 的南京“数字房产”g i s 网络共享平台研究 的可操作性。它就如工厂生产其他产品一样,首先制定合理的工序,根据产品的不同设计出 不同的图纸,然后工人依照工序和图纸在指定的设备上就可以生产出合格的产品了。当前, 影响比较大的软件过程模型有: i 瀑布模型 r o y c e 在1 9 7 0 年首先提出了瀑布模型。瀑布模型是一种线性顺序模型,它将软件开发 过程分为分析、设计、编码、测试和维护五个明确的阶段,每个阶段都有明确的任务,只有 上一个阶段的任务完成,并经过验证,才进行下一个阶段的工作,上一个阶段必须产生明确 的文档说明提交给下一个阶段。瀑布模型的基本假设是项目的目标是明确的,而且是固定不 变的。虽然瀑布模型的应用比较广泛,但它只适合于需求比较明确,开发技术比较成熟工 程管理比较严格的场合。然而,在许多情况下,用户往往难以清楚地给出所有的需求,而且 大型的项目进行到后期往往发现以前规定的项目目标已经没有任何意义,原有的系统设计 也失去了应有的价值。由于瀑布模型是线性顺序的,如果项目开发队伍中某一环节出现了阻 塞,项目成员之间就会处于相互等待的状态。瀑布模型是严格的文档驱动的,但项目成员对 文档的理解往往存在差异,对文档理解的一致性也存在极大的挑战。软件工程师为了解决瀑 布模型存在的不足,又在瀑布模型的基础上添加了其它的一些反馈机制,形成了瀑布模型的 一些变种,如为了解决需求不明的问题而提出的“快速原型法”。 2 增量模型 增量模型是一个融合了瀑布模型的线性顺序特征和原型化方法的迭代特征的基于演化 的过程模型。人们在软件工程实践中认识到,随着技术的飞速进步和用户需求的不断变化, 软件系统的成熟也要经历一定时期的演化,每一个阶段都是在前一个阶段的基础上的进步, 即增量。在增量模型中,产品是作为一系列的增量构件来设计、实现、集成和测试的,每一 个构件都是由多种相互作用的模块所形成的提供特定功能的代码片段构成,新构件的加入不 能破坏原有的构件。增量模型的缺点在于目标不明确,整体性难以把握。 3 软件体系结构模型 在经历了“软件危机”的痛苦、反省和研究发展阶段之后,人们逐渐意识到,随着软件 系统规模和复杂度的日益升级,系统总体结构的设计比算法和数据结构的选择重要得多,在 这种背景下人们认识到软件体系结构的重要性,并认为对软件体系结构的深入研究将成为提 高软件可复用程度的新的途径。 软件体系结构是抽象的系统规格说明,是对软件系统的组成、系统结构及系统如何工作 较为宏观的描述。具体地说,软件体系结构定义了软件的局部和总体计算部件的构成,以及 第16 页16 基于d s s a 的南京“数字房产”g i s 网络共事平台研究 这些部件之间的相互作用关系。部件包括诸如客户、服务器、过滤器、程序包、过程、子程 序等一切软件的组成部分,相互作用包括诸如过程调用、共享变量访问、消息传递等,也包 括十分复杂的语义和构成的关系,诸如客户服务器的访问协议、数据库的访问协议、网络 的传输协议、异步事件的映射等【”1 。 基于软件体系结构的软件开发比基于构件的软件开发更进了一步,它将开发的中心从代 码行转移到了更大粒度的软件体系结构元素以及这些元素间的总体关联结构上,其开发的重 点是构造可重用的软件体系结构元素。体系结构的重用是基于系统整体结构的更高层次的重 用,它强调的是为软件的分析、设计重用和构件重用提供高层框架而不仅仅限于代码的重 用,其最终目的是能够高效地开发相关的多个应用。 真正的通用的软件体系结构的研究还存在很多障碍,因此目前软件体系结构研究主要集 中在面向特定领域的软件体系结构上,通过分析领域内已有的应用系统和用户需求,识别、 捕获和组织该领域内的可重用信息,快速构造应用。本文的研究重点就是面向特定领域的软 件体系结构模型在“数字房产”g i s 网络共享平台软件开发中的应用。 2 4 软件体系结构 软件体系结构的概念早在上世纪8 0 年代就已经提出,但真正得到重视和关注是在上世 纪9 0 年代以后这一时期,关于软件体系结构也出现了很多种定义。 2 4 1 什么是软件体系结构 1 9 9 2 年,d e w a y n e p e h _ y 和a l e x w o l f 在“f o u n d a t i o n s f o r t h es t u d yo fs o f t w a r ea r c h i t e c t u r e ” 中指出:软件体系结构由具有特定形式的体系结构元素或设计元素构成,包括处理元素、数 据元素和连接元素三类,内涵的进一步扩大包括了模块和模块之间的控制关系【”1 。 1 9 9 3 年,d a v i dg a r l a n d 和m a r ys h a w 在“a ni n t r o d u c t i o nt os o f t w a r ea r c h i t e c t u r e ”中 提出,软件体系结构是设计过程的一个层次,它处理那些超越算法和数据结构的设计,研究 整体结构改计和描述方法。体系结构还包括大体组织结构、全局控制结构、通信和同步以及 数据存取的协议、设计元素的功能、物理分布和合成、设计方案的选择、评估和实现等【1 1 。 1 9 9 4 年,b a s s 等人在“s o f t w a r ea r c h i t e c t u r ei np r a t t i c e ”中指出,体系结构设计 包括应用领域功能分割、系统结构和结构的领域分配三个方面“。 1 9 9 5 年,d a v i dg a r l a n d 和m a r ys h a w 将软件体系结构的概念重新定义为:软件体系结 第17 页17 基于d s s a 的南京“数字房产”g i s 两络共享平台研究 构包括系统构件的结构、构件的相互关系、以及控制构件设计演化的原则和指导三个方面 1 2 0 。 尽管软件体系结构并投有一个统一的大家接受的概念,但所有软件体系结构的概念都认 为软件体系结构包括软件构件、软件构件的外在表现、软件构件间的相互联系以及系统构造 的方式、约束、语义、属性和基本原理、系统需求。其中构件是最基本的设计元素,范围可 大可小,可以是一个对象、一个进程、一个商业产品、一个数据库或其他更广泛的概念:构 件的外在表现指构件提供的服务、性能、特性、错误处理、共享资源等;构件间的相互联系 代表了系统的动态行为。 从不同的视点来看,软件体系结构有着不同的定义,但它们的核心是样的,是用来描 述系统的构造的比算法和数据结构更高层次的抽象。包括软件系统的总体组织、全局控制、 通讯协议、同步方式、数据存取,以及给设计元素分配特定功能,设计元素的组织,规模和 性能,在各设计方案间进行选择等。 2 4 2 软件体系结构研究在软件开发过程中的重要性 随着软件系统规模的增大和软件复杂度的提高,尤其是分布式计算的引入,软件设计过 程中功能性因素已经显得不是很重要,而更多地

温馨提示

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

评论

0/150

提交评论