软件工程

·
2025-11-16 04:48:20

•主教材

l 孙艳春, 黄罡, 邓水光 . 软件工程:经典、现代和前沿. 北京大学出版社,2024.2,ISBN 978-7-301-34801-7.

本课程的主教材《软件工程:经典、现代和前沿》是由北京大学出版社于2024年最新出版的教育部计算机领域本科教育教学改革试点工作计划“101计划”软件工程课程主教材。

本书的作者长期从事软件工程教学和科研工作,希望通过本书的编写,帮助读者系统而完整地梳理了软件工程的经典、现代和前沿理论、方法和技术,通过案例分析让读者了解其运用,并以浅显易懂的方式讲授业界广泛使用的方法和技术如敏捷开发方法、群智化开发方法-开源和众包、DevOps方法等,让读者理解和掌握现代业界使用的方法和技术。而且,作者结合北京大学和浙江大学在软件工程前沿的研究成果,首次在国内外软件工程教材中,系统化地介绍了人工智能(AI)、区块链(Blockchain)、云计算(Cloud Computing)、大数据(Big Data)、物联网(IoT)等新型技术驱动的前沿软件工程理论和方法,以此拓展读者的软件工程视野。

本书系统地介绍了软件工程经典、现代和前沿的理论、方法和技术,以“101计划”软件工程课程的建设目标为导向,全面覆盖了“101计划” 中的《软件工程》课程知识体系,同时结合了国际最权威的软件工程知识体系—IEEE SWEBOK(Software Engineering Body of Knowledge),并且增加了前沿软件工程的理论、方法和技术。通过大量案例深入浅出地讲授软件工程理论、方法和技术,既体现了知识的系统性,也体现了知识的先进性和实践性。本着基础理论和工程实践并重的宗旨,本书不仅要使学生们掌握软件工程理论、方法和技术,而且要能够对现实世界中的复杂问题进行系统分析和设计,并能选用相应的开发平台和框架进行软件系统的开发、维护和管理,培养学生的工程实践能力和软件项目管理的能力。本书通过案例分析、实践设计和前沿软件工程的讲授将极大地提升学生们的软件开发综合实践能力和创新能力。

本书内容包括经典软件工程、现代软件工程,以及前沿软件工程三大模块:

(1)经典软件工程包括第1章软件工程概述、第2章软件过程、第3章软件需求工程、第4章结构化开发方法、第5章面向对象开发方法、第6章编码实现、第7章软件测试、第8章软件集成、交付与部署、第9章软件开发工具和环境、第10章软件维护和演化、第11章软件项目管理等,共11章;

(2)现代软件工程包括第12章敏捷开发方法、第13章群体化开发方法-开源和众包、第14章DevOps方法等,共3章;

(3)前沿软件工程包括第15章面向智能化应用的软件工程、第16章区块链驱动的软件工程、第17章云计算驱动的软件工程、第18章大数据时代的软件工程、第19章面向物联网的软件工程等,共5章。

本书不仅满足高校计算机专业和信息大类专业的软件工程课程的本科教学需求,同时也满足双一流高校拔尖软件工程人才培养的需求。本书同时可以作为软件工程从业者的参考用书。

•主要参考书

Roger S. Pressman著, 郑人杰等译.Software Engineering-A Practitioner’s Approach (Eighth Edition), 北京: 机械工业出版社, 2015年.Ian Sommerville著,程成等译, Software Engineering(9th Edition). 北京:机械工业出版社,2011年.邵维忠, 杨芙清. 面向对象的分析与设计. 北京: 清华大学出版社, 2012-12-25.施瓦尔贝(schwalbe, K.)著, 杨坤等译, IT项目管理, 北京: 机械工业出版社, 2011.01.Patton,R.著, 张小松等译, 软件测试(原书第二版), 北京: 机械工业出版社, 2006.4.张效祥主编,计算机科学技术百科全书(第二版),北京:清华大学出版社,2005.11郑人杰、马素霞、殷人昆等,软件工程概论,北京:机械工业出版社,2009.11. 朱少民等,软件测试实验教程.北京:清华大学出版社,2019.6