计算机软件的可维护性的实践探索
2017-10-26胡莹石
胡莹石
摘要:在我国计算机技术高速发展的今天,各种应用软件不断被研发出来,并在社会各个领域得到了应用,为了能够更好地为社会各界服务,软件工程也在不断完善,这样就使得软件开发日渐复杂,创建出一条科学的实践方法,保障软件系统的可靠性、安全性以及可维护性显得更加迫切。该文就已计算机软件的可维护性进行几个方面的探索研究。
关键词:计算机软件;可维护性;实践探索
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)22-0064-02
计算机软件是用户与计算机之间的衔接桥梁,通过各种软件,用户才能够与计算机进行“沟通”。因此,软件是非常重要的,也是计算机系统设计的根据。为了能够为用户提供更多的便利,使计算机整体运行效率更高,计算机系统设计时必须要综合考量软件与硬件的情况,而软件保护技术,额可以防止破解合法软件的行为,能够有效保护软件中的数据。在软件生命周期中,每个阶段都需要科学的管理与技术支持,并且还需要进行全面而严格的审查,落实好每一个环节的设计与开发工作,对于计算机软件可维护性实践探索有着非常大的意义。
1可维护性的内涵
软件的可维护性主要是当软件出现问题和特殊情况下,软件的维修人员可以及时地进行解决,全方面地对软件系统进行修改和完善,从而可以使系统自身不断满足各方面的需求。而在软件工程的行业中,最重要的就是转件的可维护性,他既是软件工程未来发展的一个趋势,也在发展过程中有着非常重要的作用。除此之外,对于软件质量的好坏,主要可以依据以下几个方面来进行评定软件能否正常的运行嗯哼维护,同时这些问题也是用户最关注的。在对软件实际发展的过程中,软件维护也是非常重要的。因为给软件维护性造成影响的原因也有很多,并且每一种因素都会使软件的可维护性造成比较大的影响。
软件维护阶段的关键任务是,通过各种必要的维护活动使系统持久地满足用户的需要。通常有几类维护活动:
1)纠错性维护:在开发过程中要生成100%可靠无误的软件通常是不太现实的,为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程就叫做改正性维护。
2)适应性维护:在使用过程中,外部环境(如新的硬、软件配置)、数据环境(如数据库、数据格式、数据输入/输出力一式、数据存储介质)可能发生变化。为使软件适应这种变化,而去修改软件的过程就叫做适应性维护。
3)完善性维护或增强:在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护叫做完善性维护。
4)预防性维护或再工程:即修改软件,为将来的维护活动预先做准备。
除此四类维护活动外,还有一些其他类型的维护活动,如:支援性维护:通过提供最新用户文档或联机用户文档,进行适当的用户培训或设立专门的维护人员等力一式来减少此类维护活动。
结算机可维护性是一项长期而艰巨的任务,在以上几个方面的维护工作中,的哥层面与第二层面的维护性所占的份额最大,基本会占据总维护工作的8成左右,也就说,软件的维护费用是非常大的,开发费用占总费用的55%-70%左右。随着计算机技术的发展,各项软件维护的难度也更大。
2软件可维护性的意义
对于软件可维护性主要分为以下几个方面:
1)易分析性:在软件内部出现的问题和故障是否可以非常轻松的检查出来。
2)易改动性:在软件内发现问题和故障的情况下,能够进行整体或者部分的改动。
3)稳定性:在软件内发现问题和故障的情况下,在接收修理的同时是否可以承担相应的风险。
4)易测试性:在发现软件内出现和故障的时候,在修理的同时是否可以对之前的问题进行检测。
以上几个方面的属性都是程序软件自身想要实现可维护性的一个重要环节,并且开发人员和维护人员也需要对程序软件的自身有一个正确的认识和了解,只有这样才可以真正的满足维护过程中的各方面需求。但是,如果软件自身非常容易进行修改,就会消耗大量的人力资源和经济成本,而且可维护性的自身意义就需要体现出产品自身的品质。另外,软件在进行实际开发的阶段,就需要重点对可维护性的意义进行考虑,因为可维护性的意义和软件自身发挥出的功能有着密不可分的联系。
3影响软件设计中可维护性的因素
在对软件进行开发和设计的过程中,最重要的就是软件的可维护性。所以,就针对了可维护性的影响因素进行了全方面地分析和研究。
3.1可理解性
对于外来者来说,可理解性这个因素是需要在传统软件的基础上进行完善和创新,而可理解性也都在软件结构和软件内部处理的复杂程度体现出来。在软件自身的结构中,软件的模块是否合理和软件文档是否明确以及软件设计编程语言的选择是否科學等等,都和软件的可理解性有着密不可分的联系,最终也会对软件的可维护性造成很大的影响。
3.2可测试性
对于软件理解的难易程度和软件诊断以及测试难易的程度有着密不可分的联系。另外,软件诊断的测试和软件的文档,对于软件设计的结构是否合理也有着非常重要的影响,因为软件文档和软件设计结构的合理,软件诊断测试的难度也就会相应地降低。除此之外,在选择测试和诊断工具以及调式方式的时候,就应该针对软件使用者的实际情况,来进行比较合理的选择,还要严格对软件测试的过程进行处理,对实际测试的过程进行科学化的设计,将最基础的工作做好。
3.3可重用性
可重用性主要指的是同一件事情,对没有经过修改的失误可以在各种环境中进行重复的试用。而对具备可重用特性的软件开发和设计新软件的过程中,就需要通过以下几个方面的建议进行提高。endprint
1)一般情况下来说,对于软件的开发和设计,不是在设计的前期就可以做得非常完美,而是需要经过不断的试用和不断的修改以及完善,才能够在后期的时候更加完美。实际在地软件进行设计和开发的过程中,应该全方面地对软件的结构进行分析,当软件进入试用阶段的时候,也会经常出现一些问题和特殊的问题,所以,就需要在这个时候对相关的问题进行分析和解决。除此之外,在重用时,就需要锁着问题的出现及时地进行解决,在设计过程中及时将问题进行解决,就会降低后期出现问题的几率。所以,只有合理对软件的可重新进行利用,就可以有效降低软件后期维护的时间。
2)具备可重用性的软件自身就具有比较好的修改性能,就可以广泛运用这方面的软件,这样不仅可以提高软件的适用性和完善性,还可以给软件的维护带来方便。
4计算机软件可维护性方法
基于以上对计算机软件可维护性内涵、意义、影响因素的分析之后,下面对其维护方法进行具体研究和分析:
4.1提升软件工具模块化和质量技术
降低计算机开发成本,是计算软件可维护性的关键,目前具体可以进行如下操作:
首先,如果需要改变模块功能,那么一定要在保障不会影响其他模块的前提下进行。
其次,如果需要添加一項功能,那么就必须要单独进行。
再次,在可维护性方面,最容易的就是程序测试与重复测量,通过这些测试,可以发现寻列错误,从而达到提升整体程序运行效率的目的。另外,通过结构化程序设计,能够有效提升可维护性,这种设计需要对更换模块特征掌握和了解,需要考虑内部运作的状态。这样既可以降低问题的发生,还可以提供一个全新的结构化模块,最终采用自动重建结构和重新格式化的工具。
4.2创建精密的软件品质目标和优先级
提高程序自身的维护性是可以理解和修改测试的。为了可以实现这些目标,就需要付出比较大的成本。一些程度本身是存在互补性的,具体来说,包括可理解性、可测实性以及可修改性等等。但同时,一些程序质量也会互相矛盾。比如;效率、可移植性、效率以及可变性等等。因此,不同品质特性不同,其维护性的需求也不同,最关键的是必须要顺应程序的使用作用与使用环境,进行维护。
4.3选有可维护的程序设计语言
从程序的可维护性方面来看,选择程序设计语言造成的硬性很大,这是因为低层次的语言,是机械语言和汇编语言,就很对其进行理解和掌握,后期的维护就会更加困难。无论是什么语言,利用程序编制出来之后,都是很难进行理解和修改的。
4.4建立明确的质量保证
1)在检查点进行检查。为了保障软件质量,在进行软件开发的初期,不需要将质量控制放在第一位,在每个开发阶段的重点,进行检查点检查,查看其是否存在质量问题,能否满足质量要求,在进行不同检查检测的时候,其侧重点是不同的。
2)验收检查。验收检查具有一定的特殊性,它是交付使用之前最后一次检查,也是保障软件可维护性的最后一道关卡,因此必须要严格按照验收标准和要求进行,要完全符合维护条件。
3)周期性的维护检查。在软件运行的过程中,会出现一些错误,为了能够更好地进行纠错,并适应计算环境的变化,满足用户的各项需求,必须要进行修改。因此就会导致软件质量下降,定期进行硬件检查,每月一次或者二月一次是非常必要的。周期性维护审查实际上是开发阶段检查点复查的继续,并且采用的检查力一法、检查内容都是相同的。为了便于用户进行运行管理,适时提供维护工具以及有关信息是很重要的。维护审查的结果可以同以前的维护检查的结果、以前的验收检查的结果和检查点检查的结果相比较,任何一种改变都表明在软件质量上或其他类型的问题上可能起了变化。对于改变的原因应当进行分析,例如,如果使用的是复杂性度量标准,则应当随机地选择少量模块,再次测量其复杂性。
5加强计算机软件可维护性方法发展与研究
对软件进行实际检查的过程中,经常会出现多个方面的情况。例如:一员工的流失率逐渐的增长等等;二程序和文档不符合,软件自身设计的结构不合理,很容易在使用过程中出现问题。但是,这种类型的软件非常容易简单开发和设计,但是实际使用的寿命非常短,这也传统软件设计经常出现的问题。但是,如果重复进行开发的过程中,就会加强自身的使用功能,不仅会损失大量的人力和物力,还会给系统的正常使用造成影响。此,在软件开发和设计的过程中,就需要全方面地进行思考和了解,预防对系统重复开发。
但是,如果给系统设计过多的功能,还想达到简单维护的软件,就需要运用比较灵活的设计方法和思路。另外,在实际使用这个系统的过程中,想要得到用户的好评,就需要在系统开发维护功能的基础上,将参数进行合理的调整,从而开发出类似的系统管理。大部分的企业当中,都广泛的应用功能计算机的管理技术,其中的程序也非常全面。而计算机管理应用的程序也可以主要分为两个方面,主要包括工业控制和信息化的管理。信息化的管理过程中就需要多方的软件进行帮助和支持同时还要将企业的实际情况进行考虑,保证可以更好的试用企业实际的管理模式,从而确保可以更加有效的管理企业自己内部的信息。但是在实际运用软件管理的过程中,运用最多的就是报表,其中主要的目的就是整体检查企业的发展情况。
在对软件实际进行设计的过程中,就需要认识到自我维护的意识,保证软件的生命力。但是系统自实际运用自我维护功能的过程中,也给设计造成了影响,这就需要采用一些额外的资源。目前,随着我国现代计算机技术发展的同时,采用的资源也逐渐成为一个非常重要的组成部分,所以,就需要重点考虑对系统维护性造成的影响,最终实现自我维护的功能。但是,对一些其他软件的系统开发,如果可以适当的将系统的共性和自我维护功能进行融合,就可以实现更好的发展和进步。
6结束语
在计算机网络技术高度普及的今天,计算机早已成为了人们生产与生活中必不可少的工具,为了能够更好地满足时代发展与人们生产生活的需求,各种各样的软件不断被研发出来,在为人们提供了巨大便利的同时,也大大增加了软件开发与维护的难度。本文从五个方面对计算机软件的可维护性实践进行了研究,希望通过文本的研究能够为相关的计算机软件开发工作者提供一些建议和参考。endprint