于晶
摘 要:自上世纪50年代世界上第一台计算机问世以来,计算机已经走过了68年的发展历程,从第一代计算机发展至今,计算机由原来的大体积、大功率发展到现在的小体积、高度集成化,从原来只能为军事服务发展到现在广泛应用于生活生产的各个方面。原来的计算机只有专业的技术人员才能操作,但是随着科技的发展,计算机软件应运而生,其作为普通人与计算机交流的平台,也进入了快速发展的阶段,近些年来,各种不用类型、不同用途的软件层出不穷,用以满足各个领域的需求,但是随之而来的是对计算机软件维护和保护这一重担,同时随着科技的进步,软件开发技术不断完善,计算机软件的开发效率和可维护性不断提高。文章将就怎样提高计算机软件的可维护性进行了阐述。
关键词:计算机软;可维护性
计算机软件是指计算机系统中的程序及其文档,程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。程序必须装入机器内部才能工作,文档一般是给人看的,不一定装入机器。计算机软件是用户与计算机进行对话的平台,用户通过软件实现与计算机硬件的通信,软件是计算机系统的重要组成部分。计算机软件在运行时,要能够提供所要求功能和性能的指令或计算机程序集合,且软件能够满意地处理信息的数据结构。同时能够描述程序功能需求以及程序如何操作和使用所要求的文档。在对计算机系统设计时,需要从硬件和软件方面综合考虑,将他们有机的结合起来,从而达到使用需求。软件在整个生命周期过程中面临着严重的复制和抄袭模仿威胁,因此需要加强对软件的技术保护措施。从软件立项到投入运营中分为很多的阶段,各个阶段需要采取合理的管理方式,只有通过严格而规范的管理,才能确保软件的质量,对软件的可维护性有着不小的提升。
1 计算机软件简介
计算机软件是用户与计算机进行对话的平台,用户通过软件实现与计算机硬件的通信,其是计算机系统的重要组成部分。
1.1 计算机软件的特点
计算机软件与一般作品的目的不同。计算机软件多用于某种特定目的,如控制一定生产过程,使计算机完成某些工作。计算机软件需要保护其内容。计算机软件可援引多种法律保护。
1.2 计算机软件的分类
计算机软件总体分为系统软件和应用软件两大类:系统软件是各类操作系统,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类。应用软件可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。
2 计算机软件的维护性
计算机软件从立项到投入使用会经历很多的阶段,其中开发期和运营期是当中最重要的两个阶段。计算机软件在运营期会经历不停的修改,从而延长系统的生命周期,在对系统进行开发时,投入了相当多的资金和人力进行开发,出于收回投资、降低成本的目的,软件能够运营的时间越长越好.在软件投入运行时,通过对原有软件进行修改、扩张或移植,使软件能够更长期的使用,从而达到减少开发成本、提高收益的目的。这种对软件进行修改、延长软件的生命周期的工作被称为系统维护。
软件维护主要是指根据需求变化或硬件环境的变化对应用程序进行部分或全部的修改,修改时应充分利用源程序。软件维护活动类型总起来大概有四种:纠错性维护(校正性维护)、适应性维护、完善性维护或增强、预防性维护或再工程。在以上这几个维护活动类型中,适应性维护、完善性维护占据了维护工作的近4/5。因此在整个软件的运营期中需要不断对软件进行维护,据统计数据显示,将近7成的经费被用于软件的维护之中,因此,软件的可维护性越来越重要,但随之而来的是软件维护的复杂系数越来越高。
2 提高计算机软件可维护性的方法简介
2.1 提高软件模块化设计在软件设计中的比重
提高软件模块化设计在软件设计中的比重是有效提高软件的可维护性的重要方法。采用这种方法可以极大的降低维护成本和降低维护的难度,从而达到提高软件可维护性的目的。在进行软件的维护过程中,如果需要改变一个功能模块,则可以通过对这一个模块进行更改,就可以达到维护的目的,从而降低了维护成本和维护的难度。通过对软件添加一些新的模块或模块层,就可以很容易的将需要增加的新功能加入进去。对程序的测试相较原来的方法更方便简捷。
2.2 对软件可维护性的关键因素进行分级
维护就是在软件交付使用后进行的修改,修改之前必须理解待修改的对象,修改后应该进行必要的测试,以保证所做的修改是正确的,如果是改正性维护,还必须预先进行调试以确定错误的具体位置。因此决定软件可维护性的因素主要有可理解性、可靠性、可修改性和可测试性、可移植性、可使用性和效率等7个因素。在这些因素中需要对其进行分类,因为这些因素中既有可互补的因素又有相互矛盾的因素,因此怎样对这些因素做好划分是对软件的可维护性相当重要的。
2.3 选用是适当的程序语言
编程语言俗称“计算机语言”,种类非常的多,总的来说可以分成机器语言、汇编语言、高级语言三大类。汇编语言的实质和机器语言是相同的,都是直接对硬件操作,很难理解和掌握,因此它们的软件可维护性相对较差,高级语言是大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,由于省略了很多细节,编程者也就不需要有太多的专业知识。高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言。高级语言相较于前两种语言来说更易被用户理解,因此用其编写的软件的可维护性相对较高。
3 对计算机软件的可维护性加强研究
在对软件进行维护的过程,常常会遇到各种问题,例如,原有的开发人员大量流失,新来的员工无法读懂他人开发体系,原有的软件结构不合理,造成后续的修改工作难以进行,或者是软件的通用性差,为后续的维修增添了不小的难度。以上这些都是在软件的开发维护过程中可能会遇到的问题。因此需要对计算机软件的可维护性加强研究,避免在同一个系统重复开发,虽然重复开发会使系统的功能更为完善,但是回报和投入不成正比,甚至还会对系统的正常运行造成影响。因此在开发阶段,加强对软件通用性和软件可维护性的开发力度。
现如今,在企业中广泛使用计算机管理。如今,计算机管理应用程序主要应用于对工厂的自动化控制和产品信息化的管理。现如今,市面上有很多的面向信息化管理的软件,这些软件虽说能够很好的应用于企业的信息化管理,但是,企业也需要将信息化管理的核心技术掌握在自己手中,这就需要企业对软件的关键部分进行开发,掌握核心科技。
自我维护功能是软件能够延长生命周期的重要武器,虽说在开发阶段,加入自我维护功能会提升软件的开发难度系数,造成开发困难,并会占用一些额外系统资源,但随着科技的进步,计算机系统资源迅速增加,占用资源不构成考虑的主要因素,因此,加入软件的自我维护功能的性价比很高,从而实现软件可维护性更好地发展。
参考文献
[1]李鹏.提高计算机软件可维护性的方法[Z].河南水利与南水北调,2002,4.
[2]GB/T14394-2008计算机软件可靠性和可维护性管理[Z].中华人民共和国国家标准.endprint