标题：软件工程与实践（上海教育高地暨特色专业建设项目）
软件工程与实践
（上海教育高地暨特色专业建设项目）  清华出版社新书
出版社：清华大学出版社
出版时间：2012.6
主编：贾铁军 甘泉
书号：ISBN978-7-302-28329-4
内容简介
教材特色：实用、新颖、操作性强。设有教学目标、新技术及应用案例、同步实验指导与文档、实践与练习题及部分答案等，并提供多媒体课件，方便使用。
主要内容：全书共分10章，软件工程基础概述、可行性分析与策划、软件项目立项与计划、需求分析、软件设计、面向对象开发技术、软件实现技术、软件测试与维护、软件项目管理、软件工程新技术与现代软件工程新体系及方法、Web实用软件开发综合案例及课程设计等，包括新知识、新技术、新方法及新应用。
本书可作为高校计算机与信息类、电子商务、工程与管理类等学科专业的相关课程的教材，也可作为培训及参考用书。
前言
在世界范围内，IT技术的快速发展为人类社会各个层面带来了深刻的变革。一个国家信息化建设、发展和技术应用水平体现了综合国力，是决定21世纪国际竞争地位的战略性重大举措。软件是信息系统的关键，已经成为信息化的核心，受到世界瞩目的软件产业已经成为增长最快的朝阳产业，软件开发、维护与管理能力和先进的软件技术，直接影响到国家信息化建设、发展和信息技术应用的水平，软件工程的应用水平已成为促进软件产业健康发展的关键。随着计算机系统的快速发展和广泛应用，对软件需求、维护和管理技术不断提高，计算机软件的开发、维护及管理技术和高层次专业人才的素质能力显得尤为重要。
进入21世纪，世界各国及各个行业都加快了信息化的建设，也促进了软件工程的飞速发展。为了不断提高软件开发的质量和软件维护与管理的水平，必须学习、研究和应用软件工程的基本理论和技术，才能使我国的软件产业能够在国际竞争中占有一席之地，并带动整个信息化建设、发展和技术应用水平及综合国力的提高。
软件工程是一门指导计算机软件进行开发、维护和管理的新兴学科，主要利用工程概念、原理、技术和方法，在计划、开发、运行、维护与管理软件过程中，将科学的管理和最佳的技术方法紧密结合，以较经济的手段获得满足用户需求的可靠软件的一系列方法。即，软件工程= 工程原理 + 技术方法+ 管理技术。主要研究应用软件开发的基本理论和工程技术来指导对软件系统的开发、维护和管理。软件工程是计算机科学中的一个重要分支，是一门指导计算机软件系统开发、运行、维护和管理技术的工程学科。不仅具有一般工程学科的共性，还具有智能性、抽象性、复杂性和更新性等特性。同时，具有软件工程学科的系统性、工程化、综合性和学科交叉性的基本特点。软件工程是高等学校计算机及信息类相关专业最早的一门专业主干课程。
软件工程是一个综合利用计算机科学、工程科学、管理科学、数学等综合交叉多学科的领域，软件工程的研究范围很广，不仅涵盖软件系统的开发方法和技术、维护与管理技术，还包括软件工具、环境及软件开发的规范。目前，对软件工程学科的构成和内容尚未统一，根据软件工程研究的对象和任务，软件工程学科主要包括：软件工程原理、软件工程过程、软件工程方法、软件工程技术、软件工程模型、软件工程管理、软件工程度量、软件工程环境、软件工程应用等基本内容。30多年来，我们在高等院校和计算机网络企业一直坚持“校企合作、产学研结合”，始终从事计算机及信息领域的教学、科研和学科专业管理工作，多次主持过相关方面的项目研究，积累了大量的宝贵实践经验,为满足高校应用型软件人才培养的需要，编著了这本教材，谨以此书奉献给大家。
《软件工程与实践》一书从实用的角度出发，根据教育部高教司审定的《中国计算机科学与技术学科教程2002》中对软件工程的要求编写，并参照美国ACM和IEEE Computing Curricula 2001教程关于软件工程方面的内容，吸取了国内外软件工程的实用技术、新方法和新应用等精华，也是上海市高校教育高地建设项目成果之一。
全书主要内容共分10章，软件工程基础概述、可行性分析与策划、软件项目立项与计划、需求分析、软件设计、面向对象开发技术、软件实现技术、软件测试与维护、软件项目管理、软件工程新技术与现代软件工程新体系及方法、Web实用软件开发综合案例等。书中内容增加很多典型实际应用案例，以及经过多年的实践总结出来的研发案例分析、同步实验、课程设计及最新研究成果，以便于实际应用。书中带“*”部分为选学内容。
本书旨在重点介绍软件工程技术、方法和实际应用等方面的最新成果。本系列教材主要是专门针对高校相关专业人才培养编著的特色教材，其主要特点是：
1. 内容先进，结构新颖。编著吸收了国内外大量的新知识、新技术、新方法和国际通用准则。注重科学性、先进性、操作性。图文并茂、学以致用。
2. 注重实用性和特色。坚持“实用、特色、规范”原则，突出实用及素质能力培养，增加大量案例，在内容安排上将理论知识与实际应用有机结合，配有典型及综合应用案例。
3. 资源配套，便于教学。为了方便师生教学，配有电子教案并附有“同步实验”和“课程设计”及练习与实践习题，并附有部分习题答案及常用文档指南。
本书由贾铁军教授任主编、统稿并编著第1、3、4、5、7、9、10章。甘泉总经理（大连信源网络有限公司）任主编并编著第8章，俞小怡（大连理工大学）任副主编并编著第6章，宋少婷（大连信源网络有限公司）任副主编并编著第2章，于淼、邹飞参加了编著审校和修改等工作。邹佳芹女士对全书的文字、图表进行了校对编排及查阅资料等，并完成了大部分课件制作。
非常感谢清华大学出版社和各位的辛勤工作，为本书的编著提供了许多重要帮助、指导意见和参考资料。同时，感谢对本书编著给予大力支持与帮助的各位同仁、院校和相关企业单位。对编著过程中参阅大量的重要文献资料难以完全准确注明，在此深表诚挚谢意！
由于水平有限，书中难免存在不妥之处，敬请见谅！欢迎提出宝贵意见和建议。
目录
第1章 概述1.1 软件工程的发展1 
1.2 软件及软件工程的概念4
1.3软件生存周期10
1.4 软件开发模型14
1.5实验一软件开发准备及MS Visio概述23
1.6本章小结24
1.7练习与实践一24
第2章 可行性分析及策划2.1软件问题定义27
2.2 可行性分析及立项31
2.3 系统流程图36
*2.4 软件规划概述36
2.5 软件开发计划40
2.6 实验二软件可行性分析报告24
2.7 本章小结43
2.8 练习与实践二43
第3章 需求分析3.1 需求分析概述44
3.2 需求分析的任务及过程47
3.3 需求分析描述工具50
3.4 需求分析方法57
3.5 需求分析文档61
3.6 实验三分析文档与Power Designer建模24
3.7 本章小结65
3.8 练习与实践三65
第4章 软件设计4.1 软件总体设计65
4.2 软件详细设计69
4.3 数据库设计概述74
4.4 网络系统设计概述74
4.5 用户界面设计83
4.6 软件设计文档91
4.7 实验四编写软件详细设计说明书24
4.8 本章小结93
4.9 练习与实践四93
第5章 面向对象开发技术5.1面向对象方法概述93
5.2 面向对象的相关概念97
5.3 面向对象分析102
5.4 面向对象设计104
5.5 面向对象分析和设计实例175
5.6 实验五Rational Rose应用24
5.7 本章小结111
5.8 练习与实践五112
第6章 软件实现技术6.1 软件实现技术概述112
6.2 软件程序设计116
6.3 常用程序设计工具127
6.4软件实现的文档131
6.5 实验六应用软件编程实现131
6.6 本章小结131
6.7 练习与实践六132
第7章 软件测试与维护7.1 软件测试概述132
7.2 软件测试的特点及过程135
7.3 软件测试的步骤及任务135
7.4软件测试策略及面向对象测试126
7.5 软件测试方法、用例和标准136
7.6 软件调试与发布139
7.7 软件维护与再工程143
7.8 实验七软件测试与调试应用24
7.9 本章小结146
7.10练习与实践七146
第8章 软件项目管理8.1 软件项目管理概述147
8.2 软件项目启动及组织147
8.3 项目进度估算及安排147
8.4 软件项目的过程管理152
8.5 软件项目监控与收尾158
8.6 实验八软件项目管理应用163
8.7 本章小结163
8.8 练习与实践八163
第9章 软件工程新技术及体系9.1 软件开发新技术概述180
9.2 CMMI能力成熟度集成模型163
9.3 IBM Rational软件工程体系175
9.4 微软软件工程体系175
9.5 敏捷软件工程体系175
*9.6 形式化方法186
*9.7 净室软件工程体系175
9.8 本章小结197
9.6 练习与实践九263
第10章 WebApp开发综合案例10.1 WebApp项目开发概述163
10.1.1 WebApp的特点及类型164
10.1.2 WebApp开发过程及技术方法165
10.1.3 WebApp需求分析166
10.1.4 WebApp设计166
10.1.5 WebApp测试166
10.1.6 WebApp项目管理166
10.2 Web商品进销存信息系统163
10.2.1 系统需求分析164
10.2.2 系统设计165
10.2.3 系统实现166
10.3 Web书城信息系统175
10.3.1可行性分析110
10.3.2 软件需求分析111
10.3.3 软件设计111
10.3.4 软件实现111
10.4 本章小结175
10.5 课程设计任务书及评价175
10.5.1 课程设计任务书110[1]
10.5.2 课程设计报告评价111
附录A 练习与实践部分参考答案263
附录B 软件工程部分文档编写指南268
参考文献276