沃新书屋 - 软件工程-(第4版)
本书资料更新时间:2025-04-29 20:36:48

软件工程-(第4版)

软件工程-(第4版)精美图片

软件工程-(第4版)书籍详细信息


内容简介:

《软件工程(第4版)》由张海藩、吕云翔编著,是倍受欢迎的软件工程教材,它对我国软件工程研究、教学和实践起到了很好的借鉴和参考作用。为更好地反映最近几年软件工程领域的发展现状,本书在第3版基础上,结合最新技术,进行认真修改。 ◆作者权威。本书是以作者在北京大学“软件工程概论”的讲义为蓝本,结合多年软件开发实践编写而成。 ◆内容深入浅出、通俗易懂。对软件工程基本概念、原理和方法学的讲述由浅入深,循序渐进,深入细微。文字叙述条理清楚,适于读者自学。 ◆理论与实践紧密结合。以丰富的实例讲述软件工程理论,不仅可以使读者深化对理论的理解,更重要的是使读者学会用软件工程的理论方法指导软件开发的实践。

书籍目录:

目 录 第1篇 软件工程与软件过程 第1章 软件工程概述 1 1.1 软件危机与软件工程的起源 1 1.1.1 计算机系统的发展历程 1 1.1.2 软件危机介绍 2 1.1.3 产生软件危机的原因 2 1.1.4 消除软件危机的途径 4 1.2 软件工程 5 1.2.1 什么是软件工程 5 1.2.2 软件工程的基本原理 5 1.3 软件工程包含的领域 7 小结 9 习题 9 第2章 软件过程 11 2.1 软件生命周期的基本任务 11 2.2 瀑布模型 14 2.3 快速原型模型 16 2.4 增量模型 17 2.5 螺旋模型 18 2.6 喷泉模型 19 2.7 Rational统一过程 20 2.7.1 最佳实践 21 2.7.2 RUP的十大要素 22 2.7.3 RUP生命周期 24 2.8 敏捷过程与极限编程 26 2.8.1 敏捷过程概述 26 2.8.2 极限编程 27 2.9 能力成熟度模型 29 2.9.1 能力成熟度模型的结构 29 2.9.2 能力成熟度等级 30 2.9.3 关键过程域 31 2.9.4 应用CMM 32 小结 32 习题 33 第2篇 传统方法学 第3章 结构化分析 35 3.1 概述 35 3.2 与用户沟通的方法 36 3.2.1 访谈 36 3.2.2 简易的应用规格说明技术 37 3.2.3 软件原型 38 3.3 分析建模与规格说明 39 3.3.1 分析建模 39 3.3.2 软件需求规格说明 39 3.4 实体—关系图 41 3.5 数据流图 42 3.5.1 数据流图符号 43 3.5.2 例子 44 3.5.3 命名 46 3.6 状态转换图 47 3.6.1 状态 47 3.6.2 事件 47 3.6.3 符号 48 3.6.4 例子 48 3.7 数据字典 49 3.8 结构化分析实例 51 3.8.1 问题陈述 51 3.8.2 问题定义 51 3.8.3 可行性研究 52 3.8.4 需求分析 57 小结 62 习题 63 第4章 结构化设计 67 4.1 结构化设计与结构化分析的关系 67 4.2 软件设计的概念和原理 68 4.2.1 模块化 68 4.2.2 抽象 70 4.2.3 逐步求精 70 4.2.4 信息隐藏 71 4.3 模块独立 72 4.3.1 耦合 72 4.3.2 内聚 73 4.4 启发规则 74 4.5 表示软件结构的图形工具 76 4.5.1 层次图和HIPO图 76 4.5.2 结构图 78 4.6 面向数据流的设计方法 79 4.6.1 概念 79 4.6.2 变换分析 80 4.6.3 事务分析 85 4.6.4 设计优化 86 4.7 人—机界面设计 87 4.7.1 人—机界面设计问题 87 4.7.2 人—机界面设计过程 88 4.7.3 界面设计指南 89 4.8 过程设计 91 4.9 过程设计的工具 92 4.9.1 程序流程图 93 4.9.2 盒图(N-S图) 93 4.9.3 PAD图 94 4.9.4 判定表 95 4.9.5 判定树 96 4.9.6 过程设计语言 97 4.10 面向数据结构的设计方法 97 4.10.1 Jackson图 98 4.10.2 改进的Jackson图 99 4.10.3 Jackson方法 99 小结 103 习题 104 第5章 结构化实现 106 5.1 编码 107 5.1.1 选择程序设计语言 107 5.1.2 编码风格 108 5.2 软件测试基础 110 5.2.1 测试目标 110 5.2.2 黑盒测试和白盒测试 110 5.2.3 测试准则 111 5.2.4 流图 111 5.3 逻辑覆盖 112 5.4 控制结构测试 115 5.4.1 基本路径测试 115 5.4.2 条件测试 117 5.4.3 数据流测试 119 5.4.4 循环测试 120 5.5 黑盒测试技术 121 5.5.1 等价划分 121 5.5.2 边界值分析 123 5.5.3 错误推测 124 5.6 测试策略 124 5.6.1 测试步骤 125 5.6.2 单元测试 125 5.6.3 集成测试 127 5.6.4 确认测试 130 5.7 调试 131 5.7.1 调试过程 131 5.7.2 调试途径 132 5.8 软件可靠性 133 5.8.1 基本概念 134 5.8.2 估算平均无故障时间的方法 134 小结 136 习题 137 第3篇 面向对象方法学 第6章 面向对象方法学导论 140 6.1 面向对象程序设计实例 140 6.1.1 用对象分解取代功能分解 140 6.1.2 设计类等级 142 6.1.3 定义属性和服务 143 6.2 面向对象方法学概述 144 6.2.1 面向对象方法学的要点 144 6.2.2 面向对象的软件过程 146 6.3 面向对象方法学的主要优点 146 6.4 面向对象的概念 149 6.4.1 对象 150 6.4.2 其他概念 152 6.5 面向对象建模 155 6.6 对象模型 156 6.6.1 表示类的符号 156 6.6.2 表示关系的符号 158 6.7 动态模型 162 6.8 功能模型 163 6.9 3种模型之间的关系 163 小结 164 习题 164 第7章 面向对象分析 166 7.1 分析过程 166 7.1.1 概述 166 7.1.2 3个子模型与5个层次 167 7.2 需求陈述 168 7.2.1 书写要点 168 7.2.2 例子 168 7.3 建立对象模型 169 7.3.1 确定类与对象 170 7.3.2 确定关联 171 7.3.3 划分主题 174 7.3.4 确定属性 174 7.3.5 识别继承关系 176 7.3.6 反复修改 177 7.4 建立动态模型 179 7.4.1 编写脚本 179 7.4.2 设想用户界面 180 7.4.3 画事件跟踪图 181 7.4.4 画状态图 182 7.4.5 审查动态模型 184 7.5 建立功能模型 184 7.6 定义服务 186 7.7 面向对象分析实例 186 7.7.1 需求陈述 187 7.7.2 建立对象模型 187 7.7.3 建立动态模型 188 7.7.4 建立功能模型 190 7.7.5 进一步完善 190 小结 191 习题 192 第8章 面向对象设计 194 8.1 面向对象设计的准则 194 8.2 启发规则 196 8.3 系统分解 197 8.3.1 子系统之间的两种交互方式 198 8.3.2 组织系统的两种方案 199 8.3.3 设计系统的拓扑结构 199 8.4 设计问题域子系统 199 8.5 设计人—机交互子系统 201 8.5.1 设计人—机交互界面的准则 201 8.5.2 设计人—机交互子系统的策略 202 8.6 设计任务管理子系统 203 8.6.1 分析并发性 203 8.6.2 设计任务管理子系统 204 8.7 设计数据管理子系统 205 8.7.1 选择数据存储管理模式 205 8.7.2 设计数据管理子系统 206 8.7.3 例子 207 8.8 设计类中的服务 208 8.8.1 确定类中应有的服务 208 8.8.2 设计实现服务的方法 208 8.9 设计关联 209 8.10 设计优化 210 8.10.1 确定优先级 210 8.10.2 提高效率的几项技术 211 8.10.3 调整继承关系 212 8.11 面向对象分析与设计实例 213 8.11.1 面向对象分析 214 8.11.2 面向对象设计 215 小结 220 习题 220 第9章 面向对象实现 222 9.1 程序设计语言 222 9.1.1 面向对象语言的优点 222 9.1.2 面向对象语言的技术特点 223 9.1.3 选择面向对象语言 226 9.2 程序设计风格 226 9.2.1 提高可重用性 227 9.2.2 提高可扩充性 228 9.2.3 提高健壮性 229 9.3 测试策略 229 9.3.1 面向对象的单元测试 230 9.3.2 面向对象的集成测试 230 9.3.3 面向对象的确认测试 230 9.4 设计测试用例 230 9.4.1 测试类的方法 231 9.4.2 集成测试方法 232 小结 234 习题 234 第10章 统一建模语言 236 10.1 概述 236 10.1.1 UML的产生和发展 236 10.1.2 UML的系统结构 237 10.1.3 UML的图 238 10.1.4 UML的应用领域 239 10.2 静态建模机制 240 10.2.1 用例 240 10.2.2 类图和对象图 244 10.3 动态建模机制 245 10.3.1 消息 245 10.3.2 状态图 246 10.3.3 顺序图 247 10.3.4 协作图 248 10.3.5 活动图 249 10.4 描述物理架构的机制 249 10.4.1 逻辑架构和物理架构 250 10.4.2 构件图 250 10.4.3 部署图 250 10.5 使用和扩展UML 252 10.5.1 使用UML的准则 252 10.5.2 扩展UML的机制 253 小结 253 习题 254 第4篇 软件项目管理 第11章 计划 257 11.1 度量软件规模 257 11.1.1 代码行技术 257 11.1.2 功能点技术 258 11.2 工作量估算 260 11.2.1 静态单变量模型 260 11.2.2 动态多变量模型 260 11.2.3 COCOMO2模型 261 11.3 进度计划 263 11.3.1 基本原则 264 11.3.2 估算软件开发时间 264 11.3.3 Gantt图 265 11.3.4 工程网络 266 11.3.5 估算进度 267 11.3.6 关键路径 269 11.3.7 机动时间 269 小结 270 习题 271 第12章 组织 273 12.1 民主制程序员组 273 12.2 主程序员组 274 12.3 现代程序员组 276 12.4 软件项目组 277 12.4.1 3种组织方式 277 12.4.2 4种组织范型 279 小结 279 习题 279 第13章 控制 281 13.1 风险管理 281 13.1.1 软件风险分类 281 13.1.2 风险识别 282 13.1.3 风险预测 286 13.1.4 处理风险的策略 287 13.2 质量保证 289 13.2.1 软件质量 289 13.2.2 软件质量保证措施 290 13.3 配置管理 292 13.3.1 软件配置 292 13.3.2 软件配置管理过程 294 小结 299 习题 299 第14章 软件维护与软件文档 301 14.1 软件维护 301 14.1.1 软件维护的过程 301 14.1.2 软件维护的分类 303 14.1.3 软件的可维护性 303 14.1.4 软件维护的副作用 304 14.2 软件文档 305 小结 307 习题 307 第5篇 高级课题 第15章 形式化方法 309 15.1 概述 309 15.1.1 非形式化方法的缺点 309 15.1.2 软件开发过程中的数学 310 15.1.3 应用形式化方法的准则 310 15.2 有穷状态机 311 15.2.1 基本概念 311 15.2.2 电梯问题 312 15.2.3 评论 314 15.3 Petri网 315 15.3.1 基本概念 315 15.3.2 应用实例 316 15.4 Z语言 317 15.4.1 简介 318 15.4.2 评论 319 小结 320 习题 320 第16章 软件重用 322 16.1 可重用的软件成分 322 16.2 软件重用过程 323 16.2.1 构件组装模型 323 16.2.2 类构件 324 16.2.3 重用过程模型 325 16.3 领域工程 326 16.3.1 分析过程 326 16.3.2 领域特征 327 16.3.3 结构建模和结构点 328 16.4 开发可重用的构件 328 16.4.1 为了重用的分析与设计 328 16.4.2 基于构件的开发 329 16.5 分类和检索构件 330 16.5.1 描述可重用的构件 330 16.5.2 重用环境 332 16.6 软件重用的效益 333 小结 334 习题 334 参考文献 335

作者简介:

张海藩,教授,1963年毕业于北京大学计算技术专业。长期从事“软件工程概论”、“面向对象程序设计”等课程的教学工作,曾被评为北京市优秀教师。参加的科研项目曾获全国科学大会奖、中国科学院科研特等奖等;主持的科研项目获原机电部科技进步奖。编著有《软件工程导沦》、《软件工程》,《面向对象程序设计实用教程》等十多本教材。

其它内容:

暂无其它内容!


下载点评

  • 适配(541+)
  • 清晰(214+)
  • 影印(971+)
  • 实用性强(514+)
  • 如获至宝(381+)
  • 实用(616+)
  • pdf(841+)
  • 研究(193+)
  • 系统(249+)
  • 无乱码(762+)
  • 科研(428+)
  • 学生(692+)
  • 惊喜(896+)
  • 精校(209+)
  • 完整(299+)
  • 免密(738+)
  • 满意(647+)
  • 稳定(159+)
  • 可打印(754+)

下载评论

  • 用户1718764651: ( 2024-06-19 10:37:31 )

    无损的学术资源,双语设计提升阅读体验,体验良好。

  • 用户1737195205: ( 2025-01-18 18:13:25 )

    图文功能搭配PDF/EPUB格式,优质数字阅读体验,资源优质。

  • 用户1741065616: ( 2025-03-04 13:20:16 )

    双语功能搭配PDF/MOBI格式,优质数字阅读体验,推荐下载。

  • 用户1733942004: ( 2024-12-12 02:33:24 )

    找了好久终于找到,太感谢了!

  • 用户1723807013: ( 2024-08-16 19:16:53 )

    音频版电子书下载极速,支持MOBI/AZW3格式导出,体验良好。


相关书评

暂时还没有人为这本书评论!