ARC110 软 件 构 架 设 计 的 原 则 和 指 南
课 程 内 容 概 述 介 绍 和 引 言 软 件 构 架 和 构 架 师 软 件 构 架 的 设 计 模 式 框 架 和 参 照 设 计
自 我 介 绍 第 一 代 自 费 留 学 生 : 美 国 南 伊 利 诺 州 立 大 学 (SIUE) 电 机 工 程 学 士 (1984) 及 硕 士 学 位 (1985) 历 任 OwensIllinois, Reynolds Metals, Attachmate, Motorola 等 公 司 的 高 级 系 统 工 程 师 软 件 开 发 工 程 师 产 品 经 理 项 目 经 理 1998 年 加 入 微 软,98, 982001 为 ActiveSync 3.x 产 品 发 行 项 目 经 理,2001, 200120042004 年 为 Windows XP Embedded 嵌 入 式 操 作 系 统 的 产 品 设 计 项 目 经 理 2004 初 至 今 为 微 软 总 部 中 国 事 务 办 公 室 首 席 项 目 经 理
软 件 构 架 和 构 架 师
什 么 是 构 架 设 计 和 构 架 师?
建 筑 构 架 Ar chi tec ture ture [áarki tèkchər] 1. building design: the art and science of designing and constructing buildings 2. building style: a style or fashion of building, especially one that is typical of a period of history or of a particular place 建 筑 构 架 设 计 建 筑 设 计 : 楼 房 设 计 和 结 构 建 造 的 艺 术 和 科 学 建 筑 风 格 : 反 映 楼 房 在 特 定 的 时 间 期 间 和 地 域 范 围 的 风 格
计 算 机 系 统 和 软 件 构 架 Ar chi chi tec ture ture [áarki tèkchər] Structure of computer system: the design, structure, and behavior r of a computer system, microprocessor, or system program, including the characteristics of individual components and how they interact 计 算 机 及 软 件 的 构 架 和 设 计 计 算 机 系 统 构 架 : 计 算 机 系 统 机 芯 和 系 统 程 序 的 设 计 结 构 和 行 为, 包 括 组 件 的 特 征 和 它 们 之 间 的 互 动 软 件 构 架 : 软 件 系 统 的 结 构 和 风 格 设 计 使 用 方 案 和 行 为 的 设 计, 以 及 软 件 功 能 组 件 的 区 分 归 类 组 件 接 口 和 它 们 之 间 数 据 交 换 的 规 范 和 标 准
软 件 构 架 设 计 的 目 的 1. 使 软 件 系 统 能 够 达 到 为 用 户 提 供 最 佳 的 功 能 和 服 务 的 状 态 2. 使 软 件 与 系 统 的 结 合 达 到 最 佳 运 行 性 能 3. 合 理 和 最 佳 地 利 用 系 统 的 各 项 资 源 4. 在 软 件 的 开 发 部 署 运 行 维 护 升 级 换 代 上 为 提 供 最 大 的 灵 活 性 5. 为 系 统 提 供 最 大 的 安 全 性 稳 定 性 和 可 靠 性, 以 及 各 项 质 量 素 质
构 架 师 的 素 质 Explorer 探 索 者 Designer 设 计 师 Advocate 倡 导 人
软 件 构 架 师 应 该 起 到 的 作 用 1. 探 索 者 2. 设 计 师 3. 倡 导 人 为 企 业 的 商 业 利 益 不 断 探 索 新 技 术 的 运 用 为 提 高 竞 争 能 力 寻 找 和 尝 试 优 化 的 解 答 方 案 将 优 秀 的 功 能 和 性 能 ( 强 度 ) 可 用 性 和 使 用 性 ( 美 观 ) 设 计 到 软 件 中 去 为 开 发 出 真 正 能 为 用 户 提 供 最 佳 服 务 的 软 件 而 做 用 户 利 益 的 倡 导 人 倾 听 和 观 察 用 户 的 回 馈 推 动 开 发 团 队 建 立 前 瞻 性 的 战 略 眼 光
软 件 构 架 的 设 计
构 架 设 计 的 责 任 和 目 的 构 架 设 计 首 先 是 设 计 为 解 决 实 际 问 题 所 需 提 供 的 答 案 的 思 路 和 计 划 你 的 责 任 是 创 立 出 一 个 能 够 满 足 这 样 需 要 的 构 架 为 了 使 整 个 开 发 团 队 都 能 为 达 到 同 样 的 目 标 而 努 力, 构 架 师 必 须 对 不 同 的 听 众 用 不 同 的 工 具 和 方 法, 将 设 计 思 路 准 确 无 误 地 向 大 家 沟 通 建 立 共 识
构 架 设 计 所 需 要 思 考 的 问 题 客 户 和 市 场 最 需 要 解 决 的 问 题 是 什 么? 我 们 是 否 在 解 决 真 正 需 要 解 决 的 正 确 问 题? 开 发 中 的 局 限 是 什 么? 我 们 究 竟 需 要 开 发 什 么 样 的 功 能 多 少 功 能, 才 能 满 足 需 要? 是 否 有 更 灵 活 或 简 单 的 设 计? 这 个 软 件 在 设 计 部 署 运 行 维 护 升 级 等 方 面 是 否 有 特 别 要 求?
构 架 设 计 的 思 考 往 往 从 需 求 开 始 我 所 要 开 发 的 软 件 和 系 统 究 竟 是 解 决 什 么 问 题, 各 种 需 求 是 什 么? 我 从 哪 里 得 到 和 总 结 各 种 需 求? 我 应 该 考 虑 那 些 因 素 使 我 能 够 得 到 完 整 的 需 求 分 析?
如 果 一 群 人 来 到 一 个 草 地 进 行 踢 球 比 赛 如 果 既 没 有 球 门 球 场 边 界, 也 没 有 比 赛 规 则 他 们 可 以 毫 无 目 标 地 到 处 跑 动 以 至 于 筋 疲 力 尽 但 是 他 们 能 够 达 到 任 何 比 赛 的 目 的 吗?
要 赢 得 比 赛 必 须 要 能 够 进 球 要 进 球 必 须 要 有 比 赛 规 则 场 地 边 界 和 球 门 你 的 开 发 项 目 的 赢 球 规 则 和 球 门 是 什 么? 项 目 的 需 求 是 你 的 赢 球 规 则 和 球 门
你 从 哪 里 得 到 需 求 分 析 的 信 息 和 数 据? 项 目 的 合 同 书 对 市 场 的 调 查 和 对 竞 争 者 产 品 的 分 析 对 使 用 者 的 调 查 及 回 馈 总 结 对 用 户 使 用 产 品 过 程 的 观 察 访 问 用 户 的 谈 话 记 录 用 户 对 系 统 的 升 级 要 求 以 往 类 似 项 目 的 总 结 分 析 现 有 系 统 的 问 题 报 告 和 维 护 历 史 记 录 对 用 户 的 售 后 服 务 和 技 术 支 持 的 历 史 项 目 资 助 者 的 要 求
完 整 的 需 求 分 析 必 须 考 虑 的 各 种 因 素 功 能 需 求 是 描 述 一 个 产 品 或 项 目 该 做 什 么, 该 提 供 什 么 功 能, 该 完 成 什 么 任 务 的 总 结
用 质 量 属 性 的 选 择 帮 助 确 定 项 目 的 需 求 范 围 利 用 质 量 标 准 的 互 相 对 立 和 制 约 因 素 来 决 定 开 发 工 作 的 侧 重 点 和 优 先 权 对 客 户 重 要 的 质 量 标 志 对 开 发 者 重 要 的 质 量 标 志 可 靠 性 效 率 性 灵 活 性 完 整 性 兼 容 性 可 维 护 性 多 用 转 换 性 稳 定 性 重 复 使 用 性 健 全 性 可 测 性 可 用 性 可 靠 性 (Availability) 效 率 性 (Efficiency) 灵 活 性 (Flexibility) 完 整 性 (Integrity) 兼 容 性 (Interoperability) 可 维 护 性 (Maintainability) 多 用 转 换 性 (Portability) 稳 定 性 (Reliability) 重 复 使 用 性 (Reusability) 健 全 性 (Robustness) 可 测 性 (Testability) 可 用 性 (Usability)
需 求 影 响 到 甚 至 决 定 了 软 件 的 构 架 项 目 的 总 体 范 围 不 同 功 能 的 开 发 的 重 要 性 和 顺 序 优 先 权 与 外 部 组 件 和 系 统 的 接 口 规 范 和 标 准 开 发 资 源 的 分 配 开 发 时 间 表 的 制 定 软 件 各 质 量 属 性 的 选 择 和 通 过 标 准 的 制 定 对 软 件 各 种 质 量 的 测 试 范 围 软 件 发 行 通 过 关 口 的 检 测 标 准
良 好 的 需 求 分 析 的 特 征 是 什 么? Specific S 具 体 的 : M Measurable A R T Actionable Realistic TimeBound 具 体 的 : 每 个 所 需 开 发 的 功 能 都 是 清 晰 地 定 义 了 的 可 衡 量 的 : 整 个 系 统 和 每 个 组 件 的 功 能 完 整 性 和 质 量 程 度 都 具 备 可 以 衡 量 和 检 测 的 标 准 可 付 诸 行 动 的 : 每 个 需 求 都 可 以 用 具 体 的 功 能 和 性 能 设 计 来 满 足 现 实 的 : 每 个 需 求 都 是 符 合 实 际 的 可 以 用 现 有 技 术 和 资 源 加 以 解 决 有 时 间 限 制 性 的 : 每 个 具 体 功 能 的 开 发 任 务 都 是 可 以 在 目 前 项 目 的 时 间 范 围 内 完 成 得 了 的
模 式 框 架 和 参 照 设 计
构 架 设 计 运 用 模 式 (Pattern)
古 代 埃 及 的 文 明 征 服 他 们 周 围 地 域 近 三 千 年 究 竟 是 什 么 使 得 他 们 具 备 比 周 边 其 它 文 明 更 强 的 竞 争 力 呢? 可 被 学 习 和 重 复 仿 效 的 文 明 模 式 知 识 是 来 之 不 易 的 用 模 式 的 方 法 将 知 识 经 验 和 学 问 代 代 相 传 让 后 人 可 以 学 习 前 人 超 越 前 人, 是 一 个 文 明 保 持 竞 争 力 维 护 利 益 和 争 取 优 势 具 有 不 可 替 代 的 关 键
模 式 在 知 识 理 念 中 的 地 位 抽 象 的 (abstract) 模 式 Patterns 应 用 设 计 框 架 Frameworks 应 用 实 践 的 参 照 设 计 (Reference Implementation) 具 体 的 (concrete) 平 台 (Platform)
模 式 的 概 念 模 式 (pattern) 是 人 为 设 计 的 思 路 它 是 为 解 决 某 个 或 某 些 具 体 问 题 的 答 案 和 解 答 参 照 模 式 并 不 是 一 个 完 成 的 具 体 软 件 设 计 或 源 代 码, 也 不 是 程 序 中 的 计 算 法 (Algorithm),, 而 是 为 解 决 共 有 问 题 的 通 用 的 解 答 思 路 和 方 案 模 版 (template) 模 式 常 常 被 整 合 在 一 起 或 集 中 使 用, 提 供 一 个 为 解 决 更 大 和 更 复 杂 的 问 题 的 解 答 方 案 而 组 成 一 个 解 决 问 题 的 通 用 框 架 (framework)
框 架 的 概 念 框 架 (framework) 是 在 使 用 模 式 的 基 础 上, 具 体 采 用 一 个 或 多 个 模 式, 为 解 决 具 体 的 应 用 问 题 而 建 立 的 答 案 框 架 为 开 发 软 件 和 系 统 提 供 了 一 个 高 效 率 的 开 发 环 境 统 一 的 平 台 和 开 发 工 具 最 高 效 率 地 采 用 被 验 证 了 的 模 式 技 术 组 件 推 动 软 件 再 使 用 和 质 量 的 提 高 避 免 重 复 开 发 充 分 利 用 大 量 共 享 的 开 发 知 识 目 前 的 通 用 框 架.NET Framework, Web Sphere, etc.
参 照 设 计 的 案 例 Mobile Client Software Factory RI: AdventureWorks2Go Mobile Device User Experience Views Presenters Business Logic Business Entities Business Logic Controllers WinForms CAB Extensions for Mobile Business Workflows Management Logging Deployment Configuration Security Web Service Credentials Authorization CA B User Experience Business Logic Data and Web Svc VS.NET Mobile Designer Gateway Form Factor Dot Density (DPI) Orientation Data Synchronizatio n Managing Subscriptions Occasionally Connected Web Services Queues Connectivity Managing Connection Physical Addresses Staging DB Business Data Configuration Data Deployment Data Web Services Business Transactions Logging Admin Console Replication Web Services Calls
信 息 系 统 的 构 架 设 计
信 息 系 统 的 构 架 和 组 件 IT System Architecture Components Interface Operation Signature Collaboration Interaction SubSystem Functional Requirements Operational Requirements More abstract views Functional Aspect of Architecture Conceptual Konceptuella views vyer Conceptual Logical views Konceptuella views vyer Conceptual Physical views Konceptuella views vyer Performance Availability Security System Management Viability Operational Aspect of Architecture Conceptual Konceptuella Conceptual views views vyer Conceptual Logical views Konceptuella views vyer Conceptual Physical views Konceptuella views vyer Node Connection Deployment Unit Walkthrough Application Focus More concrete views Infrastructure Focus Solution Development Hardware setup and operations Tools Patterns Installation packages Network of computers etc. Configuration tools, standards
总 结 借 用 模 式 的 概 念 来 进 行 设 计 采 用 先 进 的 设 计 框 架 和 工 具 来 提 高 开 发 的 效 率 把 信 息 系 统 的 构 架 设 计 的 框 架 来 作 为 进 行 你 的 系 统 的 设 计 思 考 参 照
进 一 步 参 照 由 笔 者 所 著 由 上 海 交 大 出 版 社 于 2005 年 8 月 出 版 的 软 件 开 发 项 目 管 理 一 书 书 本 销 售 : 各 地 新 华 书 店 互 动 网 上 书 店 :http://www.china: http://www.chinapub.com/computers/common/info.asp?id=27300 当 当 网 上 书 店 :http://www.dangdang.com/product_detail/product_detail.asp?produc: 批 量 廉 价 订 购 联 系 : http://www.dangdang.com/product_detail/product_detail.asp?product_id=9035233 上 海 交 通 大 学 出 版 社 发 行 科 地 址 : 上 海 市 番 禺 路 877 号 [200230] 电 话 :021: 02164071208,6447313664473136 联 系 人 : 常 韶 伟 (13916217583( 13916217583); 李 辉 (13817554140( 13817554140)
社 区 资 源 参 加 中 国 项 目 管 理 俱 乐 部 的 社 区 论 坛 讨 论 阅 读 作 者 和 其 他 读 者 的 留 言 向 作 者 提 问 及 提 供 反 馈 意 见 交 流 学 习 心 得 www.chinapmclub.com
问 答 谢 谢 大 家! 微 软 公 司 首 席 项 目 经 理 中 国 事 务 办 公 室 栾 跃
Add link to external Community website List top 3 newsgroups related to this slide 1 2 3 Advise when your next chat is Next user group meeting you will be at Add Other related 3rd party sites
讲 师 的 Chalk Talk 和 其 他 Session
与 本 次 主 题 有 关 的 Session 和 活 动