- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第章架构设计的视图法
《软件架构设计》温昱电子工业出版社 1
第5章 架构设计的5视图法
王建民
mcswjm@mail.sysu.edu.cn
2010年1月20 日
5.1 架构设计的5视图法
2
软件需求具有复杂性;
功能需求、约束、运行期质量属性和开发期质
量属性等不同种类的需求对架构设计的影响是
截然不同的;
基于多视图的架构设计方法在一定程度上将各
类需求分别对待,通过不同的架构设计视图分
别满足它们,从而确保重要的需求一一被满
足;
5.1 架构设计的5视图法
3
图5-1 架构设计的5视图方法
5.1 架构设计的5视图法
4
逻辑架构:
关注功能,不仅包括用户可见的功能,还包括
为实现用户功能而必须提供的“辅助功能模
块”;它们可能是逻辑层、功能模块和类等;
5.1 架构设计的5视图法
5
开发架构:关注程序包,不仅包括要编写的源
程序,还包括可以直接使用的第三方SDK和现
成框架、类库,以及开发的系统将运行于其上
的系统软件或中间件。
开发架构和逻辑架构之间可能存在一定的映射
关系:比如逻辑架构中的逻辑层一般会映射到
开发架构中的多个程序包,再比如开发架构中
的源码文件可以包含逻辑架构中的一到多个
类;
5.1 架构设计的5视图法
6
运行架构:关注进程、线程、对象等运行时概
念,以及相关的并发、同步、通信等问题。运
行架构和开发架构的关系:
开发架构一般偏重程序包在编译时期的静态依
赖关系,而这些程序运行起来之后会表现为对
象、线程、进程;
运行架构比较关注的是这些运行时单元的交互
问题;
5.1 架构设计的5视图法
7
物理架构:关注“ 目标程序及其依赖的运行库和
系统软件”最终如何安装或部署到物理机器,以
及如何部署机器和网络来配合软件系统的可靠
性、可伸缩性等要求。
物理架构和运行架构的关系:运行架构特别关
注目标程序的动态执行情况,
而物理架构重视目标程序的静态位置问题:物
理架构还要考虑软件系统和包括硬件在内的整
个IT系统之间是如何相互影响的;
5.1 架构设计的5视图法
8
数据架构:关注持久化数据的存储方案,不仅
包括实体及实体关系的数据存储格式,还可能
包括数据传递、数据复制和数据同步等策略。
数据架构和物理架构的关系:对于很多集成系
统,数据需要在不同系统之间传递、复制和暂
存,这往往要涉及到不同的物理机器:也就是
说,如果需要,可以把数据放在物理架构之中
考虑,以便体现集成系统的数据分布与传递特
征;
5.1 架构设计的5视图法
9
5视图架构设计方法的不同视图,所重点针对的需
求类型不同; 功能需求
逻辑架构
数据需求 数据架构 开发架构 开发期质量属性
物理架构 运行架构
文档评论(0)