软件工程及软件方法学
-
搜索架构之道刘俊启这是一本以搜索业务为主线,深度解读超级App构建与优化的策略、流程、方法、技巧和作者近20年心得精华的著作。本书覆盖了App从诞生到成为超级App的过程中技术架构层面所面临的所有核心挑战及其解决思路。本书作者是我国App研发领域的先行者(2005年正式进入App开发领域)。曾在百度负责多个App的技术架构构建,全程参与了百度App从诞生到发展至拥有上亿规模用户的全过程。本书是作者将近20年App研发经验和10余年百度搜索App开发经验的精华,是一本真正的干货集。基础篇(第1~3章),从作者进入百度讲起,带领读者一步步走进搜索App的世界。这一篇通过简洁的语言和生动的案例,以“润物细无声”的方式读者帮建立起对搜索App的基础认知,包括百度App发展历程、典型App中搜索功能构建、搜索结果页和落地页技术实现、搜索服务端架构、搜索服务优化等特色内容,为读者学习后续内容打下坚实的基础。高级篇(第4~12章), 围绕搜索全流程业务展开,包括搜索客户端中并行化响应输入的实现,以及可扩展网页(即功能插件化)、场景容器化、可定制安全策略、可持续优化指标、可统一管理网络通信、移动端AI预测、可变体发布及支持质效提的搜索客户端架构的设计与实现思路。通过本篇,读者可更深入理解搜索App的业务流程,掌握技术架构的工作原理,并学会如何将这些思想应用于相关的产品中。个人成长篇(第13章),从团队协作、产品交付及技术架构优化这三个方面介绍个人的架构优化之路。这部分是作者10余年的工作经验和思考。 -
机器学习中的样例选择翟俊海 著随着数据存储技术、网络技术和云计算技术的快速发展, 数据正以前所未有的速度在不断地增长和积累。在各种实际应用中, 需要处理的数据量越来越大。 而样例选择就是从包括冗余或噪声的海量数据中选择重要数据的技术, 是机器学习的重要数据预处理步骤, 对后续学习算法的训练及性能有很大的影响. 在机器学习中, 样例选择有两种场景:一是主动学习场景, 二是监督学习场景. 《机器学习中的样例选择》结合作者及研究团队近年来关于样例选择的研究成果, 系统介绍了两种场景下样例选择的理论和方法以及两种场景下样例选择之间的区别与联系。另外,《机器学习中的样例选择》内容涵还盖了样例选择的最新研究进展。 -
数据驱动高级软件工程张璇等软件工程相关数据快速增长且广泛分布,从对封闭数据的检索转向对大规模开放数据的获取,数据的充分利用成为大数据背景下软件工程的一个重要新方向。《数据驱动高级软件工程》面向大数据时代特征,介绍面向软件工程的数据科学关键概念、方法和技术,内容以承前启后方式,*先介绍软件科学与工程、数据科学与工程,在此基础上介绍利用数据科学支持软件工程的方法和技术,包括数据驱动的软件过程挖掘、数据驱动的可信软件工程,以及数据驱动的需求变更分析;之后面向软件工程项目,介绍基于数据科学的实证软件工程分析方法,以及在软件工程中的**系统和面向区块链的软件工程。《数据驱动高级软件工程》重点介绍大数据时代下,软件工程领域的一些进展和研究方向,并采用丰富的案例分析对相关概念、知识、方法和技术进行拓展,可为软件工业界了解本领域相关方法、技术和实践提供参考。 -
用ChatGPT做软件测试于涌 田璐 蓝葛亮 于跃本书以目前流行的大语言模型ChatGPT为基础,用丰富的案例演示ChatGPT在软件测试中的赋能作用。本书主要介绍如何用ChatGPT生成需求规格说明书、测试计划、功能测试用例、自动化测试用例、接口测试用例、测试数据和性能测试用例,以及?ChatGPT?在分析测试结果、辅助?CI(Continuous Integration,持续集成)、生成测试总结报告和职业发展中的应用等。本书内容通俗易懂,案例丰富,涵盖软件测试的功能测试、性能测试、接口测试和自动化测试等。通过阅读本书,读者可以借助大语言模型(简称大模型)提高测试效率和研发效率,提升测试工作质量。本书适合软件测试人员、项目管理人员、研发人员及关注软件效能提升的相关人员阅读,也适合希望借助大语言模型提升工作效率的技术人员阅读。 -
模型驱动的自动化软件代码生成技术杨福军,杨雷,李志辉本书通过对模型驱动的自动化软件代码生成策略、气动数据管理框架、气动数据处理流程和气动数据库数据结构进行研究,对气动数据管理系统进行共性分析,建立自动化软件框架的领域模型。第1章绪论分析了代码生成技术和气动管理系统框架现状,第2、3章阐述了现有软件框架和本书使用的设计模式,第4~7章阐述了基础框架和工作流引擎的设计过程,第8、9章阐述了气动数据管理系统相关设计内容,第10章阐述了气动数据管理框架支撑架构及自动化代码生成设计,第11章对本书设计的代码生成框架进行了示范生成效果展示。本书完整展示了气动数据管理和模型驱动代码生成技术的结合与设计过程,这预示着一种全新的气动数据管理系统开发方法已经落地,将为推动我国气动领域数据再利用及数字化工程加速建设奠定基础。 -
MATLAB数学建模从入门到精通马世拓 著《MATLAB数学建模从入门到精通》结合案例,系统介绍了使用 MATLAB 进行数学建模的相关知识和方法论。《MATLAB数学建模从入门到精通》分为 11 章,主要包括走进数学建模的世界、函数极值与规划模型、微分方程与差分模型、数据处理的基本策略、权重生成与评价模型、复杂网络与图论模型、时间序列与投资模型、机器学习与统计模型、进化计算与群体智能、其他数学建模知识、数学建模竞赛中的一些基本能力。《MATLAB数学建模从入门到精通》内容通俗易懂,适合刚刚接触数学建模的大中专院校学生和其他数学建模爱好者阅读,也适合作为相关组织和培训机构的教材和参考用书。 -
软件设计的哲学[美]约翰·奥斯特豪特(John Ousterhout)本书深入探讨了软件设计中的核心问题:如何将复杂的软件系统分解为可以相对独立实现的模块(例如类和方法),从而降低其复杂性并提高开发效率。本书首先介绍了软件设计中的基本问题,即复杂性的本质。其次,讨论了有关如何处理软件设计过程的“哲学”问题,如通用设计的重要性、与《代码整洁之道》中设计哲学的对比,以及如何将重要的东西和不重要的东西区分开等内容。最后,总结了在软件设计过程中应遵循的一系列设计原则,以及一系列识别设计问题的警示信号。本书适合软件工程师、计算机科学专业的学生、教育者、对软件设计和开发感兴趣的自学者和技术管理者阅读。通过应用本书中的思想,读者可以最大限度地降低大型软件系统的复杂性,从而更快地以更低的成本编写软件,并构建更易于维护和增强的系统。 -
通用性指导、建设EA团队开梵标准本书是TOGAF?标准系列指南的一个分册,包含如何使用TOGAF框架的详细指导。本书共两篇:通用性指导篇,由遵循TOGAF ADM开发EA的从业者方法(文档编号:G186C)、将TOGAF标准应用于数字化ENTERPRISE(文档编号:G217C)、数字技术采用——就绪度评估和路线图开发指南(文档编号:G212C)组成;建设EA团队篇,由建立并演进EA能力的TOGAF领导者指南(文档编号:G184C)组成。本书的读者对象是:企业架构师、业务架构师、IT架构师、数据架构师、系统架构师、解决方案架构师,以及任何负责组织内架构功能的个人;数字化和敏捷开发从业者、产品经理和企业高级管理者。 -
软件测试导论[爱]拉尔夫·比瑞格,[爱]斯蒂芬·布朗,[爱]埃德加·加尔文,[爱]乔·蒂莫尼软件测试可以被视为一门艺术、一门工艺或一门科学,而本书中提出的一种循序渐进且实用的方法在这些不同的视角之间提供了一座桥梁。书中涵盖多种测试技术,首先介绍其优缺点,然后深入细节,帮助读者理解其基本原理。zui后,通过注入故障来展示每种技术的局限性,并提供了每种技术在发现故障方面的成功案例或失败案例。书中讲解的技术涉及黑盒测试、白盒测试、随机测试、单元测试、面向对象的软件测试和应用测试。本书还强调了应用技术的过程,包括分析、测试用例设计、测试实现和测试结果分析。 -
Android游戏开发从入门到精通王玉芹本书深入讲解了Android游戏开发的核心知识,并通过具体实例的实现过程,演练了开发Android游戏程序的方法和流程。全书共17章,分别讲解了认识Android移动操作系统,掌握Android游戏开发技术,Graphics游戏绘图,3D技术的应用,纹理映射特效,绘制3D图形,坐标变换和混合,摄像机、雾特效和粒子系统,让游戏和网络互联,游戏中的音频特效和视频,游戏中的数学,碰撞检测,使用传感器技术,AI版五子棋游戏,高仿抖音潜艇大挑战游戏,跨平台坦克大战游戏(Android/iOS/桌面),国际象棋游戏。全书简明而不失技术深度,内容丰富全面,历史资料详实齐全,以简洁的文字介绍复杂的案例,同时介绍了其他同类图书中涉及的历史参考资料,是学习Android游戏开发的完美教程。本书附赠所有案例源码,获取方式见封底。本书适用于已经了解并想进一步学习Android游戏开发、Android项目架构的读者,还可以作为大专院校相关专业师生的参考用书和培训学校的专业教材。
