软件系统结构.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件系统结构

一. 软件体系结构(架构) 软件体系结构的定义 通常,软件体系结构通常被称为架构,指可以预制和可重构的软件框架结构。架构尚处在发展期,对于其定义,学术界尚未形成一个统一的意见,而不同角度 的视点也会造成软件体系结构的不同理解。比如,ANSI/IEEE 610.12-1990软件工程标准词汇对于体系结构定义是“体系架构是以构件、构件之间的关系、构件与环境之间的关系为内容的某一系统的基本组织结构以 及知道上述内容设计与演化的原理(principle)”;而Garlan Shaw模型的基本思想是:软件体系结构={构件(component),连接件(connector),约束(constrain)}。 对于软 件项目的开发来说,一个清晰的软件体系结构是首要的。传统的软件开发过程可以划分为从概念到实现的若干个阶段,包括问题定义、需求分析、软件设计、软件实 现及软件测试等。软件体系结构的建立就位于需求分析之后,软件设计之前。在建立软件体系结构时系统设计师主要从结构的角度对整个系统进行分析,选择恰当的 构件(Component)、构件间的相互作用以及它们的约束,最后形成一个系统框架(Framework)以满足用户的需求,为软件设计奠定基础。 软件体系结构风格 软件体系结构设计的一个核心问题是能否使用重复的体系结构模式,即能否达到结构级的软件重用。也就是说,能否在不同的软件体系中,使用同一体系结构。基于这个目的,学者们开始研究和实践软件体系结构的风格问题。 软 件体系结构风格(Software Architecture Style)是描述某一特定应用领域系统组织方式的惯用模式。它反映了领域中众多系统所有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一 个完整的系统。对软件体系结构风格的研究和实践促进了对设计的复用,一些经过实践证明的解决方案也可以可靠地用于解决新的问题。体系结构风格的不变部分使 不同的系统可以共享一个实现代码。只要系统是使用常用的、规范的方法来组织,就可使别的设计者很容易地理解系统结构。 Garlan和Shaw对通用体系结构风格进行如下分类: (1)数据流风格:批处理序列、管道/过滤器等; (2)调用/返回风格:主程序/子程序、面向对象风格、层次结构等。 (3)独立构件风格:进程通讯、事件系统等; (4)虚拟机风格:解释器、基于规则的系统等; (5)仓库风格:数据库系统、超文本系统、黑板系统等。 近年来,出现了许多新的体系结构风格,例如客户/服务器(Client /Server)结构、浏览器/服务器(Browser/Server)结构、正交(Orthogonal)结构、三层C/S结构等。 软件体系结构的建模研究 研究软件体系结构的首要问题是如何表示软件体系结构,即如何对软件体系结构建模。根据建模的侧重点的不同,可以将软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型。其中,最常用的是结构模型和动态模型。 研究热点 当前,体系结构仍是一个非常新的研究领域,其概念还相当模糊。但软件体系结构作为软件工程领域中的一个组成部分,已经取得了长足的发展,受到大多数软件系统设计和研究人员的重视。 软 件体系结构目前较活跃的研究方向包括:(1)软件体系结构形式基础的研究;(2)针对软件体系结构描述中特有的问题研究新的专门的高级语言;(3)建立用 于度量和评价软件体系结构的模型和方法;(4)建立面向专门领域的软件体系结构范型库。(5)把软件体系结构从目前的直觉和经验状态过渡到理论。 二.模式 模 式(Pattern)的概念最早由建筑大师Christopher Alexander于二十世纪七十年代提出,应用于建筑领域,八十年代中期由Ward Cunningham和Kent Beck将其思想引入到软件领域,Christopher Alexander将模式分为三个部分: (1)周境(Context,也可以称着上下文),指模式在何种状况下发生作用; (2)动机(System of Forces),意指问题或预期的目标; (3)解决方案(Solution),指平衡各动机或解决所阐述问题的一个构造或配置(Configuration)。 他 提出,模式是表示周境、动机、解决方案三个方面关系的一个规则,每个模式描述了一个在某种周境下不断重复发生的问题,以及该问题解决方案的核心所在,模式 即是一个事物(thing)又是一个过程(process),不仅描述该事物本身,而且提出了通过怎样的过程来产生该事物。这一定义已被软件界广为接受。 软件模式的应用对软件开发产生了重大的作用,主要表现在: (1)软件模式是人们在长期的设计软件、管理组织软件开发等实践中大量经验的提炼和抽象,是复用软件设计方法、过程管理经验的有力工具。模式类似

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档