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

出版时间:2015年8月

出版社:人民邮电出版社

以下为《软件工程实用教程》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 人民邮电出版社
  • 9787115393173
  • 1-2
  • 81953
  • 46212154-2
  • 平装
  • 16开
  • 2015年8月
  • 432
  • 256
  • TP311.5
  • 软件工程
  • 本科
作者简介
朴勇,大连理工大学软件学院教师
  1994.9-1998.7 大连理工大学计算机及应用专业学士
  1998.9-2001.4 大连理工大学计算机软件与理论专业硕士
  2001.7-2003.12 德国锡根大学电子工程与计算机系进修
  2004.3至今 大连理工大学软件学院教师
查看全部
内容简介
  朴勇编著的《软件工程实用教程》主要围绕软件的系统工程化开发过程,介绍相关的理论、方法、技术和工具。本书以面向对象的分析和设计为主线,遵循UML 2标准,以基本理论为出发点,介绍对软件开发的组织管理及业务流程分析;重点针对软件开发的生命周期,讨论需求分析、类的概要设计、代码生成之道、类的详细设计、设计优化、实现、交互设计、质量保证等重要环节;介绍软件开发环境,包括项目计划及跟踪。
  本书内容丰富、循序渐进,注重软件工程理论与实践的结合,可作为高等院校计算机相关专业本科生和研究生的教材,也可作为从事软件开发的理论研究人员及工程技术人员的参考用书。
目录
第1章 软件工程概述
 1.1 软件危机与软件工程
  1.1.1 软件危机
  1.1.2 软件工程知识体系
 1.2 系统工程与统一建模语言
  1.2.1 系统工程
  1.2.2 统一建模语言
 1.3 软件工程开发方法
  1.3.1 传统方法
  1.3.2 面向对象方法
  1.3.3 理解两种开发方法
 习题
第2章 软件开发过程
 2.1 软件开发过程与生命周期
 2.2 传统生命周期模型
  2.2.1 瀑布模型
  2.2.2 快速原型模型
  2.2.3 增量模型
  2.2.4 螺旋模型
  2.2.5 喷泉模型
 2.3 敏捷软件模型
  2.3.1 增量与迭代
  2.3.2 敏捷开发的优势
  2.3.3 极限编程
  2.3.4 Scrum
  2.3.5 MSF
 2.4 过程建模
  2.4.1 组织级过程
  2.4.2 使用活动图进行过程建模
 2.5 风险管理过程
 习题
第3章 需求分析
 3.1 需求分析的挑战
 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.5 功能性需求
 3.6 非功能性需求
 习题
第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.6 需求跟踪
 习题
第5章 代码生成之道
 5.1 CASE工具
 5.2 单个类的代码实现
 5.3 关联关系的实现
 5.4 对象间的归属关系
  5.4.1 聚合关系
  5.4.2 组合关系
  5.4.3 依赖关系
 5.5 软件架构的构建
  5.5.1 包及其结构
  5.5.2 包结构优化
 5.6 影响程序运行的其他因素
 习题
第6章 类的详细设计
 6.1 详细设计主要活动
 6.2 类方法的详细设计
  6.2.1 图形设计工具
  6.2.2 表格工具
  6.2.3 语言工具
 6.3 类的详细设计
  6.3.1 状态图的基本结构
  6.3.2 状态图的扩展
  6.3.3 状态图的应用
 6.4 对象约束语言
 习题
第7章 设计优化
 7.1 小规模设计
 7.2 设计结构的优化
  7.2.1 基本的设计原则
  7.2.2 设计原则的应用
 7.3 模型-视图-控制器(MVC)
 7.4 设计模式
  7.4.1 抽象工厂模式
  7.4.2 单例模式
  7.4.3 适配器模式
  7.4.4 门面模式
  7.4.5 代理模式
  7.4.6 观察者模式
  7.4.7 策略模式
  7.4.8 状态模式
 习题
第8章 实现
 8.1 非功能性需求的实现
 8.2 分布式系统
 8.3 XML
 8.4 程序库
 8.5 组件
  8.5.1 组件的设计与使用
  8.5.2 JavaBean组件
 8.6 框架
  8.6.1 框架及其应用
  8.6.2 Java中的框架
 8.7 数据的持久化
  8.7.1 文件持久化
  8.7.2 数据库持久化
 8.8 领域特定语言
 8.9 模型驱动架构
  8.9.1 MDA原理及开发过程
  8.9.2 MDA应用
 8.10 重构
 习题
第9章 交互设计
 9.1 交互设计的背景
 9.2 可用性的概念
  9.2.1 任务适合性
  9.2.2 自我描述性
  9.2.3 可控性
  9.2.4 与用户期望一致性
  9.2.5 易学性
  9.2.6 容错性
  9.2.7 可定制性
 9.3 人机工程与软件过程
 9.4 可使用性的验证
 习题
第10章 质量保证
 10.1 形式化的正确性
 10.2 断言
 10.3 单元测试
  10.3.1 测试方法
  10.3.2 测试框架
 10.4 系统的可测试性
 10.5 等价类测试
  10.5.1 等价类方法
  10.5.2 等价类与边界
  10.5.3 等价类组合
  10.5.4 面向对象中的等价类
 10.6 基于控制流的测试
  10.6.1 控制流测试方法
  10.6.2 覆盖指标
 10.7 测试分类和测试环境
 10.8 测试度量
 10.9 建设性质量保证
 10.10 人工测试
 习题
第11章 软件开发环境
 11.1 版本管理
 11.2 生成管理
 11.3 其他配置管理活动
 11.4 项目计划及跟踪
  11.4.1 项目计划与工作分解
  11.4.2 任务安排与工程网络图
  11.4.3 项目组织与甘特图
  11.4.4 项目计划跟踪
 11.5 工作量估算
  11.5.1 评估软件规模
  11.5.2 评估开发成本
 11.6 质量管理
  11.6.1 质量与过程改进
  11.6.2 能力成熟度与过程模型
 11.7 项目人员与沟通
  11.7.1 项目中的人员
  11.7.2 人员沟通
 习题
第12章 版本控制系统
 12.1 简介
 12.2 常用版本控制软件介绍
  12.2.1 Visual Source Safe和TeamFoundation Server
  12.2.2 Concurrent Version System
  12.2.3 Subversion
  12.2.4 StarTearn
  12.2.5 ClearCase
  12.2.6 Git
 12.3 svN的使用方法
  12.3.1 SVN的特点
  12.3.2 创建Checkout目录
  12.3.3 Commit操作
  12.3.4 Update操作
  12.3.5 分支和合并
  12.3.6 冲突处理
 12.4 Git的使用方法
  12.4.1 Git的特点
  12.4.2 准备工作
  12.4.3 基本操作
  12.4.4 分支管理
  12.4.5 标签管理
 习题
参考文献