对于计算机软件可维护性的重要性_第1页
对于计算机软件可维护性的重要性_第2页
对于计算机软件可维护性的重要性_第3页
对于计算机软件可维护性的重要性_第4页
对于计算机软件可维护性的重要性_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业论文题目计算机软件的可维护性学院哈尔滨信息工程学院专业班级12271学生姓名朱雪莲指导教师牛艳辉论文摘要:计算机软件是用户和硬件之间的接口界面。用户主要是通过软件与计算机进行交流,软件是计算机系统设计的重要根据。为了方便用户,为了使计算机系统具有较高的总体效用,在计算机系统设计时,要对硬件和软件相结合的全局进行考虑,并还要满足用户的需求。软件保护技术,即怎样防止破解合法软件,软件保护产品所涉及内容极为宽泛,属于综合技术范畴之内。软件生存周期每个阶段的工作都和软件可维护性有密切关系。在软件生存周期的每个阶段都采用科学的管理技术和良好的技术方法,而且在每个阶段结束前都从技术和管理两个方面进行严

2、格的审查,合格之后才开始下一阶段的工作,这就使软件开发工程的全过程以一种有条不紊的方式进行,保证了软件的质量,特别是提高了软件的可维护性。论文关键词:计算机软件可维护性方法研究目录1、计算机软件可维护性概述42、计算机软件可维护性一般方法42.1、 提升软件工具模块化和质量技术42.2、 立明确的软件质量目标和优先级2.3、 选有可维护的程序设计语言53、软件维护的副作用53.1 修改代码的副作用53.2 修改数据的副作用53.3 文档的副作用64、结束语65、参考文献56、致谢.1、计算机软件可维护性概述软件可维护性即维护人员对该软件进行维护的难易程度,具体包括理解、改正、改动和改进该软件的

3、难易程度。决定可维护性的因素:系统的大小、系统的年龄、结构合理性、程序设计语言、数据库技术的应用、先进软件开发技术、具他因素。可维护性可通过7个质量特征来衡量:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。软件维护一般包括三大类,一是纠正性维护(CorrectiveMaintenance)0这类工作主要是纠正软件存在的错误;二是适应性维护(AdaptiveMaintenance)0这类工作主要是为能适应变化的外部环境,对软件应用程序做出修改;三是完善性维护(PerfectiveMaintenance0这类工作是为能提升系统性能或扩大其功能,也对软件进行更改。根据调查表明,软件

4、维护成本已占到整个软件生命周期成本的70%以上,软件的可维护性居于首位。但软件维护的难度越来越大,并已成为目前所面临的最大问题。软件维护的作用:在运行中发现软件错误和设计缺陷,这些错误和缺陷在测试阶段未能发现;改进设计,以便增强软件的功能;是已经运行的软件能够适应特定的软件、硬件、外部设备和通信设备等的工作环境,或者是要求适应已一变动的数据或文件;是投入运行的软件与其他相关的程序有良好的接口,以利于协同工作;使运行软件的应用范围得到必要的扩充等。2、计算机软件可维护性一般方法2.1、 提升软件工具模块化和质量技术模块化是软件开发过程中提高软件质量,降低成本的有效方法之一,也是提高可维护性的有效

5、的技术。它的优点是如果需要改变某个模块的功能,只要改变这个模块,对其他模块影响很小;如果程序需要增加的某些功能,仅需增加完成这些功能的新的模块或模块层;程序的测试与重复测试比较容易,程序错误易于定位和纠正,以提高程序的运行效率。采用结构化程序设计技术,提高现有系统的可维护性。采用备用件的方法,当要修改某一个模块时,用一个新的结构良好的模块替换掉整个模块。它有利于减少新的错误,并提供了一个用结构化模块逐步取代非结构化模块的机会。采用如代码评价程序、重定格式程序、结构化工具等自动软件工具一一把非结构化代码转换成良好结构代码。改进和补充文档的目的是为了提高程序的可理解性,以提高可维护性。2.2、 立

6、明确的软件质量目标和优先级一个可维护的程序应是可理解的、可靠的、可测试的、可修改的、可移植的、效率高的和可使用的。但要实现这所有的目标,需要付出很大的代价,而且也不一定行得通。因为某些质量特性是相互促进的。但另一些质量特性却是相互抵触的。因此,尽管可维护性要求每一种质量特性都要得到满足,但它们的相对重要性应随程序的用途及计算环境的不同而不同。2.3、 选有可维护的程序设计语言程序设计语言的选择,对程序的可维护性影响很大。低级语言,即机器语言和汇编语言,非常难理解和掌握,因此其可维护性也是非常困难的。高级语言比低级语言容易理解,具有很好的可维护性。但同是高级语言,可理解的难易程度也不一样。第四代

7、语言,例如查询语言、图形语言、报表生成器等,有的是过程化的语言,有的是非过程化的语言。有些非过程化的第四代语言,用户不需要指出实现的算法,仅需向编译程序或解释程序提出自己的要求,由编译程序或解释程序自己做出实现用户要求的智能假设,例如自动选择报表格式,选择字符类型和图形显示方式等。总之,从维护角度来看,第四代语言比其他语言更容易维护。3、软件维护的副作用所谓软件维护的副作用是指因修改软件而造成的错误或其它不希望发生的情况。软件维护的副作用主要有三种:即修改代码的副作用、修改数据的副作用以及文档资料的副作用。3.1 修改代码的副作用在使用程序设计语言修改源代码时,都可能引入错误。例如,删除或修改

8、一个子程序、删除或修改一个标号、删除或修改一个标识符、改变程序代码的时序关系、改变占用存储的大小、改变逻辑运算符、修改文件的打开或关闭、改进程序的执行效率,以及把设计上的改变翻译成代码的改变、为边界条件的逻辑测试做出改变时,都容易引入错误。3.2 修改数据的副作用在修改数据结构时,有可能造成软件设计与数据结构不匹配,因而导致软件出错。数据副作用就是修改软件信息结构导致的结果。例如,在重新定义局部或全局常量、重新定义记录或文件格式、增大或减小一个数组或高层数据结构的大小、修改全局或公共数据、重新初始化控制标志或指针、重新排列输入/输出或子程序的参数时,容易导致设计与数据不相容的错误。数据副作用可

9、以通过详细的设计文档加以控制。在此文档中描述了一种交叉引用,把数据元素、记录、文件和其它结构联系起来。3.3 文档的副作用对数据流、软件结构、模块逻辑或任何其它有关特性进行修改时,必须对相关技术文档进行相应修改。否则会导致文档与程序功能不匹配,缺省条件改变,新错误信息不正确等错误。使得软件文档不能反映软件的当前状态。对于用户来说,软件事实上就是文档。如果对可执行软件的修改不反映在文档里,就会产生文档的副作用。例如,对交互输入的顺序或格式进行修改,如果没有正确地记录在文档中,就可能引起重大的问题。过时的文档内容、索引和文本可能造成冲突,引起用户的失败和不满。因此,必须在软件交付之前对整个软件配置

10、进行评审,以减少文档的副作用。4、结束语目前计算机技术在整个国民经济当中具有相当广泛的领域,在人们的日常生活中,计算机技术可以说是无处不在,以软件技术作为其内在灵魂的计算机信息系统,正在对系统高度集成化、结构广泛分布化、信息多元化和功能智能化等一系列新型发展方向越来越重视,并逐步在实践中得以实现。在软件开发各个阶段,软件的可维护性是在这一阶段形成的,因此,必须在整个软件开发的各个方面上,以提高软件的可维护性进行贯穿。学习和掌握软件生命周期的各个阶段,对软件的可维护性会产生一定影响,对软件开发和一般软件维护人员的实际工作具有极大裨益。软件的可维护性常常随着时间的推移而降低,如果没有为软件维护工作

11、制定严格的规定和策略,许多软件都将蜕变到无法维护的地步。软件维护最终落实在修改源程序和文档上。为了正确、有效的修改源程序,通常要先分析和理解源程序,然后修改源程序,最后重新检查和验证源程序。对软件的维护改正了软件中存在的潜在错误,改进性能,但同时也会带来很大的风险,因为软件是一个复杂的逻辑系统,所以哪怕是作微小的改动,都有可能引入新的错误。虽然设计文档化和细致的测试有助于排除错误,但是软件维护仍然会产生副作用。参考文献:1丁剑洁.基于度量的软件维护过程管理的研究D.西北大学,2006.2于士文.敏捷软件开发方法在软件维护中的应用研宛D.湖南大学,2006.3陈小辉,邓杰英,文佳.浅谈软件的可维护性设计J.华南金融电脑,2009.4软件工程与项目管理第9章软件维护.西安电子科技大学出版社这次的毕业设计是在老师的悉心指导下完成的,老师在整个毕业设计期

温馨提示

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

评论

0/150

提交评论