下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、华南理工大学软件体系结构复习资料Ch 1.【软件危机的表现】软件成本日益增长、开发进度难以控制、软件质量差、软件维护困难【软件危机的原因】用户需求不明确、缺乏正确的理论指导、软件规模越来越大、软件复杂度越来越高【软件危机的解决方案】管理、采用工程化的开发方法、加大软件重用、采用先进的开发工具【软件体系结构的意义】l 体系结构是风险承担者进行交流的手段l 体系结构是早期设计决策的体现l 软件体系结构是可传递和可重用的模型【构件】构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通讯接口和实现代码的复合体。【构件模型】构件模型是基于构件的
2、软件开发(CBSD)技术中的一个重要概念,构件模型通过描述构件的接口和实现以及构件之间的关联来描述软件体系结构。【构件获取】(1) 从现有构件中获得符合要求的构件,或作适应性修改。(2) 通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用的构件;(3) 从市场上购买现成的商业构件。(4) 开发新的符合要求的构件。【构件分类方法】基于关键字的检索、刻面检索法、超文本检索法【软件体系结构的定义】软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且
3、显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。【体系结构发现、演化与重用】l 发现:解决如何从已经存在的系统中提取软件的体系结构,属于逆向工程范畴。l 演化:由于系统需求、技术、环境、分布等因素的变化而最终导致软件体系结构的变动l 重用:属于设计重用,比代码重用更抽象。由于软件体系结构是系统的高层抽象,反映了系统的主要组成元素及其交互关系,因而较算法更稳定,更适合于重用。【基于体系结构的软件开发方法】问题定义软件需求软件体系结构软件设计软件实现【软件开发模型】(1) 以软件需求完全确定为前提的瀑布模型。(2) 在软件开发初始阶段只能提供基本需求时采用的渐进式开发模
4、型,如螺旋模型等。(3) 以形式化开发方法为基础的变换模型。Ch2.【】软件体系结构建模种类】(1) 结构模型(最常用)(2) 框架模型(3) 动态模型(最常用)(4) 过程模型(5) 功能模型【为什么要引入了软件体系结构】软件体系结构的引入使软件设计开发更加具体和形象,它的模型更使得软件过程更加方便和多样化。包括程序员在内的绝大多数系统的利益相关人员都借助软件体系结构来进行彼此理解、协商、达成共识或者相互沟通的基础,软件体系结构的模型可以应用到具有相似质量属性和功能需求的系统中,并能够促进大规模软件的系统级复用,在很多方面使得软件开发更加人性化。【体系结构的核心模型】(1) 构件:具有某种功
5、能的可重用的软件模板单元,表示了系统中主要的计算元素和数据存储,有复合构件和原子构件两种类型。(2) 连接件:构件之间的交互。(3) 配置:构件和连接件的拓扑逻辑和约束。(4) 端口:构件的接口由一组端口组成,每个端口表示构件和外部环境的交互点。(5) 角色:连接件的接口由一组角色组成,每个角色定义了连接件表示的交互的参与者,【软件过程】需求分析 建立体系结构 设计 实现 测试Ch3.【为什么要使用异构风格】(1) 不同的结构有不同处理能力的强项和弱点,一个系统的体系结构应该根据实际需要进行选择,以解决实际问题(2) 关于软件包、框架、通信以及其他一些体系结构上的问题,目前存在多种标准。即使在
6、某段时间内某一种标准占统治地位,但变动最终是绝对的。 (3) 一些遗留下来的代码,它们仍有效用,但是却与新系统有某种程度上的不协调。然而在许多场合,将技术与经济综合进行考虑时,总是决定不再重写它们。Ch4.【体系结构描述的方法】(1) 图形表达工具(2) 模块内连接语言 (3) 基于软构件的系统描述语言(4) 软件体系结构描述语言 【ADL定义】 ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。【C2描述系统】每个构件接口最多只能和一个连
7、接件相连,而连接件可以和任意数目的构件或连接件相连。请求消息只能向上层传送而通知消息只能向下层传送。描述下图系统:对meeting initiator描述:对体系结构描述:初始化赋予实例:【ACME描述系统】从四个不同的方面对软件体系结构进行描述,分别是结构、属性、设计约束、类型和风格。结构:7种,构件、连接件、系统、端口、角色、表述、表述映射对C/S的描述:【UML】UML是一种用可视化方法对软件系统进行描述、实施和说明的标准语言。1. 用例图功能的描述2. 类图3. 对象图类图的实例4. 序列图随着时间的推移,对象之间是如何交互的5. 协作图强调时间和顺序,则使用序列图;如果强调上下级关系
8、,则选择协作图6. 状态图7. 活动图8. 构件图9. 部署图Ch5.【软件体系结构动态性】交互式动态性、结构化动态性、体系结构动态性Ch6.【Web服务定义】Web服务是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,服务的描述通过WSDL,通过UDDI来发现和获得服务的元数据。主要目标就是在现有的各种异构平台的基础上构筑一个通用的平台无关、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。【Web服务的特点】应用的分布式、应用到应用的交互、平台无关性、使用标准协议规范、高度集成能力、完好的封装性、松散耦合【Web服务构成元素、基本协议】构成元素: 服务提供者、服务代理和服务请求操作:发布、发现和绑定。协议:简单对象访问协(SOAP)统一描述、发现和集成协议(UDDI) Web服务描述语言(WSDL)Ch7.Ch8.Ch9.【软件体系结构评估定义】通过成本相对较低的活动来分析结构中可能存在的风险,发现软件体系结构中影响系统质量的关键因素,并提出相应的改进措施,在此基础上验证软件的性能需求是否得到满足。【软件体系结构评估三种方法】(1) 基于调查问卷或检查表的评估方式 (2) 基于场景的评估方式 (3) 基于度量的评估方式Ch10.【产品线定义】产品线是一个产品集合,这些产品共享一个公共的、可管理的特征
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 脑梗塞患者的智能康复训练
- 2026年项目管理成熟度评估与改进指南
- 自闭症儿童的家庭干预计划
- 2026年康复治疗学专业实操实训报告
- 2026年社区新进护士岗前培训计划
- 练习9 《赏析小说的形象描写》同步练习 (含答案解析)2027年高考一轮总复习
- 2026届重庆市高三考前模拟预测语文试卷(原卷版及解析)
- 2026年幼儿园冬季用火取暖防一氧化碳中毒
- 2026年儿科医院感染管理质量持续改进
- 肉制品电商代运营合作协议
- LY/T 3455-2025竹牙刷
- 第19课 清朝君主专制的强化 课件 人教统编七年级历史下册
- 2024年新课标高考物理试卷(适用黑龙江、辽宁、吉林地区 真题+答案)
- 8S管理培训基础知识课件
- 小学科学教学仪器配备标准
- 城市智慧路灯(5G综合灯杆)建设工程项目(含方案设计及项目实施方案)
- SWITCH暗黑破坏神3超级金手指修改 版本号:2.7.4.84040
- 浙江省消防技术规范难点问题操作技术指南(2020版)
- GB/T 3179-2009期刊编排格式
- GB/T 28730-2012固体生物质燃料样品制备方法
- GB/T 24283-2018蜂胶
评论
0/150
提交评论