Home 软件工程-系统维护概述
Post
Cancel

软件工程-系统维护概述

软件工程系列文章四

软件维护是软件生命周期的最后一个阶段,处于系统投入生产性运行之后的时期中,因此不属于系统开发过程。软件维护是在软件已经交付使用之后为了改正错误或满足新的需求而修改软件的过程,即软件在交付使用后对软件所做的一切改动

系统可维护性概念

系统的可维护性可以定义为维护人员理解、改正、改动和改进这个软件的难易程度。提高可维护性是开发软件系统所有步骤的关键目的,系统是否能被很好地维护,可以用系统的可维护性这一指标来衡量

系统可维护指标

  1. 可理解性。指别人能理解系统的结构、界面、功能和内部过程的难易程度。模块化、详细设计文档、结构化设计和良好的高级程序设计语言等都有助于提高可理解性
  2. 可测试性。诊断和测试的容易程度取决于易理解的程度。好的文档资料有利于诊断和测试,同时,程序的结构、高性能的测试工具以及周密计划的测试工序也是至关重要的。为此,开发人员在系统设计和编程阶段就应尽力把程序设计成易诊断和测试的。此外,在进行系统维护时,应该充分利用在系统测试阶段保存下来的测试用例
  3. 可修改性。诊断和测试的容易程度与系统设计所制定的设计原则有直接关系。模块的耦合、内聚、作用范围与控制范围的关系等都对可修改性有影响

维护与软件文档

文档是软件可维护性的决定因素。由于长期使用的大型软件系统在使用过程中必然会经受多次修改,所以文档显得非常重要

软件系统的文档可以分为用户文档和系统文档两类。用户文档主要描述系统功能和使用方法,并不关心这些功能是怎样实现的;系统文档描述系统设计、实现和测试等各方面的内容

可维护性是所有软件都应具有的基本特点,必须在开发阶段保证软件具有可维护性的特点。在软件工程的每一个阶段都应考虑并提高软件的可维护性,在每个阶段结束前的技术审查和管理复查中应该着重对可维护性进行复审

软件文档

编写高质量文档可以提高软件开发的质量

文档也是软件的一部分,没有文档的软件就不能称之为软件

软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量,高质量的文档对于软件产品的效益有着重要的意义

系统维护的内容及类型

系统维护主要包括硬件维护、软件维护和数据维护

硬件维护

硬件维护应由专职的硬件维护人员来负责

软件维护

软件维护主要是根据需求变化或硬件环境的变化对应用程序进行部分或全部修改。修改时充分利用源程序,修改后要填写程序修改登记表,并在程序变更通知书上写明新旧程序的不同之处

软件维护的内容一般有以下几个方面

  1. 正确性维护。指改正在系统开发阶段已发现而系统测试阶段尚未发现的错误
  2. 适应性维护。指使应用软件适应信息技术变化和管理需求变化而进行的修改
  3. 完善性维护。是为扩充功能和改善性能而进行的修改,主要是指对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征
  4. 预防性维护。为了改进应用软件的可靠性和可维护性,为了适应未来的软硬件环境的变化,应主动增加预防性的新的功能,以使应用系统适应各类变化而不被淘汰

数据维护

数据维护工作主要是由数据库管理员来负责,主要负责数据库的安全性和完整性以及进行并发性控制

软件的质量属性

可靠性、可用性和可维护性是软件的质量属性,软件工程中,用 0-1 之间的数来度量

可靠性是指一个系统对于给定的时间间隔内、在给定条件下无失效运作的概率。可以用 MTTF/(1+MTTF) 来度量,其中 MTTF 为平均无故障时间

可用性是在给定的时间点上,一个系统能够按照规格说明正确运作的概率。可以用 MTBF/(1+MTBF) 来度量,其中 MTBF 为平均失效间隔时间

可维护性是在给定的使用条件下,在规定的时间间隔内,使用规定的过程和资源完成维护活动的概率。可以用 1/(1+MTTR) 来度量,其中 MTTR 为平均修复时间

This post is licensed under CC BY 4.0 by the author.

软件工程-系统测试

软件工程-软件项目管理