正在加载图片...
局部测试的时间 集成或回归测试的时间 修改规格说明的时间: 维护的评审时间 因管理活动拖延的时间 恢复时间。 这些数据反映了维护全过程中检错一纠错一验证的周期,即从检测出软件存在的问题开 始至修正它们并经回归测试验证这段时间。可以粗略地认为,这个周期越短,维护越容易 6.提高可维护性的方法 (1)建立明确的软件质量目标和优先级 一个可维护的程序应是可理解的、可靠的、可测试的、可修改的、可移植的、效率高的 可使用的。但要实现这所有的目标,需要付出很大的代价,而且也不一定行得通。因为某些 质量特性是相互促进的,例如可理解性和可测试性、可理解性和可修改性。但另一些质量特 性却是相互抵触的,例如效率和可移植性、效率和可修改性等。因此,尽管可维护性要求每 种质量特性都要得到满足,但它们的相对重要性应随程序的用途及计算环境的不同而不同 所以,应当对程序的质量特性,在提出目标的同时还必须规定它们的优先级。这样有助于提 高软件的质量,并对软件生存期的费用产生很大的影响。 (2)使用提高软件质量的技术和工具 ①模块化 模块化是软件开发过程中提高软件质量,降低成本的有效方法之一。也是提高可维护性 的有效的技术。它的优点是如果需要改变某个模块的功能,则只要改变这个模块,对其它模 块影响很小:如果需要増加程序的某些功能,则仅需増加完成这些功能的新的模块或模块层; 程序的测试与重复测试比较容易;程序错误易于定位和纠正;容易提高程序效率 ②结构化程序设计 结构化程序设计不仅使得模块结构标准化,而且将模块间的相互作用也标准化了。因而 把模块化又向前推进了一步。采用结构化程序设计可以获得良好的程序结构 ③使用结构化程序设计技术,提高现有系统的可维护性 采用备用件的方法——当要修改某一个模块时,用一个新的结构良好的模块替换掉整 个模块。这种方法要求了解所替换模块的外部(接口)特性,可以不了解其内部工作情况 它有利于减少新的错误,并提供了一个用结构化模块逐步替换掉非结构化模块的机会 ■采用自动重建结构和重新格式化的工具(结构更新技术)——这种方法采用如代码评价 程序、重定格式程序、结构化工具等自动软件工具,把非结构化代码转换成良好结构代码。 改进现有程序的不完善的文档一改进和补充文档的目的是为了提高程序的可理解 性,以提高可维护性 使用结构化程序设计方法实现新的子系统 采用结构化小组程序设计的思想和结构文档工具—软件开发过程中,建立主程序员 小组,实现严格的组织化结构,强调规范,明确领导以及职能分工,能够改善通信、提高程 序生产率;在检査程序质量时,采取有组织分工的结构普査,分工合作,各司其职,能够有 效地实施质量检查。同样,在软件维护过程中,维护小组也可以采取与主程序员小组和结构 普查类似的方式,以保证程序的质量。 (3)进行明确的质量保证审查 质量保证审查对于获得和维持软件的质量,是一个很有用的技术。除了保证软件得到适 当的质量外,审查还可以用来检测在开发和维护阶段内发生的质量变化。一旦检测出问题来 就可以采取措施来纠正,以控制不断增长的软件维护成本,延长软件系统的有效生命期。 为了保证软件的可维护性,有四种类型的软件审查 ①在检查点进行复审15 ▪ 局部测试的时间; ▪ 集成或回归测试的时间; ▪ 修改规格说明的时间; ▪ 维护的评审时间; ▪ 因管理活动拖延的时间; ▪ 恢复时间。 这些数据反映了维护全过程中检错-纠错-验证的周期,即从检测出软件存在的问题开 始至修正它们并经回归测试验证这段时间。可以粗略地认为,这个周期越短,维护越容易。 6. 提高可维护性的方法 (1) 建立明确的软件质量目标和优先级 一个可维护的程序应是可理解的、可靠的、可测试的、可修改的、可移植的、效率高的、 可使用的。但要实现这所有的目标,需要付出很大的代价,而且也不一定行得通。因为某些 质量特性是相互促进的,例如可理解性和可测试性、可理解性和可修改性。但另一些质量特 性却是相互抵触的,例如效率和可移植性、效率和可修改性等。因此,尽管可维护性要求每 一种质量特性都要得到满足,但它们的相对重要性应随程序的用途及计算环境的不同而不同。 所以,应当对程序的质量特性,在提出目标的同时还必须规定它们的优先级。这样有助于提 高软件的质量,并对软件生存期的费用产生很大的影响。 (2) 使用提高软件质量的技术和工具 ① 模块化 模块化是软件开发过程中提高软件质量,降低成本的有效方法之一。也是提高可维护性 的有效的技术。它的优点是如果需要改变某个模块的功能,则只要改变这个模块,对其它模 块影响很小;如果需要增加程序的某些功能,则仅需增加完成这些功能的新的模块或模块层; 程序的测试与重复测试比较容易;程序错误易于定位和纠正;容易提高程序效率。 ② 结构化程序设计 结构化程序设计不仅使得模块结构标准化,而且将模块间的相互作用也标准化了。因而 把模块化又向前推进了一步。采用结构化程序设计可以获得良好的程序结构。 ③ 使用结构化程序设计技术,提高现有系统的可维护性 ▪ 采用备用件的方法──当要修改某一个模块时,用一个新的结构良好的模块替换掉整 个模块。这种方法要求了解所替换模块的外部(接口)特性,可以不了解其内部工作情况。 它有利于减少新的错误,并提供了一个用结构化模块逐步替换掉非结构化模块的机会。 ▪ 采用自动重建结构和重新格式化的工具(结构更新技术)──这种方法采用如代码评价 程序、重定格式程序、结构化工具等自动软件工具,把非结构化代码转换成良好结构代码。 ▪ 改进现有程序的不完善的文档──改进和补充文档的目的是为了提高程序的可理解 性,以提高可维护性。 ▪ 使用结构化程序设计方法实现新的子系统。 ▪ 采用结构化小组程序设计的思想和结构文档工具──软件开发过程中,建立主程序员 小组,实现严格的组织化结构,强调规范,明确领导以及职能分工,能够改善通信、提高程 序生产率;在检查程序质量时,采取有组织分工的结构普查,分工合作,各司其职,能够有 效地实施质量检查。同样,在软件维护过程中,维护小组也可以采取与主程序员小组和结构 普查类似的方式,以保证程序的质量。 (3) 进行明确的质量保证审查 质量保证审查对于获得和维持软件的质量,是一个很有用的技术。除了保证软件得到适 当的质量外,审查还可以用来检测在开发和维护阶段内发生的质量变化。一旦检测出问题来, 就可以采取措施来纠正,以控制不断增长的软件维护成本,延长软件系统的有效生命期。 为了保证软件的可维护性,有四种类型的软件审查。 ① 在检查点进行复审
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有