第1章概述
1.1软件工程的产生
1.1.1软件工程的发展史
1.1.2软件危机
1.2软件工程学
1.2.1什么是软件
1.2.2什么是软件工程
1.2.3软件工程学的内容
1.2.4软件过程
1.2.5软件工程的基本原理
1.3软件生存周期
1.3.1软件生存周期的概念
1.3.2软件生存周期各阶段的任务
1.4软件开发模型
1.4.1瀑布模型
1.4.2快速原型模型
1.4.3增量模型
1.4.4喷泉模型
1.4.5螺旋模型
1.4.6统一过程
本章小结
习题1
第2章软件计划
2.1软件问题定义及可行性研究
2.1.1软件问题定义
2.1.2可行性研究
2.1.3制订项目开发计划
2.2需求分析
2.2.1需求分析方法
2.2.2需求分析步骤
2.3需求分析图形工具
2.3.1实体-关系图
2.3.2数据流图
2.3.3状态转换图
2.3.4层次图
2.3.5Warnier图
2.3.6IPO图
2.4数据字典
2.4.1数据字典的内容
2.4.2数据字典使用的符号
2.4.3数据字典与图形工具
2.5软件计划阶段文档
2.5.1软件计划阶段文档的编写步骤
2.5.2软件计划实例
本章小结
习题2
第3章结构化设计
3.1软件设计步骤
3.1.1概要设计的一般步骤
3.1.2详细设计的基本任务
3.2软件结构设计
3.2.1软件结构设计的基本原理
3.2.2模块化
3.2.3模块独立性
3.2.4模块设计启发规则
3.3软件结构设计的图形工具
3.3.1层次图和HIPO图
3.3.2结构图
3.4面向数据流的设计方法
3.4.1变换型
3.4.2事务型
3.5过程设计工具
3.5.1流程图
3.5.2盒图(N-S图)
3.5.3问题分析图(PAD图)
3.5.4判定表
3.5.5判定树
3.5.6过程设计语言(PDL)
3.6用户界面设计
3.6.1用户界面设计问题
3.6.2用户界面设计过程和设计标准
3.6.3用户界面设计指南
3.7数据代码设计
3.7.1代码的功能和性质
3.7.2代码的设计原则
3.7.3代码的种类
3.7.4代码的设计方法
3.8面向数据结构的设计方法
3.9软件设计文档
3.9.1概要设计说明书
3.9.2数据库设计说明书
3.9.3详细设计说明书
3.9.4操作手册编写提示
本章小结
习题3
第4章软件编码和软件测试
4.1结构化程序设计
4.1.1程序设计语言的选择
4.1.2程序设计风格
4.2软件测试目标
4.3软件测试方法
4.3.1静态分析与动态测试
4.3.2黑盒法与白盒法
4.4软件测试步骤
4.4.1模块测试
4.4.2集成测试
4.4.3程序审查会和人工运行
4.4.4确认测试
4.4.5平行运行
4.5设计软件测试方案
4.5.1等价类划分法
4.5.2边界值分析法
4.5.3错误推测法
4.5.4逻辑覆盖法
4.5.5程序环形复杂程度的度量
4.5.6因果图法
4.5.7用基本路径覆盖法设计测试用例
4.6软件测试原则和策略
4.6.1软件测试原则
4.6.2实用测试策略
4.7软件调试、验证与确认
4.7.1软件调试方法和技术
4.7.2软件验证
4.7.3软件确认
4.8软件测试文档
本章小结
习题4
第5章软件维护和软件重用
5.1软件维护
5.1.1软件维护的种类
5.1.2软件维护的特点
5.1.3软件维护过程
5.1.4提高软件的可维护性
5.2软件重用和再工程
5.2.1软件的重用
5.2.2软件重用过程模型
5.2.3开发可重用的软件构件
5.2.4软件逆向工程
5.2.5软件再工程
本章小结
习题5
第6章面向对象方法学与UML
6.1面向对象方法概述
6.1.1面向对象方法的要素和优点
6.1.2面向对象方法的概念
6.2UML概述
6.2.1UML的发展
6.2.2UML的内容
6.3UML图
6.3.1用例图
6.3.2类图和包
6.3.3对象图
6.3.4状态图
6.3.5顺序图
6.3.6活动图
6.3.7协作图
6.3.8构件图
6.3.9部署图
6.4UML的应用
6.4.1UML模型
6.4.2UML视图
6.4.3UML使用准则
6.4.4UML的扩展机制
6.4.5UML的应用领域
本章小结
习题6
第7章面向对象软件设计与实现
7.1面向对象分析
7.1.1面向对象分析过程
7.1.2面向对象分析原则
7.1.3建立对象模型
7.1.4建立动态模型
7.1.5建立功能模型
7.2软件架构设计和对象设计
7.2.1软件架构设计
7.2.2软件架构风格
7.2.3移动互联系统的软件架构
7.2.4对象设计
7.2.5面向对象设计的准则和启发式规则
7.3面向对象系统的实现
7.3.1选择程序设计语言
7.3.2面向对象程序设计风格
7.3.3面向对象实现的人员分工
7.4面向对象系统的测试
7.4.1面向对象测试策略
7.4.2面向对象的测试步骤
7.5面向对象方法实例
7.5.1面向对象分析实例
7.5.2面向对象设计实例
本章小结
习题7
第8章Web软件工程
8.1Web软件的特性
8.2Web的层次结构
8.2.1二层C/S结构
8.2.2三层C/S结构
8.2.3四层C/S结构
8.2.4B/S结构
8.3客户端层可用的技术
8.3.1基本HTML
8.3.2脚本语言
8.3.3Applet
8.3.4AJAX
8.4Web服务器层使用的技术
8.4.1Servlet
8.4.2JSP
8.5Web软件设计模式
8.5.1观察者模式
8.5.2组合模式
8.5.3工厂方法模式和策略模式
8.5.4模型-视图-控制器模式
8.5.5装饰者模式
8.6WebApp设计
8.6.1WebApp的特点及应用类型
8.6.2WebApp的需求工程
8.6.3WebApp需求分析
8.6.4WebApp设计过程
8.6.5WebApp体系结构设计
8.6.6导航设计
8.7WebApp测试
8.7.1测试过程概述
8.7.2内容测试
8.7.3界面测试
8.7.4导航测试
8.7.5配置测试
8.7.6安全性测试
8.7.7性能测试
本章小结
习题8
第9章移动互联网与软件工程
9.1移动互联网简介
9.2移动互联网应用技术
9.2.1移动互联网的参考模型
9.2.2移动互联终端技术
9.2.3网络接入技术
9.2.4移动应用服务技术
9.2.5移动互联网的三要素
9.3移动互联网应用安全技术
本章小结
习题9
第10章软件工程管理
10.1软件工程管理概述
10.2软件规模估算
10.2.1软件开发成本估算方法
10.2.2代码行技术
10.2.3功能点技术
10.2.4COCOMO2模型
10.3进度计划
10.3.1Gantt图
10.3.2工程网络技术
10.4人员组织
10.5软件配置管理
10.6软件质量保证
10.6.1软件质量的特性
10.6.2软件质量保证措施
10.7软件开发风险管理
10.7.1软件开发风险标识
10.7.2软件开发风险估算
10.7.3软件开发风险管理
10.8软件工程标准与软件文档
10.8.1软件工程标准
10.8.2软件文档的编写
本章小结
习题10
第11章软件工程技术的发展
11.1敏捷开发与极限编程技术
11.1.1敏捷开发的含义
11.1.2极限编程
11.2净室软件工程
11.2.1净室软件工程的概念
11.2.2净室软件工程技术
11.3面向服务的架构技术
11.3.1面向服务架构的产生
11.3.2面向服务架构的概念
11.3.3基于SOA架构的软件开发方法
11.4云计算与软件开发
11.4.1云计算概述
11.4.2云计算的关键技术
11.4.3云计算平台与软件开发
11.4.4云计算与物联网
11.5网构软件
11.5.1网构软件的概念
11.5.2网构软件模型特点
11.5.3网构软件开发方法
本章小结
习题11
第12章实例——网上商品竞拍系统
12.1问题定义和可行性研究
12.1.1问题定义
12.1.2可行性研究
12.2需求分析和概要设计
12.2.1系统角色的功能设计
12.2.2数据库设计
12.2.3系统结构设计
12.2.4网络结构设计方案
12.2.5网络设计方案
12.3模块设计
12.3.1注册登录模块设计
12.3.2用户信息管理模块设计
12.3.3拍卖商品管理模块设计
12.3.4拍卖业务管理模块设计
12.4软件测试
本章小结
习题12
附录部分习题参考答案
赞赏