软件工程(双色)

收藏
简介 目录 样张 更多
  • ISBN:978-7-313-14520-8
  • 作者:陆惠恩
  • 出版社:上海交大
  • 适用层次:通用
  • 出版/修订日期:2023-11-01
本书着重从实用角度讲述软件工程的基本概念、原理和方法,介绍如何规范地开发和维护软件;合理地安排软件开发和维护的过程;规范地书写软件工程的文档资料,以提高软件开发的效率和质量。全书分12章,内容涵盖:软件工程概述(软件生存周期、开发模型),软件计划(问题定义、可行性研究),需求分析(方法、步骤、图形工具、数据字典),结构化设计、过程设计工具、界面设计、数据代码设计、软件设计文档,软件编码和测试,软件维护、软件重用、逆向工程、再工程,面向对象方法与UML,面向对象软件设计与实现,Web软件工程(Web软件特性、层次结构、可用技术、设计模式、WebApp设计与测试),移动互联网与软件工程(移动互联网三要素、应用技术、安全技术),软件工程管理,软件工程技术的发展(敏捷开发与极限编程、净室软件工程、面向服务的架构技术、云计算、网构软件),软件开发实例——网上商品竞拍系统。
本书可作为计算机及相关专业的教材,也可供从事计算机软件开发及维护的科技人员参考。

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.5  Warnier

2.3.6  IPO

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.2  UML概述

6.2.1  UML的发展

6.2.2  UML的内容

6.3  UML

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.4  UML的应用

6.4.1  UML模型

6.4.2  UML视图

6.4.3  UML使用准则

6.4.4  UML的扩展机制

6.4.5  UML的应用领域

本章小结

习题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.1  Web软件的特性

8.2  Web的层次结构

8.2.1  二层C/S结构

8.2.2  三层C/S结构

8.2.3  四层C/S结构

8.2.4  B/S结构

8.3  客户端层可用的技术

8.3.1  基本HTML

8.3.2  脚本语言

8.3.3  Applet

8.3.4  AJAX

8.4  Web服务器层使用的技术

8.4.1  Servlet

8.4.2  JSP

8.5  Web软件设计模式

8.5.1  观察者模式

8.5.2  组合模式

8.5.3  工厂方法模式和策略模式

8.5.4  模型-视图-控制器模式

8.5.5  装饰者模式

8.6  WebApp设计

8.6.1  WebApp的特点及应用类型

8.6.2  WebApp的需求工程

8.6.3  WebApp需求分析

8.6.4  WebApp设计过程

8.6.5  WebApp体系结构设计

8.6.6  导航设计

8.7  WebApp测试

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.4  COCOMO2模型

10.3  进度计划

10.3.1  Gantt

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

 

附录  部分习题参考答案

参考文献

微课 教材练习 资料下载 ....
立即下载
价格:¥58.00
加入购物车立即购买