正在加载图片...
们做维护工作。针对这类软件实施的软件工程活动,主要是对其重新实现,使其具有更好的 可维护性,包括软件重构、重写文档,或是改用新的编程语言,或是将其数据转移到现行的 数据库管理系统中,或是在分布式平台上实现等。 软件再工程和新的软件开发工作的主要差别在于开发的起点不同。再工程工作并不是从 编写需求规格说明开始,而是将原有的软件作为规格说明。正因为如此,我们把常规的软件 开发称为正向工程,而逆向工程是从代码开始推导出设计或是规格说明来。再工程的最终目 标仍然是产生新的、更容易维护的新系统。 【例4】软件维护是软件生存期的最后一个阶 维护要求 段。软件工程学针对维护工作的主要目标是提 高(A),降低(B)。软件的(C)、 (D)、(E)是决定软件可维护性的基 本因素。软件生存期(F)的工作与软件可 维护性有密切的关系 右图为结构化维护和非结构化维护的对 比,请选择合适的答案填入图中 供选择的答案: A,B.①软件的生产率②文档 ③软件的可靠性 ④软件的可维护性⑤维护的代价 交付使用 ⑥维护的效率 C,D,E.①可测试性 2互操作性 ③可理解性④可修改性 ⑤可复用性 ⑥可管理性 F.①编码阶段②设计阶段③测试阶段④每个阶段 G~L.①复查 ②计划途径 ③重编程序 ④评价设计 ⑤评价代码 ⑥修改设计 答案:A.④,B.⑤,C.①,D.③,E.④,F④,G④,H⑤,I③,J① K②,L⑥。其中,C、D、E的答案顺序可互换 分析:软件维护是软件生存期的最后一个阶段,也是持续时间最长、代价最大的一个阶段 软件工程学针对维护工作的主要目标就是提高软件的可维护性,降低维护的代价。软件维护 通常包括4类维护活动:改正性维护、适应性维护、完善性维护和预防性维护。软件的可理 解性、可修改性和可测试性是决定软件可维 维护要求 护性的基本因素。软件生存期各个阶段的工 作都与软件可维护性有密切的关系。 配置 在右图中描述了作为维护要求结果可能 发生的事件流 评价代码 如果软件配置的唯一成分使程序代码 计划途径 则维护活动从艰难地评价程序代码开始。如 果程序内部的文档不足,将使得评价更为困 修改设计 难。诸如软件结构、全局数据结构、系统接 重编程序 重编程序 口、性能和(或)设计约東等微妙的特征难以 搞清,常常会产生误解。最后对程序代码所 做变更的后果是难于估量的。因为没有测试 方面的文档,所以不可能做回归测试(对修改 交付使用 后的软件进行测试以确认软件的功能没有因24 们做维护工作。针对这类软件实施的软件工程活动,主要是对其重新实现,使其具有更好的 可维护性,包括软件重构、重写文档,或是改用新的编程语言,或是将其数据转移到现行的 数据库管理系统中,或是在分布式平台上实现等。 软件再工程和新的软件开发工作的主要差别在于开发的起点不同。再工程工作并不是从 编写需求规格说明开始,而是将原有的软件作为规格说明。正因为如此,我们把常规的软件 开发称为正向工程,而逆向工程是从代码开始推导出设计或是规格说明来。再工程的最终目 标仍然是产生新的、更容易维护的新系统。 【例4】软件维护是软件生存期的最后一个阶 段。软件工程学针对维护工作的主要目标是提 高( A ),降低( B )。软件的( C )、 ( D )、( E )是决定软件可维护性的基 本因素。软件生存期( F )的工作与软件可 维护性有密切的关系。 右图为结构化维护和非结构化维护的对 比,请选择合适的答案填入图中。 供选择的答案: A, B. ① 软件的生产率 ② 文档 ③ 软件的可靠性 ④ 软件的可维护性 ⑤ 维护的代价 ⑥ 维护的效率 C, D, E. ① 可测试性 ② 互操作性 ③ 可理解性 ④ 可修改性 ⑤ 可复用性 ⑥ 可管理性 F. ① 编码阶段 ② 设计阶段 ③ 测试阶段 ④ 每个阶段 G  L. ① 复查 ② 计划途径 ③ 重编程序 ④ 评价设计 ⑤ 评价代码 ⑥ 修改设计 答案:A. ④, B. ⑤, C. ①, D. ③, E. ④, F ④, G ④, H ⑤, I ③, J ①, K ②, L ⑥。其中,C、D、E 的答案顺序可互换。 分析:软件维护是软件生存期的最后一个阶段,也是持续时间最长、代价最大的一个阶段。 软件工程学针对维护工作的主要目标就是提高软件的可维护性,降低维护的代价。软件维护 通常包括 4 类维护活动:改正性维护、适应性维护、完善性维护和预防性维护。软件的可理 解性、可修改性和可测试性是决定软件可维 护性的基本因素。软件生存期各个阶段的工 作都与软件可维护性有密切的关系。 在右图中描述了作为维护要求结果可能 发生的事件流。 如果软件配置的唯一成分使程序代码, 则维护活动从艰难地评价程序代码开始。如 果程序内部的文档不足,将使得评价更为困 难。诸如软件结构、全局数据结构、系统接 口、性能和(或)设计约束等微妙的特征难以 搞清,常常会产生误解。最后对程序代码所 做变更的后果是难于估量的。因为没有测试 方面的文档,所以不可能做回归测试(对修改 后的软件进行测试以确认软件的功能没有因 维护要求 配置 H ? I J G K L I J 交付使用 软件 代码 评价代码 ? 重编程序 复查 评价设计 计划途径 修改设计 重编程序 复查 交付使用 软件 代码 维护要求 配置
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有