电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

软件架构设计方法理论VIP免费

软件架构设计方法理论_第1页
1/8
软件架构设计方法理论_第2页
2/8
软件架构设计方法理论_第3页
3/8
1 /8 1. 软件架构概述 1.1 什么是软件架构 ◎ 软件架构的概念很混乱。如果你问五个不同的人,可能会得到五种不同的答案。 ◎ 软件架构概念主要分为两大流派: 组成派:软件架构 = 组件 + 交互。 决策派:软件架构 = 重要决策集。 ◎ 组成派和决策派的概念相辅相成。 1.2 软件架构和子系统、框架之间的关系 ◎ 复杂性是层次化的。 ◎ 好的架构设计必须把变化点错落有致地封装到软件系统的不同部分(即关注点分离)。 通过关注点分离,达到“系统中的一部分发生了变化,不会影响其他部分”的目标。 ◎ 软件单元的粒度: * 粒度最小的单元通常是“类”。 * 几个类紧密协作形成“模块”。 * 完成相对独立的功能的多个模块构成了“子系统”。 * 多个子系统相互配合才能满足一个完整应用的需求,从而构成了软件“系统”。 * 一个大型企业往往使用多套系统,多套系统通过互操作形成“集成系统”。 ◎ 软件单元的粒度是相对的。同一个软件单元,在不同场景下我们会以不同的粒度看待它。 ◎ 架构(Architecture)不等于框架(Framework)。 框架只是一种特殊的软件,框架也有架构。 ◎ 可以通过架构框架化达到“架构重用”的目的,如很多人都在用 Spring 框架提供 的 控 制 反 转 和依 赖 注入 来 构建 自 己 的架构。 1.3 软件架构的作用 ◎ 如果一个项 目的系统架构(包 括 理 论 基 础 )尚 未 确 定 ,就 不应该 进 行 此 系统的全 面 开 发。 -- Barry Boehm,《 Engineering Context》 ◎ 一个缺 陷 充 斥 的系统,将 始 终 是一个缺 陷 充 斥 的系统。 -- Timothy C. Lethbridge, 《 面 向 对象 软件工 程 》 ◎ 软件架构设计为什么这 么难 ? 因 为它是跨 越 现 实 世 界 与 计算 机 世 界 之间鸿 沟 的一座 桥 。 软件架构设计要完成从面 向 业务 到面 向 技 术 的转 换 ,在鸿 沟 上 架起 一座 桥 梁 。 需求 -> 架构设计 -> 软件架构 -> 系统开 发 -> 软件系统 ~~~~~~~~ ~~~~~~~~ ◎ 软件架构对新 产 品 开 发的作用: * 上 承 业务 目标。 * 下接 技 术 决策。 * 控 制 复杂性。 先 进 行 架构设计,后 进 行 详 细 设计和编 码 实 现 ,符 合“基 于问题 深 度分而治 之”的理 念。 * 组织 开 发。 2 /8 软件架构方案在小组中间扮...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

软件架构设计方法理论

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部