文章目录
一:定义
可维护性指的是维护人员理解、改正、改动或改进这个软件的难易程度。提高可维护性是支配软件工程方法学所有步骤的关键目标
二:决定软件可维护性的因素
(1)可理解性
A:定义
软件可理解性表现为外来读者理解软件的结构、功能、接口和内部处理过程的难易程度
B:影响因素
- 模块化(模块结构良好,高内聚,松耦合);
- 详细的设计文档;
- 结构化设计;
- 程序内部的文档;
- 高级程序设计语言等
(2)可测试性
诊断和测试的容易程度取决于软件容易理解的程度
A:影响因素
- 良好的文档;
- 软件结构;
- 可用的测试工具和调试工具;
- 以前设计的测试过程
B:要求
维护人员需要得到在开发阶段用过的测试方案,以便进行回归测试。在设计阶段应该尽力把软件设计成容易测试和容易诊断的
C:衡量标准
对于程序模块来说,可以用程序复杂度来度量它的可测试性。模块的环形复杂度越大,可执行的路径就越多,全面测试它的难度就越高
(3)可修改性
耦合、内聚、信息隐藏、局部化、控制域与作用域的关系等,都影响软件的可修改性
(4)可移植性
A:定义
软件可移植性是指把程序从一种计算环境(硬件配置和操作系统)转移到另一种计算环境的难易程度
B:提高可移植性的方法
把与硬件、操作系统以及其他外部设备有关的程序代码集中放到特定的程序模块中,可以把因环境变化而必须修改的程序局限在少数程序模块中,从而降低修改的难度,提高可移植性
(5)可重用性
A:定义
重用是指同一事物不做修改或稍加改动就在不同环境中多次重复使用
B:对可维护性的影响
- 提高软件可靠性,较少改正性维护
- 降低适应性和完善性维护的难度