




已阅读5页,还剩63页未读, 继续免费阅读
(交通信息工程及控制专业论文)基于Internet的汽车检测系统远程维护技术研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着我国经济的快速发展与汽车行业的日益兴旺,汽车检测技术也得到了 飞跃发展。针对所有在用车辆和新车出厂性能的检测,目前国内已建设了大量 的汽车检测系统,但对这些汽车检测系统的维护却严重制约了汽车检测系统的 使用和推广。 本文在深入分析当前各种汽车检测系统体系结构的基础上,确定以分布式 网络结构的汽车检测系统为维护对象,提出了基于n t c m e t 的汽车检测系统的远 程维护方法,并对其实现技术进行了深入的研究与开发,建立了基于分布式网 络结构的汽车检测远程维护系统。通过对各种i n t e r n e t 接入方式的分析比较,及 对系统的安全性、网络通信技术、文件传输技术及远程控制技术的研究,确立 了系统的设计原则。以该原则为指导,对系统进行了总体设计,确定了系统的 物理结构、逻辑结构及系统的软件体系结构。 论文应用统一建模语言建立了远程维护系统模型,并分别用系统用例图、 系统类图及系统包图对系统进行了详尽的描述。结合网络通信,文件传输、远 程控制及网络编程等技术,编码实现了文件传输、网络文字交流、硬件测试诊 断、远程屏幕控制功能模块,并给出了部分实现界面。 论文还研究并建立了分布式网络结构的汽车检测仿真系统。并且在仿真系 统中对各功能模块进行了测试,完成了远程维护系统的实验,取得了较好效果。 关键词:汽车、检测线、远程控制与维护、统一建模语言、虚拟局域网 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fe c o n o m ya n df l o u r i s ho ft h ev e h i c l ei n d u s t r yo f o u rc o n n t r y ,v e h i c l e i n s p e c t i o nt e c h n o l o g yh a sg o t t e n f a s td e v e l o p m e n t f o r p e r f o r m a n c eo fi n s p e c t i o no fu s i n ga n dn e wv e h i c l e s ,al a r g ea m o u n to fv e h i c l e i n s p e c t i o ns y s t e m sh a v eb e e ne s t a b l i s h e d , b u tm a i n t e n a n c et ot h e i r sr e s t r i c t st h e i r u s a g ea n dg e n e r a l i z a t i o n o nf o u n d a t i o no fd e e pa n a l y s i si nv a r i o u ss t r u c t u r e so ft h ec u r r e n tv e h i c l e i n s p e c t i o ns y s t e m , t h et h e s i se o n f n - m s t h a tt h em a i n t e n a n c et a r g e ti sv e h i c l e i n s p e c t i o ns y s t e mb a s e do nd i s t r i b u t e dn e t w o r ks t r u c t u r e ,a n db r i n g sf o r w a r dt h e m e t h o do fr e m o t em a i n t e n a n c eb a s e d0 1 1i n t e r a c ta b o u tv e h i c l ei n s p e c t i o ns y s t e m , t h e nd o e sd e e pr e s e a r c h e so nr e a l i z a t i o nt e c h n o l o g yo ft h i sm e t h o da n de s t a b l i s h e s r e m o t em a i n t e n a n c es y s t e m t h i st h e s i sc o n f i r m st h ed e s i g np r i c i p l eo fs y s t e mb y a n a l y s i sa n dc o m p a r eo ft h ed i f f e r e n tm o d e so f i n t e r n e tc o n n e c t i o na n db yr e s e a r c h o ns e c u r i t yo fs y s t e m , t e c h n o l o g yo fn e t w o r kc o m m u n i c a t i o n ,t e c h n o l o g yo ff i l e t r a n s m i s s i o na n dt e c h n o l o g yo f r e m o t ec o n t r 0 1 u n d e rt h ed i r e c t i o no f t h i sp r i n c i p l e , t h i st h e s i sg i v e sc o l l e c t i v i t yd e s i g n , a n dc o n f i r m sp h y s i c a ls t r u c t u r e ,l o g i cs t r u c t u r e a n ds o f t w a r es n l l c t i l r eo f t h es y s t e m t h et h e s i sh a se s t a b l i s h e ds y s t e mm o d e lo ft h er e m o t em a i n t e n a n c eu s i n gt h e u n i f i c a t i o nm o d e ll a n g u a g e ( u m l ) ,a n dh a sc a r r i e do nt h ee x h a u s t i v ed e s c r i p t i o no f t h es y s t e mu s i n gu s e rc a s e ,c l a s sc a s ea n dp a c k e tc a s e t h e nt h et h e s i sh a sd e v e l o p e d a n dr e a l i z e dt h ef i m c t i o n a lm o d e lo ft h ef i l et r a n s m i s s i o n , t e x tc o m m u n i c a t i o n h a r d w a r ed i a g n o s i sa n dr e m o t es c r e e nc o n t r o l ,a n dg i v e ns o m eu s e ri n t e r f a c e s l a s t l y , s i m u l a t i o n e n v i r o n m e n to fv e h i c l e i n s p e c t i o ns y s t e mb a s e do i l d i s t r i b u t e dn e t w o r kw a se s t a b l i s h e d m o r e o v e r , b yt e s to fe v e r ym o d u l ea n d e x p e r i m e n to f r e m o t em a i n t e n a n c es y s t e m , t h es i m u l a t i o nm a k e sg o o de f f e c t k e y w o r d :v e h i c l e ,i n s p e c t i o ns y s t e m ,r e m o t ec o n t r o la n dm a i n t e n a n c e ,u m lv p n 论文独创性声明 本人声明:本人所呈交的学位论文是在导师的指导下,独立进行 研究工作所取得的成果。除论文中已经注明引用的内容外,对论文 的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本论文中不包含任何未加明确注明的其他个人或集体已经公开发表 的成果。 本声明的法律责任由本人承担。 论文作者签名: 一钞辫一 2 一- 二年,月2 r 日 论文知识产权权属声明 本人在导师指导下所完成的论文及相关的职务作品,知识产权 归属学校。学校享有以任何方式发表、复制、公开阅览、借阅以及 申请专利等权利。本人离校后发表或使用学位论文或与该论文直接 相关的学术论文或成果时,署名单位仍然为长安大学。 ( 保密的论文在解密后应遵守此规定) 论文作者签名: c 玉支趴 导师签名:勿孑彬 伽占年j 月玎日 一z 以死,年广月矽日 第一章概述 1 1 汽车检测系统发展及维护现状1 】1 2 】 我国从6 0 年代开始研究汽车检测技术,为满足汽车维修需要,由交通部主持 进行了发动机汽缸漏气量检测仪、点火正时灯等检测仪器的研究、开发。7 0 年代, 我国大力发展了汽车检测技术,汽车不解体检测技术及设备被列为国家科委的开 发应用项目。进入8 0 年代,随着国民经济的发展,科学技术的各个领域都有了较 快的发展,汽车检测及诊断技术也随之得到快速发展,加之我国的汽车制造业和 公路交通运输业发展迅猛,对汽车检测诊断技术和设备的需求也与日俱增。与此 同时,汽车的检测技术和设备也得到了大力发展。目前全国生产汽车综合性能检 测设备的厂家已达6 0 多个,除交通部门外,机械、城建、高等院校等部门或单位 也进入汽车检测设备研制、开发、生产、销售领域迄今为止,我国各地已投资 兴建汽车综合性能检测线近2 0 0 0 个对于这近2 0 0 0 个汽车综合性能检测线,其微 机测控系统主要都采用了分布式网络测控系统,尤其是近年来新建的汽车检测系 统更是如此。 现阶段,软件维护是一项非常耗时、耗精力的工作研究表明软件维护是软 件生命周期中花钱最多耗时最长的一个阶段,一个软件机构可能要将6 0 - 8 0 的精 力用现有软件的维护上。这其中因素之一就是,大多数用户的计算机应用基础比 较差,对软件的熟悉程度不够,造成在软件使用过程中会出现各种各样的问题。 在汽车检测系统的维护过程中,维护人员不远千里之赶赴现场,实际几分钟就解 决闯题的现象常常出现。这种维护方式显然增大了维护成本,并且用户必须停检 待修,给用户造成经济损失。对于汽车出厂质量检测线,数日的停检待修会引发 整个生产线的停产,更是会造成不可弥补的损失 1 2 远程维护的国内外发展及现状p 5 l 远程维护技术的发展首先是从远程协作诊断技术开始的。1 9 8 8 年开放式远程 医疗系统的概念在美国被提出人们普遍认为一个开放式远程医疗系统的功能应 包括:远程诊断( r e m o t ed i a g n o s i s ) 、专家会诊( c o n s u l t a t i o no f s p e c i a l i s t s ) 、信息 服务( i n f o r m a t i o ns o t r i c e ) 、在线检查( o n l i n ee x a m i n a t i o n ) 和远程学习( r a m o t e s t u d y i n g ) 等几个重要部分。远程医疗系统是以计算机和网络通信为基础,实现对 医学资料( 包括数据、文本、影像资料) 的多媒体特性和远距离会诊视频与音频 信息的传输、存储、查询比较以及显示。 设备的故障诊断与人类的疾病诊断是类似的,从技术上说能实现远程医疗诊 断也就能实现远程设备诊断。但由于重视程度不够和投入的科研资金少等原因, 工业领域的这一工作进展相对较慢。直至f j l 9 9 7 年1 月,首届基于i n t e r a c t 的工业远 程诊断研讨会才由斯坦福大学和麻省理工学院联合主办。该会议讨论了远程诊断 系统开放式连接体系、诊断信息规程、传输协议等,并对未来技术发展作了展望。 在1 9 9 7 年l o 月,建立第一个基于i n t e m e t 的远程故降诊断测试平台。 随着远程医疗系统、远程设备诊断的发展,远程维护系统也必然得到了发展。 在国外,远程维护软件应用已经相当普遍。国外一些大型软件开发商或专业 从事网络软件开发的厂商,如s y m e n t e c 、c a ,l a p l i n k 、h p 等都有类似产品,并 已占到软件产业的相当份额,如s y m e n t e c 在美国的市场份额占到了6 5 ,而仅占 市场份额1 2 的l a p l i n k 年销售拷贝达6 5 0 万份。一些大型机生产厂商,如i b m 、 l i p 等都在其各型服务器上直接捆绑有此类软件。 但目前在国内,由于受意识理念的普及程度和计算机网络的部署及应用限 制,远程维护软件还普遍未能被接受,并且由于受关键领域的一些应用限制,如 在电力、金融、电信等领域,国外软件安装使用将会受到极大限制。虽然国产软 件在此领域已有所突破,如国产“易维”等软件在某些行业已占有相当份额,但从 整体上说,系统维护仍是停留在现场维护的落后层面上。 1 3 基于i n t e r n e t 的远程维护是发展的必然趋势 6 1 众所周知,现代化大工业的发展使得机械设备日益大型化、自动化、高速化 和复杂化,保证设备、系统和过程的正常,安全、可靠、高效运行一直是科学技 术界和企业界努力的目标之一。而机电故障呈现出新的特点,诸如多样性、复杂 性和不确定性,加之地域的限制,软、硬件发生故障后维护常常疲于奔命而难以 及时到达现场,实现这一目标一直以来只是个美好的愿望。但随着计算机网络技 术以及虚拟仪器技术的飞速发展,基于i n t e m e t 的远程维护技术应运而生,实现这 一目标不再遥不可及。 i n t e m e t 作为一个全球性的计算机网络,在物理意义上已成为各种信息的载体, 而i n t e r n e t 计算也已成为一种极具优势的计算模式,其开放式体系结构具有难以匹 敌的优点,基于i n t e m e t 的应用已成为许多系统发展的必然趋势。因此,如果新一 代的系统维护和i n t e r n e t 相结合,采用开放式的体系结构,就可能有效解决系统维 护技术所面临的诸多问题,使系统维护技术具有强大的生命力和广阔的应用前景。 1 4 本文研究的内容和意义 1 4 1 研究的内容1 7 1 汽车综合性能分布式网络测试系统是一个复杂的机、电、气或液一体化的大 型测控系统。硬件上有各类板卡、传感器、机电控制装置;在系统的软件上,既 有网络操作系统软件、数据库系统软件、语言工具软件和各类板卡驱动软件,又 有各个工位的测控应用软件、数据库管理软件、通信接口软件、检测统计分析软 件和打印服务软件等。对这类复杂的系统进行及时的维护一直是项目中的重点及 难点,也是用户唯一不太满意之处。本课题的最终目标就是充分利用i n t e m e t 开 放式体系结构及计算机软件技术实现基于i n t e r n e t 的汽车检测系统远程维护,为 用户提供及时、高质量的服务,降低软件维护成本,同时也将用户的损失降到最 低。 为实现本课题的最终目标,本系统必须完成如下工作: ( 1 ) 汽车检测系统的仿真系统的建立 为实现本课题的研究与开发,汽车检测系统的仿真系统的建立必不可少,这 样便于系统开发、测试、最终实现,使系统更加健壮、可靠。 ( 2 ) 网络结构确定 由于本课题是基于i n t e r n e t 的系统,所以网络的硬件配备及组建必不可少, 这样便于测试不同网络环境的系统是否能正常、可靠运行。 ( 3 ) 监视与被监视功能研究与设计 实现针对汽车检测系统,包括操作系统的远程运行监视,得到硬件设备状 态、测试信息等,这样可以实现对汽车检测系统中硬件进行监视、诊断 ( 4 ) 远程控制技术的研究与实现 实现远程控制功能,对远程软件的运行、终止等基本功能进行控制;这样, 当汽车检测系统运行中出现问题时,能够进行单步调试、跟踪查找系统的问题 点。 ( 5 ) 文件传输功能研究与设计 文件传输功能够实现文件分发,可将文件直接通过网络传输到被控制端而 不需要任何其它中间载体。这样便于系统的软件安装、升级、或补丁文件的分 发。 ( 6 ) 简单的网络交流功能研究与实现 实现简单的文字沟通,方便远程维护人员与本地软件操作人员沟通。这样, 远程维护人员能够从本地软件操作人员那里得到汽车检测系统中故障的表象、 特征,便于分析得出引发故障的原因。另外,当进行远程调试、测试时可以从 本地操作人员那里得到硬件动作异常与否,便于协作诊断。 ( 7 ) 系统的安全性研究与设计 远程维护软件的安全问题至关重要,因为安全管理不当时,很容易给别人 留下系统后门( b a c k d o o r ) 。基于安全原因,必须针对各个环节提供多种安全及 权限保护与管理,针对网络通信,应提供网络传输加密机制,以防传输过程中 数据包被截获。 1 4 2 研究的意义 通过远程维护系统,维护人员无须亲临现场,就可以快速地获取系统故障信息, 远程完成系统的维护。这样不仅能够节省大量的交通费用和时间,也大大提高了系 统维护的实时性。同时,系统用户也不必在维护人员进行系统维护时,努力地回忆 系统发生故障时的运行环境及所做操作,减少了系统用户的工作量。 在汽车检测系统中,当用户在软件出现故障时,通常是电话告知维护人员,以 便维护人员进行诊断。但是由于一般用户并不太了解系统,不知道应该收集那些有 效信息,难以给出详细的故障信息。这时,软件人员不得亲临现场,获取软件的故 障信息,包括模拟故障发生时现场环境,以便重现故障,并对之进行诊断、维护。 而大多数现场远在千里之外,这给维护带来了很大的困难,并且费用昂贵。同时, 由于系统停止运行,也给用户带来经济等损失。 - 4 - 基于i n t e m e t 的汽车检测系统远程维护技术研究与实现,将大大提高系统维 护效率、降低维护成本。这样,系统的性价比将会得到大幅提高,系统的市场竞 争力也随之得以加强。同时,将减轻用户负担,更好推动信息化、自动化建设。 另外,在某些对安全性和保密性要求较高的领域如电信、银行、国防等部门,如 果采用国外类似的系统维护产品就可能无法达到安全和保密的要求,因此在这些 领域应尽量安装国内开发出的系统维护产品。从这点来讲,本课题的实现也具有 一定的意义。 第二章系统维护基本概念及相关技术 2 1 系统硬件维护 本文的硬件维护主要是指的远程硬件诊断。当通过远程诊断确定了系统故障 是硬件故障,并且排除由于配置、操作等原因,确定是硬件损坏的情况下,更换 硬件之前,本文研究的系统就无法对系统进行维护。因此本文硬件维护不做太多 介绍。 2 2 系统软件维护 2 2 1 软件维护定义f 1 3 1 软件维护是指软件产品在交付给用户投入使用后,所有与软件修改有关的活动 如为了适应新的需求或性能,为了纠正错误或使软件适应新的环境进行的维护活 动。简单的说就是在软件运行维护阶段对软件产品所进行的修改。 软件维护是一项复杂的活动,软件维护又体现在维护能力。维护能力就是指软 件系统组件具有可维护性,通过纠正错误提高软件系统组件性能和其它属性,或 者是软件系统,组件具有适应性,能适应新的、变化了的环境。 2 2 2 软件维护产生的原因及分类i d , 1 4 i 2 2 2 1 软件维护产生的原因 要求进行维护的原因多种多样,归结起来有三种类型: ( 1 ) 改正在特定的使用条件下暴露出来的一些潜在程序错误或设计缺陷; ( 2 ) 因在软件使用过程中数据环境发生变化( 例如一个事务处理代码发生改 变) 或处理环境发生变化( 例如安装了新的硬件或操作系统) ,需要修改软件以适 应这种变化; ( 3 ) 用户和数据处理人员在使用时常提出改进现有功能,增加新的功能,以及 改善总体性能的要求,为满足这些要求,就需要修改软件把这些要求纳入到软件之 中。 2 2 2 2 软件维护的分类 由上述原因引起的软件维护活动可以归为以下几类。 ( 1 ) 改正性维护( c o r r e c n v em a i n t e n a n c e ) 在软件交付使用后,由于开发时澳0 试的不彻底、不完全,必然会有一部 分隐藏的错误被带到运行阶段来。这些隐藏下来的错误在某些特定的使用环境下就 会暴露。为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用, 应当进行的诊断和改正错误的过程,就叫做改正性维护。例如,改正性维护可以是 改正原来程序中未使开关( o f f ,o n ) 复原的错误:解决开发时未能测试各种可能情 况带来的问题;解决原来程序中遗漏处理文件中最后一个记录的问题等。 ( 2 ) 适应性维护( a d a p t i v em a i n t e n a n c e ) 随着计算机的飞速发展,外部环境( 新的硬、软件配置) 或数据环境( 数据库、 数据格式、数据输入偷出方式、数据存储介质) 可能发生变化,为了使软件适应 这种变化,而去修改软件的过程就叫做适应性维护。例如,适应性维护可以是为现 有的某个应用问题实现一个数据库:对某个指定的事务编码进行修改,增加字符个 数;调整两个程序,使它们可以使用相同的记录结构:修改程序,使其适用于另外一 种终端。 ( 3 ) 完善性维护( p e r f e c f i v em a i n t e n a n c e ) 在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足 这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能,改进加工效 率、提高软件的可维护性这种情况下进行的维护活动叫做完善性维护例如,完 善性维护可能是修改一个计算工资的程序,使其增加新的扣除项目;缩短系统的应 答时间,使其达到特定的要求;把现有程序的终端对话方式加以改造,使其具有方 便用户使用的界面;改进图形输出;增加联机求助( h e l p ) 功能;为软件的运行增加 监控设施。 在维护阶段的最初一、二年,改正性维护的工作量较大。随着错误发现率急剧 降低,并趋于稳定,就进入了正常使用期。然而,由于改造的要求,适应性维护和 完善性维护的工作量逐步增加,在这种维护过程中又会引入新的错误,从而加重了 维护的工作量。 ( 4 ) 预防性维护( p r e v e n t i v em a i n t e n a n c e ) 除了以上三类维护之外,还有一类维护活动,叫做预防性维护。这是为了提高 软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。通常,预防性 维护定义为把今天的方法学用于昨天的系统以满足明天的需要”。也就是说,采用 先进的软件工程方法对需要维护的软件或软件中的某一部分( 重新) 进行设计、编 制和测试。 图2 2 维护在在软件生存期所占比例 四种维护分别占有比重如图2 1 所示。由图例可以看出,预防性维护只占很小 的比例,而完善性维护占了几乎一半的工作量。并且从图2 2 可以看出,软件维护 活动所花费的工作量占整个软件生命周期总工作量的7 0 以上,这是由于在漫长的 软件运行过程中需要不断对软件进行修改,改正新发现的错误、适应新的环境和用 户新的要求,这些修改需要花费很多精力和时间,而且有时修改不正确,还引入新 的错误。同进,软件维护技术不像开发技术那样成熟、规范化,消耗工作量就比较 多。 2 2 3 软件维护工作量1 1 ”q 2 2 3 ,l 影响软件维护工作量的因素 在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成 - 8 - 本。因此,应当考虑有哪些因素影响软件维护的工作量,相应应该采取什么维护策 略,才能有效地维护软件并控制维护的成本。在软件维护中,影响维护工作量的程 序特性有以下6 种。 ( 1 ) 系统大小系统越大,理解掌握起来越困难。系统越大,所执行功能越复 杂。因而需要更多的维护工作量。系统大小可用源程序语句数,程序数,输入输出 文件数,数据库所占字节数及预定义的用户报表数来度量。 ( 2 ) 程序设计语言 使用强功能的程序设计语言可以控制程序的规模。语言的功能越强生成程序所 需的指令数就越少:语言的功能越弱,实现同样功能所需语句就越多,程序就越大。 有许多软件是用较老的程序设计语言书写的,程序逻辑复杂而混乱,且没有做到模 块化和结构化,直接影响到程序的可读性。 ( 3 ) 系统年龄 老系统比新系统需要更多的维护工作量。老系统随着不断的修改,结构越来越 乱;由于维护人员经常更换,程序又变得越来越难于理解。而且许多老系统在当初 并未按照软件工程远程软件维护支持系统的设计与实现的要求进行开发,因而没有 文档,或文档太少,或在长期的维护过程中文档在许多地方与程序实现变得不一致, 这样在维护时就会遇到很大困难。 ( 4 ) 数据库技术的应用 使用数据库,可以简单而有效地管理和存储用户程序中的数据,还可以减少生 成用户报表应用软件的维护工作量。数据库工具可以很方便地修改和扩充报表。 ( 5 ) 先进的软件开发技术 在软件开发时,若使用能使软件结构比较稳定的分析与设计技术,及程序设计 技术,如面向对象技术、复用技术等,可减少大量的工作量。 ( 6 ) 其他 包括应用的类型、数学模型、任务的难度、开关与标记、7 嵌套深度、索引或 下标数等,对维护工作量都有影响。此外,许多软件在开发时并未考虑将来的修改, 这就为软件的维护带来许多问题 2 2 3 2 软件维护成本及工作量模型 有形的软件维护成本是花费了多少钱,而其他非直接的维护成本有更大的影 响。例如无形的成本可以是: ( 1 ) 一些看起来是合理的修复或修改请求不能及时安排,使得客户不满意; ( 2 ) 变更的结果把一些潜在的错误引入正在维护的软件,使得软件整体质量 下降: ( 3 ) 当必须把软件人员抽调到维护工作中去时,就使得软件开发工作受到干 扰。软件维护的代价是在生产率( 用l o c a , q 或功能点从月度量) 方面的惊人下降, 这种情况在做老程序的维护对就会遇到。 维护工作量可以分成生产性活动( 如分析和评价、设计修改和实现) 和“轮转” 活动( 如力图理解代码在做什么、试图判明数据结构、接口特性、性能界限等) 。 下面的公式给出了一个维护工作量的模型: m = p + k x e 4 - a 其中,腮维护中消耗的总工作量,p 是上面描述的生产性工作量,t 是一个经 验常数,c 是因缺乏好的设计和文档而导致复杂性的度量,绳对软件熟悉程度的度 量。 这个模型指明,如果使用了不好的软件开发方法( 未按软件工程要求做) ,原来 参加开发的人员或小组不能参加维护,则工作量( 及成本) 将按指数级增加。 从公式上,可以看出降低软件维护工作量的方法有: ( 1 ) 降低软件的复杂程度。例如采用可重用的软件技术。 ( 2 ) 提高软件维护工程师对软件的熟悉程度。尽可能地向软件维护者提供软 件的故障信息、安装环境等。 2 2 4 软件维护的策略 根据影响软件维护工作量的各种因素,针对三种典型的维护,有如下针对性的 策略: 2 2 4 1 改正性维护 通常要生成1 0 0 可靠的软件并不一定合算,成本太高。但通过使用新技术, 可大大提高可靠性,并减少进行改正性维护的需要。这些技术包括:数据库管理系 统、软件开发环境、程序自动生成系统、较高级( 第四代) 的语言,应用以上4 种方 法可产生更加可靠的代码。此外,可以从以下几个方面得行改善。 ( 1 ) 利用应用软件包,可开发出比由用户完全自己开发的系统可靠性更高的 软件。 ( 2 ) 结构化技术,用它开发的软件易于理解和测试。 ( 3 ) 防错性程序设计。把自检能力引入程序,通过非正常状态的检查,提供 审查跟踪。 ( 4 ) 通过周期性维护审查,在形成维护问题之前就可确定质量缺陷。 2 2 4 2 适应性维护 这一类的维护不可避免,但可以控制。 ( 1 ) 在配置管理时,把硬件、操作系统和其他相关环境因素的可能变化考虑 在内,可以减少某些适应性维护的工作量。 ( 2 ) 把与硬件、操作系统,以及其他外围设备有关的程序归到特定的程序模 块中可把因环境变化而必须修改的程序局部于某些程序模块之中 ( 3 ) 使用内部程序列表、外部文件,以及处理的例行程序包,可为维护时修 改程序提供方便。 2 2 4 3 完善性维护 利用前两类维护中列举的方法,也可以减少这一类维护。特别是数据库管理系 统、程序生成器、应用软件包,可减少系统或程序员的维护工作量。此外,建立 软件系统的原型,在实际系统开发前提供给用户。用户通过研究原型,进一步完善 他们的功能要求,就可以减少以后完善性维护的需要。 2 2 5 软件维护的技术1 q 在l g l 2 3 中,列出了和软件维护相关的一系列的技术,以下主要概要介绍各技术 的基本概念。 ( 1 ) 重新设计工程( r e - e n g i n e e r i n g ) 使用重新构造设计的技术再次产生新的源代码的过程叫做重新设计工程重新 设计工程不仅可以恢复系统的详细设计,并且可以从己有的系统中借鉴可用的组 件 ( 2 ) 逆向工程( r e v e r s ee n g i n e e r i n g ) 当前的维护活动都是关注在代码维护的级别上。但是如果相关的文档不是很完 整、不准确或者己过时,那么对于代码的理解是比较困难的。为了解决这些问题, 逆向工程利用程序转换过程从现有的程序代码中获取程序概要说明。该概要 说明其实是一个简单的模型,主要关注应用程序中的重要属性。 ( 3 ) 程序转换皿船仇l c c l l 】面酚 方法工具 技术 重新设计工程 r e v e r s e f o r w a r d l - l o o d n i c e ( r e - e n g i n e e r i n g ) e n g i n e e r i n g , s e o r e i r m 逆向工程r e v e r s e n i c e r e f o r l 髓3 ( r e v e r s ee n g i n e e r i n d c o n t r o lf l o wd r i v e n r es t r u c t u r i n g 程序转换 e f l c i e n c yd r x v e n w s l , m a i n t a i n e r sa s s i s t a n t 像e s t r u c t u r i n g ) r es t r u e t u r l r g , a d a p t a t l o nd r i v e n r es t r u c t u r l n g b o t t o mu p t o pd o w n a p p r o a c h _ 应用程序理解s y n e h r o n i z e dr e f l n e l e n t ,o c g c i e m , ( a p p h c a t i o n v i s u a l x z a t i o v , o u n d e r s t m l d l n g )s t a t i ca n a l y s is a u s t a t i cp r o g r a ms l i c i n g 脚m m i cp r o g r a ms 1 l c t 1 9 影响分斩 i s ( i m p a c ta n a l y s i s ) s e l e c t i v er e g r e s s a o nt e s t i n a 回归铡试 r e t e s ta l ls t r a t e g i e s s l e u t h ( r e g r e s s i o nt e s t i n 亩 d o m a i nb a s e dr e g r e s s i o n t e s t l n g d e s t g nf o rr e s u r e ( d f r ) 组件技术 1 ) o m a l nb n g l n e e r i n 量 w e b r e u s e r o b j e c t r e u s e r ( c o m p o n e n tb a s e dm l i t e b l a c kb o xl l e u s e 妇i i 。b a s l l i 。帅 s o f t w a r ee n g i n e e r i n g )r e u s el i b r a r y , r e u s ep r o c e s sm o d e l c h e c k o u t c h s e k - t nm o d e l 。 r c s r c e s c c s d s e e n s e 软件配置管理c o m p o s i t i o nm o d e l , c c c ,n s e ,a d c n s e d s e e ( 涮)l o wt r a n s a c t i o ni i o d e l , c h a n g es e tm o d e l m p h f yc o n t r o ls m u r t s y s t e m 基于w 啊的维护 ( 冒哪b a s e d m ai n t e a a u c e ) i 憎r c , c i e a r c a s e b a c s ,r e d o ,p e r f o r i , 维护过程模型 d u r h a mh i n t e n a n c em o d e l t e r r o h i n t e n a n c ep r o c e s sb p s o i l - 崛sm o d e l p r o c e s sw e a v e r m o d e l )h i n t e n a n o ev i t h r e u s e ( m 晾) 维护标准 i e 既s o f t w a r em a i n t e n a n c e ( h a i n t e n a n e es t a n d u r 西s t d 图2 3 软件维护技术列表 当软件系统不断的升级,软件变得越来越复杂,以至于理解和维护也变得日益困难, 采用程序转换的方法,使软件从一种表现形式转换为另外一种形式并且不改变其功 能和语义程序转换和重新设计工程有着一定的联系。然而总的说来重新设计工程 是指程序在形式上的转换,而程序转换是在代码级的程序转换。 ( 4 ) 应用程序理解( a p p l i c a t i o nu n d e r s t a n d i n g ) 在软件维护过程中应用程序的理解是最耗时的一个阶段,因为这个过程包括文档阅 读、源程序略读和理解所作的变化等。逆向工程和应用程序理解最为接近,山于逆 向工程是通过提供系统的说明模型来帮助程序的理解,而应用程序理解采用自底向 上、自顶向下、动态分割、静态分割等技术来帮助理解应用程序。 ( 5 ) 影响分析( i m p a c ta n a l y s i s ) 影响分析的目标就是分析当采用一个新措施时对软件维护的影响程度,估计新 措施所带来的成本和风险。 ( 6 ) 回归测试( r e g r e s s i o nt e s t i n g ) 回归测试是指当某项功能进行修改后,其他未修改组件模块的功能不会受到影 响,并且不会引入新的错误,产生未预料的负面效果。回归测试主要集中于现有系 统的可靠性和耗费影响分析维护上。 ( 7 ) 组件技术( c o m p o n e n t b a s e ds o l i w a r ee n g i n e e r i n g ) 软件的重用曾经被认为是在解决某些问题的时候采用已有的软件。现在的软件 重用被认为是减少软件成本的最好的技术当采用重用组件时,需要建立或购买重 用库,然后进行分类、注册和检索他们。重用的过程必须集成到软件开发生命周期 和维护模型中来,做到和其他组件无缝结合,共同满足系统功能。 ( 8 ) 软件配置管理( s c h d 软件配置管理的目标是管理软件开发和维护的过程,使得可以控制软件变化, 加强软件管理的可视性和对软件的跟踪,确保软件开发的质量和完整,包括的功能 有: 配置定义,配置控制、审查和记录状态。 s c m 是软件开发和维护的基础。一个s c m 是一个系统的缩略图包括采用的技 术、用户需求、角色、数据库、过程模型、用户培训和管理决策等【s 1 ( 9 ) 基于w w w 的维护固嗍b a s e dm a i n t e n a n c e ) 基于w w w 的软件维护就是通过i n t c r n e t 获得大量有用的信息用以软件的维护。 这种方式正在得到应用,这种趋势使得软件维护者可以在w w w 基础上实现软件的 维护和开发。 ( 1 0 ) 维护过程模型( m a i n t e n a n c ep r o c e s sm o d e l ) 为了可以更好地控制软件维护的实施,有必要把软件维护的过程分为独立的几 个阶段。目前己有许多研究机构提出了不同的软件维护模型,从早期的只给出总体 向导的模型到最近更加详细定义的每个维护过程模型如e p s o m 模型、d u r h a m m a m t e n a n c e 模型、r e d o 模型和a m e s 模型【1 9 】 ( 11 ) 维护标准( m a m t c n a n c es t a n d a r d ) 在1 9 9 3 年i e e e 第一次发布了关于软件维护的i e e e 标准0 e e e l 2 1 9 ) ,这为软件维 护者提供了软件维护的一个通用框架和过程。1 9 9 5 年i s o i e c 也发布了i s 0 ,c 1 2 2 0 7 关于软件维护的过程和标准。 2 2 6 软件维护的现状及存在的问题 软件维护的现状是:用户提交维护请求,描述故障现象,然后由维护人员进行 分析,完成维护修改后再交付给用户使用。在上述软件维护的过程中,主要存在的 问题是: ( 1 ) 用户不能很好的提出维护请求 因为用户可能缺乏足够的计算机知识,所以会提出一些错误的维护请求,例如, 用户发现软件无法正确运行,以为软件有问题,可实际上是系统配置的问题。 ( 2 ) 用户不能提供完整的进行维护所必需的信息 由于进行维护所需的信息多种多样,对于改正性维护来说,需要的信息有出现 故障时的操作系统信息、该软件自身产生的错误信息等等。用户很难提供这些信息, 维护人员通常不得不先到用户处获取它们,然后再进行诊断维护,这大大地降低了 维护的效率,增加了维护的费用。 利用远程软件维护可以解决上述问题,它可以使维护人员在远程获取进行维护 所必需的所有信息。 2 3 远程系统维护 远程系统维护系统的基本思想是:为了让系统维护人员能够远程对系统进行 诊断与维护,关键在于获取系统故障信息,获取系统故障信息的任务可以由远程维 护系统来完成 2 0 l 2 3 1 远程系统维护的产生2 1 ( 1 ) 软件维护工程师的需要 运行中的软件出现系统或自身潜在问题时,轻则导致影响生产,重则会出现重 大责任事故,因此维护越及时,越会将后果降低到最低程度。通常情况下,往往问 题由一两个人很难解决,需要多人协同处理。但由于种种原因,如果此时所有的人 不能同时赶到现场,则可借助远程软件维护系统的确诊功能,将现场情况利用远程 维护软件将监视情况实时传递到中心服务器,或身处异地的软件维护工程师,通过 网络的交流功能立即交流彼此之间对问题起因的分析及看法,进行问题确诊,随后 通过远程控制功能对软件进行修改。 ( 2 ) 系统升级与软件分发的需要 通常软件在运行一定时间后需要进行升级,这是由于多种原因引起的,如软件 自身存在的问题、操作系统升级、生产技术革新和设备改造等都需要对软件进行升 级,。传统软件的升级与分发方式通常是将升级软件或补丁存放在磁盘或光盘上, 如果要进行大规模分发时。还要进行大量复制,最后以实物投递的方式进行分发。 这既消耗时间,又消耗资金,而且有时磁盘或光盘只使用一次即告作废,甚至有时 还需要维护人员直接携带光盘或磁盘进行本地安装。远程维护软件的升级与分发的 优势就在于可以将升级软件用文件传输功能通过网络传至异地待升级的计算机上, 然后由专业维护人员在本地直接对异地待升级的计算机进行升级并可立即进行调 试,这一切节省了人力、物力和财力。 ( 3 ) 危险场合中进行远程维护和监控的需要 在某些危险场合如高压、有毒等恶劣的工作环境,维护人员不可能也不允许亲 自到现场获取软件的故障信息,在这种情况下远程软件维护起着不可估量的作用, 它既实现了实时的远程监控和远程维护功能,又降低了维护的危险性。 ( 4 ) 系统维护信息交流的需要 在系统出现故障时,用户通常是向系统维护人员提出请求,让维护人员进行诊 断但一般用户不能很好地提出维护需求,难以描述故障的详细信息由于维护信 息不完全,使得软件维护不能很好的进行,质量得不到保证。因此随着计算机网络 的快速发展,通过网络交换信息就成为可能,进行远程维护也就成为可能。 2 3 2 远程维护系统优势1 3 调 远程维护技术己在许多行业得到了应用,它的优点主要表现在口1 1 : ( 1 ) 技术先进 远程维护技术是网络技术、计算机技术、通信技术和自动化技术等技术的综合。 基于网络的远程维护系统通过被控端系统和应用程序提供的接口,在获得访问授权 的情况下,理论上都可通过远程操作被控端来实现维护功能。 ( 2 ) 信息集中 可以实现对若干系统或系统局部进行分散集中式控制、维护与管理,使维护与 管理决策科学化,从而获得较高的经济效益和维护效率。 ( 3 )
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年计算机辅助类工具软件项目规划申请报告
- 2025安徽蚌埠市龙子湖区产业发展有限公司招聘22人考前自测高频考点模拟试题及完整答案详解
- 2025年枣庄市精神卫生中心公开招聘备案制工作人员(19人)模拟试卷及答案详解(夺冠系列)
- 2025广西玉林北流市山围镇卫生院公开招聘5人考前自测高频考点模拟试题及完整答案详解
- 教育培训成果保障责任书6篇
- 机构环保行为公开承诺函(3篇)
- 企业信息管理系统标准化设置方案
- 线上服务品质保障承诺函7篇
- 2025广西百色靖西市人民医院招聘导诊分诊员1人模拟试卷及答案详解(名师系列)
- 江西省吉安市2024-2025学年高三上学期期末教学质量检测地理试题(解析版)
- 安全强安考试题及答案
- 基于16PF的保险业销售人员选拔与绩效预测:理论、实践与展望
- 2026秋季国家管网集团东北公司高校毕业生招聘笔试备考试题及答案解析
- 2025年10.13日少先队建队日主题班会课件薪火相传强国有我
- 2025小学关于教育领域不正之风和腐败问题专项整治工作方案
- 2025年工会社会工作者招聘笔试模拟试题库及答案
- 2025年甘肃省武威市凉州区发放镇招聘专业化管理大学生村文书备考考试题库附答案解析
- 2024年成人高等考试《政治》(专升本)试题真题及答案
- 《犟龟》课件 部编语文三年级上册
- 教科版科学五年级上册2.1地球的表面教学课件
- 农作物土地租赁合同5篇
评论
0/150
提交评论