由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
[正版]软件体系结构(第5版) 覃征 清华大学出版社 软件工程软件体系结构计算机类
¥ ×1
书名: | 软件体系结构(第5版) |
出版社: | 清华大学出版社 |
出版日期 | 2021 |
ISBN号: | 9787302575566 |
本书详细介绍和分析了软件体系结构的理论基础、研究内容、当前的发展状况和实践应用。通过本书,读者可以了解软件体系结构的研究背景、形式化描述、设计风格、评估方法、开发工具和柔性软件体系结构等内容。本书采用最近几年的案例、数据、图示以及其他相关材料以反映软件体系结构的最新发展。 |
覃征,博士,清华大学信息科学与技术国家实验室、信息科学技术学院、软件学院教授、博士生导师;教育部高等学校电子商务类专业教学指导委员会副主任,兼任国家千人计划评审组专家、国家科技部科技奖励评审专家 |
|
本书详细介绍和分析了软件体系结构的理论基础、研究内容、当前的发展状况和实践应用。通过本书,读者可以了解软件体系结构的研究背景、形式化描述、设计风格、评估方法、开发工具和柔性软件体系结构等内容,深入浅出,实例丰富。本书采用最近几年的案例、数据、图示以及其他相关材料以反映软件体系结构的最新发展。 |
|
第1章软件体系结构的起源和发展1 1.1软件的产生与发展1 1.2软件设计的演变与软件工程的兴起3 1.3软件体系结构的诞生与发展7 1.3.1软件体系结构诞生的背景及意义7 1.3.2软件体系结构概念的形成与发展12 1.4软件体系结构在软件生命周期中的定位16 1.5软件体系结构的研究内容、设计原理及标准18 1.5.1软件体系结构的研究内容18 1.5.2软件体系结构的设计原理19 1.5.3软件体系结构标准20 1.6软件体系结构的四个层次级别22 1.7小结26 第2章软件体系结构风格和模式28 2.1软件体系结构风格和模式基础28 2.2管道过滤器风格31 2.3面向对象风格35 2.4事件驱动风格42 2.5分层风格51 2.6数据共享风格56 2.7解释器风格60 2.8反馈控制环风格64 2.9云体系结构风格65 2.10网格计算体系风格72 2.11体系结构风格的比较77 2.12异构风格的集成79 2.13小结80第3章软件体系结构描述82 3.1软件体系结构建模概述82 3.1.1软件体系结构建模问题82 3.1.2软件体系结构描述方法83 3.2基于UML的软件体系结构描述84 3.2.1UML概述84 3.2.2UML体系85 3.2.3UML的软件体系结构描述87 3.3UML体系结构描述方式案例分析92 3.3.1“4+1”视图模型92 3.3.2教务管理系统的非形式化描述案例94 3.4基于ADL的软件体系结构描述100 3.4.1ADL概述101 3.4.2ADL结构分析105 3.5ADL体系结构描述方式案例分析110 3.5.1构件与连接器描述111 3.5.2配置的描述114 3.6可扩展体系结构语言基础框架FEAL118 3.6.1设计意图118 3.6.2FEAL结构120 3.6.3FEAL映射器121 3.6.4FEAL应用示例121 3.7小结123 第4章软件体系结构级别的设计策略124 4.1体系结构设计的重用124 4.2体系结构设计空间与规则125 4.3SADPBA126 4.3.1总览126 4.3.2使用设计空间对设计过程进行拆分128 4.3.3SADPBA的追踪机制129 4.3.4软件体系结构的生命周期模型129 4.3.5实践中的SADPBA131 4.4示例: MEECS136 4.4.1MEECS简介136 4.4.2将SADPBA应用到MEECS138 4.5软件体系结构风格的选择144 4.5.1架构元素说明的组成144 4.5.2特征类别分析147 4.5.3PSAS方法主流程150 4.6小结151 第5章软件体系结构集成开发环境152 5.1软件体系结构集成开发环境的作用152 5.1.1形式化描述方法的比较152 5.1.2体系结构集成开发环境的作用152 5.2体系结构IDE原型155 5.2.1用户界面层155 5.2.2模型层156 5.2.3基础层157 5.2.4体系结构集成开发环境设计策略158 5.3ArchStudio 5 系统159 5.3.1ArchStudio 5简介159 5.3.2安装ArchStudio 5162 5.3.3ArchStudio 5概况162 5.3.4ArchStudio 5的使用167 5.4SysADL Studio系统171 5.4.1SysADL Studio简介171 5.4.2安装SysADL Studio171 5.4.3SysADL Studio概况172 5.4.4SysADL Studio的使用176 5.5其他开发环境182 5.5.1ArchWare: 体系结构改进开发环境182 5.5.2自适应软件体系结构开发环境182 5.5.3面向UniCore体系结构的集成开发环境183 5.5.4图文法规则制导的软件体系结构开发环境184 5.6小结185 第6章软件体系结构评估186 6.1软件体系结构评估概述186 6.1.1质量属性186 6.1.2评估的必要性188 6.1.3评估方法分类189 6.2QAW方法193 6.3SAAM194 6.3.1SAAM的一般步骤195 6.3.2场景生成196 6.3.3体系结构描述196 6.3.4场景的分类和优先级的确定196 6.3.5间接场景的单个评估197 6.3.6对场景关联的评估198 6.3.7形成总体评估198 6.4ATAM199 6.4.1最初的ATAM200 6.4.2改进版ATAM201 6.4.3ATAM的一般过程202 6.4.4体系结构描述及收集评估有关信息204 6.4.5以体系结构为中心进行分析205 6.4.6以风险承担者为中心进行分析207 6.4.7提交最终评估报告207 6.5ARID积极的中间设计审核方法208 6.6体系结构级别上的软件维护预测210 6.7基于度量和预测的评估方法211 6.7.1基于人工智能的定性知识管理与建模211 6.7.2构建贝叶斯信念网络的结构212 6.7.3软件体系结构评估信念网络213 6.7.4SAABNet的使用214 6.7.5SAABNet的验证215 6.8评估方法比较218 6.8.1比较框架218 6.8.2评估方法概览和比较221 6.9小结235 第7章柔性软件体系结构237 7.1动态软件体系结构237 7.1.1动态软件体系结构的定义237 7.1.2动态软件体系方法的分类239 7.1.3πADL: 行为视角239 7.1.4MARMOL: 反射视角244 7.1.5LIME: 协调视角250 7.2柔性软件体系结构256 7.2.1柔性软件体系结构的定义256 7.2.2柔性软件体系结构场景举例259 7.3柔性软件体系结构案例261 7.3.1Rainbow261 7.3.2MADAM263 7.4柔性软件体系结构的适用范围265 7.5小结267 第8章软件体系结构的前景268 8.1国内外软件体系结构应用268 8.1.1全球软件产品业268 8.1.2软件体系结构在系统中的应用275 8.1.3六大计算的软件平台体系结构280 8.2当今软件体系结构研究的挑战287 8.3软件体系结构的研究机遇288 8.4小结290 附录A案例一SMCSP 项目291 附录B案例二Recommender项目313 附录C案例三图像/视频注解平台项目321 参考文献330 |
前言
软件体系结构是计算机科学重要的研究领域,越来越多的研究人员关注如何快速、低成本地构建合理、可靠的软件系统,尤其是应用于大型、复杂性场景的软件系统,如航空航天、国防等领域的智能化软件系统。本书是软件体系结构领域的入门书籍,将对其基础理论、工程领域、当前的研究动态和实践方法进行介绍。通过本书的学习,读者可以了解软件体系结构的基本概念,例如软件体系结构的必要性,软件体系结构的形式化语言描述方法,软件体系结构风格在实践中的应用和软件体系结构在软件系统开发过程中的应用。 本书第4版因通俗易懂的讲解方式受到读者的欢迎。第5版在保持第4版原有特色的基础上,充分借鉴了作者在科研、研究生教学实践过程中的经验,以及读者的反馈意见、最新的研究成果等,对内容做了进一步修订,更系统地阐述了软件体系结构一些经典的理论和最新的进展,并试图让读者领悟到软件体系结构的本质。 1. 修订情况 软件体系结构研究领域发展迅速,伴随众多会议的举行和期刊的出版,每年都会产生众多的优秀研究成果。与本书第4版相比,第5版在吸收大量领域前沿成果后,在各个章节都做了必要的补充和拓展,具体更新情况如下: (1) 结合软件体系结构发展前沿,增加了新的软件体系结构风格和案例。第2章中添加了新的体系结构风格汇总表,着重讲解了重要的网格计算风格以及对应的网格计算实例。同时,第2章最后的附录添加了图像/视频注解平台项目案例。新案例与前两个案例侧重点不同,主要从设计的角度详细描述平台设计工程中遇到的问题,以及对应的解决方法,更有助于读者领悟软件体系结构风格选择的本质。 (2) 对某些章节进行了重新组织和有选择性的侧重。第1章对软件危机的介绍进行淡化和删除,侧重从开发和设计的角度阐述软件体系结构的演变。第7章对章节结构和叙述方式进行了重新组织,让读者能以更加自然的方式了解柔性体系结构。 (3) 对各个章节的某些案例、工具和方法进行了更新,目的为让读者接触最前沿的技术、方法和工具。第1章新增对软件体系结构领域的一些新方向的介绍,例如最新的函数式编程等。第3章将UML介绍更新到2.5.1版,形式化描述语言新增体系结构分析与设计语言(AADL)、基于XML面向方面的软件体系结构描述语言(AOADL)和SysADL。第4章新增选择软件体系结构风格的PASA方法,PASA可以在拥有完备的需求文档的情况下通过固定的算法推算出最适合当前系统的软件体系结构风格。第5章新增SysADL Studio工具的使用和介绍。第6章对评估的质量属性以及必要性进行了拓展补充,并填补了基于度量和预测的评估方法的空白,新增了经典的基于贝叶斯信念网络的软件体系评估方法的详细介绍。 (4) 通过观察软件体系结构新的发展趋势,更新了第8章对软件体系结构前景的预测,具体包括数字和图表的更新、软件产品线的实例补充、新增产品线的过程模型、新增电子商务体系结构作为商业领域体系结构的例子以及增加集群计算作为第六大计算的软件平台体系结构介绍。研究挑战与机遇也进行了大量补充。 (5) 对各章节的图标、文献等进行更新,修复一些文字错误等。 2. 学习指导 本书主要组织方式如下: 基础理论: 第1~4章。 理论工具: 第5章。 研究部分: 第6~8章。 除了第5章之外,各章都有相对独立性,读者可以按照章节顺序进行学习,也可以自选感兴趣的章节跳跃式学习。第5章作为第1~4章的理论工具,需要配合相应的知识点一起学习。此外,读者也能通过参考文献对一些问题找到更详细、更深入的描述和解释。 第1章: 软件体系结构的起源和发展。本章对软件体系结构的产生与演化进行概述。读者可以了解软件体系结构的必要性、发展历史和一般性定义,是进一步深入阅读后续章节的基础。 第2章: 软件体系结构风格和模式。本章是软件体系结构的重点,通过寻找和发现软件开发中的共性,总结规律并利用这些抽象出的体系结构设计风格帮助设计性能更加良好,更加易于拓展的软件系统。读者需要熟练掌握和理解列举的风格,包括它们的优缺点和经典范例。为了让读者具备将体系结构风格运用到实际项目中的能力,本章最后提供几个源自真实项目的案例。每个案例在确保叙述清晰的情况下将无关紧要的细枝末节进行删减,着重强调了体系结构风格在项目设计中的运用。本章建议读者融会贯通和知行合一。 第3章: 软件体系结构描述。如何描述软件体系结构是软件体系结构领域的核心问题。它是表述软件设计、在涉众间进行有效沟通以及根据需求进行软件行为校验的基础。本章将重点放在体系结构的具有数学基础的形式化描述上。 第4章: 软件体系结构级别的设计策略。本章介绍了基于形式化的体系结构设计,目的是给读者提供一种形式化、流程化的软件体系结构层面的设计方法。本章包含的工具和方法论在恰当使用的前提下可以快速让读者在体系结构层面对项目有一个评估和认识,并帮助开发者寻找合适的体系结构设计。 第5章: 软件体系结构集成开发环境。本章主要介绍了两种软件体系结构的集成开发环境,其中详尽地阐述了该环境的使用原理、内部机制。本章中的工具与前面章节提及的理论配套,可以帮助读者更好地理论联系实践。 第6章: 软件体系结构评估。在软件体系结构的初步设计完成之后,涉众需要评估设计的好坏,判断是否能为项目的成功开发奠定基础,是否能够满足预期的需求,而不是因为设计缺陷而失败。本章以基于场景的评估方法为主,介绍和比较目前被广泛使用的软件体系结构评估方法。因为大部分评估方法缺乏形式化基础,更多的要依靠参与者的经验和能力。 第7章: 柔性软件体系结构。柔性软件体系结构是当前研究的热点之一,与传统软件相比,柔性软件体系结构在动态的环境中有极其重要的优势,这也是独立成章的原因。本章介绍了什么是柔性软件体系结构,为什么使用柔性软件体系结构,怎么具体使用柔性软件体系结构。介绍的过程中注重理论结合实际,把复杂的理论用浅显的例子进行说明和解释。 第8章: 软件体系结构的前景。本章着重介绍未来软件体系结构的发展,如何对其他领域产生影响。 3. 本书特色 (1) 本书在第2章后添加了3个真实的案例展示软件体系结构的设计思路。很多学习过软件工程或设计模式等设计类书籍的读者会感觉到学习这些理论知识后,难以在实践时运用。本书通过3个去粗取精后的真实案例,详细地展示了软件体系结构风格选择到运用的完整过程。希望通过此方式,让读者在实例中思考和学习。 (2) 本书作为软件体系结构的入门书籍,兼顾了知识的广度、深度和新度。软件领域发展日新月异,新的理论成果层出不穷,本书在重要的知识点上详细讲述,辅以实例;对具有发展前景的新成果进行概述并且辅以参考文献。由于本书具有翔实的内容,因此适用于各类读者学习,包括但不限于开发人员、软件设计人员和软件项目管理人员。 (3) 本书各个章节具有相对独立性,但是章节内具有良好的组织。不同读者可以在自行选择自己感兴趣的章节进行学习的同时,能对各个知识点透彻地理解。同时,相对独立性降低了不同类型读者的学习成本。 4. 致谢 非常感谢清华大学软件体系结构课题组出色的工作,特别是熊昆研究员、姜流研究员和马成学者。他们对本书写作的专注、协作精神和勤奋是本书撰写过程中的不竭动力。 在本书编写过程中,得到许多人的帮助和支持。感谢第4版编写组的李旭研究员、王卫红教授;感谢第3版编写组的陈旭博士、李志鹏博士、叶文文博士,以及课题组的王斌旭、徐涛、李经纬;感谢邢建宽博士、郑翔高级工程师、董金春教授/研究员在本书第2版撰写过程中的出色研究工作,同时也感谢在第1版和第2版撰写过程中做出过大量工作的王娟高级工程师和曹辉博士。
软件体系结构课题组2020年12月 |
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格