软件架构设计之入门_第1页
软件架构设计之入门_第2页
软件架构设计之入门_第3页
软件架构设计之入门_第4页
软件架构设计之入门_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件架构设计之入门 郭金飞 2014-05 引言三表法 架构设计思想 架构定义 架构设计要解决的问题 架构视图法 架构设计过程 架构设计之模块划分 纲要 墨子的“三表法” 墨子非命上:“故言必有三表。何谓三表?子墨子言曰: 有本之者,有原之者,有用之者。于何本之?上本之于古者 圣王之事。于何原之?下原察百姓耳目之实。于何用之?废以 为刑政,观其中国家百姓人民之利。此所谓言有三表也。” 第一个标准是言必有据;参考书目 第二个标准是言必据实;结合自己实际情况 第三个标准是是否有效;理论联系实际,在实践中检验理论 参考书推荐 架构设计思想 分而治之 迭代细化 软件架构定义 软件架构软件架构 = 组件

2、组件 + 交互交互 软件架构软件架构 = 重要决策集合重要决策集合 相相 辅辅 相相 成成 “组件组件”可以指代子系统、框架、模块、类等不同粒度的软件单元可以指代子系统、框架、模块、类等不同粒度的软件单元 架构和设计 架构属于设计,但并非所有设计都属于架构。 架构属于高层设计 架构关注系统的分与合 架构受众多、决策复杂 架构对系统整体质量有重大影响 架构对并行开发也有影响 我们为什么需要架构设计。 问题域的复杂性 认知思维的局限性 架构是问题域到解决方案的桥梁 软件架构为谁而设计 客户客户 业务目标&业务规则 约束条件:上线时间、预算限制、集成需求 用户用户 功能属性:完整性、合理性 运行期质

3、量:性能、易用性、可伸缩性、持续可用性 开发人员开发人员 开发期质量:可扩展性、可重用性、可移植性、易理解性、易测试性 系统划分:分层、分模块、交互接口 管理人员管理人员 分工管理 协调控制 评估监控 软件架构视图 架构视图体现了分而治之的设计思想 架构视图不仅是软件架构归档的方式,更是架构 设计的思维方式 软件架构设计过程节奏 需求要全 矛盾关系 追溯关系 洞察需求 关键功能 关键质量 概念架构 多架构视图 模块划分 接口定义 架构细化 软件架构设计过程步骤 需求 分析 领域 建模 确定关 键需求 概念架 构设计 细化架 构设计 架构 验证 需求分析成果需求分析成果高层设计成果高层设计成果架

4、构设计规格架构设计规格 功能功能 质量质量 约束约束 用例模型用例模型 领域领域 模型模型 关键功能关键功能 关键质量关键质量 概念概念 架构架构 细化细化 架构架构 架构架构 原型原型 软件架构设计过程概念架构设计 软件架构设计过程概念架构设计 软件架构设计过程概念架构设计 软件架构设计过程细化架构设计 软件架构设计之模块划分 划分依据 分层模式分层模式功能树功能树 用例驱动用例驱动 设计思想 设计成果 水平水平切分切分 (分层(分层) 垂直垂直切分切分 (分模块)分模块) 将类分组将类分组 模块划分结构模块划分结构 软件架构设计之分层 展现层 业务层 数据层 三三层架构层架构 UI交互层 问题领域层 数据管理层系统交互层 四层架构四层架构 软件架构设计之分模块 软件系统软件系统 功功 能能 模模 块块 功功 能能 模模 块块 功功 能能 模模 块块 通用模块通用模块 功功 能能 模模 块块 模块模块划分划分 软件架构设计之模块划分步骤 分层分层 分层细化分层细化 分区分区 封装细粒度模块封装细粒度模块 通用模块通用模块 抽取通用模块抽取通用模块 通用机制通用机制 通用机制框架化通用机制框架化 总结 软件架构的思想 软件架构的定义及要解决的问题 软件架构设计的5种视图法:逻辑视图、 物理视图、开发视图、运行视图、数据 架构 软件架构设计过程及

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论