软件工程

软件工程 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:沙赫
出品人:
页数:380
译者:邓迎春
出版时间:2012-1
价格:65.00元
装帧:
isbn号码:9787111362739
丛书系列:计算机科学丛书
图书标签:
  • 软件工程
  • 计算机科学
  • 面向对象
  • 计算机技术
  • 计算机
  • #FDP
  • #
  • 软件工程
  • 软件开发
  • 编程
  • 计算机科学
  • 系统设计
  • 需求分析
  • 测试
  • 项目管理
  • 软件质量
  • 软件架构
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

《软件工程:面向对象和传统的方法(原书第8版)》是软件工程领域的经典著作,被加州大学伯克利分校等180多所美国高校选作教材。《软件工程:面向对象和传统的方法(原书第8版)》第8版继续保持了前七版的特色,采用传统方法与面向对象方法并重的方式,全面系统地介绍软件工程的理论与实践,并新增了第10章(第一部分的关键内容)和第18章(新兴技术)两章内容。全书分为两大部分,第一部分介绍软件工程概念,第二部分着重软件工程技术,教师可根据不同教学目的从任一部分开始讲授课程。

《软件工程:面向对象和传统的方法(原书第8版)》是高等院校软件工程课程的理想教材,同时也是专业软件开发人员和管理者的理想参考书。

作者简介

目录信息

出版者的话
译者序
前言
第1章 软件工程的范畴
1.1 历史方面
1.2 经济方面
1.3 维护性方面
1.3.1 维护的传统和现代观点
1.3.2 交付后维护的重要性
1.4 需求、分析和设计方面
1.5 小组编程方面
1.6 为什么没有计划阶段
1.7 为什么没有测试阶段
1.8 为什么没有文档阶段
1.9 面向对象范型
1.10 正确看待面向对象范型
1.11 术语
1.12 道德问题
本章回顾
进一步阅读指导
习题
第一部分 软件工程概念
第2章 软件生命周期模型
2.1 理论上的软件开发
2.2 winburg小型实例研究
2.3 winburg小型实例研究心得
2.4 野鸭拖拉机公司小型实例研究
2.5 迭代和递增
2.6 修订的winburg小型实例研究
2.7 迭代和递增的风险和其他方面
2.8 迭代和递增的控制
2.9 其他生命周期模型
2.9.1 编码-修补生命周期模型
2.9.2 瀑布生命周期模型
2.9.3 快速原型开发生命周期模型
2.9.4 开源生命周期模型
2.9.5 敏捷过程
2.9.6 同步-稳定生命周期模型
2.9.7 螺旋生命周期模型
2.10 生命周期模型的比较
本章回顾
进一步阅读指导
习题
第3章 软件过程
3.1 统一过程
3.2 面向对象范型内的迭代和递增
3.3 需求流
3.4 分析流
3.5 设计流
3.6 实现流
3.7 测试流
3.7.1 需求制品
3.7.2 分析制品
3.7.3 设计制品
3.7.4 实现制品
3.8 交付后维护
3.9 退役
3.10 统一过程的各阶段
3.10.1 开始阶段
3.10.2 细化阶段
3.10.3 构建阶段
3.10.4 转换阶段
3.11 一维与二维生命周期模型
3.12 改进软件过程
3.13 能力成熟度模型
3.14 软件过程改进方面的其他努力
3.15 软件过程改进的代价和收益
本章回顾
进一步阅读指导
习题
第4章 软件小组
4.1 小组组织
4.2 民主小组方法
4.3 传统的主程序员小组方法
4.3.1 《纽约时报》项目
4.3.2 传统的主程序员小组方法的不实用性
4.4 主程序员小组和民主小组之外的编程小组
4.5 同步-稳定小组
4.6 敏捷过程小组
4.7 开源编程小组
4.8 人员能力成熟度模型
4.9 选择合适的小组组织
本章回顾
进一步阅读指导
习题
第5章 软件工程工具
5.1 逐步求精法
5.2 成本-效益分析法
5.3 分治
5.4 关注分离
5.5 软件度量
5.6 case
5.7 case的分类
5.8 case的范围
5.9 软件版本
5.9.1 修订版
5.9.2 变种版
5.10 配置控制
5.10.1 交付后维护期间的配置控制
5.10.2 基准
5.10.3 产品开发过程中的配置控制
5.11 建造工具
5.12 使用case技术提高生产力
本章回顾
进一步阅读指导
习题
第6章 测试
6.1 质量问题
6.1.1 软件质量保证
6.1.2 管理独立
6.2 非执行测试
6.2.1 走查
6.2.2 管理走查
6.2.3 审查
6.2.4 审查与走查的对比
6.2.5 评审的优缺点
6.2.6 审查的度量
6.3 执行测试
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.7 测试什么时候停止
本章回顾
进一步阅读指导
习题
第7章 从模块到对象
7.1 什么是模块
7.2 内聚
7.2.1 偶然性内聚
7.2.2 逻辑性内聚
7.2.3 时间性内聚
7.2.4 过程性内聚
7.2.5 通信性内聚
7.2.6 功能性内聚
7.2.7 信息性内聚
7.2.8 内聚示例
7.3 耦合
7.3.1 内容耦合
7.3.2 共用耦合
7.3.3 控制耦合
7.3.4 印记耦合
7.3.5 数据耦合
7.3.6 耦合示例
7.3.7 耦合的重要性
7.4 数据封装
7.4.1 数据封装和产品开发
7.4.2 数据封装和产品维护
7.5 抽象数据类型
7.6 信息隐藏
7.7 对象
7.8 继承、多态和动态绑定
7.9 面向对象范型
本章回顾
进一步阅读指导
习题
第8章 可重用性和可移植性
8.1 重用的概念
8.2 重用的障碍
8.3 重用实例研究
8.3.1 raytheon导弹系统部
8.3.2 欧洲航天局
8.4 对象和重用
8.5 设计和实现期间的重用
8.5.1 设计重用
8.5.2 应用框架
8.5.3 设计模式
8.5.4 软件体系结构
8.5.5 基于组件的软件工程
8.6 其他设计模式
8.6.1 flic小型实例研究
8.6.2 适配器设计模式
8.6.3 桥设计模式
8.6.4 迭代器设计模式
8.6.5 抽象工厂设计模式
8.7 设计模式的种类
8.8 设计模式的优缺点
8.9 重用及互联网
8.10 重用和交付后维护
8.11 可移植性
8.11.1 硬件的不兼容性
8.11.2 操作系统的不兼容性
8.11.3 数值计算软件的不兼容性
8.11.4 编译器的不兼容性
8.12 为什么需要可移植性
8.13 实现可移植性的技术
8.13.1 可移植的系统软件
8.13.2 可移植的应用软件
8.13.3 可移植的数据
8.13.4 模型驱动结构
本章回顾
进一步阅读指导
习题
第9章 计划和估算
9.1 计划和软件过程
9.2 周期和成本估算
9.2.1 产品规模的度量
9.2.2 成本估算技术
9.2.3 中间cocomo
9.2.4 cocomoii
9.2.5 跟踪周期和成本估算
9.3 软件项目管理计划的组成
9.4 软件项目管理计划框架
9.5 ieee软件项目管理计划
9.6 计划测试
9.7 计划面向对象的项目
9.8 培训需求
9.9 文档标准
9.10 用于计划和估算的case工具
9.11 测试软件项目管理计划
本章回顾
进一步阅读指导
习题
第二部分 软件生命周期的工作流
第10章 第一部分的关键内容
10.1 软件开发:理论与实践
10.2 迭代和递增
10.3 统一过程
10.4 工作流概述
10.5 软件小组
10.6 成本-效益分析法
10.7 度量
10.8 case
10.9 版本和配置
10.10 测试术语
10.11 执行测试和非执行测试
10.12 模块性
10.13 重用
10.14 软件项目管理计划
本章回顾
习题
第11章 需求
11.1 确定客户需要什么
11.2 需求流概述
11.3 理解应用域
11.4 业务模型
11.4.1 访谈
11.4.2 其他技术
11.4.3 用例
11.5 初始需求
11.6 对应用域的初始理解:msg基金实例研究
11.7 初始业务模型:msg基金实例研究
11.8 初始需求:msg基金实例研究
11.9 继续需求流:msg基金实例研究
11.10 修订需求:msg基金实例研究
11.11 测试流:msg基金实例研究
11.12 传统的需求阶段
11.13 快速原型开发
11.14 人的因素
11.15 重用快速原型
11.16 需求流的case工具
11.17 需求流的度量
11.18 需求流面临的挑战
本章回顾
进一步阅读指导
习题
第12章 传统的分析
12.1 规格说明文档
12.2 非形式化规格说明
12.3 结构化系统分析
12.4 结构化系统分析:msg基金实例研究
12.5 其他半形式化技术
12.6 建造实体-关系模型
12.7 有穷状态机
12.8 petri网
12.9 z
12.9.1 z:电梯问题实例研究
12.9.2 z的分析
12.10 其他的形式化技术
12.11 传统分析技术的比较
12.12 在传统分析阶段测试
12.13 传统分析阶段的case工具
12.14 传统分析阶段的度量
12.15 软件项目管理计划:msg基金实例研究
12.16 传统分析阶段面临的挑战
本章回顾
进一步阅读指导
习题
第13章 面向对象分析
13.1 分析流
13.2 抽取实体类
13.3 面向对象分析:电梯问题实例研究
13.4 功能建模:电梯问题实例研究
13.5 实体类建模:电梯问题实例研究
13.5.1 名词抽取
13.5.2 crc卡片
13.6 动态建模:电梯问题实例研究
13.7 测试流:面向对象分析
13.8 抽取边界类和控制类
13.9 初始功能模型:msg基金实例研究
13.10 初始类图:msg基金实例研究
13.11 初始动态模型:msg基金实例研究
13.12 修订实体类:msg基金实例研究
13.13 抽取边界类:msg基金实例研究
13.14 抽取控制类:msg基金实例研究
13.15 用例实现:msg基金实例研究
13.15.1 estimatefundsavailableforweek用例
13.15.2 manageanasset用例
13.15.3 updateestimatedannualoperatingexpenses用例
13.15.4 produceareport用例
13.16 类图递增:msg基金实例研究
13.17 测试流:msg基金实例研究
13.18 统一过程中的规格说明文档
13.19 关于参与者和用例更详细的内容
13.20 面向对象分析流的case工具
13.21 面向对象分析流的度量
13.22 面向对象分析流面临的挑战
本章回顾
进一步阅读指导
习题
第14章 设计
14.1 设计和抽象
14.2 面向操作设计
14.3 数据流分析
14.3.1 小型实例研究:字数统计
14.3.2 数据流分析扩展
14.4 事务分析
14.5 面向数据设计
14.6 面向对象设计
14.7 面向对象设计:电梯问题实例研究
14.8 面向对象设计:msg基金实例研究
14.9 设计流
14.10 测试流:设计
14.11 测试流:msg基金实例研究
14.12 详细设计的形式化技术
14.13 实时设计技术
14.14 设计的case工具
14.15 设计的度量
14.16 设计流面临的挑战
本章回顾
进一步阅读指导
习题
第15章 实现
15.1 编程语言的选择
15.2 第四代语言
15.3 良好的编程实践
15.3.1 使用一致和有意义的变量名
15.3.2 自文档代码的问题
15.3.3 使用参数
15.3.4 为增加可读性的代码编排
15.3.5 嵌套的if语句
15.4 编码标准
15.5 代码重用
15.6 集成
15.6.1 自顶向下的集成
15.6.2 自底向上的集成
15.6.3 三明治集成
15.6.4 面向对象产品的集成
15.6.5 集成的管理
15.7 实现流
15.8 实现流:msg基金实例研究
15.9 测试流:实现
15.10 测试用例选择
15.10.1 规格说明测试与代码测试
15.10.2 规格说明测试的可行性
15.10.3 代码测试的可行性
15.11 黑盒单元测试技术
15.11.1 等价测试和边界值分析
15.11.2 功能测试
15.12 黑盒测试用例:msg基金实例研究
15.13 玻璃盒单元测试技术
15.13.1 结构测试:语句、分支和路径覆盖
15.13.2 复杂性度量
15.14 代码走查和审查
15.15 单元测试技术的比较
15.16 净室
15.17 测试对象时潜在的问题
15.18 单元测试的管理方面
15.19 何时该重实现而不是调试代码制品
15.20 集成测试
15.21 产品测试
15.22 验收测试
15.23 测试流:msg基金实例研究
15.24 实现的case工具
15.24.1 软件开发全过程的case工具
15.24.2 集成化开发环境
15.24.3 商业应用环境
15.24.4 公共工具基础结构
15.24.5 环境的潜在问题
15.25 测试流的case工具
15.26 实现流的度量
15.27 实现流面临的挑战
本章回顾
进一步阅读指导
习题
第16章 交付后维护
16.1 开发与维护
16.2 为什么交付后维护是必要的
16.3 对交付后维护程序员的要求是什么
16.4 交付后维护小型实例研究
16.5 交付后维护的管理
16.5.1 缺陷报告
16.5.2 批准对产品的修改
16.5.3 确保可维护性
16.5.4 迭代维护造成的问题
16.6 面向对象软件的维护
16.7 交付后维护技能与开发技能
16.8 逆向工程
16.9 交付后维护期间的测试
16.10 交付后维护的case工具
16.11 交付后维护的度量
16.12 交付后维护:msg基金实例研究
16.13 交付后维护面临的挑战
本章回顾
进一步阅读指导
习题
第17章 uml的进一步讨论
17.1 uml不是一种方法
17.2 类图
17.2.1 聚合
17.2.2 多重性
17.2.3 组合
17.2.4 泛化
17.2.5 关联
17.3 注解
17.4 用例图
17.5 构造型
17.6 交互图
17.7 状态图
17.8 活动图
17.9 包
17.10 组件图
17.11 部署图
17.12 uml图回顾
17.13 uml和迭代
本章回顾
进一步阅读指导
习题
第18章 新兴技术
18.1 面向层面技术
18.2 模型驱动技术
18.3 基于组件技术
18.4 面向服务技术
18.5 面向服务技术和基于组件技术的比较
18.6 社交计算
18.7 web工程
18.8 云技术
18.9 web3.0
18.10 计算机安全
18.11 模型检查
18.12 目前和未来
本章回顾
进一步阅读指导
附录
附录a 学期项目:巧克力爱好者匿名
附录b 软件工程资源
附录c 需求流:msg基金实例研究
附录d 结构化系统分析:msg基金实例研究
附录e 分析流:msg基金实例研究
附录f 软件项目管理计划:msg基金实例研究
附录g 设计流:msg基金实例研究
附录h 实现流:msg基金实例研究(c++版)
附录I 实现流:msg基金实例研究(java版)
附录j 测试流:msg基金实例研究
· · · · · · (收起)

读后感

评分

评分

评分

评分

评分

用户评价

评分

我最近挖掘到一本关于早期计算机科学思想史的力作,内容完全聚焦于图灵、冯·诺依曼等先驱者在二战前后对计算理论的奠基工作。这本书的叙事手法非常宏大,它将冷战背景下的密码破译工作、数学基础的危机以及早期电子管计算机的诞生,编织成一个气势磅礴的故事。作者没有陷入过多的技术细节,而是着重于描绘这些天才思想家们在面对“什么是可计算”这一终极问题时的思维挣扎与突破。书中对“通用图灵机”概念的诞生过程的还原,让我对“软件”这一概念有了全新的认识——它不再是应用程序,而是被程序化的逻辑本身。阅读过程中,我时常会产生一种强烈的时空错位感,仿佛能听到那些老旧机器的嗡鸣声,感受到他们在突破理论极限时的兴奋与孤独。对于那些对计算机的“为什么能工作”而非“怎么工作”更感兴趣的读者来说,这本书提供了一种深沉的、充满人文关怀的视角,它让我们铭记,我们今天所享受的一切便利,都建立在几十年前那些勇敢的理论探索之上。

评分

天哪,我最近刚读完一本关于系统架构和微服务设计原则的书,简直是醍醐灌顶!这本书的作者对复杂系统的拆解能力简直是艺术家的级别。他不仅仅是罗列了各种设计模式,而是深入剖析了每种模式背后的权衡取舍,比如 CAP 定理在实际应用中的灵活变通,以及如何在高并发场景下设计出既健壮又易于维护的服务边界。尤其让我印象深刻的是关于事件溯源(Event Sourcing)和命令查询职责分离(CQRS)的章节,作者用非常生动的案例展示了如何将这些看似高深的理论落地到具体的业务流程中,比如一个电商平台的订单处理系统。文字风格非常严谨,充满了逻辑的思辨性,读起来就像是在跟一位经验老到的架构师进行深度对话,每一个论点都有详实的数据和行业实践作为支撑,让你不得不去思考自己目前项目中的结构是否真的优化到了极致。这本书最大的价值在于,它提供了一个看待和构建大规模软件的全新视角,让你从“实现功能”的心态,转变为“设计可演化系统”的思维模式,对于任何想从初级开发跃升到架构师层级的工程师来说,都是一本必读的圣经。

评分

这本书简直是为那些痴迷于“干净代码”的程序员准备的精神食粮!它没有过多地谈论新的语言特性或框架的API,而是将重点放在了代码的“可读性”、“可维护性”和“表达力”这三个维度上,但它解读的方式绝对是前所未见的。作者用大量的反面案例——那些被无数次重构、却依然难以理解的“坏代码片段”——来开场,然后用极富哲理的语言,阐释了如何通过精妙的命名、恰当的抽象层次和强大的领域建模来驯服复杂性。其中关于“意图的清晰度”的论述尤其深刻,他认为好的代码不应该仅仅是让机器执行指令,更应该是对人类读者清晰地传达作者的思考过程。这本书的排版和配图也极其考究,很多对比鲜明的示例代码放在一起,视觉冲击力很强,让你在不知不觉中提升了对代码质量的内在标准。读完后,我的强迫症得到了极大的满足,同时也对日常编写的每一行代码都多了一份敬畏之心。

评分

我得说,这本书关于敏捷开发在大型组织中落地实践的描写,实在太贴近现实的残酷了!很多书籍谈敏捷,总是停留在 Scrum 和 Kanban 的流程描述上,但这本书却敢于直面“组织惯性”、“跨部门沟通壁垒”以及“高层领导对交付速度的焦虑”这些真正阻碍变革的顽疾。作者没有回避那些黑暗的角落,比如“装配线式开发”如何披着敏捷的外衣继续扼杀创新,以及所谓的“用户故事”如何被写成缺乏实际业务价值的待办事项清单。他提出的“价值流映射”工具非常实用,我们团队试着应用了一下,立刻就发现了我们在需求分析阶段浪费了大量时间,因为没人真正思考过用户愿意为什么样的功能付费。这本书的语言充满了洞察力和一丝丝的幽默感,读起来不枯燥,反而像是在阅读一本精彩的商业社会观察报告,它让你意识到,软件开发不仅仅是技术问题,更深层次上是关于组织心理学和权力动态的博弈。对于那些在大型企业中努力推行改进却屡屡受挫的团队负责人来说,这本书能给你极大的精神慰藉和实际的战术指导。

评分

最近沉迷于一本关于深度学习模型可解释性的著作,简直是打开了潘多拉的魔盒!这本书探讨的核心问题是:当我们的AI系统做出决策时,我们真的知道它“为什么”这么做吗?作者从信息论、因果推断的角度,系统地梳理了LIME、SHAP等主流解释方法的局限性,并提出了一个极具挑战性的新框架,试图在模型精度和透明度之间找到一个动态平衡点。书中的数学推导部分非常扎实,没有丝毫的敷衍,涉及到大量的概率图模型和贝叶斯方法,对于没有深厚理论基础的读者来说可能需要反复研读,但正是这种深度,让这本书的结论具备了不可动摇的说服力。我特别欣赏作者对于伦理问题的关注,他不仅讨论了技术如何解释,更强调了“谁有权解释”以及“被解释的责任主体是谁”。读完之后,我对于那些简单地用“模型就是黑箱”来搪塞的工程师充满了敬意,这本书教我们如何诚实地面对技术的局限,并致力于构建更负责任的智能系统。

评分

没读完,弃坑了????????????????

评分

没读完,弃坑了????????????????

评分

没读完,弃坑了????????????????

评分

没读完,弃坑了????????????????

评分

没读完,弃坑了????????????????

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有