注册 登录 进入教材巡展 进入在线书城
#
  • #
  • #

出版时间:2013-02

出版社:高等教育出版社

获奖信息:普通高等教育“十一五”国家级规划教材  

以下为《软件工程原理》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 高等教育出版社
  • 9787040369069
  • 1版
  • 161737
  • 46242755-0
  • 平装
  • 异16开
  • 2013-02
  • 760
  • 540
  • 工学
  • 软件工程
  • TP311.5
  • 计算机科学与技术、软件工程
  • 本科 研究生(硕士、EMBA、MBA、MPA、博士)
内容简介

本书覆盖软件工程知识体系(SWEBOK)(第3版)的全部核心知识域,从软件工程的本质出发,系统、全面地介绍软件过程、软件建模技术和方法以及软件工程管理,同时介绍一些热点新技术和新方法。全书分为三大部分,共20章。第一部分为软件工程基础,讲述软件工程的基本原则、软件过程以及从需求、设计、测试到维护的活动,共9章。第二部分为软件工程管理,讲述工程管理的重要知识域,包括软件项目管理、软件项目估算和计划、软件质量管理、软件风险管理、软件度量和人员管理,共6章。第三部分为高级主题,讲述当前热门的一些新技术和新方法,共5章。此外,本书还以一个汽车4S店业务管理系统为案例,阐述软件工程从需求、设计、测试到管理等各核心环节,使学生扎实地掌握理论知识,培养其解决实际问题的能力。

本书可供本科生、硕士生学习“软件工程”、“高级软件工程”、“软件过程”、“软件项目管理”等课程使用,同时对于从事软件开发、维护和管理的各类人员也可起到非常好的借鉴作用。

目录

 前辅文
 第一部分 软件工程基础
  第1章 绪论
   1.1 软件
    1.1.1 软件的作用和特性
    1.1.2 软件的发展和面临的新挑战
    1.1.3 软件危机
   1.2 工程
    1.2.1 软件开发与艺术、科学和工程的关系
    1.2.2 工程的定义和特性
    1.2.3 工程的准则
   1.3 软件工程
    1.3.1 软件工程的概念和知识域
    1.3.2 软件工程的金三角
    1.3.3 控制软件开发的复杂性
    1.3.4 软件工程经济学
   1.4 案例概述
   本章小结
   参考文献
   习题
  第2章 软件过程
   2.1 软件过程的概念
    2.1.1 软件过程的定义和作用
    2.1.2 软件过程的分类
    2.1.3 软件过程的核心元素
   2.2 软件生命周期模型
    2.2.1 瀑布模型
    2.2.2 增量模型
    2.2.3 演化模型
   2.3 统一软件过程
    2.3.1 阶段
    2.3.2 迭代
    2.3.3 过程规范
   2.4 敏捷过程
    2.4.1 敏捷过程的价值观和原则
    2.4.2 XP
    2.4.3 Scrum
    2.4.4 MSF
   2.5 软件过程的选择、裁剪、评估和改进
    2.5.1 软件过程的选择和裁剪
    2.5.2 软件过程的评估
    2.5.3 软件过程的改进
   本章小结
   参考文献
   习题
  第3章 软件建模
   3.1 模型和建模
    3.1.1 模型
    3.1.2 软件模型的3个层次:CIM、PIM和PSM
    3.1.3 软件建模方法
   3.2 结构化方法
    3.2.1 结构化分析
    3.2.2 结构化设计
   3.3 面向对象方法
    3.3.1 面向对象的基本概念
    3.3.2 面向对象的基本原则
    3.3.3 面向对象的分析和设计
    3.3.4 结构化方法和面向对象方法的比较
   3.4 基于构件的开发方法
    3.4.1 构件
    3.4.2 基于构件的软件开发
    3.4.3 构件开发
    3.4.4 构件管理
    3.4.5 应用开发和构件组装
    3.4.6 与面向对象方法的关系
   3.5 面向服务方法
    3.5.1 面向服务架构的基本概念
    3.5.2 面向服务建模的内涵
    3.5.3 面向服务建模的方法
   3.6 模型驱动开发方法
    3.6.1 从代码驱动到模型驱动
    3.6.2 元模型和MOF
    3.6.3 基于MDA的软件开发方法
   3.7 形式化方法
    3.7.1 形式化方法的概念
    3.7.2 形式化规约
    3.7.3 形式化开发
    3.7.4 形式化验证
   3.8 敏捷建模方法
    3.8.1 敏捷建模的原则
    3.8.2 敏捷建模的实践
   本章小结
   参考文献
   习题
  第4章 需求工程
   4.1 软件需求面临的挑战
   4.2 需求工程的概念
    4.2.1 软件需求
    4.2.2 需求的层次
    4.2.3 优秀需求应具有的特性
    4.2.4 软件需求工程
   4.3 需求获取
    4.3.1 需求来源
    4.3.2 需求获取技术
   4.4 需求分析建模
    4.4.1 分析模型
    4.4.2 分析建模的准则
   4.5 需求定义和验证
    4.5.1 软件前景文档
    4.5.2 软件需求规约
    4.5.3 用户界面原型
    4.5.4 软件需求验证
   4.6 需求管理
    4.6.1 定义需求基线
    4.6.2 需求变更控制和版本控制
    4.6.3 需求跟踪
   本章小结
   参考文献
   习题
  第5章 面向对象的分析建模
   5.1 面向对象的分析模型
    5.1.1 用例图
    5.1.2 活动图
    5.1.3 类图
    5.1.4 时序图
    5.1.5 通信图
    5.1.6 包图
   5.2 分析建模的步骤
   5.3 用例建模
    5.3.1 执行者的识别
    5.3.2 用例的识别
    5.3.3 用例图的构建
    5.3.4 用例规约的撰写
    5.3.5 用例模型的优化
   5.4 建立概念模型
   5.5 用例实现的识别
   5.6 分析类的识别
    5.6.1 3种分析类
    5.6.2 识别边界类
    5.6.3 识别控制类
    5.6.4 识别实体类
   5.7 用例分析
    5.7.1 职责分配的通用原则
    5.7.2 时序图和通信图的构建
    5.7.3 类图的构建
   本章小结
   参考文献
   习题
  第6章 设计工程
   6.1 设计工程概述
    6.1.1 软件设计过程
   6.2 软件设计原则
    6.1.2 软件设计模型
    6.2.1 抽象
    6.2.2 分解和模块化
    6.2.3 封装和信息隐藏
    6.2.4 高内聚和低耦合
   6.3 软件质量属性的设计策略
    6.3.1 可用性设计策略
    6.3.2 可修改性设计策略
    6.3.3 性能设计策略
    6.3.4 安全性设计策略
    6.3.5 可测试性设计策略
    6.3.6 易用性设计策略
   6.4 架构风格
    6.4.1 通用结构的架构风格
    6.4.2 分布式系统的架构风格
    6.4.3 交互式系统的架构风格
    6.4.4 自适应系统的架构风格
    6.4.5 其他架构风格
   6.5 设计模式
    6.5.1 创建型设计模式
    6.5.2 结构型设计模式
    6.5.3 行为型设计模式
   6.6 人机界面设计
    6.6.1 界面设计原则
    6.6.2 人机交互方式
    6.6.3 界面设计过程
    6.6.4 界面设计问题
   本章小结
   参考文献
   习题
  第7章 面向对象的设计建模
   7.1 面向对象的设计模型
    7.1.1 设计建模过程
    7.1.2 构件图
    7.1.3 部署图
    7.1.4 状态机图
   7.2 架构设计
    7.2.1 4+1架构视图
    7.2.2 逻辑视图设计
    7.2.3 进程视图设计
    7.2.4 开发视图设计
    7.2.5 物理视图设计
    7.2.6 场景视图设计
    7.2.7 视图选择
   7.3 包和子系统设计
    7.3.1 包设计原则
    7.3.2 子系统设计
   7.4 类设计
    7.4.1 类设计原则
    7.4.2 类设计过程
   7.5 持久化设计
    7.5.1 实体对象模型与数据库设计
    7.5.2 数据库设计
    7.5.3 持久化框架
   本章小结
   参考文献
   习题
  第8章 软件测试
   8.1 软件测试概念
    8.1.1 软件测试定义
    8.1.2 软件测试原则
    8.1.3 软件可测试性
   8.2 软件测试策略
    8.2.1 软件测试层次
    8.2.2 软件质量属性测试
    8.2.3 其他软件测试策略
   8.3 软件测试技术
    8.3.1 测试技术分类
    8.3.2 基于直觉和经验的测试
    8.3.3 基于代码的测试
    8.3.4 基于规约的测试
    8.3.5 基于错误的测试
    8.3.6 基于模型的测试
    8.3.7 基于应用类型的测试
   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.5.3 自动化测试的误区
    8.5.4 测试工具
   本章小结
   参考文献
   习题
  第9章 软件演化和软件维护
   9.1 软件演化
    9.1.1 软件演化的定义
    9.1.2 软件演化法则
   9.2 软件维护基础
    9.2.1 软件维护的重要性
    9.2.2 软件维护的概念和分类
   9.3 软件维护的关键问题
    9.3.1 技术问题
    9.3.2 管理问题
    9.3.3 维护成本估算
   9.4 软件维护过程与维护活动
    9.4.1 维护过程
    9.4.2 维护活动
   9.5 软件维护技术
    9.5.1 程序理解
    9.5.2 逆向工程
    9.5.3 再工程
   本章小结
   参考文献
   习题
 第二部分 软件工程管理
  第10章 软件项目管理
   10.1 项目和项目管理
    10.1.1 项目管理的基本概念
    10.1.2 项目管理的相关标准
    10.1.3 软件项目管理的特点
   10.2 项目管理的知识域和过程
    10.2.1 项目管理知识域
    10.2.2 项目管理过程
   10.3 软件项目从立项到收尾
    10.3.1 软件项目立项
    10.3.2 软件项目启动
    10.3.3 软件项目规划
    10.3.4 软件项目执行
    10.3.5 软件项目监控
    10.3.6 软件项目收尾
   10.4 软件项目经理的职责
   本章小结
   参考文献
   习题
  第11章 软件项目估算和计划
   11.1 软件项目计划
    11.1.1 软件项目计划的内容
    11.1.2 软件项目规划的关键活动
   11.2 软件估算
    11.2.1 估算对项目的影响
    11.2.2 估算原则
    11.2.3 估算方法
    11.2.4 软件规模估算
    11.2.5 大致估算
   11.3 进度安排
    11.3.1 关键路径法
    11.3.2 进度计划
    11.3.3 战胜进度压力
   11.4 挣值管理
    11.4.1 3个基本参数
    11.4.2 4个评价指标
    11.4.3 两个预测变量
   本章小结
   参考文献
   习题
  第12章 软件质量管理
   12.1 软件质量概念
    12.1.1 软件质量定义
    12.1.2 软件质量模型
    12.1.3 软件质量的价值和成本
   12.2 软件质量管理
    12.2.1 质量管理的发展
    12.2.2 软件质量管理的内容
   12.3 项目级软件质量管理
    12.3.1 软件质量计划
    12.3.2 验证和确认
    12.3.3 质量分析与评价
    12.3.4 软件配置管理
   12.4 组织级软件质量管理
    12.4.1 质量管理体系标准ISO
    12.4.2 质量管理体系的建立
    12.4.3 质量管理体系的持续改进
   12.5 软件质量管理技术
    12.5.1 静态技术
    12.5.2 动态技术
   12.6 软件评审
    12.6.1 评审方法分类
    12.6.2 审查
    12.6.3 评审的陷阱
   12.7 软件审核
    12.7.1 审核分类
    12.7.2 审核过程
   本章小结
   参考文献
   习题
  第13章 软件风险管理
   13.1 风险管理概念
    13.1.1 风险的定义和分类
    13.1.2 风险管理的成本和收益
    13.1.3 被动和主动的风险策略
   13.2 风险管理的成熟度模型
   13.3 风险管理过程
    13.3.1 风险识别
    13.3.2 风险分析与排序
    13.3.3 风险管理计划制定
    13.3.4 风险跟踪和报告
    13.3.5 风险控制
    13.3.6 从风险中学习
   13.4 十大软件风险
    13.4.1 需求误解
    13.4.2 缺少上层的支持
    13.4.3 需求变更失控
    13.4.4 未能合理管理客户期望值
    13.4.5 不现实的进度计划和成本预算
    13.4.6 质量低劣
    13.4.7 人员薄弱
    13.4.8 技术和架构风险
    13.4.9 软件外包失败
    13.4.10 缺乏足够的用户参与
   本章小结
   参考文献
   习题
  第14章 软件度量
   14.1 软件度量的概念
    14.1.1 度量目的
    14.1.2 度量定义和分类
    14.1.3 度量原则
   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 软件度量过程
    14.4.1 建立度量目标和选择度量
    14.4.2 定义度量规程
    14.4.3 获取度量数据
    14.4.4 分析度量数据
    14.4.5 存储和交流度量结果
   本章小结
   参考文献
   习题
  第15章 软件人员管理
   15.1 软件人员管理模型
    15.1.1 软件人员的特点
    15.1.2 PCMM
   15.2 激励
    15.2.1 激励理论
    15.2.2 开发人员的激励因素
    15.2.3 最重要的激励因素
   15.3 团队建设
    15.3.1 高业绩团队
    15.3.2 团队建设方法
    15.3.3 团队建设的5个阶段
   15.4 团队模式
   15.5 沟通
    15.5.1 有效的沟通方法
    15.5.2 冲突管理
   本章小结
   参考文献
   习题
 第三部分 高级主题
  第16章 软件产品线工程
   16.1 软件产品线工程的提出
   16.2 软件产品线工程的3个基本活动
    16.2.1 软件产品线工程的组成
    16.2.2 领域工程和应用工程的关系
   16.3 产品线的可变性
   16.4 领域工程
    16.4.1 领域
    16.4.2 领域分析
    16.4.3 领域设计
    16.4.4 领域实现
   16.5 领域工程的代表性方法
    16.5.1 FODA
    16.5.2 FORM
    16.5.3 Software Product Lines
    16.5.4 FAST
    16.5.5 PuLSE
    16.5.6 FeatuRSEB
    16.5.7 青鸟领域工程方法和FODM
   本章小结
   参考文献
   习题
  第17章 面向服务的软件开发
   17.1 面向服务架构概述
    17.1.1 SOA产生的动因
    17.1.2 SOA与Web Services
    17.1.3 SOA对应用系统的分析与设计的影响
    17.1.4 SOA对应用系统的开发与部署的影响
   17.2 面向服务的分析与设计
    17.2.1 业务建模的方法
    17.2.2 企业服务总线
    17.2.3 服务组织方式
    17.2.4 业务服务到软件服务的映射
    17.2.5 服务粒度的确定
   17.3 面向服务的系统实现
    17.3.1 服务的实现
    17.3.2 Web 2.0客户端
    17.3.3 服务的调试与测试
   本章小结
   参考文献
   习题
  第18章 形式化软件开发
   18.1 形式化方法的概念
   18.2 形式化规约
    18.2.1 数学基础
    18.2.2 形式化规约语言
    18.2.3 Z语言
   18.3 形式化验证
    18.3.1 定理证明
    18.3.2 模型检验
   18.4 软件开发过程中的形式化方法
    18.4.1 考虑因素
    18.4.2 在软件过程中引入形式化方法的策略
    18.4.3 形式化方法的10条戒律
   18.5 形式化方法的应用案例
    18.5.1 案例介绍
    18.5.2 具体案例:卡西尼号探测器故障保护软件
   18.6 形式化方法的争议及未来
   本章小结
   参考文献
   习题
  第19章 软件安全工程
   19.1 软件安全基本概念
    19.1.1 信息安全基本概念
    19.1.2 软件确保与软件安全工程
   19.2 安全软件开发过程
   19.3 软件安全需求
    19.3.1 软件安全需求工程SQUARE
    19.3.2 合规性需求
   19.4 安全的软件架构与设计
    19.4.1 安全原则与目标
    19.4.2 安全模式与安全设计模式
    19.4.3 架构风险分析
   19.5 安全编码
    19.5.1 安全编码原则
    19.5.2 安全编码规范
    19.5.3 代码的静态分析
   19.6 安全测试与应急响应
   19.7 安全的项目管理
   本章小结
   参考文献
   习题
  第20章 软件工程职业化建设和职业道德规范
   20.1 软件工程的职业化建设
    20.1.1 走向一个成熟的软件工程职业
    20.1.2 职业化建设的框架
    20.1.3 软件工程职业化建设的进展
    20.1.4 职业化建设的3个层次
   20.2 软件工程职业道德规范
    20.2.1 软件工程职业道德规范和职业实践标准
    20.2.2 职业道德规范的履行
    20.2.3 软件工程师的职业责任
   本章小结
   参考文献
   习题
 附录 IEEE软件工程知识体系(SWEBOK)