资源描述
第3章 软件工程基础3.1 软 件 工 程 基 本 概 念3.2 结 构 化 分 析 方 法3.3 结 构 化 设 计 方 法3.4 软 件 测 试3.5 程 序 的 调 试 1. 软 件 定 义 与 软 件 特 点 2. 软 件 危 机 与 软 件 工 程3. 软 件 工 程 过 程 与 软 件 生 命 周 期4. 软 件 工 程 的 目 标 和 与 原 则3.1 软件工程基本概念 软 件 定 义 与 软 件 特 点 计 算 机 软 件 是 包 括 程 序 、 数 据 及 相 关 文 档 的 完 整 集 合 。 软 件 的 特 点 包 括 :( 1) 软 件 是 一 种 逻 辑 实 体 ;( 2) 软 件 的 生 产 与 硬 件 不 同 , 它 没 有 明 显 的 制 作 过 程 ;( 3) 软 件 在 运 行 、 使 用 期 间 不 存 在 磨 损 、 老 化 问 题 ;( 4) 软 件 的 开 发 、 运 行 对 计 算 机 系 统 具 有 依 赖 性 , 受 计 算机 系 统 的 限 制 , 这 导 致 了 软 件 移 植 的 问 题 ;( 5) 软 件 复 杂 性 高 , 成 本 昂 贵 ;( 6) 软 件 开 发 涉 及 诸 多 的 社 会 因 素 。 软 件 危 机 与 软 件 工 程 软 件 危 机 泛 指 在 计 算 机 软 件 开 发 和 维 护 过 程 中 所遇 到 的 一 系 列 严 重 问 题 , 主 要 表 现 为 成 本 、 质 量 、生 产 率 等 问 题 。 软 件 工 程 定 义 : 软 件 工 程 是 应 用 于 计 算 机 软 件 的 定 义 、 开 发 和 维 护 的一 整 套 方 法 、 工 具 、 文 档 、 实 践 标 准 和 工 序 。 ( GB) 软 件 工 程 是 建 立 并 使 用 完 善 的 工 程 化 原 则 , 以 较 经 济的 手 段 获 得 能 在 实 际 机 器 上 有 效 运 行 的 可 靠 软 件 的 一系 列 方 法 。 ( Fritz Bauer) 将 系 统 化 的 、 规 范 的 、 可 度 量 的 方 法 应 用 于 软 件 的 开发 、 运 行 和 维 护 的 过 程 , 即 将 工 程 化 应 用 于 软 件 中 。( IEEE) 软 件 工 程 包 括 3个 要 素 : 方 法 ( 完 成 软 件 工 程 项 目 的 技术 手 段 ) 、 工 具 ( 支 持 软 件 的 开 发 、 管 理 、 文 档 生 成 )和 过 程 ( 支 持 软 件 开 发 的 各 环 节 的 控 制 、 管 理 ) 。 软 件 工 程 过 程软 件 工 程 过 程 是 把 输 入 转 化 为 输 出 的 一 组 彼 此 相 关 的 资 源 和 活动 .软 件 工 程 过 程 是 指 为 获 得 软 件 产 品 , 在 软 件 工 具 支 持 下 由 软 件工 程 师 完 成 的 一 系 列 软 件 工 程 活 动 。 基 于 这 个 层 面 , 软 件 工 程过 程 通 常 包 含 4种 基 本 活 动 : ( 1) Plan软 件 规 格 说 明 ; ( 2) Do软 件 开 发 ; ( 3) Check软 件 确 认 ; ( 4) Action软 件 演 进 。从 软 件 开 发 的 观 点 , 软 件 工 程 过 程 就 是 使 用 适 当 的 资 源 ( 包 括人 员 、 硬 软 件 工 具 、 时 间 等 ) , 为 开 发 软 件 进 行 的 一 组 开 发 活动 , 在 过 程 结 束 时 将 输 入 ( 用 户 要 求 ) 转 化 为 输 出 ( 软 件 产 品 ) 软 件 生 命 周 期软 件 生 命 周 期 : 软 件 产 品 从 提 出 、 实 现 、 使 用 维 护 到 停 止 使用 退 役 的 过 程 。软 件 生 命 周 期 三 个 阶 段 :软 件 定 义 、 软 件 开 发 、 运 行 维 护 , 主要 活 动 阶 段 是 :( 1) 可 行 性 研 究 与 计 划 制 定 ;( 2) 需 求 分 析 ;( 3) 软 件 设 计 ;( 4) 软 件 实 现 ;( 5) 软 件 测 试 ;( 6) 运 行 和 维 护 。 软 件 工 程 的 目 标 和 与 原 则目 标 : 在 给 定 成 本 、 进 度 的 前 提 下 , 开 发 出 具 有 有 效性 、 可 靠 性 、 可 理 解 性 、 可 维 护 性 、 可 重 用 性 、 可 适应 性 、 可 移 植 性 、 可 追 踪 性 和 可 互 操 作 性 且 满 足 用 户需 求 的 产 品 。基 本 目 标 : 付 出 较 低 的 开 发 成 本 ; 达 到 要 求 的 软 件 功能 ; 取 得 较 好 的 软 件 性 能 ; 开 发 软 件 易 于 移 植 ; 需 要较 低 的 费 用 ; 能 按 时 完 成 开 发 , 及 时 交 付 使 用 。基 本 原 则 : 抽 象 、 信 息 隐 蔽 、 模 块 化 、 局 部 化 、 确 定性 、 一 致 性 、 完 备 性 和 可 验 证 性 。 软 件 工 程 的 理 论 和 技 术 性 研 究 的 内 容软 件 工 程 的 理 论 和 技 术 性 研 究 的 内 容 主 要 包 括 : 软 件开 发 技 术 和 软 件 工 程 管 理 。软 件 开 发 技 术 包 括 : 软 件 开 发 方 法 学 、 开 发 过 程 、 开 发 工具 和 软 件 工 程 环 境 。软 件 工 程 管 理 包 括 : 软 件 管 理 学 、 软 件 工 程 经 济 学 、 软 件心 理 学 等 内 容 。v软 件 管 理 学 包 括 人 员 组 织 、 进 度 安 排 、 质 量 保 证 、 配置 管 理 、 项 目 计 划 等 。 软 件 开 发 工 具 与 软 件 开 发 环 境 软 件 开 发 工 具软 件 开 发 方 法 的 有 效 实 施 必 须 得 到 相 应 工 具 的 支 持 ,否 则 方 法 将 难 以 有 效 实 施 。 软 件 开 发 环 境软 件 开 发 环 境 或 软 件 工 程 环 境 是 全 面 支 持 软 件 开 发全 过 程 的 软 件 工 具 集 合 。 这 些 软 件 工 具 按 照 一 定 的方 法 或 模 式 组 合 起 来 , 支 持 软 件 生 命 周 期 内 的 各 个阶 段 和 各 项 任 务 的 完 成 。 计 算 机 辅 助 软 件 工 程 ( CASE)CASE将 各 种 软 件 工 具 、 开 发 机 器 和 一 个 存 放 开 发过 程 信 息 的 中 心 数 据 库 组 合 起 来 , 形 成 软 件 工 程 环 境 。 软 件 开 发 方 法 是 软 件 开 发 过 程 所 遵 循 的 方 法 和 步 骤 , 其 目的 在 于 有 效 得 到 一 些 工 作 产 品 , 即 程 序 和 文 档 , 并 且满 足 质 量 要 求 。软 件 开 发 方 法 包 括 分 析 方 法 、 设 计 方 法 和 程 序 设 计 方 法结构化分析方法 需 求 分 析软 件 需 求 是 指 用 户 对 软 件 在 功 能 ,行 为 ,性 能 ,设 计 约 束 等方 面 的 期 望 .IEEE定 义 : 用 户 解 决 问 题 或 达 到 目 标 所 需 的 条 件 或 权 能 系 统 或 系 统 部 件 要 满 足 合 同 、 标 准 、 规 范 或 其 他 正 式规 定 文 档 所 需 具 有 的 条 件 或 权 能 ; 一 种 反 映 、 所 描 述 的 条 件 或 职 能 的 文 档 说 明 。需 求 分 析 阶 段 的 工 作 需 求 获 取 需 求 分 析 编 写 需 求 规 格 说 明 书 需 求 评审 需 求 分 析 方 法需 求 分 析 方 法 有 ( 1) 结 构 化 需 求 分 析 方 法 ; 面 向 数 据 流 (SAStructured analysis),面 向 数 据结 构 (JSDJackson system development method),面向 数 据 结 构 的 结 构 化 数 据 系 统 开 发 方 法 (DSSDData structured system development method) ( 2) 面 向 对 象 的 分 析 的 方 法 ( OOAObject-Oriented method)。 从 需 求 分 析 建 立 的 模 型 的 特 性 来 分 静 态 分 析 动 态 分 析 结 构 化 分 析 方 法结 构 化 分 析 方 法 的 实 质 : 着 眼 于 数 据 流 , 自 顶 向 下 ,逐 层 分 解 , 建 立 系 统 的 处 理 流 程 , 以 数 据 流 图 和 数 据字 典 为 主 要 工 具 ,建 立 系 统 的 逻 辑 模 型 。结 构 化 分 析 的 常 用 工 具 ( 1) 数 据 流 图 ( DFDData Flow Diagram) ( 2) 数 据 字 典 (DD) ( 3) 判 定 树 ( 4) 判 定 表 数 据 流 图 描 述 数 据 处 理 过 程 的 工 具 , 是 需 求 理 解 的 逻 辑 模 型 的图 形 表 示 , 它 直 接 支 持 系 统 的 功 能 建 模 。 图 形 元 素 建 立 数 据 流 图 的 步 骤 : 由 外 向 里 : 先 画 系 统 的 输 入 输 出 , 再 画 系 统 的 外 部 自 顶 向 下 : 顺 序 完 成 顶 层 、 中 间 层 、 底 层 数 据 流 图 逐 层 分 解 。 数 据 字 典 数 据 字 典 是 结 构 化 分 析 的 核 心 数 据 字 典 的 作 用 是 对 DFD中 出 现 的 被 命 名 的 图 形 元 素 的确 切 解 释 通 常 数 据 字 典 包 含 的 信 息 有 : 名 称 、 别 名 、 何 处 使 用 /如 何 使 用 、 内 容 描 述 、 补 充 信 息 等 在 数 据 字 典 的 编 制 过 程 中 , 常 使 用 定 义 方 式 描 述 数 据结 构 需 求 分 析 阶 段 的 最 后 成 果 -软 件 需 求 规 格 说 明 书软 件 需 求 规 格 说 明 书 的 特 点 :( 1) 正 确 性 ;( 2) 无 岐 义 性 ;( 3) 完 整 性 ;( 4) 可 验 证 性 ;( 5) 一 致 性 ;( 6) 可 理 解 性 ;( 7) 可 追 踪 性 。 3.3 结 构 化 设 计 方 法软 件 设 计 是 开 发 阶 段 最 重 要 的 步 骤 , 是 将 需 求 准 确 地转 化 为 完 整 的 软 件 产 品 或 系 统 的 唯 一 途 径 。从 工 程 管 理 角 度 来 看 , 软 件 设 计 分 为 概 要 设 计 和 详 细设 计 。 概 要 设 计 :确 定 软 件 体 系 结 构 ,系 统 级 接 口 ,全 局 数 据 结 构 或 数 据 库 模 式 . 详 细 设 计 :确 立 模 块 的 实 现 算 法 和 局 部 数 据 结 构 . 衡 量 软 件 模 块 独 立 性 的 标 准衡 量 软 件 模 块 独 立 性 使 用 耦 合 性 和 内 聚 性 两 个 定 性 的 度 量标 准 。在 程 序 结 构 中 各 模 块 的 内 聚 性 越 强 , 则 耦 合 性 越 弱 。 优 秀软 件 应 高 内 聚 , 低 耦 合 。 功 能 内 聚 非 直 接 耦 合 序 列 内 聚 数 据 耦 合 通 信 内 聚 标 记 耦 合 内 聚 过 程 内 聚 耦 合 控 制 耦 合 时 间 内 聚 外 部 耦 合 逻 辑 内 聚 公 共 耦 合 偶 然 内 聚 内 容 耦 合 软 件 概 要 设 计 的 基 本 任 务( 1) 设 计 软 件 系 统 结 构 ;( 2) 数 据 结 构 及 数 据 库 设 计 ;( 3) 编 写 概 要 设 计 文 档 ; ( 4) 概 要 设 计 文 档 评 审 。常 用 的 软 件 设 计 工 具 是 结 构 图 ( SCStructure Chart)。结 构 图 的 基 本 形 式 : 基 本 形 式 、 顺 序 形 式 、 重 复 形 式 、 选 择形 式 。结 构 图 有 四 种 模 块 类 型 : 传 入 模 块 、 传 出 模 块 、 变 换 模 块 和协 调 模 块 。 典 型 的 数 据 流 类 型 有 两 种 : 变 换 型 和 事 务 型 。变 换 型 系 统 结 构 图 由 输 入 、 中 心 变 换 、 输 出 三 部 分组 成 。事 务 型 数 据 流 的 特 点 是 : 接 受 一 项 事 务 , 根 据 事 务处 理 的 特 点 和 性 质 , 选 择 分 派 一 个 适 当 的 处 理 单 元 ,然 后 给 出 结 果 。面 向 数 据 流 的 设 计 方 法 详 细 设 计 是 为 软 件 结 构 图 中 的 每 一 个 模 块 确 定 实 现算 法 和 局 部 数 据 结 构 , 用 某 种 选 定 的 表 达 工 具 表 示算 法 和 数 据 结 构 的 细 节 。常 见 的 过 程 设 计 工 具 有 : 图 形 工 具 ( 程 序 流 程图 ,N-S,PAD,HIPO) 、 表 格 工 具 ( 判 定 表 ) 、 语 言工 具 ( PDL) 。 详 细 设 计 3.4 软 件 测 试软 件 测 试 定 义 : 使 用 人 工 或 自 动 手 段 来 运 行 或 测 定某 个 系 统 的 过 程 , 其 目 的 在 于 检 验 它 是 否 满 足 规 定的 需 求 或 是 弄 清 预 期 结 果 与 实 际 结 果 之 间 的 差 别 。软 件 测 试 的 目 的 : 发 现 错 误 而 执 行 程 序 的 过 程 。一 个 好 的 测 试 用 例 是 指 很 可 能 找 到 迄 今 为 止 尚 未 发现 的 错 误 的 用 例 ; 一 个 成 功 的 测 试 是 发 现 了 至 今 尚未 发 现 的 错 误 的 测 试 。 软 件 测 试 方 法 : 静 态 测 试 和 动 态 测 试 。 静 态 测 试 包 括 代 码 检 查 、 静 态 结 构 分 析 、 代 码 质 量 度 量 。不 实 际 运 行 软 件 , 主 要 通 过 人 工 进 行 。 动 态 测 试 : 是 基 本 计 算 机 的 测 试 , 主 要 包 括 白 盒 测 试 方 法和 黑 盒 测 试 方 法 。 白 盒 测 试 : 在 程 序 内 部 进 行 , 主 要 用 于 完 成 软 件 内 部 操 作的 验 证 。 主 要 方 法 有 逻 辑 覆 盖 、 基 本 基 路 径 测 试 。 黑 盒 测 试 : 主 要 诊 断 功 能 不 对 或 遗 漏 、 界 面 错 误 、 数 据 结构 或 外 部 数 据 库 访 问 错 误 、 性 能 错 误 、 初 始 化 和 终 止 条 件 错 ,用 于 软 件 确 认 。 主 要 方 法 有 等 价 类 划 分 法 、 边 界 值 分 析 法 、错 误 推 测 法 、 因 果 图 等 。软 件 测 试 方 法 软 件 测 试 过 程 一 般 按 4个 步 骤 进 行 :单 元 测 试 -模 块 测 试集 成 测 试 -增 量 与 非 增 量 方 式验 收 测 试 验 证 软 件 的 功 能 和 性 能 是 否 满 足 需 求系 统 测 试 软 件 测 试 过 程 驱 动 模 块被 测 单 元桩 模 块 桩 模 块 程 序 调 试 的 任 务 是 诊 断 和 改 正 程 序 中 的 错 误 , 主要 在 开 发 阶 段 进 行 。程 序 调 试 的 基 本 步 骤 :( 1) 错 误 定 位 ;( 2) 修 改 设 计 和 代 码 , 以 排 除 错 误 ;( 3) 进 行 回 归 测 试 , 防 止 引 进 新 的 错 误 。3 5 程 序 的 调 试 软 件 调 试 可 分 表 静 态 调 试 和 动 态 调 试 。 静 态 调 试主 要 是 指 通 过 人 的 思 维 来 分 析 源 程 序 代 码 和 排 错 ,是 主 要 的 设 计 手 段 , 而 动 态 调 试 是 辅 助 静 态 调 试 。主 要 调 试 方 法 有 :( 1) 强 行 排 错 法 ;( 2) 回 溯 法 ; ( 3) 原 因 排 除 法 。 软 件 调 试 的 方 法
展开阅读全文