软件工程导论期末复习(八)

2023-05-16

本文用书:《软件工程导论》 第六版 清华大学出版社

1、软件维护的定义

2、了解软件维护的特点

3、软件维护过程中维护组织包括哪些人员?

4、决定软件的可维护性的因素有哪些?

5、软件再工程过程

第八章 维护

8.1 软件维护的定义

1.软件维护:指软件系统交付使用以后,为了改正错误或满足新的需求而修改软件的过程。

(1)完善性维护:扩充原有系统的功能,提高原有系统的性能,满足用户的实际需要。

(2)纠错性维护:对在测试阶段未能发现的,在软件投入使用后才逐渐暴露出来的错误的测试、诊断、定位、纠错以及验证、修改的回归测试过程。

(3)适应性维护: 要使运行的软件能适应运行环境的变动而修改软件的过程。

(4)预防性维护:为了进一步改善软件的可靠性和易维护性,或者为将来的维护奠定更好的基础而对软件进行修改。

8.2 软件维护的特点

1.结构化维护与非结构化维护差距巨大

(1)结构化维护:指软件开发过程是按照软件工 程方法,软件的维护过程,有一整套完整的方案、技术、审定过程。

(2)非结构化维护:缺乏必要的文档说明,难于 确定数据结构、系统接口等特性。维护工作令人生畏,事倍功半。

2.维护的代价高昂

3.维护的问题很多

8.3  软件维护的过程

1.维护组织人员:维护管理员、系统管理员、变化授权人。

2.维护报告

3.维护的事件流

4.保护维护记录

5.评价维护活动

8.4 软件的可维护性

1.决定软件可维护性的因素:

(1)可理解性;

(2)可测试性;

(3)可修改性;

(4)可移植性;

(5)可重用性。

2.文档:

(1)用户文档:主要描述系统功能和使用方法,并不关心这些功能是怎样实现的

(2)系统文档:系统文档描述系统设计、实现和测试等各方面的内容

3.可维护性复查

8.5 预防性维护(略)

8.6软件在工程过程

 1.库存目录分析:

每个软件组织都应该保存其拥有的所有应用系统的库存目录。该目录包含关于每个应用系统的基本信息;对库中每个程序都做逆向工程或再工程是不现实的。

下述3类程序有可能成为预防性维护的对象:      

(1) 预定将使用多年的程序;      

(2) 当前正在成功地使用着的程序;      

(3) 在最近的将来可能要做重大修改或增强的程序。

2.文档重构:

老程序固有的特点是缺乏文档。具体情况不同,处理这个问题的方法也不同:  

(1)建立文档非常耗费时间,不可能为数百个程序都重新建立文档。  

(2)为了便于今后的维护,必须更新文档,但是由于资源有限,应采用“使用时建文档”的方法,也就是说,不是一下子把某应用系统的文档全部都重建起来,而是只针对系统中当前正在修改的那些部分建立完整文档。  

(3)如果某应用系统是完成业务工作的关键,而且必须重构全部文档,则仍然应该设法把文档工作减少到必需的最小量。

3.逆向工程:

是分析程序以便在比源代码更高的抽象层次上创建出程序的某种表示的过程,也就是说,逆向工程是一个恢复设计结果的过程,逆向工程工具从现存的程序代码中抽取有关数据、体系结构和处理过程的设计信息。

4.代码重构:

是最常见的再工程活动。某些老程序具有比较完整、合理的体系结构,但是,个体模块的编码方式却是难于理解、测试和维护的。在这种情况下,可以重构可疑模块的代码。

5.数据重构:

对数据体系结构差的程序很难进行适应性修改和增强,事实上,对许多应用系统来说,数据体系结构比源代码本身对程序的长期生存力有更大影响。

6.正向工程:

正向工程也称为革新或改造,这项活动不仅从现有程序中恢复设计信息,而且使用该信息去改变或重构现有系统,以提高其整体质量。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件工程导论期末复习(八) 的相关文章

随机推荐

  • Huawei交换机配置Telnet登录

    Huawei交换机配置Telnet登录 一 交换机开启Telnet服务 lt Huawei gt system view 进入系统视图 Huawei telnet server xff1f 查看有enable还是disable选项 xff0
  • Huawei设备配置系统时间

    系统时钟是设备上的系统时间戳 由于地域的不同 xff0c 用户可以根据当地规定设置系统时钟 用户必须正确设置系统时钟以确保其与其他设备保持同步 华为设备出厂时默认采用了协调世界时 UTC xff0c 但是没有配置时区所有在配置设备系统时钟前
  • A start job is running for Raise network interface(5min 13s )问题解决方法

    我在笔记本电脑上安装了Ubuntu 16 04 xff0c 当我有局域网连接时 xff0c 启动ubuntu是很快的 xff0c 当LAN电缆断开时 xff0c 需要大约5分钟才能获得登录屏幕 xff0c 这个实在是无法忍受 我的推测 xf
  • Linux常用浏览器

    1 火狐浏览器是一个安全高效的浏览器 xff0c 它具有速度快 隐私保护 丰富的插件资源 不同设备之间同步数据 分页浏览 个性化定制等特性 2 谷歌浏览器 谷歌浏览器是一个由Google公司开发的网页浏览器 xff0c 具有稳定 快速 安全
  • Ubuntu18.04 解压zip文件乱码的解决方法

    在Ubuntu的系统下解压zip文件的时候居然出现了乱码 xff0c 通过查找网上的资料 xff0c 解决的办法有两种 一 通过unzip行命令解压 xff0c 指定字符集 xff0c 由于zip格式中并没有指定编码格式 xff0c Win
  • /etc/resolv.conf文件详解

    etc resolv conf它是DNS客户机配置文件 xff0c 用于设置DNS服务器的IP地址及DNS域名 xff0c 还包含了主机的域名搜索顺序 该文件是由域名解析器 xff08 resolver xff0c 一个根据主机名解析IP地
  • CCF 201812-4 数据中心 Java

    一 题目 问题描述 试题编号 xff1a 201812 4试题名称 xff1a 数据中心时间限制 xff1a 1 0s内存限制 xff1a 512 0MB问题描述 xff1a 样例输入 4 5 1 1 2 3 1 3 4 1 4 5 2 3
  • QT 显示文件目录

    include lt QDir gt include lt iostream gt int main int argc char argv QCoreApplication app argc argv QDir dir dir setPat
  • 面向对象设计——系统动态模型设计(1,交互模型)

    在这张图中 xff0c 系统对象静态设计前边我们在分析中已经学习了 xff0c 这个阶段需要做的就是细化优化 这里我们主要学习系统设计 xff0c 这篇博客我们学习系统动态建模中交互模型建模 首先需要我们学习的是对象之间的通信 xff0c
  • 面向对象设计——系统动态模型设计(2,状态模型)

    这篇总结状态模型建模 xff1a 状态图和活动图 先看看状态图和活动图小结 xff1a 下边我们看一下 xff0c 状态图的事务 xff08 活动图的在前边的博客中已经给出 xff0c 活动图另一个大用处就是细化说明用例 xff09 xff
  • 【sql语句基础】——查(select)(单表查询)

    目录 查 select 单表查询基本语法表代码样例select注意事项 where子句排序order by子句合计 统计函数 count求和sum平均值avg最大值最小值max和min 分组group by过滤having 分页查询limi
  • 软件工程导论期末复习(一)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 第一章 软件工程学概述 一 软件危机 1 什么是软件危机 xff1f 指在计算机软件开发和维护过程中所遇到的一系列严重问题 2 软件危机的典型表现 xff1a xff08 不怎么重
  • 软件工程导论期末复习(二)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 可行性研究的目的是什么 xff1f 2 应从哪些方面研究可行性 xff1f 3 如何画系统流程图 xff1f 4 如何画数据流图 xff1f 5 了解数据字典及成本效益分析 第
  • 软件工程导论期末复习(三)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 需求分析的基本任务是什么 xff1f 2 分析建模 2 1什么是模型 xff1f 模型 xff1a 就是为了理解事物而对事物做出的一种抽象 xff0c 是对事物的一种无歧义的书
  • 软件工程导论期末复习(四)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 有穷状态机 2 peri网技术 第四章 形式化说明技术 4 1 概述 1 非形式化方法的缺点 用自然语言书写的系统规格说明书 可能存在矛盾 二义性 含糊性 不完整性及抽象层次混
  • 软件工程导论期末复习(五)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 在设计过程中 xff0c 总体设计一般有哪两个主要阶段组成 xff1f 2 什么模块化 xff1f 模块独立性包含哪些内容 xff1f 度量准则是什么 xff1f 3 启发规则
  • 软件工程导论期末复习(六)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 结构程序设计中有哪几种基本控制结构 xff1f 2 了解人机界面的设计 3 掌握过程设计的工具 xff08 程序流程图 盒图 PAD图 xff0c 判定树 xff09 4 面向
  • 技术人在互联网如何变现

    1 免费 xff08 引流的过程 xff09 免费的东西为什能够写到这里来 xff0c 天下哪有免费的午餐 xff0c 免费是实现流量聚集的手段 互联网无时无刻不体现免费的模式 xff0c 博客 各家文章平台 微博 公众号 短视频等等 xf
  • 软件工程导论期末复习(七)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 编码 2 测试技术 3 调试的途径有哪些 xff1f 4 软件可靠性和可用性的基本概念 第七章 实现 7 1 编码 1 编码 xff1a 软件设计结果翻译成用某种程序语言书写的
  • 软件工程导论期末复习(八)

    本文用书 xff1a 软件工程导论 第六版 清华大学出版社 1 软件维护的定义 2 了解软件维护的特点 3 软件维护过程中维护组织包括哪些人员 xff1f 4 决定软件的可维护性的因素有哪些 xff1f 5 软件再工程过程 第八章 维护 8