软件工程5-1.pptVIP

  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文档。上传文档
查看更多
5.1.1 体系结构的重要性和意义 构造一栋房屋 构建一个高层建筑?复杂! 软件体系结构的复杂性=技术的+管理的 理解软件系统的复杂性因素 为什么体系结构在软件系统中具有如此的重要性? 一个表现体系结构作用和价值的典型案例 软件无线电与体系结构 Software Radio Architecture 5.1.2 体系结构定义 软件体系结构是:由结构和功能各异、相互作用的部件集合,按照层次构成。它包含了系统的基础构成单元、它们之间的作用关系、在构成系统时,它们的集成方法以及对集成约束的描述。 软件的体系结构是关于软件系统组织的配置定义 定义了:组成系统的结构(结构元素)和部件; 定义了:结构与部件间特定的构成和协作关系; 定义了:系统继承集成方法和约束; 因此,系统中的子系统定义,是系统体系构建(集成)的结果,而不是开始; 体系结构不但决定了系统的物理构成,也支配了开发的组织行为(需求分配、范围和任务定义、进度计划、测试方案、集成方法、配置项与基线管理……),这是现代软件工程更注重的地方。 内容与形式、过程与结果 体系结构的类型与作用 体系结构在不同的阶段,依据层次和细节的不同,分为概略型、需求型和设计型 概略型是上层宏观的描述,反映系统最上层的部件和连接关系 需求型是对概略结构的深入表达,以满足用户功能和非功能需求的表达为主 设计型从设计实现的角度,对需求型进行更深入的描述表达,需要从不同的侧面/视图,设计系统的各个层面的各个部件和连接结构。在这个层面上的描述,将直接为系统实现和性能分析服务 体系结构的类型与作用 在项目规划阶段:体系结构是项目可行性、工程复杂度、计划进度、投资规模和风险预测的依据(概略型) 在需求分析阶段:体系结构是开发团队与用户进行需求交互沟通的表达形式和结果(需求型) 在系统设计阶段:体系结构是系统设计分解的基础 在项目实施阶段:体系结构是工作分工、人员安排、组织协调、绩效管理的依据 在项目评估阶段:体系结构是性能测试和评估的依据 在维护升级阶段:体系结构是在保证系统整体合理性、正确性、性能和可控的维护成本的前提下,软件系统修改、扩充、升级的基础模型 好的体系结构的特征 设计灵活和可伸缩性的 考虑全面并可扩展的 思路简单明了、直接可以理解的 结构划分和关系定义清楚的 模块职责明确和分布合理的 效益和技术综合平衡的 UML:描绘系统体系结构 体系结构的视角 对体系结构的不同认识,反映在看待体系结构的视角上,也有不同,形成了不同的体系结构概念和描述形式: 主要的有:结构风格、设计模式、模型和关键部件、ADL语言 体系结构风格(风格:一种现实存在的抽象) 数据流系统:顺序批处理、管道和过滤器 调用-返回系统;主/子程序 面向对象系统:层次结构 独立部件:通信进程、事件隐式调用 虚拟机:解释器、规则系统 以数据(库)为中心的系统:数据库、超文本、黑板 特殊领域风格:过程控制、模拟器 特殊结构风格:分布式处理、状态转移系统 体系结构的层次 系统是由许多层次构成的,每个层次处理不同的问题 每个层次都有二个方面组成:部件和规则 构成系统的原始的或集成的部件 由部件集成为系统的集成规则(静态) 为系统提供语义的行为规则(动态) 软件设计发展过程中,对体系结构认识的三个层次 执行级 包括存储器的映射、数据地址的安排、堆栈和寄存器的分配等,在此,部件是硬件,集成和行为规则是非常明确具体的 代码级 包括算法和数据结构的选择。在此,部件是程序设计语言的字符、指针、进程控制等,集成的是记录、数组和过程 结构级 包括与部件相关联的系统总体性能。在此,部件是模块、模块的相互关系,它指明从模块到子系统、到系统的集成 在上世纪80年代,软件开发者关注的是代码级的,如今,关注的是结构级 “结构级”体系结构的认识 软件体系结构的“结构”元素:部件 系统的总体组织架构、全局控制、通信协议、同步、数据存取、设计元素的功能、设计元素的组织、规模、性能、设计方案的选择等 部件不只是有形的、物理的程序片段:还包括“结构件” 软件体系结构的集成规则和行为规则 体系结构是关于软件的系统级层次上的组成和行为 体系结构是由软件部件和部件之间的联系组成 部件的描述应包括:部件功能、结构特征、非功能特征 部件的概念,根据设计方法的不同,代表不同的对象:类/对象、库/包、构件/组件、制品/配置项/基线等 RUP的统一过程结构 体系结构和循环 体系结构的四视图观点 体系结构的模型和关键部件观点 复杂的Internet系统 复杂的商业系统的体系结构 5.1.3 体系结构基础 软件设计经历了40年的发展演化过程: 1、早期的模块化程序设计和自顶向下逐步求精的结构化方法——面向结构的方法 2、由数据库技术的发展,带来的将数据流和数据结构,转化

文档评论(0)

7号仓库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档