1 纠错型维护的方法:程序运行发现了错误,如何定位错误、确认问题点?(综合问题,答案在维护和调试里面)
- 定位错误
- 输出储存器内容
- 打印语句
- 使用debug工具进行跟踪运行
- 定位的策略
- 试探法
- 回朔法
- 对分法
- 归纳法
- 询问他人寻求帮助
- 确认故障问题点
- 发生时日
- 该当制品名、版本
- OS版本
- 现象的内容
发生时的现象、事前的操作内容、发生后的操作(确认是否有log的写入)、再现性的有无 - 确认其他运行的SW
- HW的器械名称(打印机名、网络)
- LOG文件(event log、其它log)
2 修改错误代码的注意点有哪些?能枚举至少若干条。
- 设计思想的一致性
- 修改的处所尽可能的少,不要比需要修改的地方多
- 尽量不使用共享系统中的已有变量,而使用局部量
- 不要建立公用子程序,而建立各自独立的子程序
- 坚持修改后的复审
- 建立修改文档
- 注意修改相应的文档
3 维护的概念,维护的种类有哪些以及其各自特点。
概念:软件维护就是在软件已经交付使用之后,为了改正错误或满足新需要而修改软件的过程,其基本任务是保证软件在一个相当长的时期能够正常运行。
种类及特点:
- 纠错性维护:由于前期的测试不可能揭露软件系统中所有潜在的错误,用户在使用软件时仍将会遇到错误,诊断和改正这些错误的过程称为纠错性维护。
- 适应性维护:由于新的硬件设备不断推出,操作系统和编译系统也不断地升级,为了使软件能适应新的环境而引起的程序修改和扩充活动称为适应性维护。
- 完善性维护:在软件的正常使用过程中,用户还会不断提出新的需求。为了满足用户新的需求而增加软件功能的活动称为完善性维护。
- 预防性维护:为了提高软件未来的的可维护性和可靠性而对软件进行的修改称为预防性维护。
4 什么是再工程。
软件再工程是一类软件工程活动,是一个工程过程, 它将逆向工程、重构和正向工程组合起来,将现存系统重新构造为新的形式。
5 什么是逆向工程。
逆向工程(又称逆向技术),是一种产品设计技术再现过程,即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能特性及技术规格等设计要素,以制作出功能相近,但又不完全一样的产品。
6 补充
维护的难点
理解是困难的、变更是危险的
决定软件可维护性的基本要素
可理解性、可测试性、可修改性、可移植性和可重用性
文档是影响软件可维护性的决定因素
预防性维护实质上是软件再工程。
软件再工程过程模型所定义的6类活动
- 库存目录分析
- 文档重构
- 逆向工程
- 代码重构
- 数据重构
- 正向工程