技术教育社区
www.teccses.org

软件工程(第2版·微课视频版)

封面

作者:方木云、刘辉、杭婷婷、周兵

页数:388

出版社:清华大学出版社

出版日期:2023

ISBN:9787302633556

电子书格式:pdf/epub/txt

内容简介

本书围绕软件的基本概念、开发方法、开发工具、管理、实践和文档6部分来选取和组织材料。基本概念部分包括软件、软件危机、软件工程和计算模型; 开发方法部分包括基于软件过程的方法和基于构造粒度的方法,前者介绍瀑布型方法、快速原型方法和其他一些方法,后者介绍面向对象方法、面向构件方法、面向Agent方法、面向SOA方法和面向云计算方法; 开发工具部分包括CASE工具概念、实例和发展趋势; 管理部分包括项目招投标、人员、进度、成本、质量和风险等管理; 实践部分包括信息系统开发、类制作、构件制作、SOA实现、云平台体验和CASE工具制作; 文档部分包含12种重要的模板。

本书可作为高校本科生的教材,也可以作为教师和广大软件工程人员的参考书。

本书特色

内容完整丰富,加入了软件工程发展的最新内容,如面向构件、面向Angent、面向SOA、云计算、雾计算、边缘计算、区块链等技术的介绍。配套资源丰富配套1150分钟微课视频、教学大纲、程序源码、教学课件、习题答案等教学资源。

目录

目录

基本概念篇

第1章基本概念

1.1软件

1.1.1软件的定义

1.1.2软件的分类

1.2软件危机

1.3软件工程

1.4计算模型

1.4.1单机计算模型

1.4.2分布计算模型

1.4.3并行计算模型

1.4.4网格计算模型

1.4.5普适计算模型

1.4.6云计算模型

1.4.7雾计算模型

1.4.8边缘计算模型

1.4.9区块链计算模型

1.5计算服务

思考题
软件开发方法篇·基于软件过程的方法

第2章瀑布型方法

2.1软件过程

2.1.1软件过程的提出

2.1.2软件过程的含义

2.1.3软件过程的规范

2.1.4软件工程的评估与改进

2.2瀑布型方法

思考题

第3章快速原型方法

3.1快速原型方法的产生

3.2快速原型方法的概念

3.2.1进化式原型开发

3.2.2抛弃式原型开发

3.3快速原型方法的案例

思考题

第4章其他方法

4.1增量方法

4.1.1增量方法的产生

4.1.2增量式开发

4.1.3增量方法的案例

4.2螺旋方法

4.3敏捷方法

4.3.1敏捷方法的产生

4.3.2敏捷方法的典型模型

4.3.3敏捷方法的案例

4.4面向复用的方法

4.5形式化方法

4.6净室方法

思考题

第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.3需求分析的方法

5.4需求描述工具

5.4.1数据流图

5.4.2数据字典

5.4.3结构化语言

5.4.4判定表

5.4.5判定树

5.5需求分析文档

5.5.1需求文档完成的目标

5.5.2需求文档的特点

5.5.3需求文档编写的一般原则

5.5.4需求文档的编写格式

5.6进行需求评审

5.6.1需求评审的方法

5.6.2需求评审的内容

5.6.3需求评审的测试

思考题

第6章概要设计

6.1概要设计概论

6.2概要设计原理

6.2.1模块化

6.2.2抽象化

6.2.3逐步求精

6.2.4信息隐藏和局部化

6.2.5模块独立性

6.2.6模块层次化

6.2.7启发式规则

6.3概要设计方法总结

6.4概要设计文档

思考题

第7章界面设计

7.1用户界面设计

7.2用户界面设计原则

7.3信息输入方式

7.4信息输出方式

7.5帮助系统

7.5.1错误消息

7.5.2用户文档

7.6界面评价

思考题

第8章详细设计

8.1详细设计的作用

8.2详细设计的工具

思考题

第9章测试

9.1软件测试定义

9.1.1测试的目的

9.1.2测试的基本原则

9.2软件测试模型

9.3软件测试方法

9.3.1黑盒测试方法

9.3.2白盒测试方法

9.3.3灰盒测试方法

9.4测试过程与测试文档

思考题

第10章维护和演化

10.1软件维护

10.2软件演化的产生

10.3软件演化理论

10.3.1演化与维护的关系

10.3.2软件演化的分类

思考题
软件开发方法篇·基于构造粒度的方法

第11章面向对象方法

11.1UML概述

11.1.1UML产生的背景

11.1.2UML定义

11.2UML的研究内容

11.2.1UML语言的定义

11.2.2UML的图形表示法

11.3UML建模过程与在RUP中的应用

11.3.1UML建模过程

11.3.2UML在RUP中的应用

思考题

第12章面向构件方法

12.1软件体系结构的形成

12.1.1无体系结构阶段

12.1.2萌芽阶段

12.1.3初级阶段

12.1.4高级阶段

12.2软件体系结构的概念

12.3软件体系结构的要素

12.3.1构件

12.3.2连接件

12.3.3约束(配置)

12.4软件体系结构的作用

12.5基于体系结构的软件开发过程

思考题

第13章面向Agent方法

13.1面向Agent的技术

13.1.1Agent的基本概念

13.1.2Agent的体系架构

13.1.3Agent的组织类型

13.1.4Agent与组件的对比

13.1.5语义复用的Agent和组件

13.2面向Agent的软件工程

13.2.1面向Agent的研究内容

13.2.2面向Agent的开发过程

13.3面向Agent的经典开发方法

13.3.1Gaia方法

13.3.2Tropos方法

13.3.3MASE方法

思考题

第14章面向SOA方法

14.1面向服务体系架构的产生

14.1.1传统的软件体系结构

14.1.2基于组件的软件体系结构

14.1.3面向服务的体系结构

14.2SOA的基本概念

14.2.1SOA的定义

14.2.2SOA的架构

14.2.3SOA的优点

14.3支持SOA的Web Service技术

14.3.1SOA的基本原则

14.3.2基于SOA的解决方案

14.3.3Web Service技术

14.3.4SOA架构的不足

14.4适于SOA的建模方法

14.4.1MDA

14.4.2敏捷方法

14.4.3SOA的五视图法

14.5基于SOA架构的软件开发方法

14.5.1面向服务的架构

14.5.2基于SOA架构技术的优势

14.5.3SOA应用的构建步骤

14.5.4SOAD与传统软件开发的区别

思考题

第15章面向云计算方法

15.1云计算的基本概念和主要特征

15.1.1云计算的基本概念

15.1.2云计算的主要特征

15.1.3云计算的分类

15.1.4云计算与网格计算

15.1.5云计算的现状和发展趋势

15.2云计算的原理与关键技术

15.2.1云计算的原理

15.2.2云计算的实现机制

15.2.3Google云计算技术

思考题
软件开发工具篇

第16章CASE工具

16.1CASE工具概念

16.1.1CASE定义

16.1.2CASE相关概念

16.1.3CASE开发环境

16.1.4CASE工具组成

16.2CASE优势

16.3CASE工具实例

16.3.1CASE工具的产生

16.3.2常见的CASE工具

16.4CASE发展趋势

思考题
软件管理篇

第17章软件项目

17.1项目立项

17.1.1项目基本概念

17.1.2软件项目的特点

17.1.3软件项目的立项

17.1.4软件立项文档

17.2项目招投标

17.2.1项目招标与投标的概念

17.2.2项目招标与投标的过程

17.2.3招标书与投标书的编写

17.3项目合同签署

17.3.1合同的概念

17.3.2签订合同

思考题

第18章人员管理

18.1软件开发人员构成

18.2人思维的局限性

18.2.1记忆结构

18.2.2问题的解决

18.2.3工作动力

18.3小组协作

18.3.1小组的构成

18.3.2小组的凝聚力

18.3.3小组的沟通

18.4选择和留住职员

18.5激励制度

思考题

第19章进度管理

19.1项目进度

19.2条形图和活动网络图

思考题

第20章成本管理

20.1软件成本和报价

20.2软件生产率

20.3成本估算技术

20.4成本估算模型

思考题

第21章质量管理

21.1软件质量定义

21.2软件质量的度量

21.3软件质量模型

21.4软件质量保证

21.4.1质量标准

21.4.2质量规划

21.4.3质量控制

21.4.4质量评估

思考题

第22章风险管理

22.1风险识别

22.2风险分析

22.3风险规划

22.4风险监控

22.5常见风险及其处理

思考题
软件实践篇

第23章基于软件过程方法的实验

23.1需求分析

23.1.1数据流图

23.1.2数据字典

23.2概要设计

23.3软件界面设计

23.3.1菜单设计

23.3.2窗体设计

23.4详细设计

23.5软件编码

23.6软件测试

第24章基于构造粒度方法的实验

24.1类制作

24.1.1窗体设计

24.1.2DBHelper类制作

24.1.3DBHelper类使用

24.2构件制作

24.2.1DLL的简单介绍

24.2.2用VB做一个DLL文件

24.2.3对ActiveX DLL的测试

24.2.4OCX控件的介绍

24.2.5用VB做一个OCX控件

24.2.6对OCX控件的测试

24.3SOA

24.3.1SOA的定义

24.3.2SOA的实现

24.4云平台体验

24.4.1云平台介绍

24.4.2云平台实例

第25章CASE工具制作

25.1CASE工具介绍

25.2CASE工具制作
软件文档篇

附录A软件工程项目文档模板

附录A.1可行性研究报告(ISO标准)

附录A.2需求分析文档[需求规格说明书(ISO标准版)]

附录A.3项目计划书

附录A.4数据要求说明书

附录A.5概要设计文档

附录A.6详细设计文档

附录A.7模块开发说明

附录A.8软件测试报告

附录A.9软件维护报告

附录A.10软件使用手册

附录A.11开发招标书

附录A.12开发合同样本

附录B习题集

附录C习题集参考答案

参考文献

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《软件工程(第2版·微课视频版)》
Article link:https://www.teccses.org/1465795.html