顶部
收藏

软件工程--原理、方法与应用(第3版)

“十一五”国家规划教材

作者:
史济民 顾春华 郑红
定价:
41.50元
ISBN:
978-7-04-026146-2
版面字数:
0.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
“十一五”国家规划教材
出版时间:
2009-03-24
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
软件工程专业课程

作为一本注重能力培养的实践型教材,第3 版继承并保持了“注重实践”的风格,将全书分编为绪论和上、中、下3 篇,共14 章。内容分别为:上篇为传统软件工程,包括软件生存周期与软件过程、结构化分析与设计;中篇为面向对象软件工程,包括面向对象与UML、需求工程与需求分析、面向对象分析、面向对象设计、编码与测试;下篇为软件工程的近期进展、管理与环境,包括软件维护、软件复用、软件工程管理、软件质量管理、软件工程环境、软件工程高级课题。与第2 版相比,本版将“并行介绍传统的和面向对象的软件工程”改变为“重点介绍面向对象的软件工程”,并在“面向对象分析”和“面向对象设计”两章分别给出案例;通过“软件工程高级课题”,对Web 工程及基于体系结构的软件开发等热门课题集中进行了简要的讲解。

本书结构合理、文字通俗、例题丰富、可读性强,主要面向计算机及相关专业本科生,亦可供软件开发人员作为参考。

  • 前辅文
  • 第1 章 绪论
    • 1.1 软件和软件危机
      • 1.1.1 软件的定义
      • 1.1.2 软件的特征
      • 1.1.3 软件危机
    • 1.2 软件工程学的范畴
      • 1.2.1 软件开发方法学
      • 1.2.2 软件工具
      • 1.2.3 软件工程环境
      • 1.2.4 软件工程管理
    • 1.3 软件工程的发展
      • 1.3.1 3 种编程范型
      • 1.3.2 3 代软件工程
    • 1.4 软件工程的应用
      • 1.4.1 在各种规模软件开发中的应用
      • 1.4.2 软件工程的成就与发展展望
    • 1.5 软件工程的教学:本书导读
    • 小结
    • 习题
  • 上篇 传统软件工程
    • 第2 章 软件生存周期与软件过程
      • 2.1 软件生存周期
        • 2.1.1 软件生存周期的主要活动
        • 2.1.2 生存周期与软件过程的关系
      • 2.2 传统的软件过程
        • 2.2.1 瀑布模型
        • 2.2.2 快速原型模型
      • 2.3 软件演化模型
        • 2.3.1 增量模型
        • 2.3.2 螺旋模型
        • 2.3.3 构件集成模型
      • 2.4 形式化方法模型
        • 2.4.1 转换模型
        • 2.4.2 净室模型
      • 2.5 统一过程和敏捷过程
        • 2.5.1 统一过程
        • 2.5.2 敏捷过程
        • 2.5.3 极限编程
      • 2.6 软件可行性研究
        • 2.6.1 可行性研究的内容与步骤
        • 2.6.2 软件风险分析
        • 2.6.3 项目实施计划
      • 小结
      • 习题
    • 第3 章 结构化分析与设计
      • 3.1 概述
        • 3.1.1 结构化分析与设计的由来
        • 3.1.2 SA 模型的组成与描述
        • 3.1.3 SD 模型的组成与描述
      • 3.2 结构化系统分析
        • 3.2.1 画分层数据流图
        • 3.2.2 确定数据定义与加工策略
        • 3.2.3 需求分析的复审
      • 3.3 结构化系统设计
        • 3.3.1 SD 概述
        • 3.3.2 SD 的步骤:从DFD 图到SC 图
        • 3.3.3 变换映射
        • 3.3.4 事务映射
        • 3.3.5 优化初始SC 图的指导规则
        • 3.3.6 教材购销系统的总体结构
      • 3.4 模块设计
        • 3.4.1 目的与任务
        • 3.4.2 模块设计的原则与方法
        • 3.4.3 常用的表达工具
      • 小结
      • 习题
  • 中篇 面向对象软件工程
    • 第4 章 面向对象与UML
      • 4.1 面向对象概述
        • 4.1.1 对象和类
        • 4.1.2 面向对象的基本特征
        • 4.1.3 面向对象开发的优点
      • 4.2 UML 简介
        • 4.2.1 UML 的组成
        • 4.2.2 UML 的特点
        • 4.2.3 UML 的应用
      • 4.3 静态建模
        • 4.3.1 用例图与用例模型
        • 4.3.2 类图和对象图
        • 4.3.3 包
      • 4.4 动态建模
        • 4.4.1 消息
        • 4.4.2 状态图
        • 4.4.3 时序图和协作图
        • 4.4.4 活动图
      • 4.5 物理架构建模
        • 4.5.1 物理架构
        • 4.5.2 构件图和部署图
      • 4.6 UML 工具
        • 4.6.1 Rational Rose
        • 4.6.2 StarUML
      • 小结
      • 习题
    • 第5 章 需求工程与需求分析
      • 5.1 软件需求工程
        • 5.1.1 软件需求的定义
        • 5.1.2 软件需求的特性
        • 5.1.3 需求工程的由来
      • 5.2 需求分析与建模
        • 5.2.1 需求分析的步骤
        • 5.2.2 需求分析是迭代过程
      • 5.3 需求获取的常用方法
        • 5.3.1 常规的需求获取方法
        • 5.3.2 用快速原型法获取需求
      • 5.4 需求模型
        • 5.4.1 需求模型概述
        • 5.4.2 面向对象的需求建模
      • 5.5 软件需求描述
      • 5.6 需求管理
        • 5.6.1 需求管理的内容
        • 5.6.2 需求变更控制
        • 5.6.3 需求管理工具
      • 5.7 需求建模示例
        • 5.7.1 问题陈述
        • 5.7.2 用例模型
        • 5.7.3 补充规约
        • 5.7.4 术语表
      • 小结
      • 习题
    • 第6 章 面向对象分析
      • 6.1 软件分析概述
        • 6.1.1 面向对象软件分析
        • 6.1.2 面向对象分析模型
      • 6.2 面向对象分析建模
        • 6.2.1 识别与确定分析类
        • 6.2.2 建立对象-行为模型
        • 6.2.3 建立对象-关系模型
      • 6.3 面向对象分析示例
        • 6.3.1 注册
        • 6.3.2 维护个人信息
        • 6.3.3 维护购物车
        • 6.3.4 生成订单
        • 6.3.5 管理订单
      • 小结
      • 习题
    • 第7 章 面向对象设计
      • 7.1 软件设计概述
        • 7.1.1 软件设计的概念
        • 7.1.2 软件设计的任务
        • 7.1.3 模块化设计
      • 7.2 面向对象设计建模
        • 7.2.1 面向对象设计模型
        • 7.2.2 面向对象设计的任务
        • 7.2.3 模式的应用
      • 7.3 系统架构设计
        • 7.3.1 系统高层结构设计
        • 7.3.2 确定设计元素
        • 7.3.3 任务管理策略
        • 7.3.4 分布式实现机制
        • 7.3.5 数据存储设计
        • 7.3.6 人机交互设计
      • 7.4 系统元素设计
        • 7.4.1 子系统设计
        • 7.4.2 分包设计
        • 7.4.3 类/对象设计
      • 7.5 面向对象设计示例
        • 7.5.1 关联关系的具体化
        • 7.5.2 网上购物系统的架构设计
        • 7.5.3 网上购物系统的类/对象设计
      • 小结
      • 习题
    • 第8 章 编码与测试
      • 8.1 编码概述
        • 8.1.1 编码的目的
        • 8.1.2 编码的风格
      • 8.2 编码语言与编码工具
        • 8.2.1 编码语言的发展
        • 8.2.2 常用的编程语言
        • 8.2.3 编码语言的选择
        • 8.2.4 编码工具
      • 8.3 编码示例
        • 8.3.1 注册功能编码实现
        • 8.3.2 维护购物车功能编码实现
      • 8.4 测试的基本概念
        • 8.4.1 目的与任务
        • 8.4.2 测试的特性
        • 8.4.3 测试的种类
        • 8.4.4 测试的文档
        • 8.4.5 软件测试过程
      • 8.5 黑盒测试和白盒测试
        • 8.5.1 黑盒测试
        • 8.5.2 白盒测试
      • 8.6 测试用例设计
        • 8.6.1 黑盒测试用例设计
        • 8.6.2 白盒测试用例设计
      • 8.7 多模块程序的测试策略
        • 8.7.1 测试的层次性
        • 8.7.2 单元测试
        • 8.7.3 集成测试
        • 8.7.4 确认测试
        • 8.7.5 系统测试
        • 8.7.6 终止测试的标准
      • 8.8 面向对象系统的测试
        • 8.8.1 OO 软件的测试策略
        • 8.8.2 OO 软件测试用例设计
      • 小结
      • 习题
  • 下篇 软件工程的近期进展、管理与环境
    • 第9 章 软件维护
      • 9.1 软件维护的种类
      • 9.2 软件可维护性
      • 9.3 软件维护的实施
      • 9.4 软件维护的管理
      • 9.5 软件配置管理
      • 9.6 软件再工程
      • 小结
      • 习题
    • 第10 章 软件复用
      • 10.1 软件复用的基本概念
        • 10.1.1 软件复用的定义
        • 10.1.2 软件复用的措施
        • 10.1.3 软件复用的粒度
      • 10.2 领域工程
        • 10.2.1 横向复用和纵向复用
        • 10.2.2 实施领域分析
        • 10.2.3 开发可复用构件
        • 10.2.4 建立可复用构件库
      • 10.3 基于构件的软件开发
        • 10.3.1 构件集成模型
        • 10.3.2 应用系统工程
      • 10.4 面向对象与软件复用
        • 10.4.1 OO 方法对软件复用的支持
        • 10.4.2 复用技术对OO方法的支持
        • 10.4.3 基于构件软件开发的现状与问题
      • 小结
      • 习题
    • 第11 章 软件工程管理
      • 11.1 管理的目的与内容
      • 11.2 软件估算模型
        • 11.2.1 资源估算模型
        • 11.2.2 COCOMO 模型
      • 11.3 软件成本估计
      • 11.4 人员的分配与组织
      • 11.5 项目进度安排
      • 小结
      • 习题
    • 第12 章 软件质量管理
      • 12.1 从质量保证到质量认证
      • 12.2 质量保证
        • 12.2.1 软件的质量属性
        • 12.2.2 质量保证的活动内容
      • 12.3 软件可靠性
        • 12.3.1 可靠性的定义和分级
        • 12.3.2 可靠性模型
        • 12.3.3 软件容错技术
      • 12.4 程序正确性证明
      • 12.5 CMM 软件能力成熟度模型
        • 12.5.1 CMM 的基本概念
        • 12.5.2 软件能力成熟度等级
        • 12.5.3 CMM 的应用
        • 12.5.4 CMM 评估的实施
        • 12.5.5 软件过程评估的SPICE 国际标准
      • 12.6 ISO 9000 国际标准
        • 12.6.1 ISO 9001 和ISO 9000-3
        • 12.6.2 ISO 9000 标准对软件企业的重要性
        • 12.6.3 在软件企业中实施ISO 9000 标准
      • 12.7 软件度量
        • 12.7.1 项目度量
        • 12.7.2 过程度量
      • 小结
      • 习题
    • 第13 章 软件工程环境
      • 13.1 什么是软件工程环境
        • 13.1.1 软件开发环境的特点
        • 13.1.2 理想环境的模型
        • 13.1.3 CASE 环境
      • 13.2 CASE 环境的组成与结构
        • 13.2.1 CASE 的组成构件
        • 13.2.2 CASE 的一般结构
      • 13.3 CASE 环境实例
        • 13.3.1 Rational SUITE EnterpriseStudio
        • 13.3.2 青鸟系统
      • 小结
      • 习题
    • 第14 章 软件工程高级课题
      • 14.1 Web 工程
        • 14.1.1 Web 工程与软件工程
        • 14.1.2 Web 开发
      • 14.2 基于体系结构的软件开发
        • 14.2.1 应用软件的体系结构
        • 14.2.2 编程范型对体系结构的影响
        • 14.2.3 编程范型对复用粒度的影响
        • 14.2.4 软件体系结构技术仍在发展
      • 14.3 面向方面的软件开发
        • 14.3.1 面向方面编程
        • 14.3.2 AOP 语言规范
        • 14.3.3 AOP 与OOP 比较
        • 14.3.4 面向方面软件开发
      • 14.4 形式化的软件开发
        • 14.4.1 形式化方法的定义
        • 14.4.2 形式化的软件开发
      • 小结
      • 习题
    • 附录 缩略语中英文对表
    • 主要参考文献

相关图书