没有合适的资源?快使用搜索试试~ 我知道了~
尹永琪-201805130168-学习报告1
需积分: 0 0 下载量 137 浏览量
2022-08-08
23:14:38
上传
评论
收藏 82KB DOCX 举报
温馨提示
试读
6页
一种经典的架构框架是“4+1架构视图模型”[PK95],其基本思想是需要采用若干个相互平行、且具有不同架构视点的架构视图,具体来说就是逻辑视图、进程视图、开发视
资源详情
资源评论
资源推荐
书名 : Software Architecture in Practice
架构(Architecture)一词源自建筑领域,尽管看起来与软件设计毫无关联,但人们从上世
纪 60 年代起就注意到两者的相似性[PHJ06],并从结构和工程等方面大量借鉴了这个古老的
学科,软件设计也因此获益匪浅[GHJV95]。当然不仅是软件,这个词也被其它领域广泛借鉴,
例如作为计算机基础的体系结构(Computer architecture),后者主要指计算机的物理结构或
者 CPU 指令集。又比如企业架构(Enterprise architecture)、解决方案架构(Solution architecture)
或者信息架构(Information architecture)等,则是表示针对各自问题域的专业性实践集合。
虽然架构与设计同属于本系列的主题之一,但迄今为止我们都很少提及。一方面是因为,
作为诞生于上世纪 90 年代的 buzz word,软件架构是在软件设计的基础上发展而来的,前
者继承了后者的许多核心思想,例如模块化、原则、模式等,逐渐形成了更加庞大的体系。
另一方面,架构一词如今具有极其丰富的含义,以至于可能达到阻碍交流的地步,因此确有
必要首先对部分概念予以澄清。此外,除非特别说明,本系列文章中的架构均指软件架构。
定义和解释
架构是指一个系统在其所在环境中的基本概念和属性,这体现为系统的元素、关系及其
设计和演进的原则。
虽然这是 ISO/IEC 42010 对架构的正式定义,另一种 USP(Unique selling proposition)定
义则更详细地解释了这一点:
架构是一系列重要的决策,涉及描述软件系统的组织、确定结构化元素及其接口、确定
元素在协作中的特定行为、指导结构和行为元素通过组合逐渐形成较大子系统的风格(涉及
元素、接口、协作和组织等)。此外还要考虑用途、功能、性能、适应力、可重用性、可理
解性、经济性、技术限制及其权衡、美学等因素。
以上定义明确指出了架构的表示(Representation)、质量属性(Quality attribute)以及风格
(Style)等核心内容。此外,针对已有的架构方案,有时需要进行专门的架构评估(Architecture
evaluation),从而提前发现问题并控制潜在风险。本文剩余部分将作进一步讨论。
架构表示
由于架构本身的丰富性,采用适当方法描述架构就变得非常重要,一种基本的架构描述
工具是架构视图(Architecture view),其被用于表示架构在解决特定问题时所体现的结构化信
息。由于完整的架构一般会涉及众多干系人,在单一视图中无法清楚表示所有信息,因此为
了进一步在视图中区分来自不同干系人的诉求,采用架构视点(Architecture viewpoint)聚焦
于某一类架构决策,并采用特定的标记和建模技术建立对应的架构视图。常见的架构视点有
功能、逻辑、数据、模块、组件-连接器、需求、实现、并发、性能、安全、部署、用户使
用及反馈等,由此可见其对应的架构视图也就非常丰富。
以组件-连接器类型的架构视图为例,该架构视图定义了系统中的可计算组件及其交互
方式,其中组件是指可独立运行、且支持交互或存储数据的软件单元,连接器则被用于描述
白绍伟
- 粉丝: 14
- 资源: 287
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0