信息系统架构基本概念及发展_2.信息系统架构的定义

1.几种架构的定义

信息系统架构仍在不断发展中,还没有形成一个公认的定义,这里举出几个定义。

定义1:软件或计算机系统的信息系统架构是该系统的一个(或多个)结构,而结构由软件元素、元素的外部可见属性及它们之间的关系组成。

定义2:信息系统架构为软件系统提供了一个结构、行为和属性的高级抽象,由构件系统元素的描述、这些元素的相互作用、指导元素集成的模式及这些模式的约束组成。

定义3:信息系统架构是指一个系统的基础组织,它具体体现在:系统的构件,构件之间、构件与环境之间的关系,以及指导其设计和演化的原则上。

前两个定义都是按"元素-结构-架构"这一抽象层次来描述的,它们的基本意义相同,其中定义1较通俗。该定义中的"软件元素"是指比"构件"更一般的抽象,元素的"外部可见属性"是指其他元素对该元素所做的假设,如它所提供的服务、性能特征等。

2.对定义的说明

为了更好地理解信息系统架构的定义,特作如下说明:

(1)架构是对系统的抽象,它通过描述元素、元素的外部可见属性及元素之间的关系来反映这种现象。因此,仅与内部具体实现有关的细节是不属于架构的,即定义强调元素的"外部可见"属性。因此,仅与内部具体实现有关的细节是不属于架构的,即定义强调元素的"外部可见"属性。

(2)架构由多个结构组成,结构是从功能角度来描述元素之间的关系的,具体的结构传达了架构某方面的信息,但是个别结构一般不能代表大型信息系统架构。

(3)任何软件都存在架构,但不一定有对该架构的具体表述文档。即架构可以独立于架构的描述而存在。如文档已过时,则该文档不能反映架构。

(4)元素及其行为的集合构成架构的内容。体现系统由哪些元素组成,这些元素各有哪些功能(外部可见),以及这些元素间如何连接与互动。即在两个方面进行抽象:在静态方面,关注系统的大粒度(宏观)总体结构(如分层);在动态方面,关注系统内关键行为的共同特征。

(5)架构具有"基础"性:它通常涉及解决各类重复问题的通用方案(复用性),以及系统设计中影响深远的各项重要决策。

(6)架构隐含有"决策",即架构是由架构设计师根据关键的功能和非功能性需求(质量属性及项目相关的约束)进行设计与决策的结果。不同的架构设计师自身的水平是一种约束,不断学习和积累经验才是摆脱这种约束走向优秀架构师的必经之路。

3.商业背景下的信息系统架构对企业的重要性

(1)影响架构的因素。软件系统的项目干系人(客户、用户、项目经理、程序员、测试人员、市场人员等)对软件系统有不同的要求、开发组织有不同的人员知识结构、架构设计师的素质与经验、当前的技术环境等方面都是影响架构的因素。这些因素通过功能性需求、非功能性需求、约束条件及相互冲突的要求,影响架构设计师的决策,从而影响架构。

(2)架构对上述诸因素具有反作用,例如,影响开发组织的结构。架构描述了系统的大粒度总体结构,因此可以按架构进行分工,将项目组分为几个工作组,从而是开发有序;影响开发组织的目标,即成功的架构为开发组织提供了新的商机,这归功于:系统的示范性、架构的可复用性及团队开发经验的提升,同时,成功的系统将影响客户对下一个i系统的要求等。这种反馈机制构成了架构的商业周期。

相关推荐
省钱兄--zs10 小时前
西安24小时自助健身房解决方案实战:系统开发与部署全流程指南
java·spring boot·系统架构·intellij-idea·需求分析
weixin_1772972206910 小时前
从零搭建企业AI知识库:系统架构与核心模块拆解
人工智能·系统架构
辛迪聊物业数字化15 小时前
园区物业管理系统架构拆解:从招商租赁到IoT对接的全链路实现
物联网·系统架构
2601_9570848417 小时前
服装供应链系统SCM丨ERP 和 SCM 怎么打通集成?一次对接的七道工序与接口契约清单
系统架构·scm·服装供应链系统·服装scm·服装供应链
吴建旭 智宅焕18 小时前
智能家居品牌方渠道交付能力的系统架构:从产品供应到全国交付基础设施接入
系统架构·智能家居
阿俊-全栈开发19 小时前
LikeShop单商户Java商城如何从容承接高并发流量?
java·开发语言·spring boot·spring·系统架构
吴建旭 智宅焕21 小时前
智能家居全国交付基础设施的规则化演进:创始人角色从操作执行到规则维护的系统架构
系统架构·智能家居
数字新视界2 天前
U位资产管理系统发布全面数字化监控解决方案
嵌入式硬件·物联网·系统架构·机房管理·动力与环境监控系统
zxcvb1532 天前
医院容灾备份系统架构设计:从基础设施到恢复验证的三层实践
系统架构
一切皆是因缘际会3 天前
掌控信息论:同源星际通信基础理论 上
人工智能·ai·系统架构·分布式系统·信息论·星际通信·物理计算机