资源描述
软 件 学 院高 海 昌 Operating Systems Gao Haichang , Software School, Xidian University 2 1. 概 述2. 软 件 过 程 和 生 命 周 期3. 项 目 管 理4. 需 求 工 程5. 软 件 设 计6. 软 件 实 现7. 软 件 测 试8. 软 件 交 付 Operating Systems Gao Haichang , Software School, Xidian University 3 FIEEE给 过 程 下 的 定 义 : 过 程 描 述 了 针 对 一 个 给定 目 标 的 一 系 列 操 作 步 骤 , 操 作 步 骤 说 明 有 哪 些操 作 以 及 按 照 何 种 方 式 来 执 行 操 作 。 F软 件 开 发 过 程 应 该 明 确 定 义 以 下 元 素 :(1) 过 程 中 所 执 行 的 活 动 及 其 顺 序 关 系 。(2) 每 一 个 活 动 的 内 容 和 步 骤 。(3) 团 队 人 员 的 工 作 和 职 责 Operating Systems Gao Haichang , Software School, Xidian University 4 F软 件 开 发 一 共 包 括 七 个 过 程 :获 取 过 程供 应 过 程开 发 过 程操 作 过 程维 护 过 程管 理 过 程支 持 过 程 Operating Systems Gao Haichang , Software School, Xidian University 5 F常 见 的 软 件 开 发 过 程 模 型 包 括 :瀑 布 模 型快 速 原 型 模 型增 量 模 型迭 代 模 型螺 旋 模 型RUP (Rational Unified Process) Operating Systems Gao Haichang , Software School, Xidian University 6 F要 求 软 件 项 目 的 开 发 严 格 按 照 软 件 生 命 周 期 的 方式 进 行F特 点 :分 阶 段阶 段 间 有 因 果 关 系评 审允 许 反 馈 Operating Systems Gao Haichang , Software School, Xidian University 7 F优 点 :严 格 规 范 软 件 开 发 过 程 , 克 服 了 非 结 构 化 的 编 码 和 修改 过 程 的 缺 点强 调 文 档 的 作 用 , 要 求 每 个 阶 段 都 要 仔 细 验 证F缺 点 :各 个 阶 段 的 划 分 完 全 固 定 , 阶 段 之 间 产 生 大 量 的 文 档 ,极 大 地 增 加 了 工 作 量由 于 开 发 模 型 是 线 性 的 , 用 户 只 有 等 到 整 个 过 程 的 末期 才 能 见 到 开 发 成 果 , 中 间 提 出 的 变 更 要 求 很 难 响 应早 期 的 错 误 可 能 要 等 到 开 发 后 期 的 测 试 阶 段 才 能 发 现 ,进 而 带 来 严 重 的 后 果 Operating Systems Gao Haichang , Software School, Xidian University 8 F允 许 在 需 求 分 析 阶 段 对 软 件 的 需 求 进 行 初 步 的 分析 和 定 义 Operating Systems Gao Haichang , Software School, Xidian University 9 F优 点 :不 需 要 需 求 预 先 完 备 定 义支 持 用 户 参 与 软 件 项 目 的 开 发 过 程F缺 点 :需 要 多 次 迭 代 , 无 法 预 知 次 数 , 给 项 目 管 理 带 来 困 难快 速 建 立 起 来 的 系 统 结 构 加 上 连 续 的 修 改 可 能 会 导 致产 品 质 量 低 下 Operating Systems Gao Haichang , Software School, Xidian University 10 F与 瀑 布 模 型 类 似 , 但 软 件 系 统 是 被 增 量 式 地 一 块块 开 发 的 Operating Systems Gao Haichang , Software School, Xidian University 11 F优 点 :各 模 块 可 以 并 行 开 发较 好 地 适 应 需 求 的 变 化 , 用 户 可 以 不 断 地 看 到 所 开 发软 件 的 可 运 行 中 间 版 本重 要 功 能 被 首 先 交 付 , 从 而 使 其 得 到 最 多 的 测 试F缺 点 :容 易 退 化 为 边 做 边 改 的 方 式 , 从 而 使 软 件 过 程 的 控 制失 去 整 体 性 Operating Systems Gao Haichang , Software School, Xidian University 12 F通 过 多 次 逐 步 的 迭 代 , 建 立 软 件 系 统 , 每 次 迭 代都 是 一 个 相 对 独 立 的 软 件 过 程 Operating Systems Gao Haichang , Software School, Xidian University 13 F优 点 :能 够 较 好 地 适 应 需 求 难 以 确 定 、 不 断 变 更 的 软 件 系 统的 开 发F缺 点 :迭 代 次 数 难 以 事 先 确 定 , 增 加 了 过 程 管 理 的 复 杂 度 Operating Systems Gao Haichang , Software School, Xidian University 14 F结 合 了 瀑 布 模 型 、 快 速 原 型 模 型 和 迭 代 模 型 的 思想 , 并 引 入 了 风 险 分 析 活 动 。F每 个 循 环 迭 代 都 包 含 4个 阶 段 :制 定 计 划风 险 分 析设 计 实 施用 户 反 馈 Operating Systems Gao Haichang , Software School, Xidian University 15 F优 点 :以风险驱动开发过程,强调可选方案和约束条件从而支持软件的重用关注于早期错误的消除,将软件质量作为特殊目标融入产品开发之中F缺 点 :要求许多客户接受和相信风险分析并做出相关反应是不容易的,往往适应于内部的大规模软件开发需要软件开发人员具备风险分析和评估的经验,否则将会带来更大的风险 Operating Systems Gao Haichang , Software School, Xidian University 16 FRUP (Rational Unified Process)统 一 软 件 过 程 。F由 Ivar Jacobson的 The Objectory Approach 和 The Rational Approach 发 展 而 来 , 是 一 个 文 档化 的 软 件 工 程 产 品 , 所 有 RUP 的 实 施 细 节 及 方法 导 引 均 以 Web文 档 的 方 式 呈 现 。FRUP又 是 一 套 软 件 工 程 方 法 框 架 , 各 个 组 织 可 根据 自 身 的 实 际 情 况 , 以 及 项 目 规 模 对 RUP进 行 裁剪 和 修 改 , 以 制 定 出 合 乎 需 要 的 软 件 工 程 过 程 。 Operating Systems Gao Haichang , Software School, Xidian University 17 F在 RUP中 , 软 件 开 发 生 生 命 周 期 根 据 时 间 和 RUP的 核 心 工 作 流 划 分 为 二 维 空 间 。F时 间 维 从 组 织 管 理 的角 度 描 述 整 个 软 件 开发 生 命 周 期 , 是 RUP的 动 态 组 成 部 分 。F核 心 工 作 流 从 技 术 角度 描 述 RUP的 静 态 组成 部 分 。 Operating Systems Gao Haichang , Software School, Xidian University 18 F RUP有 九 个 核 心 的 工 作 流 :业务建模(Business Modeling):理解待开发系统的组织结构及其业务运作,确保所有参与人员对待开发系统有共同的认识需求分析(Requirements):定义系统功能及用户界面,使客户知道系统的功能,开发人员知道系统的需求,为项目预算及计划提供基础。分析与设计(Analysis and Design):把需求分析的结果转化为实现规格。实现(Implementation):定义代码的组织结构、实现代码、单元测试、系统集成。测试(Test):校验各自子系统的交互与集成。确保所有的需求被正确实现并在系统发布前发现错误。发布(Deployment):打包、分发、安装软件,升级旧系统;培训用户及销售人员,并提供技术支持。制定并实施beta测试。 配置管理(Configuration and Change Management):跟踪并维护系统所有产品s的完整性和一致性。项目管理(Project Management):为计划、执行和监控软件开发项目提供可行性的指导;为风险管理提供框架。环境(Environment):为组织提供过程管理和工具的支持。 Operating Systems Gao Haichang , Software School, Xidian University 19 F在 时 间 维 上 , 为 了 能 够 方 便 地 管 理 软 件 开 发 过 程 , 监 控软 件 开 发 状 态 , RUP把 软 件 开 发 周 期 划 分 为 若 干 Cycles,每 个 Cycle生 成 一 个 产 品 的 新 的 版 本 。 每 个 Cycle都 依 次 由四 个 连 续 的 阶 段 (phase)组 成 :起始阶段(Inception):定义最终产品视图、商业模型并确定系统范围。演化阶段(evaluation):设计及确定系统的体系结构,制定工作计划及资源要求。构造阶段(construction):构造产品并继续演进需求、体系结构、计划直至产品提交。提交阶段(Transition ):把产品提交给用户使用。 Operating Systems Gao Haichang , Software School, Xidian University 20 F具 有 迭 代 式 的 增 量 开 发 、 使 用 实 例 驱 动 、 以 软 件体 系 结 构 为 核 心 三 个 鲜 明 特 点 , 这 使 得 RUP非 常适 宜 于 开 发 复 杂 、 技 术 难 度 大 、 需 求 多 变 、 高 风险 的 项 目 。F又 是 可 裁 剪 的 软 件 开 发 过 程 框 架 , 各 组 织 可 以 根据 自 身 及 项 目 特 点 对 RUP进 行 裁 减 , 在 某 些 情 况下 RUP甚 至 可 以 蜕 化 为 瀑 布 式 开 发 模 型 。 Operating Systems Gao Haichang , Software School, Xidian University 21 模 型 名 称 技 术 特 点 适 用 范 围瀑 布 模 型 简 单 , 分 阶 段 , 阶 段 间 存 在 因 果 关 系 , 各 个 阶 段完 成 后 都 有 评 审 , 允 许 反 馈 , 不 支 持 用 户 参 与 ,要 求 预 先 确 定 需 求 需 求 易 于 完 善 定 义 且 不 易 变 更 的 软件 系 统快 速 原 型 不 要 求 需 求 预 先 定 义 , 支 持 用 户 参 与 , 支 持 需 求的 渐 进 式 完 善 和 确 认 , 能 够 适 应 用 户 需 求 的 变 化 需 求 复 杂 、 难 以 确 定 、 动 态 变 化 的软 件 系 统增 量 模 型 软 件 产 品 是 被 增 量 式 地 一 块 块 开 发 的 , 允 许 开 发活 动 并 行 和 重 叠 技 术 风 险 较 大 、 用 户 需 求 较 为 稳 定的 软 件 系 统迭 代 模 型 不 要 求 一 次 性 地 开 发 出 完 整 的 软 件 系 统 , 将 软 件开 发 视 为 一 个 逐 步 获 取 用 户 需 求 、 完 善 软 件 产 品的 过 程 需 求 难 以 确 定 、 不 断 变 更 的 软 件 系统螺 旋 模 型 结 合 瀑 布 模 型 、 快 速 原 型 模 型 和 迭 代 模 型 的 思 想 ,并 引 进 了 风 险 分 析 活 动 需 求 难 以 获 取 和 确 定 、 软 件 开 发 风险 较 大 的 软 件 系 统RUP 可 改 造 、 扩 展 和 剪 裁 , 可 以 对 它 进 行 设 计 、 开 发 、维 护 和 发 布 , 强 调 迭 代 开 发 复 杂 和 需 求 难 以 获 取 和 确 定 的 软 件系 统 , 软 件 开 发 项 目 组 拥 有 丰 富 的软 件 开 发 和 管 理 经 验 Operating Systems Gao Haichang , Software School, Xidian University 22 F在 实 施 软 件 项 目 之 前 , 必 须 定 义 或 者 选 择 一 个 适合 于 该 软 件 项 目 的 软 件 过 程 Operating Systems Gao Haichang , Software School, Xidian University 23 F选 择 合 适 的 软 件 过 程 模 型 , 需 要 考 虑 :软 件 开 发 组 织 和 软 件 项 目 的 特 征软 件 项 目 的 风 险软 件 项 目 是 否 需 要 预 先 向 用 户 展 示 原 型需 要 多 少 经 验 和 技 巧 来 成 功 地 使 用 软 件 过 程 模 型软 件 开 发 组 织 和 软 件 项 目 组 人 员 的 经 验 和 能 力技 术 的 成 熟 度 Operating Systems Gao Haichang , Software School, Xidian University 24 F确 定 和 描 述 软 件 开 发 活 动 , 需 要 从 以 下 几 个 方 面予 以 定 义 和 描 述 :名 称 : 说 明 软 件 开 发 活 动 的 名 称任 务 : 说 明 该 软 件 开 发 活 动 的 任 务输 入 : 说 明 实 施 该 活 动 所 必 需 的 输 入 u, 即 开 展 活 动 所需 满 足 的 前 提 条 件输 出 : 说 明 该 活 动 实 施 完 成 之 后 所 产 生 的 结 果实 施 : 说 明 如 何 实 施 该 活 动 Operating Systems Gao Haichang , Software School, Xidian University 25 F确 定 和 描 述 软 件 开 发 活 动 间 的 关 系 :执 行 时 序 关 系 : 描 述 软 件 开 发 活 动 之 间 执 行 时 间 的 先后 关 系逻 辑 依 赖 关 系 : 一 个 软 件 开 发 活 动 的 执 行 需 要 其 他 软件 开 发 活 动 实 施 所 产 生 的 结 果 Operating Systems Gao Haichang , Software School, Xidian University 26 F文 档 化 软 件 过 程全 面 : 包 含 软 件 项 目 开 发 所 需 要 的 所 有 软 件 活 动可 操 作 : 各 个 软 件 开 发 活 动 应 易 于 实 施简 洁 、 易 于 理 解 : 不 包 含 无 意 义 的 软 件 开 发 活 动 , 描述 简 洁 , 易 于 理 解易 于 改 进 : 能 够 不 断 对 软 件 开 发 活 动 进 行 改 进 和 提 高 Operating Systems Gao Haichang , Software School, Xidian University 27 F评 审 软 件 过 程是 否 全 面是 否 正 确 和 准 确是 否 符 合 软 件 开 发 组 织 和 软 件 项 目 的 特 点描 述 是 否 简 洁 、 直 观 , 易 于 理 解是 否 易 于 改 进 Operating Systems Gao Haichang , Software School, Xidian University 28 F认 可 、 发 布 和 培 训 Operating Systems Gao Haichang , Software School, Xidian University 29 F针 对 所 选 案 例 , 根 据 第 二 章 ( 过 程 模 型 及 生 命 期 )所 学 内 容 , 参 考 教 材 97页 的 例 子 , 撰 写 所 开 发 项目 的 开 发 过 程 模 型 。
展开阅读全文