注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件工程及软件方法学软件工程导论

软件工程导论

软件工程导论

定 价:¥18.80

作 者: 张海藩编著
出版社: 清华大学出版社
丛编项: 计算机软件工程丛书
标 签: 软件工程

ISBN: 9787302009726 出版时间: 1992-01-01 包装:
开本: 26cm 页数: 296页 字数:  

内容简介

  本书是一版系作者根据在北京大学校内外多次讲授“软件工程概论”课程所用的讲义改写而成。为适应新的发展情况,作者总结四年来的教学和科研的经验,对原书内容作了调整和增删,变动约65%,成为修订版。书中较全面系统地介绍了软件工程的概念、原理以及典型的技术方法。本书的特点是既注重系统性和科学性,又注得实用性;既有广度(全面概括地介绍了各种常用方法),又有深度(具体详尽地讲述了一种方法);既有原理性论述,又有丰富的实例与之配合,特别是正文后面的附录B,比较完整地讲述了用软件工程的方法开发一个实际软件的过程,对读者深入理解软件工程学很有帮助,也是上机实习的好材料。本书正文共十章,第一章是概论,第二章至第九章顺序讲述软件生存周期各阶段的任务、过程、方法和工具,第十章集中讨论软件工程使用的管理技术。本书可作为高等院校计算机系“软件工程”课程的教材或教学参考书,可供有一定实际经验的软件工作人员和需要开发应用软件的广大计算机用户阅读参考。

作者简介

暂缺《软件工程导论》作者简介

图书目录

前言 
修订版前言
第一章 概论
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.2.5 详细设计
1.2.6 编码和单元测试
1.2.7 综合测试
1.2.8 软件维护
1.3 技术审查和管理复审
1.3.1 进行审查和复审的必要性
1.3.2 技术审查的标准和方法
1.4 小结
习题一
第二章 可行性研究
2.1 可行性研究的任务
2.2 可行性研究的步骤
2.2.1 复查系统规模的目标
2.2.2 研究目前正在使用的系统
2.2.3 导出新系统的高层逻辑模型
2.2.4 重新定义问题
2.2.5 导出和评价供选择的解法
2.2.6 推荐行动方针
2.2.7 草拟开发计划
2.2.8 书写文档提交审查
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.5.4 数据字典的实现
2.6 成本/效益分析
2.6.1 成本估计
2.6.2 成本/效益分析的方法
2.7 小结 
习题二
第三章 需求分析
3.1 需求分析的任务
3.1.1 确定对系统的综合要求
3.1.2 分析系统的数据要求
3.1.3 导出系统的逻辑模型
3.1.4 修正系统开发计划
3.1.5 开发原形系统
3.2 分析过程
3.2.1 沿数据流图回溯
3.2.2 用户复查
3.2.3 细化数据流图
3.2.4 修正开发计划
3.2.5 书写文档
3.2.6 审查和复审
3.3 图形工具
3.3.1 层次方框图
3.3.2 Warnier图
3.3.3 IPO图
3.4 验证软件需求
3.4.1 从哪些方面验证软件需求的正确性
3.4.2 用于需求分析的软件工具
3.4.3 超高级语言
3.5 原型法
3.5.1 支持原型法的基本事实
3.5.2 实现原型的一般途径
3.5.3 基于知识的途径
3.6 小结
习题三
第四章 总体设计
4.1 总体设计的过程
4.1.1 设想供选择的方案
4.1.2 选取合理的方案
4.1.3 推荐最佳方案
4.1.4 功能分解
4.1.5 设计软件结构
4.1.6 数据库设计
4.1.7 制定测试计划
4.1.8 书写文档
4.1.9 审查和复审
4.2 软件设计的概念和原理
4.2.1 模块化
4.2.2 抽象
4.2.3 信息隐藏和局部化
4.2.4 模块独立
4.3 启发式规则
4.3.1 改进软件结构的高模块独立性
4.3.2 模块规模应该适中
4.3.3 深度、宽度、扇区和扇入都应适当
4.3.4 模块的作用域应该在控制域之内
4.3.5 力争降低模块接口的复杂程序
4.3.6 设计单入口单出口的模块
4.3.7 模块功能应该可以预测
4.4 图形工具
4.4.1 层次图和HIPO图
4.4.2 结构图
4.5 面向数据流的设计方法
4.5.1 概念
4.5.2 变换分析 
4.5.3 事务分析
4.5.4 设计优化
4.6 小结
习题四
第五章 详细设计
5.1 结构程序设计
5.2 详细设计的工具
5.2.1 程序流程图
5.2.2 盒图(N-S图)
5.2.3 PAD图
5.2.4 判定表
5.2.5 判定树
5.2.6 过程设计语言(PDL)
5.2.7 模块开发文件夹
5.3 Jackson程序设计方法
5.3.1 Jackson图
5.3.2 改进的Jackson图
5.3.3 Jackson方法
5.4 Warnier程序设计方法
5.4.1 Warnier方法
5.4.2 Warnier方法的辅助技术
5.5 程序复杂程度的定量度量
5.5.1 McCabe方法
5.5.2 Halstead方法
5.6 小结
习题五
第六章 软件蓝图
6.1 软件蓝图方法论
6.1.1 对软件蓝图的要求
6.1.2 三级设计
6.1.3 蓝图语言
6.1.4 蓝图的书写风格
6.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.4 词法扫描程序的A级设计
6.4.1 选取数据元素设计数据流
6.4.2 设计控制流
6.4.3 划分模块
6.4.4 定义模块
6.4.5 书写A级蓝图
6.5 词法扫描程序的B级蓝图
6.5.1 精化数据流
6.5.2 组织模块
6.5.3 构造过程访问结构
6.5.4 书写B级蓝图
6.6 词法扫描程序的C级蓝图
6.6.1 选取更多数据元素
6.6.2 详细描述数据流
6.6.3 构造其他访问结构
6.6.4 书写C级蓝图
6.7 小结
习题六
第七章 编码
7.1 程序设计语言
7.1.1 程序设计语言分类 
7.1.2 程序设计语言的特点
7.1.3 选择一种语言
7.2 程序设计途径
7.2.1 写程序的风格
7.2.2 程序设计方法论
7.2.3 程序设计自动化
7.2.4 程序设计工具 
7.3 小结
习题七 
第八章 测试
8.1 基本概念
8.1.1 软件测试的目标
8.1.2 黑盒测试和白盒测试
8.1.3 软件测试的步骤
8.1.4 测试阶段的信息流
8.2 单元测试
8.2.1 单元测试考虑
8.2.2 单元测试过程
8.3 集成测试
8.3.1 自顶向下结合
8.3.2 自底向上结合
8.3.3 不同集成测试策略的比较
8.4 验收测试
8.4.1 验收测试的范围
8.4.2 软件配置复查
8.5 设计测试方案
8.5.1 逻辑覆盖
8.5.2 等价划分
8.5.3 边界值分析
8.5.4 错误推测
8.5.5 实用测试策略
8.6 调试
8.6.1 调试技术
8.6.2 调试策略
8.7 软件可靠性
8.7.1 基本概念
8.7.2 估算平均无故障时间的方法
8.7.3 程序正确性证明
8.8 日立预测法
8.8.1 测试完成率模型
8.8.2 错误发现率模型
8.8.3 使用日立测法的步骤
8.9 自动测试工具
8.9.1 测试数据生成程序
8.9.2 动态分析程序
8.9.3 静态分析程序
8.9.4 文件比较程序
8.10 小结
习题八
第九章 维护
9.1 软件维护的定义
9.2 维护的特点
9.2.1 结构化维护与非结构化维护的对比
9.2.2  维护的代价
9.2.3 维护的问题
9.3 维护过程
9.3.1 维护组织
9.3.2 维护报告
9.3.3 维护的事件流
9.3.4 保存维护记录
9.3.5 评价维护活动
9.4 可维护性
9.4.1 诀定软件可维护性的因素
9.4.2 文档
9.4.3 可维护性复审
9.5 软件再用
9.5.1 概念
9.5.2 面向对象的程序设计语言
9.6 软件再用实例介绍
9.6.1 应用软件生成系统
9.6.2 Demeter系统
9.7 小结
习题九
第十章 管理技术
10.1 成本估计
10.1.1 参数方程
10.1.2 标准值法
10.1.3 COCOMO模型
10.2 进度计划
10.2.1 Gantt图(横道图)
10.2.2 工程网络
10.2.3 估算进度
10.2.4 关键路径
10.2.5 机动时间
10.3 人员组织
10.3.1 程序设计小组的组织
10.3.2 主程序员组
10.4 质量保证
10.4.1 软件质量
10.4.2 质量保证
10.5 项目计划
10.5.1 项目计划的内容
10.5.2 项目报告
10.5.3 变动控制
10.6 软件管理工具
10.7 小结
习题十
附录A 软件设计语言SDL-1的语法
附录B 一个汉字行编辑程序的设计
B.1 设计规格说明
B.1.1 外部编辑命令
B.1.2 编辑命令
B.1.3 输出信息
B.2 A级设计
B.2.1 正文文件
B.2.2 两个工作模式
B.2.3 数据元素
B.2.4 过程
B.3 A级蓝图
B.4 C级设计
B.4.1 数据元素
B.4.2 控制数据元素
B.4.3 编辑过程
B.4.4 输入模式的过程
B.4.5 编辑模式的过程
B.5 C级蓝图
参考文献

本目录推荐