架构的中文定义
软件体系架构是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。--百度百科
Software architecture refers to the high level structures of a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.The architecture of a software system is a metaphor, analogous to the architecture of a building.It functions as a blueprint for the system and the developing project, laying out the tasks necessary to be executed by the design teams.--wikipedia
软件体系架构是对软件系统组织,结构部分和系统包含接口的选择,集合部分的特定行为,较大子系统部分的构成和架构风格的重大决定的设置。--IBM
架构的描述
软件体系架构是构建计算机软件的基础,与建筑师设定建筑项目的设计原则和目标类似,是软件架构师或者系统架构师做出满足客户需求的基础设计方案。
是再一定的设计原则的基础上,对组成系统的各个部分从不同角度的搭配。
架构是在组件,彼此间与环境间的关系的基本结构。
相关概念
系统:是为实现某个特殊作用的组件的集合,专用系统包括个人应用,传统概念上的系统,子系统,产品线,产品系列,整个企业和其他利益集团,一个系统为了实现一个或多个任务而存在。
环境:决定了开发,操作,策略和其他影响系统的设置和条件。
任务:是指系统为了实现对对象设置的使用或操作。
涉众:是对于系统有利益关系或关注的个人,团队或组织。
架构定义行为
架构定义了结构元素的相互作用,这些相互作用实现了所期望的系统行为。
架构关注重要元素
当一个架构定义了结构和行为,它不会在意所有的结构和行为,只在意被认为重要的元素。重要的元素是指哪些有持久影响的,如结构部分的主要部分,与核心行为的相关元素。
架构平衡涉众需求
架构是为了实现涉众的需要而创造的,但是不可能满足所有涉众的需求,不同的涉众之间可能有需求冲突,所以架构要平衡涉众需求。
架构基于基本原理体现决策
架构重要部分不仅仅是最终结果。
架构可以符合一个架构样式
大部分的架构来源于有相似关注的共享系统,这种相似性可以描述为某种架构风格,一种架构展示一种经验,有利于架构师多次使用风格类似的架构。
架构被环境所影响
环境决定了系统范围,所以决定了系统架构。
为了软件的实用性,它必须运行在硬件上。
架构影响团队结构
架构定义了一组连贯的相关元素,顺序进程系统架构可能已定义了一组次序入口,计数管理,客户管理,实现,外部系统组成,持续性和安全性,每一组都要求不同的技术。
架构呈现在每一个系统中
架构文档化,很有价值,文档化的架构考虑更周全,如果架构没有文档化,很难证明满足了可维护性,最佳适应性的需求。
架构有特定的范围
不同形式的架构:企业架构,系统架构,组织架构,信息架构,硬件架构,应用架构,基础设施架构,每种类型的架构都定义了特定的范围
-------------------------------------------------------资料来源-----------------------------------------------
什么是软件架构
https://www.ibm.com/developerworks/cn/rational/rationaledge/content/mar06/eeles/
------------------------------------------------------------------------------------------------------------------