软件工程(第二版)

软件工程(第二版)
作 者: 齐治昌
出版社: 高等教育出版社
丛编项: 面向21世纪课程教材
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《软件工程(第二版)》作者简介

内容简介

《软件工程(第2版)》覆盖CC2001对软件工程课程的基本要求,内容包括:软件开发模型,软件项目管理,需求分析,软件设计,软件编码与测试,软件维护,配置管理,软件工程管理,软件工程工具和环境。《软件工程(第2版)》结合目前软件工程教学的需要,特别介绍了统一建摸语言UML,并依次为基础讨论面向对象的需求分析与软件设计方法;介绍集成化CASE环境,java与internet环境下的软件开发技术;介绍支持软件过程改进的“软件能力成熟度模型”(cmm)。《软件工程(第2版)》含有丰富的例题与习题,便于教学和自学。《软件工程(第2版)》强调软件工程的理论与实践相结合,技术与管理相结合,方法与CASE工具相结合。教材思路清晰,语言简练,具有实用性和可操作性,可作为高等院校计算机专业或信息类相关专业高年纪本科生或研究生教材,也可作为软件开发人员的参考书。

图书目录

第一章软件与软件工程

1.1软件

1.1.1软件与软件的组成

1.1.2软件的特点

1.1.3软件的分类

1.1.4软件的发展

1.1.5软件危机

1.2软件工程的概念

1.2.1软件工程的定义

1.2.2软件工程的目标

1.2.3软件工程的原则

1.3软件生存周期

1.3.1软件定义

1.3.2软件开发

1.3.3软件使用、维护和退役

1.4软件开发模型

1.4.1瀑布模型

1.4.2原型模型

1.4.3螺旋模型

1.4.4基于四代技术的模型

1.4.5变换模型

1.4.6组合模型

1.5CASE32具及环境

1.5.1计算机辅助软件工程

1.5.2CASET_~具

1.5.3集成化的CASE环境

小结

习题

第二章软件项目管理

2.1软件度量

2.1.1度量、测量和估算

2.1.2面向规模的度量

2.1.3面向功能的度量

2.1.4代码行度量与功能点度量

的比较

2.2软件项目估算

2.2.1代码行、功能点和工作量估算

2.2.2经验估算模型之一:CoCoMo模型

2.2.3经验估算模型之二:Putnam模型

2.3软件质量度量

2.3.1软件质量定义及三层次度量模型

2.3.2软件质量要素

2.3.3软件质量要素评价准则

2.4软件复杂性度量

2.4.1软件复杂性及度量原则

2.4.2控制结构的复杂性度量

2.4.3文本复杂性度量

2.5软件可靠性度量

2.5.1软件可靠性的概念

2.5.2软件修复和软件有效性

2.5.3软件可靠性估算

2.6软件开发过程的管理

2.6.1风险分析

2.6.2进度安排

2.6.3软件开发标准

2.6.4软件质量保证

2.6.5软件开发人员的组织与分工

2.6.6软件项目的开发过程管理

2.7软件过程及软件成熟度模型CMM

2.7.1引言

2.7.2CMM的墓本概念

2.7.3能力成熟度模型CMM

2.7.4能力成熟度模型集成CMMl

2.7.5CMM和CMM!的选择和应用

2.8软件项目管理中的

CASE~E具

小结

习题

第三章计算机系统工程

3.1计算机系统工程

3.1.1硬件和硬件工程

3.1.2软件和软件工程

3.1.3人机工程

3.1.4数据库工程

3.2可行性研究

3.2.1引言

3.2.2经济可行性

3.2.3技术可行性

3.2.4方案选择

3.3系统模型与模拟

3.3:1系统模型

3.3.2系统建模和模拟

3.4系统规格说明及评审

3.4.1系统规格说明

3.4.2系统规格说明评审

小结

习题

第四章需求分析基础

4.1分析的任务与原则

4.2初步需求获取技术

4.2.1访谈与会议

4.2.2观察用户工作流程.

4.2.3用户和开发人员共同组成

联合小组

4.2.4实例分析

4.3需求建模

4.4问题抽象、问题分解与多视点分析

4.5支持需求分析的快速原型技术

4.6需求规格说明与评审

4.6.1需求规格说明书的目标与内容

4.6.2需求评审

小结

习题

第五章面向数据流的分析方法

5.1数据流图与数据字典

5.2实体—关系图

5.2.1数据对象、属性与关系

5.2.2实体—关系图

*5.3数据流图的实时系统扩充

5.3.1Ward&Mellor扩充

5.3.2Hatley&Pirbhai扩充

5.4基于数据流的分析方法

5.4.1创建数据流模型

*5.4.2创建控制流模型

5.4.3过程规格说明

5.5基于数据流图的需求分析CASE工具

5.5.1核心思想

5.5.2语言机制

5.5.3动态分析

5.5.4基CASE具的需求分析

小结

习题

第六章面向对象的需求分析

6.1面向对象的概念与思想

6.2UML概述

6.2.1UML的语言机制

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建立领域概念模型

小结

习题

第七章面向数据的分析方法与形式化方法

7.1面向数据结构的系统开发方法

7.1.1Warnier图

7.1.2DSSD方法

7.2Jackson系统开发方法

7.2.1标识实体与行为

7.2.2生成实体结构图

7.2.3创建软件系.统模型

7.3形式化方法

7.3.1主要思想

7.3.2形式化规格说明语言简介

7.3.3形式化需求描述

7.3.4形式化方法的现状与发展趋势

小结

习题

第八章软件设计基础

8.1软件设计过程

8.2软件设计基本概念

8.2.1抽象与逐步求精

8.2.2模块化与信息隐藏

8.2.3软件总体结构设计

8.2.4数据结构设计

8.2.5软件过程设计

8.3过程设计技术和工具

8.3.1结构化程序设计

8.3.2图形表示法

8.3.3判定表

8.3.4过程设计语言(PDL)

8.3.5过程设计工具之比较

8.4设计规格说明与评审

小结

习题

第九章面向数据流的设计方法

9.1基本概念和设计过程

9.2变换分析

9.3事务分析

9.4启发式设计策略

9.5设计优化原则

9.6实时系统设计

9.6.1实时系统性能要求

9.6.2实时系统设计要素

9.6.3实时系统设计方法

9.6.4设计实例

小结

习题

第十章面向对象的设计方法

10.1设计用例实现方案

10.1.1顺序图

10.1.2协作图

10.1.3提取边界类、实体类和控制类

10.1.4构造交互图

10;1.5精化类图

10.2设计技术支撑方案

10.2.1数据持久存储服务

10.2.2并发与同步控制服务

10.2.3技术支撑方案与用例实现方案的融合

10.3设计用户界面

10.4精化设计模型

10.4.1状态图

10.4.2精化体系结构

10.4.3精化类之间的关系

10.4.4精化类的属性和操作

10.4.5设计状态图

10.4.6设计活动图

小结

习题

第十一章面向数据的设计方法

11.1面向数据设计

11.2Jackson系统开发方法

11.2.1JSD分析技术回顾

11.2.2扩充功能性过程

11.2.3施加时间约束

11.2.4实现与JSP技术

11.2.5产生过程表示

11.3基于结构化数据的系统开发(DSSD)方法

11.3.1DSSD设计步骤

11.3.2推导输出数据的逻辑结构

11.3.3推导处理过程的逻辑结构

11.3.4复杂过程逻辑的描述

小结

习题

第十二章人机界面设计

12.j人的因素

[2.1.1人类感知基础

12.1.2用户的技能

12.L3任务与用户的特殊要求

12.2人机界面风格

12.3人机界面设计过程

12.3.1界面设计的有关模型

12.3.2任务分析与建模

12.3.3界面设计的一般问题

12.3.4实现工具

12.4人机界面实现的原则

12.4.1一般可交互性

12.4.2信息显示

12.4.3数据输入

12.5人机界面标准

12.6支持界面设计的CASE工具

小结

习题

第十三章程序设计语言和编码

13.1程序设计语言

13.1.1程序设计语言的特性

13.1.2程序设计语言的基本机制

13.1.3程序设计语言的演变和分类

13.1.4程序设计语言的选择

13.2程序设计过程

13.2.1面向对象语言对OOD的支持

13.2.2基于对象语言对OOD的支持

13.2.3过程式语言对OOD的支持

13.3编程标准

13.4编程风格

13.5程序设计支持环境(PSE)

小结

习题

第十四章软件测试

14.1基本概念

14.1.1软件测试的目标

14.1.2测试阶段的信息流程

14.1.3测试用例和场景的设计

14.1.4软件测试的步骤

14.2软件测试技术

14.2.1白盒测试

14.2.2黑盒测试

14.3软件测试策略

14.3.1单元测试

14.3.2综合测试

14.3.3确认测试

14.3.4系统测试

14.3.5排错

14.4基于CASE工具的软件测试和排错

14.4.1自动测试工具

14.4.2调试器

小结

习题

第十五章软件维护

15.1软件维护的分类

15.2维护过程

15.2.1结构化与非结构化的维护

15.2.2维护的成本

15.2.3可能存在的问题

15.3可维护性

15.3.1影响可维护性的因素

15.3.2若干量化的测度

15.3.3保证可维护性的复审

15.4维护活动

15.4.1维护组织

15.4.2维护的报告与评估

15.4.3维护活动的事件流

15.4.4保存维护记录

15.4.5评价维护活动

15.5维护的副作用

15.6逆向工程与重构工程

15.6.1恢复信息的级别

15.6.2恢复信息的方法

小结

习题

第十六章软件配置管理

16.1软件配置管理

16.1.1基线技术

16.1.2软件配置项

16.2软件配置管理任务

16.2.1标识配置对象

16.2.2版本控制

16.2.3系统建立

16.2.4修改控制

16.2.5配置审计

16.2.6配置状况报告

16.3软件配置管理标准

16.4配置管理的CASE工具

小结

习题

第十七章软件重用技术

17.1软件重用

17.1.1软件重用的概念

17.1.2软件重用的过程与意义

17.L3重用项目的管理

17.2软部伺:库的构造

17.2.1域分析

17.2.2软部件的开发

17.2.3软部件库的组织

17.3软部件的重用

17.3.1检索与提取软部件

17.3.2理解与评价软部件

17.3.3修改软部件

17.3.4软部件的合成

17.4面向对象的软件重用技术

17.4.1类库的构造

17.4.2类库的检索

17.4.3面向对象的合成

17.5软件重用项目的管理

17.5.1组织机构

17.5.2软件重用的考核指标

17.5.3创造重用氛围

17.6支持软件重用的CASE工具

17.6.1软件重用对CASE工具

的需求

17.6.2类库的组织与检索工具

小结

习题

第十八章快速原型技术

18.1瀑布模型的缺陷

18.2快速原型方法

[8.2.1原型及其作用

18.2.2快速原型的构造过程

18.3基于快速原型的进化式软件开发

18.3.1螺旋模型

18.3.2螺旋模型的评价

18.4快速原型的技术支持

18.4.1用户界面自动生成工具

18.4.2面向数据库应用的开发工具

[8.4.3四代浯言

18.4.4可重用工具

18.4.5程序设计环境

小结

习题

第十九章集成化CASE环境

[9.I概述

19.2CASE工具的集成形式

19.2.1信息交换

19.2.2公共界面

19.2.3公共信息管理与信息共享

19.2.4高度集成

19.3集成化CASE环境的总体结构

19.3.1界面集成

19.3.2工具集成

19.3.3信息集成

19.3.4软件工程信息库

19.4可移植的通用工具环境PCTE

19.4.1基本机制

19.4.2用户接口

19.4.3分布式机制

小结

习题

*第二十章新型软件开发技术

20.1Internet与Java简介

20.1.1Internet简介

20.1.2Java的发展历史

20.1.3Java的特征

20.1.4Java的语法机制

20.1.5Java的意义

20.2Java与Internet环境下的软

件开发

20.2.1基于Java的软件开发过程

20.2.2Java与多媒体主页的制作

20.2.3Java与交互式主页的制作

20.2.4Java与图形界面

20.2.5Java与网络程序设计

20.3对象链接与嵌入(OLE)技术

20.3.1OLE简介

20.3.2构件对象模型

20.3.3结构化存储与复合文件

20.3.4数据对象传送

20.3.5复合文档

20.3.60LE自动化

20.3.7OLE控件

20.4CORBA与分布计算技术

20.4.1分布计算环境

20.4.2分布计算技术

20.4.3CORBA概述

20.4.4Internet环境下的分布式

软件开发

小结

习题

参考文献